diff options
author | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2007-07-15 19:43:43 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2007-07-15 19:43:43 -0400 |
commit | 2d896c780db9cda5dc102bf7a0a2cd4394c1342e (patch) | |
tree | db58116f4b5c1539bdac1e3c680587784396037f /fs/xfs/xfs_dir2_leaf.h | |
parent | 2a9915c8a2e532f6c9b435e5f90008d601a87b90 (diff) | |
parent | 0f1145cc18e970ebe37da114fc34c297f135e062 (diff) |
Merge branch 'for-linus' of git://oss.sgi.com:8090/xfs/xfs-2.6
* 'for-linus' of git://oss.sgi.com:8090/xfs/xfs-2.6: (37 commits)
[XFS] Fix lockdep annotations for xfs_lock_inodes
[LIB]: export radix_tree_preload()
[XFS] Fix XFS_IOC_FSBULKSTAT{,_SINGLE} & XFS_IOC_FSINUMBERS in compat mode
[XFS] Compat ioctl handler for handle operations
[XFS] Compat ioctl handler for XFS_IOC_FSGEOMETRY_V1.
[XFS] Clean up function name handling in tracing code
[XFS] Quota inode has no parent.
[XFS] Concurrent Multi-File Data Streams
[XFS] Use uninitialized_var macro to stop warning about rtx
[XFS] XFS should not be looking at filp reference counts
[XFS] Use is_power_of_2 instead of open coding checks
[XFS] Reduce shouting by removing unnecessary macros from dir2 code.
[XFS] Simplify XFS min/max macros.
[XFS] Kill off xfs_count_bits
[XFS] Cancel transactions on xfs_itruncate_start error.
[XFS] Use do_div() on 64 bit types.
[XFS] Fix remount,readonly path to flush everything correctly.
[XFS] Cleanup inode extent size hint extraction
[XFS] Prevent ENOSPC from aborting transactions that need to succeed
[XFS] Prevent deadlock when flushing inodes on unmount
...
Diffstat (limited to 'fs/xfs/xfs_dir2_leaf.h')
-rw-r--r-- | fs/xfs/xfs_dir2_leaf.h | 29 |
1 files changed, 6 insertions, 23 deletions
diff --git a/fs/xfs/xfs_dir2_leaf.h b/fs/xfs/xfs_dir2_leaf.h index f57ca1162412..70c97f3f815e 100644 --- a/fs/xfs/xfs_dir2_leaf.h +++ b/fs/xfs/xfs_dir2_leaf.h | |||
@@ -32,7 +32,7 @@ struct xfs_trans; | |||
32 | #define XFS_DIR2_LEAF_SPACE 1 | 32 | #define XFS_DIR2_LEAF_SPACE 1 |
33 | #define XFS_DIR2_LEAF_OFFSET (XFS_DIR2_LEAF_SPACE * XFS_DIR2_SPACE_SIZE) | 33 | #define XFS_DIR2_LEAF_OFFSET (XFS_DIR2_LEAF_SPACE * XFS_DIR2_SPACE_SIZE) |
34 | #define XFS_DIR2_LEAF_FIRSTDB(mp) \ | 34 | #define XFS_DIR2_LEAF_FIRSTDB(mp) \ |
35 | XFS_DIR2_BYTE_TO_DB(mp, XFS_DIR2_LEAF_OFFSET) | 35 | xfs_dir2_byte_to_db(mp, XFS_DIR2_LEAF_OFFSET) |
36 | 36 | ||
37 | /* | 37 | /* |
38 | * Offset in data space of a data entry. | 38 | * Offset in data space of a data entry. |
@@ -82,7 +82,6 @@ typedef struct xfs_dir2_leaf { | |||
82 | * DB blocks here are logical directory block numbers, not filesystem blocks. | 82 | * DB blocks here are logical directory block numbers, not filesystem blocks. |
83 | */ | 83 | */ |
84 | 84 | ||
85 | #define XFS_DIR2_MAX_LEAF_ENTS(mp) xfs_dir2_max_leaf_ents(mp) | ||
86 | static inline int xfs_dir2_max_leaf_ents(struct xfs_mount *mp) | 85 | static inline int xfs_dir2_max_leaf_ents(struct xfs_mount *mp) |
87 | { | 86 | { |
88 | return (int)(((mp)->m_dirblksize - (uint)sizeof(xfs_dir2_leaf_hdr_t)) / | 87 | return (int)(((mp)->m_dirblksize - (uint)sizeof(xfs_dir2_leaf_hdr_t)) / |
@@ -92,7 +91,6 @@ static inline int xfs_dir2_max_leaf_ents(struct xfs_mount *mp) | |||
92 | /* | 91 | /* |
93 | * Get address of the bestcount field in the single-leaf block. | 92 | * Get address of the bestcount field in the single-leaf block. |
94 | */ | 93 | */ |
95 | #define XFS_DIR2_LEAF_TAIL_P(mp,lp) xfs_dir2_leaf_tail_p(mp, lp) | ||
96 | static inline xfs_dir2_leaf_tail_t * | 94 | static inline xfs_dir2_leaf_tail_t * |
97 | xfs_dir2_leaf_tail_p(struct xfs_mount *mp, xfs_dir2_leaf_t *lp) | 95 | xfs_dir2_leaf_tail_p(struct xfs_mount *mp, xfs_dir2_leaf_t *lp) |
98 | { | 96 | { |
@@ -104,7 +102,6 @@ xfs_dir2_leaf_tail_p(struct xfs_mount *mp, xfs_dir2_leaf_t *lp) | |||
104 | /* | 102 | /* |
105 | * Get address of the bests array in the single-leaf block. | 103 | * Get address of the bests array in the single-leaf block. |
106 | */ | 104 | */ |
107 | #define XFS_DIR2_LEAF_BESTS_P(ltp) xfs_dir2_leaf_bests_p(ltp) | ||
108 | static inline __be16 * | 105 | static inline __be16 * |
109 | xfs_dir2_leaf_bests_p(xfs_dir2_leaf_tail_t *ltp) | 106 | xfs_dir2_leaf_bests_p(xfs_dir2_leaf_tail_t *ltp) |
110 | { | 107 | { |
@@ -114,7 +111,6 @@ xfs_dir2_leaf_bests_p(xfs_dir2_leaf_tail_t *ltp) | |||
114 | /* | 111 | /* |
115 | * Convert dataptr to byte in file space | 112 | * Convert dataptr to byte in file space |
116 | */ | 113 | */ |
117 | #define XFS_DIR2_DATAPTR_TO_BYTE(mp,dp) xfs_dir2_dataptr_to_byte(mp, dp) | ||
118 | static inline xfs_dir2_off_t | 114 | static inline xfs_dir2_off_t |
119 | xfs_dir2_dataptr_to_byte(struct xfs_mount *mp, xfs_dir2_dataptr_t dp) | 115 | xfs_dir2_dataptr_to_byte(struct xfs_mount *mp, xfs_dir2_dataptr_t dp) |
120 | { | 116 | { |
@@ -124,7 +120,6 @@ xfs_dir2_dataptr_to_byte(struct xfs_mount *mp, xfs_dir2_dataptr_t dp) | |||
124 | /* | 120 | /* |
125 | * Convert byte in file space to dataptr. It had better be aligned. | 121 | * Convert byte in file space to dataptr. It had better be aligned. |
126 | */ | 122 | */ |
127 | #define XFS_DIR2_BYTE_TO_DATAPTR(mp,by) xfs_dir2_byte_to_dataptr(mp,by) | ||
128 | static inline xfs_dir2_dataptr_t | 123 | static inline xfs_dir2_dataptr_t |
129 | xfs_dir2_byte_to_dataptr(struct xfs_mount *mp, xfs_dir2_off_t by) | 124 | xfs_dir2_byte_to_dataptr(struct xfs_mount *mp, xfs_dir2_off_t by) |
130 | { | 125 | { |
@@ -134,7 +129,6 @@ xfs_dir2_byte_to_dataptr(struct xfs_mount *mp, xfs_dir2_off_t by) | |||
134 | /* | 129 | /* |
135 | * Convert byte in space to (DB) block | 130 | * Convert byte in space to (DB) block |
136 | */ | 131 | */ |
137 | #define XFS_DIR2_BYTE_TO_DB(mp,by) xfs_dir2_byte_to_db(mp, by) | ||
138 | static inline xfs_dir2_db_t | 132 | static inline xfs_dir2_db_t |
139 | xfs_dir2_byte_to_db(struct xfs_mount *mp, xfs_dir2_off_t by) | 133 | xfs_dir2_byte_to_db(struct xfs_mount *mp, xfs_dir2_off_t by) |
140 | { | 134 | { |
@@ -145,17 +139,15 @@ xfs_dir2_byte_to_db(struct xfs_mount *mp, xfs_dir2_off_t by) | |||
145 | /* | 139 | /* |
146 | * Convert dataptr to a block number | 140 | * Convert dataptr to a block number |
147 | */ | 141 | */ |
148 | #define XFS_DIR2_DATAPTR_TO_DB(mp,dp) xfs_dir2_dataptr_to_db(mp, dp) | ||
149 | static inline xfs_dir2_db_t | 142 | static inline xfs_dir2_db_t |
150 | xfs_dir2_dataptr_to_db(struct xfs_mount *mp, xfs_dir2_dataptr_t dp) | 143 | xfs_dir2_dataptr_to_db(struct xfs_mount *mp, xfs_dir2_dataptr_t dp) |
151 | { | 144 | { |
152 | return XFS_DIR2_BYTE_TO_DB(mp, XFS_DIR2_DATAPTR_TO_BYTE(mp, dp)); | 145 | return xfs_dir2_byte_to_db(mp, xfs_dir2_dataptr_to_byte(mp, dp)); |
153 | } | 146 | } |
154 | 147 | ||
155 | /* | 148 | /* |
156 | * Convert byte in space to offset in a block | 149 | * Convert byte in space to offset in a block |
157 | */ | 150 | */ |
158 | #define XFS_DIR2_BYTE_TO_OFF(mp,by) xfs_dir2_byte_to_off(mp, by) | ||
159 | static inline xfs_dir2_data_aoff_t | 151 | static inline xfs_dir2_data_aoff_t |
160 | xfs_dir2_byte_to_off(struct xfs_mount *mp, xfs_dir2_off_t by) | 152 | xfs_dir2_byte_to_off(struct xfs_mount *mp, xfs_dir2_off_t by) |
161 | { | 153 | { |
@@ -166,18 +158,15 @@ xfs_dir2_byte_to_off(struct xfs_mount *mp, xfs_dir2_off_t by) | |||
166 | /* | 158 | /* |
167 | * Convert dataptr to a byte offset in a block | 159 | * Convert dataptr to a byte offset in a block |
168 | */ | 160 | */ |
169 | #define XFS_DIR2_DATAPTR_TO_OFF(mp,dp) xfs_dir2_dataptr_to_off(mp, dp) | ||
170 | static inline xfs_dir2_data_aoff_t | 161 | static inline xfs_dir2_data_aoff_t |
171 | xfs_dir2_dataptr_to_off(struct xfs_mount *mp, xfs_dir2_dataptr_t dp) | 162 | xfs_dir2_dataptr_to_off(struct xfs_mount *mp, xfs_dir2_dataptr_t dp) |
172 | { | 163 | { |
173 | return XFS_DIR2_BYTE_TO_OFF(mp, XFS_DIR2_DATAPTR_TO_BYTE(mp, dp)); | 164 | return xfs_dir2_byte_to_off(mp, xfs_dir2_dataptr_to_byte(mp, dp)); |
174 | } | 165 | } |
175 | 166 | ||
176 | /* | 167 | /* |
177 | * Convert block and offset to byte in space | 168 | * Convert block and offset to byte in space |
178 | */ | 169 | */ |
179 | #define XFS_DIR2_DB_OFF_TO_BYTE(mp,db,o) \ | ||
180 | xfs_dir2_db_off_to_byte(mp, db, o) | ||
181 | static inline xfs_dir2_off_t | 170 | static inline xfs_dir2_off_t |
182 | xfs_dir2_db_off_to_byte(struct xfs_mount *mp, xfs_dir2_db_t db, | 171 | xfs_dir2_db_off_to_byte(struct xfs_mount *mp, xfs_dir2_db_t db, |
183 | xfs_dir2_data_aoff_t o) | 172 | xfs_dir2_data_aoff_t o) |
@@ -189,7 +178,6 @@ xfs_dir2_db_off_to_byte(struct xfs_mount *mp, xfs_dir2_db_t db, | |||
189 | /* | 178 | /* |
190 | * Convert block (DB) to block (dablk) | 179 | * Convert block (DB) to block (dablk) |
191 | */ | 180 | */ |
192 | #define XFS_DIR2_DB_TO_DA(mp,db) xfs_dir2_db_to_da(mp, db) | ||
193 | static inline xfs_dablk_t | 181 | static inline xfs_dablk_t |
194 | xfs_dir2_db_to_da(struct xfs_mount *mp, xfs_dir2_db_t db) | 182 | xfs_dir2_db_to_da(struct xfs_mount *mp, xfs_dir2_db_t db) |
195 | { | 183 | { |
@@ -199,29 +187,25 @@ xfs_dir2_db_to_da(struct xfs_mount *mp, xfs_dir2_db_t db) | |||
199 | /* | 187 | /* |
200 | * Convert byte in space to (DA) block | 188 | * Convert byte in space to (DA) block |
201 | */ | 189 | */ |
202 | #define XFS_DIR2_BYTE_TO_DA(mp,by) xfs_dir2_byte_to_da(mp, by) | ||
203 | static inline xfs_dablk_t | 190 | static inline xfs_dablk_t |
204 | xfs_dir2_byte_to_da(struct xfs_mount *mp, xfs_dir2_off_t by) | 191 | xfs_dir2_byte_to_da(struct xfs_mount *mp, xfs_dir2_off_t by) |
205 | { | 192 | { |
206 | return XFS_DIR2_DB_TO_DA(mp, XFS_DIR2_BYTE_TO_DB(mp, by)); | 193 | return xfs_dir2_db_to_da(mp, xfs_dir2_byte_to_db(mp, by)); |
207 | } | 194 | } |
208 | 195 | ||
209 | /* | 196 | /* |
210 | * Convert block and offset to dataptr | 197 | * Convert block and offset to dataptr |
211 | */ | 198 | */ |
212 | #define XFS_DIR2_DB_OFF_TO_DATAPTR(mp,db,o) \ | ||
213 | xfs_dir2_db_off_to_dataptr(mp, db, o) | ||
214 | static inline xfs_dir2_dataptr_t | 199 | static inline xfs_dir2_dataptr_t |
215 | xfs_dir2_db_off_to_dataptr(struct xfs_mount *mp, xfs_dir2_db_t db, | 200 | xfs_dir2_db_off_to_dataptr(struct xfs_mount *mp, xfs_dir2_db_t db, |
216 | xfs_dir2_data_aoff_t o) | 201 | xfs_dir2_data_aoff_t o) |
217 | { | 202 | { |
218 | return XFS_DIR2_BYTE_TO_DATAPTR(mp, XFS_DIR2_DB_OFF_TO_BYTE(mp, db, o)); | 203 | return xfs_dir2_byte_to_dataptr(mp, xfs_dir2_db_off_to_byte(mp, db, o)); |
219 | } | 204 | } |
220 | 205 | ||
221 | /* | 206 | /* |
222 | * Convert block (dablk) to block (DB) | 207 | * Convert block (dablk) to block (DB) |
223 | */ | 208 | */ |
224 | #define XFS_DIR2_DA_TO_DB(mp,da) xfs_dir2_da_to_db(mp, da) | ||
225 | static inline xfs_dir2_db_t | 209 | static inline xfs_dir2_db_t |
226 | xfs_dir2_da_to_db(struct xfs_mount *mp, xfs_dablk_t da) | 210 | xfs_dir2_da_to_db(struct xfs_mount *mp, xfs_dablk_t da) |
227 | { | 211 | { |
@@ -231,11 +215,10 @@ xfs_dir2_da_to_db(struct xfs_mount *mp, xfs_dablk_t da) | |||
231 | /* | 215 | /* |
232 | * Convert block (dablk) to byte offset in space | 216 | * Convert block (dablk) to byte offset in space |
233 | */ | 217 | */ |
234 | #define XFS_DIR2_DA_TO_BYTE(mp,da) xfs_dir2_da_to_byte(mp, da) | ||
235 | static inline xfs_dir2_off_t | 218 | static inline xfs_dir2_off_t |
236 | xfs_dir2_da_to_byte(struct xfs_mount *mp, xfs_dablk_t da) | 219 | xfs_dir2_da_to_byte(struct xfs_mount *mp, xfs_dablk_t da) |
237 | { | 220 | { |
238 | return XFS_DIR2_DB_OFF_TO_BYTE(mp, XFS_DIR2_DA_TO_DB(mp, da), 0); | 221 | return xfs_dir2_db_off_to_byte(mp, xfs_dir2_da_to_db(mp, da), 0); |
239 | } | 222 | } |
240 | 223 | ||
241 | /* | 224 | /* |