diff options
Diffstat (limited to 'include')
-rw-r--r-- | include/linux/ext3_fs_sb.h | 2 | ||||
-rw-r--r-- | include/linux/ext3_jbd.h | 7 | ||||
-rw-r--r-- | include/linux/fs.h | 1 | ||||
-rw-r--r-- | include/linux/kfifo.h | 31 | ||||
-rw-r--r-- | include/linux/quota.h | 5 |
5 files changed, 26 insertions, 20 deletions
diff --git a/include/linux/ext3_fs_sb.h b/include/linux/ext3_fs_sb.h index f07f34de2f0e..258088ab3c6b 100644 --- a/include/linux/ext3_fs_sb.h +++ b/include/linux/ext3_fs_sb.h | |||
@@ -72,6 +72,8 @@ struct ext3_sb_info { | |||
72 | struct inode * s_journal_inode; | 72 | struct inode * s_journal_inode; |
73 | struct journal_s * s_journal; | 73 | struct journal_s * s_journal; |
74 | struct list_head s_orphan; | 74 | struct list_head s_orphan; |
75 | struct mutex s_orphan_lock; | ||
76 | struct mutex s_resize_lock; | ||
75 | unsigned long s_commit_interval; | 77 | unsigned long s_commit_interval; |
76 | struct block_device *journal_bdev; | 78 | struct block_device *journal_bdev; |
77 | #ifdef CONFIG_JBD_DEBUG | 79 | #ifdef CONFIG_JBD_DEBUG |
diff --git a/include/linux/ext3_jbd.h b/include/linux/ext3_jbd.h index cf82d519be40..d7b5ddca99c2 100644 --- a/include/linux/ext3_jbd.h +++ b/include/linux/ext3_jbd.h | |||
@@ -44,13 +44,13 @@ | |||
44 | 44 | ||
45 | #define EXT3_DATA_TRANS_BLOCKS(sb) (EXT3_SINGLEDATA_TRANS_BLOCKS + \ | 45 | #define EXT3_DATA_TRANS_BLOCKS(sb) (EXT3_SINGLEDATA_TRANS_BLOCKS + \ |
46 | EXT3_XATTR_TRANS_BLOCKS - 2 + \ | 46 | EXT3_XATTR_TRANS_BLOCKS - 2 + \ |
47 | 2*EXT3_QUOTA_TRANS_BLOCKS(sb)) | 47 | EXT3_MAXQUOTAS_TRANS_BLOCKS(sb)) |
48 | 48 | ||
49 | /* Delete operations potentially hit one directory's namespace plus an | 49 | /* Delete operations potentially hit one directory's namespace plus an |
50 | * entire inode, plus arbitrary amounts of bitmap/indirection data. Be | 50 | * entire inode, plus arbitrary amounts of bitmap/indirection data. Be |
51 | * generous. We can grow the delete transaction later if necessary. */ | 51 | * generous. We can grow the delete transaction later if necessary. */ |
52 | 52 | ||
53 | #define EXT3_DELETE_TRANS_BLOCKS(sb) (2 * EXT3_DATA_TRANS_BLOCKS(sb) + 64) | 53 | #define EXT3_DELETE_TRANS_BLOCKS(sb) (EXT3_MAXQUOTAS_TRANS_BLOCKS(sb) + 64) |
54 | 54 | ||
55 | /* Define an arbitrary limit for the amount of data we will anticipate | 55 | /* Define an arbitrary limit for the amount of data we will anticipate |
56 | * writing to any given transaction. For unbounded transactions such as | 56 | * writing to any given transaction. For unbounded transactions such as |
@@ -86,6 +86,9 @@ | |||
86 | #define EXT3_QUOTA_INIT_BLOCKS(sb) 0 | 86 | #define EXT3_QUOTA_INIT_BLOCKS(sb) 0 |
87 | #define EXT3_QUOTA_DEL_BLOCKS(sb) 0 | 87 | #define EXT3_QUOTA_DEL_BLOCKS(sb) 0 |
88 | #endif | 88 | #endif |
89 | #define EXT3_MAXQUOTAS_TRANS_BLOCKS(sb) (MAXQUOTAS*EXT3_QUOTA_TRANS_BLOCKS(sb)) | ||
90 | #define EXT3_MAXQUOTAS_INIT_BLOCKS(sb) (MAXQUOTAS*EXT3_QUOTA_INIT_BLOCKS(sb)) | ||
91 | #define EXT3_MAXQUOTAS_DEL_BLOCKS(sb) (MAXQUOTAS*EXT3_QUOTA_DEL_BLOCKS(sb)) | ||
89 | 92 | ||
90 | int | 93 | int |
91 | ext3_mark_iloc_dirty(handle_t *handle, | 94 | ext3_mark_iloc_dirty(handle_t *handle, |
diff --git a/include/linux/fs.h b/include/linux/fs.h index 7e3012e0ac06..9147ca88f253 100644 --- a/include/linux/fs.h +++ b/include/linux/fs.h | |||
@@ -2297,6 +2297,7 @@ extern const struct inode_operations page_symlink_inode_operations; | |||
2297 | extern int generic_readlink(struct dentry *, char __user *, int); | 2297 | extern int generic_readlink(struct dentry *, char __user *, int); |
2298 | extern void generic_fillattr(struct inode *, struct kstat *); | 2298 | extern void generic_fillattr(struct inode *, struct kstat *); |
2299 | extern int vfs_getattr(struct vfsmount *, struct dentry *, struct kstat *); | 2299 | extern int vfs_getattr(struct vfsmount *, struct dentry *, struct kstat *); |
2300 | void __inode_add_bytes(struct inode *inode, loff_t bytes); | ||
2300 | void inode_add_bytes(struct inode *inode, loff_t bytes); | 2301 | void inode_add_bytes(struct inode *inode, loff_t bytes); |
2301 | void inode_sub_bytes(struct inode *inode, loff_t bytes); | 2302 | void inode_sub_bytes(struct inode *inode, loff_t bytes); |
2302 | loff_t inode_get_bytes(struct inode *inode); | 2303 | loff_t inode_get_bytes(struct inode *inode); |
diff --git a/include/linux/kfifo.h b/include/linux/kfifo.h index 486e8ad3bb50..3d44e9c65a8e 100644 --- a/include/linux/kfifo.h +++ b/include/linux/kfifo.h | |||
@@ -69,8 +69,8 @@ struct kfifo { | |||
69 | * @name: name of the declared kfifo datatype | 69 | * @name: name of the declared kfifo datatype |
70 | * @size: size of the fifo buffer | 70 | * @size: size of the fifo buffer |
71 | * | 71 | * |
72 | * Note: the macro can be used inside struct or union declaration | 72 | * Note1: the macro can be used inside struct or union declaration |
73 | * Note: the macro creates two objects: | 73 | * Note2: the macro creates two objects: |
74 | * A kfifo object with the given name and a buffer for the kfifo | 74 | * A kfifo object with the given name and a buffer for the kfifo |
75 | * object named name##kfifo_buffer | 75 | * object named name##kfifo_buffer |
76 | */ | 76 | */ |
@@ -83,7 +83,6 @@ union { \ | |||
83 | /** | 83 | /** |
84 | * INIT_KFIFO - Initialize a kfifo declared by DECLARED_KFIFO | 84 | * INIT_KFIFO - Initialize a kfifo declared by DECLARED_KFIFO |
85 | * @name: name of the declared kfifo datatype | 85 | * @name: name of the declared kfifo datatype |
86 | * @size: size of the fifo buffer | ||
87 | */ | 86 | */ |
88 | #define INIT_KFIFO(name) \ | 87 | #define INIT_KFIFO(name) \ |
89 | name = __kfifo_initializer(sizeof(name##kfifo_buffer) - \ | 88 | name = __kfifo_initializer(sizeof(name##kfifo_buffer) - \ |
@@ -94,8 +93,8 @@ union { \ | |||
94 | * @name: name of the declared kfifo datatype | 93 | * @name: name of the declared kfifo datatype |
95 | * @size: size of the fifo buffer | 94 | * @size: size of the fifo buffer |
96 | * | 95 | * |
97 | * Note: the macro can be used for global and local kfifo data type variables | 96 | * Note1: the macro can be used for global and local kfifo data type variables |
98 | * Note: the macro creates two objects: | 97 | * Note2: the macro creates two objects: |
99 | * A kfifo object with the given name and a buffer for the kfifo | 98 | * A kfifo object with the given name and a buffer for the kfifo |
100 | * object named name##kfifo_buffer | 99 | * object named name##kfifo_buffer |
101 | */ | 100 | */ |
@@ -249,7 +248,7 @@ extern __must_check unsigned int kfifo_from_user(struct kfifo *fifo, | |||
249 | extern __must_check unsigned int kfifo_to_user(struct kfifo *fifo, | 248 | extern __must_check unsigned int kfifo_to_user(struct kfifo *fifo, |
250 | void __user *to, unsigned int n); | 249 | void __user *to, unsigned int n); |
251 | 250 | ||
252 | /** | 251 | /* |
253 | * __kfifo_add_out internal helper function for updating the out offset | 252 | * __kfifo_add_out internal helper function for updating the out offset |
254 | */ | 253 | */ |
255 | static inline void __kfifo_add_out(struct kfifo *fifo, | 254 | static inline void __kfifo_add_out(struct kfifo *fifo, |
@@ -259,7 +258,7 @@ static inline void __kfifo_add_out(struct kfifo *fifo, | |||
259 | fifo->out += off; | 258 | fifo->out += off; |
260 | } | 259 | } |
261 | 260 | ||
262 | /** | 261 | /* |
263 | * __kfifo_add_in internal helper function for updating the in offset | 262 | * __kfifo_add_in internal helper function for updating the in offset |
264 | */ | 263 | */ |
265 | static inline void __kfifo_add_in(struct kfifo *fifo, | 264 | static inline void __kfifo_add_in(struct kfifo *fifo, |
@@ -269,7 +268,7 @@ static inline void __kfifo_add_in(struct kfifo *fifo, | |||
269 | fifo->in += off; | 268 | fifo->in += off; |
270 | } | 269 | } |
271 | 270 | ||
272 | /** | 271 | /* |
273 | * __kfifo_off internal helper function for calculating the index of a | 272 | * __kfifo_off internal helper function for calculating the index of a |
274 | * given offeset | 273 | * given offeset |
275 | */ | 274 | */ |
@@ -278,7 +277,7 @@ static inline unsigned int __kfifo_off(struct kfifo *fifo, unsigned int off) | |||
278 | return off & (fifo->size - 1); | 277 | return off & (fifo->size - 1); |
279 | } | 278 | } |
280 | 279 | ||
281 | /** | 280 | /* |
282 | * __kfifo_peek_n internal helper function for determinate the length of | 281 | * __kfifo_peek_n internal helper function for determinate the length of |
283 | * the next record in the fifo | 282 | * the next record in the fifo |
284 | */ | 283 | */ |
@@ -299,7 +298,7 @@ static inline unsigned int __kfifo_peek_n(struct kfifo *fifo, | |||
299 | #undef __KFIFO_GET | 298 | #undef __KFIFO_GET |
300 | } | 299 | } |
301 | 300 | ||
302 | /** | 301 | /* |
303 | * __kfifo_poke_n internal helper function for storing the length of | 302 | * __kfifo_poke_n internal helper function for storing the length of |
304 | * the next record into the fifo | 303 | * the next record into the fifo |
305 | */ | 304 | */ |
@@ -319,7 +318,7 @@ static inline void __kfifo_poke_n(struct kfifo *fifo, | |||
319 | #undef __KFIFO_PUT | 318 | #undef __KFIFO_PUT |
320 | } | 319 | } |
321 | 320 | ||
322 | /** | 321 | /* |
323 | * __kfifo_in_... internal functions for put date into the fifo | 322 | * __kfifo_in_... internal functions for put date into the fifo |
324 | * do not call it directly, use kfifo_in_rec() instead | 323 | * do not call it directly, use kfifo_in_rec() instead |
325 | */ | 324 | */ |
@@ -367,7 +366,7 @@ static inline __must_check unsigned int kfifo_in_rec(struct kfifo *fifo, | |||
367 | return __kfifo_in_rec(fifo, from, n, recsize); | 366 | return __kfifo_in_rec(fifo, from, n, recsize); |
368 | } | 367 | } |
369 | 368 | ||
370 | /** | 369 | /* |
371 | * __kfifo_out_... internal functions for get date from the fifo | 370 | * __kfifo_out_... internal functions for get date from the fifo |
372 | * do not call it directly, use kfifo_out_rec() instead | 371 | * do not call it directly, use kfifo_out_rec() instead |
373 | */ | 372 | */ |
@@ -425,7 +424,7 @@ static inline __must_check unsigned int kfifo_out_rec(struct kfifo *fifo, | |||
425 | return __kfifo_out_rec(fifo, to, n, recsize, total); | 424 | return __kfifo_out_rec(fifo, to, n, recsize, total); |
426 | } | 425 | } |
427 | 426 | ||
428 | /** | 427 | /* |
429 | * __kfifo_from_user_... internal functions for transfer from user space into | 428 | * __kfifo_from_user_... internal functions for transfer from user space into |
430 | * the fifo. do not call it directly, use kfifo_from_user_rec() instead | 429 | * the fifo. do not call it directly, use kfifo_from_user_rec() instead |
431 | */ | 430 | */ |
@@ -474,7 +473,7 @@ static inline __must_check unsigned int kfifo_from_user_rec(struct kfifo *fifo, | |||
474 | return __kfifo_from_user_rec(fifo, from, n, recsize); | 473 | return __kfifo_from_user_rec(fifo, from, n, recsize); |
475 | } | 474 | } |
476 | 475 | ||
477 | /** | 476 | /* |
478 | * __kfifo_to_user_... internal functions for transfer fifo data into user space | 477 | * __kfifo_to_user_... internal functions for transfer fifo data into user space |
479 | * do not call it directly, use kfifo_to_user_rec() instead | 478 | * do not call it directly, use kfifo_to_user_rec() instead |
480 | */ | 479 | */ |
@@ -533,7 +532,7 @@ static inline __must_check unsigned int kfifo_to_user_rec(struct kfifo *fifo, | |||
533 | return __kfifo_to_user_rec(fifo, to, n, recsize, total); | 532 | return __kfifo_to_user_rec(fifo, to, n, recsize, total); |
534 | } | 533 | } |
535 | 534 | ||
536 | /** | 535 | /* |
537 | * __kfifo_peek_... internal functions for peek into the next fifo record | 536 | * __kfifo_peek_... internal functions for peek into the next fifo record |
538 | * do not call it directly, use kfifo_peek_rec() instead | 537 | * do not call it directly, use kfifo_peek_rec() instead |
539 | */ | 538 | */ |
@@ -557,7 +556,7 @@ static inline __must_check unsigned int kfifo_peek_rec(struct kfifo *fifo, | |||
557 | return __kfifo_peek_n(fifo, recsize); | 556 | return __kfifo_peek_n(fifo, recsize); |
558 | } | 557 | } |
559 | 558 | ||
560 | /** | 559 | /* |
561 | * __kfifo_skip_... internal functions for skip the next fifo record | 560 | * __kfifo_skip_... internal functions for skip the next fifo record |
562 | * do not call it directly, use kfifo_skip_rec() instead | 561 | * do not call it directly, use kfifo_skip_rec() instead |
563 | */ | 562 | */ |
diff --git a/include/linux/quota.h b/include/linux/quota.h index e70e62194243..a6861f117480 100644 --- a/include/linux/quota.h +++ b/include/linux/quota.h | |||
@@ -315,8 +315,9 @@ struct dquot_operations { | |||
315 | int (*claim_space) (struct inode *, qsize_t); | 315 | int (*claim_space) (struct inode *, qsize_t); |
316 | /* release rsved quota for delayed alloc */ | 316 | /* release rsved quota for delayed alloc */ |
317 | void (*release_rsv) (struct inode *, qsize_t); | 317 | void (*release_rsv) (struct inode *, qsize_t); |
318 | /* get reserved quota for delayed alloc */ | 318 | /* get reserved quota for delayed alloc, value returned is managed by |
319 | qsize_t (*get_reserved_space) (struct inode *); | 319 | * quota code only */ |
320 | qsize_t *(*get_reserved_space) (struct inode *); | ||
320 | }; | 321 | }; |
321 | 322 | ||
322 | /* Operations handling requests from userspace */ | 323 | /* Operations handling requests from userspace */ |