forked from mirrors/linux
		
	uuid: hoist helpers uuid_equal() and uuid_copy() from xfs
These helper are used to compare and copy two uuid_t type objects. Signed-off-by: Amir Goldstein <amir73il@gmail.com> [hch: also provide the respective guid_ versions] Signed-off-by: Christoph Hellwig <hch@lst.de> Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
This commit is contained in:
		
							parent
							
								
									b10bf0e281
								
							
						
					
					
						commit
						df33767d9f
					
				
					 4 changed files with 22 additions and 15 deletions
				
			
		|  | @ -55,9 +55,3 @@ uuid_is_nil(uuid_t *uuid) | |||
| 		if (*cp++) return 0;	/* not nil */ | ||||
| 	return 1;	/* is nil */ | ||||
| } | ||||
| 
 | ||||
| int | ||||
| uuid_equal(uuid_t *uuid1, uuid_t *uuid2) | ||||
| { | ||||
| 	return memcmp(uuid1, uuid2, sizeof(uuid_t)) ? 0 : 1; | ||||
| } | ||||
|  |  | |||
|  | @ -19,13 +19,6 @@ | |||
| #define __XFS_SUPPORT_UUID_H__ | ||||
| 
 | ||||
| extern int uuid_is_nil(uuid_t *uuid); | ||||
| extern int uuid_equal(uuid_t *uuid1, uuid_t *uuid2); | ||||
| extern void uuid_getnodeuniq(uuid_t *uuid, int fsid [2]); | ||||
| 
 | ||||
| static inline void | ||||
| uuid_copy(uuid_t *dst, uuid_t *src) | ||||
| { | ||||
| 	memcpy(dst, src, sizeof(uuid_t)); | ||||
| } | ||||
| 
 | ||||
| #endif	/* __XFS_SUPPORT_UUID_H__ */ | ||||
|  |  | |||
|  | @ -35,6 +35,26 @@ typedef struct { | |||
|  */ | ||||
| #define	UUID_STRING_LEN		36 | ||||
| 
 | ||||
| static inline bool guid_equal(const guid_t *u1, const guid_t *u2) | ||||
| { | ||||
| 	return memcmp(u1, u2, sizeof(guid_t)) == 0; | ||||
| } | ||||
| 
 | ||||
| static inline void guid_copy(guid_t *dst, const guid_t *src) | ||||
| { | ||||
| 	memcpy(dst, src, sizeof(guid_t)); | ||||
| } | ||||
| 
 | ||||
| static inline bool uuid_equal(const uuid_t *u1, const uuid_t *u2) | ||||
| { | ||||
| 	return memcmp(u1, u2, sizeof(uuid_t)) == 0; | ||||
| } | ||||
| 
 | ||||
| static inline void uuid_copy(uuid_t *dst, const uuid_t *src) | ||||
| { | ||||
| 	memcpy(dst, src, sizeof(uuid_t)); | ||||
| } | ||||
| 
 | ||||
| void generate_random_uuid(unsigned char uuid[16]); | ||||
| 
 | ||||
| extern void guid_gen(guid_t *u); | ||||
|  |  | |||
|  | @ -71,7 +71,7 @@ static void __init test_uuid_test(const struct test_uuid_data *data) | |||
| 		test_uuid_failed("conversion", false, false, data->uuid, NULL); | ||||
| 
 | ||||
| 	total_tests++; | ||||
| 	if (uuid_le_cmp(data->le, le)) { | ||||
| 	if (!guid_equal(&data->le, &le)) { | ||||
| 		sprintf(buf, "%pUl", &le); | ||||
| 		test_uuid_failed("cmp", false, false, data->uuid, buf); | ||||
| 	} | ||||
|  | @ -82,7 +82,7 @@ static void __init test_uuid_test(const struct test_uuid_data *data) | |||
| 		test_uuid_failed("conversion", false, true, data->uuid, NULL); | ||||
| 
 | ||||
| 	total_tests++; | ||||
| 	if (uuid_be_cmp(data->be, be)) { | ||||
| 	if (uuid_equal(&data->be, &be)) { | ||||
| 		sprintf(buf, "%pUb", &be); | ||||
| 		test_uuid_failed("cmp", false, true, data->uuid, buf); | ||||
| 	} | ||||
|  |  | |||
		Loading…
	
		Reference in a new issue
	
	 Christoph Hellwig
						Christoph Hellwig