forked from Minki/linux
xfs: remove uuid_getnodeuniq and xfs_uu_t
Opencode uuid_getnodeuniq in the only caller, and directly decode the uuid_t representation instead of using a structure cast for it. Signed-off-by: Christoph Hellwig <hch@lst.de>
This commit is contained in:
parent
e64e17a554
commit
cb0ba6cc22
@ -17,31 +17,6 @@
|
||||
*/
|
||||
#include <xfs.h>
|
||||
|
||||
/* IRIX interpretation of an uuid_t */
|
||||
typedef struct {
|
||||
__be32 uu_timelow;
|
||||
__be16 uu_timemid;
|
||||
__be16 uu_timehi;
|
||||
__be16 uu_clockseq;
|
||||
__be16 uu_node[3];
|
||||
} xfs_uu_t;
|
||||
|
||||
/*
|
||||
* uuid_getnodeuniq - obtain the node unique fields of a UUID.
|
||||
*
|
||||
* This is not in any way a standard or condoned UUID function;
|
||||
* it just something that's needed for user-level file handles.
|
||||
*/
|
||||
void
|
||||
uuid_getnodeuniq(uuid_t *uuid, int fsid [2])
|
||||
{
|
||||
xfs_uu_t *uup = (xfs_uu_t *)uuid;
|
||||
|
||||
fsid[0] = (be16_to_cpu(uup->uu_clockseq) << 16) |
|
||||
be16_to_cpu(uup->uu_timemid);
|
||||
fsid[1] = be32_to_cpu(uup->uu_timelow);
|
||||
}
|
||||
|
||||
int
|
||||
uuid_is_nil(uuid_t *uuid)
|
||||
{
|
||||
|
@ -19,6 +19,5 @@
|
||||
#define __XFS_SUPPORT_UUID_H__
|
||||
|
||||
extern int uuid_is_nil(uuid_t *uuid);
|
||||
extern void uuid_getnodeuniq(uuid_t *uuid, int fsid [2]);
|
||||
|
||||
#endif /* __XFS_SUPPORT_UUID_H__ */
|
||||
|
@ -793,7 +793,10 @@ xfs_mountfs(
|
||||
* Copies the low order bits of the timestamp and the randomly
|
||||
* set "sequence" number out of a UUID.
|
||||
*/
|
||||
uuid_getnodeuniq(&sbp->sb_uuid, mp->m_fixedfsid);
|
||||
mp->m_fixedfsid[0] =
|
||||
(get_unaligned_be16(&sbp->sb_uuid.b[8]) << 16) |
|
||||
get_unaligned_be16(&sbp->sb_uuid.b[4]);
|
||||
mp->m_fixedfsid[1] = get_unaligned_be32(&sbp->sb_uuid.b[0]);
|
||||
|
||||
mp->m_dmevmask = 0; /* not persistent; set after each mount */
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user