diff options
author | Christoph Hellwig <hch@lst.de> | 2009-06-10 11:07:47 -0400 |
---|---|---|
committer | Christoph Hellwig <hch@brick.lst.de> | 2009-06-10 11:07:47 -0400 |
commit | ef14f0c1578dce4b688726eb2603e50b62d6665a (patch) | |
tree | 5a221081850fab8f96455745e90f4a0e2127bce0 /fs/xfs/xfs_arch.h | |
parent | 8b5403a6d772d340541cfb30a668fde119c40ac1 (diff) |
xfs: use generic Posix ACL code
This patch rips out the XFS ACL handling code and uses the generic
fs/posix_acl.c code instead. The ondisk format is of course left
unchanged.
This also introduces the same ACL caching all other Linux filesystems do
by adding pointers to the acl and default acl in struct xfs_inode.
Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Eric Sandeen <sandeen@sandeen.net>
Diffstat (limited to 'fs/xfs/xfs_arch.h')
-rw-r--r-- | fs/xfs/xfs_arch.h | 32 |
1 files changed, 0 insertions, 32 deletions
diff --git a/fs/xfs/xfs_arch.h b/fs/xfs/xfs_arch.h index 53d5e70d1360..0902249354a0 100644 --- a/fs/xfs/xfs_arch.h +++ b/fs/xfs/xfs_arch.h | |||
@@ -73,28 +73,6 @@ static inline void be64_add_cpu(__be64 *a, __s64 b) | |||
73 | 73 | ||
74 | #endif /* __KERNEL__ */ | 74 | #endif /* __KERNEL__ */ |
75 | 75 | ||
76 | /* do we need conversion? */ | ||
77 | #define ARCH_NOCONVERT 1 | ||
78 | #ifdef XFS_NATIVE_HOST | ||
79 | # define ARCH_CONVERT ARCH_NOCONVERT | ||
80 | #else | ||
81 | # define ARCH_CONVERT 0 | ||
82 | #endif | ||
83 | |||
84 | /* generic swapping macros */ | ||
85 | |||
86 | #ifndef HAVE_SWABMACROS | ||
87 | #define INT_SWAP16(type,var) ((typeof(type))(__swab16((__u16)(var)))) | ||
88 | #define INT_SWAP32(type,var) ((typeof(type))(__swab32((__u32)(var)))) | ||
89 | #define INT_SWAP64(type,var) ((typeof(type))(__swab64((__u64)(var)))) | ||
90 | #endif | ||
91 | |||
92 | #define INT_SWAP(type, var) \ | ||
93 | ((sizeof(type) == 8) ? INT_SWAP64(type,var) : \ | ||
94 | ((sizeof(type) == 4) ? INT_SWAP32(type,var) : \ | ||
95 | ((sizeof(type) == 2) ? INT_SWAP16(type,var) : \ | ||
96 | (var)))) | ||
97 | |||
98 | /* | 76 | /* |
99 | * get and set integers from potentially unaligned locations | 77 | * get and set integers from potentially unaligned locations |
100 | */ | 78 | */ |
@@ -107,16 +85,6 @@ static inline void be64_add_cpu(__be64 *a, __s64 b) | |||
107 | ((__u8*)(pointer))[1] = (((value) ) & 0xff); \ | 85 | ((__u8*)(pointer))[1] = (((value) ) & 0xff); \ |
108 | } | 86 | } |
109 | 87 | ||
110 | /* does not return a value */ | ||
111 | #define INT_SET(reference,arch,valueref) \ | ||
112 | (__builtin_constant_p(valueref) ? \ | ||
113 | (void)( (reference) = ( ((arch) != ARCH_NOCONVERT) ? (INT_SWAP((reference),(valueref))) : (valueref)) ) : \ | ||
114 | (void)( \ | ||
115 | ((reference) = (valueref)), \ | ||
116 | ( ((arch) != ARCH_NOCONVERT) ? (reference) = INT_SWAP((reference),(reference)) : 0 ) \ | ||
117 | ) \ | ||
118 | ) | ||
119 | |||
120 | /* | 88 | /* |
121 | * In directories inode numbers are stored as unaligned arrays of unsigned | 89 | * In directories inode numbers are stored as unaligned arrays of unsigned |
122 | * 8bit integers on disk. | 90 | * 8bit integers on disk. |