2010-08-22 13:31:06

by Ryusuke Konishi

[permalink] [raw]
Subject: [GIT PULL] nilfs2 additional fix

Hi Linus,

please pull:

git://git.kernel.org/pub/scm/linux/kernel/git/ryusuke/nilfs2.git for-linus

to grab the following fix, which corrects sync failure of discard in
nilfs that Christoph noticed me recently.

Thanks!

Ryusuke Konishi
--
The following changes since commit 3b89f56783a4ef796190ef1192c25e72e0b986b6:
Linus Torvalds (1):
Merge branch 'for-linus' of git://git.kernel.org/.../jmorris/security-testing-2.6

Ryusuke Konishi (1):
nilfs2: wait for discard to finish

fs/nilfs2/the_nilfs.c | 4 +++-

diff --git a/fs/nilfs2/the_nilfs.c b/fs/nilfs2/the_nilfs.c
index 6af1c00..4317f17 100644
--- a/fs/nilfs2/the_nilfs.c
+++ b/fs/nilfs2/the_nilfs.c
@@ -775,6 +775,7 @@ int nilfs_discard_segments(struct the_nilfs *nilfs, __u64 *segnump,
start * sects_per_block,
nblocks * sects_per_block,
GFP_NOFS,
+ BLKDEV_IFL_WAIT |
BLKDEV_IFL_BARRIER);
if (ret < 0)
return ret;
@@ -785,7 +786,8 @@ int nilfs_discard_segments(struct the_nilfs *nilfs, __u64 *segnump,
ret = blkdev_issue_discard(nilfs->ns_bdev,
start * sects_per_block,
nblocks * sects_per_block,
- GFP_NOFS, BLKDEV_IFL_BARRIER);
+ GFP_NOFS,
+ BLKDEV_IFL_WAIT | BLKDEV_IFL_BARRIER);
return ret;
}