diff options
author | Mingming <cmm@us.ibm.com> | 2009-11-03 14:44:54 -0500 |
---|---|---|
committer | Theodore Ts'o <tytso@mit.edu> | 2009-11-03 14:44:54 -0500 |
commit | 4b70df181611012a3556f017b57dfcef7e1d279f (patch) | |
tree | 95da7ccaea96227b597078c1c5f2a7571d959e99 /fs/ext4/inode.c | |
parent | 5f5249507e4b5c4fc0f9c93f33d133d8c95f47e1 (diff) |
ext4: code clean up for dio fallocate handling
The ext4_debug() call in ext4_end_io_dio() should be moved after the
check to make sure that io_end is non-NULL.
The comment above ext4_get_block_dio_write() ("Maximum number of
blocks...") is a duplicate; the original and correct comment is above
the #define DIO_MAX_BLOCKS up above.
Based on review comments from Curt Wohlgemuth.
Signed-off-by: Mingming Cao <cmm@us.ibm.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
Diffstat (limited to 'fs/ext4/inode.c')
-rw-r--r-- | fs/ext4/inode.c | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/fs/ext4/inode.c b/fs/ext4/inode.c index a9ed2bce74d1..2c8caa51addb 100644 --- a/fs/ext4/inode.c +++ b/fs/ext4/inode.c | |||
@@ -3446,8 +3446,6 @@ out: | |||
3446 | return ret; | 3446 | return ret; |
3447 | } | 3447 | } |
3448 | 3448 | ||
3449 | /* Maximum number of blocks we map for direct IO at once. */ | ||
3450 | |||
3451 | static int ext4_get_block_dio_write(struct inode *inode, sector_t iblock, | 3449 | static int ext4_get_block_dio_write(struct inode *inode, sector_t iblock, |
3452 | struct buffer_head *bh_result, int create) | 3450 | struct buffer_head *bh_result, int create) |
3453 | { | 3451 | { |
@@ -3655,13 +3653,14 @@ static void ext4_end_io_dio(struct kiocb *iocb, loff_t offset, | |||
3655 | ext4_io_end_t *io_end = iocb->private; | 3653 | ext4_io_end_t *io_end = iocb->private; |
3656 | struct workqueue_struct *wq; | 3654 | struct workqueue_struct *wq; |
3657 | 3655 | ||
3656 | /* if not async direct IO or dio with 0 bytes write, just return */ | ||
3657 | if (!io_end || !size) | ||
3658 | return; | ||
3659 | |||
3658 | ext_debug("ext4_end_io_dio(): io_end 0x%p" | 3660 | ext_debug("ext4_end_io_dio(): io_end 0x%p" |
3659 | "for inode %lu, iocb 0x%p, offset %llu, size %llu\n", | 3661 | "for inode %lu, iocb 0x%p, offset %llu, size %llu\n", |
3660 | iocb->private, io_end->inode->i_ino, iocb, offset, | 3662 | iocb->private, io_end->inode->i_ino, iocb, offset, |
3661 | size); | 3663 | size); |
3662 | /* if not async direct IO or dio with 0 bytes write, just return */ | ||
3663 | if (!io_end || !size) | ||
3664 | return; | ||
3665 | 3664 | ||
3666 | /* if not aio dio with unwritten extents, just free io and return */ | 3665 | /* if not aio dio with unwritten extents, just free io and return */ |
3667 | if (io_end->flag != DIO_AIO_UNWRITTEN){ | 3666 | if (io_end->flag != DIO_AIO_UNWRITTEN){ |