aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRyusuke Konishi <konishi.ryusuke@lab.ntt.co.jp>2010-01-31 12:39:50 +0900
committerRyusuke Konishi <konishi.ryusuke@lab.ntt.co.jp>2010-01-31 14:57:31 +0900
commit3256a05531b1164a9c138da701b922a113bddf82 (patch)
treecbaf7f9c6ee23683eef59922ae08e60da110a487
parentabe94c756c08d50566c09a65b9c7fe72f83071c5 (diff)
downloadmrst-s0i3-test-3256a05531b1164a9c138da701b922a113bddf82.tar.gz
mrst-s0i3-test-3256a05531b1164a9c138da701b922a113bddf82.tar.xz
mrst-s0i3-test-3256a05531b1164a9c138da701b922a113bddf82.zip
nilfs2: fix potential leak of dirty data on umount
This fixes incorrect usage of nilfs_segctor_confirm() test function in nilfs_segctor_destroy(); nilfs_segctor_confirm() returns zero if the filesystem is not clean, so its use in nilfs_segctor_destroy() needs inversion. Signed-off-by: Ryusuke Konishi <konishi.ryusuke@lab.ntt.co.jp>
-rw-r--r--fs/nilfs2/segment.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/nilfs2/segment.c b/fs/nilfs2/segment.c
index 17584c52448..105b508b47a 100644
--- a/fs/nilfs2/segment.c
+++ b/fs/nilfs2/segment.c
@@ -2829,7 +2829,7 @@ static void nilfs_segctor_destroy(struct nilfs_sc_info *sci)
|| sci->sc_seq_request != sci->sc_seq_done);
spin_unlock(&sci->sc_state_lock);
- if (flag || nilfs_segctor_confirm(sci))
+ if (flag || !nilfs_segctor_confirm(sci))
nilfs_segctor_write_out(sci);
WARN_ON(!list_empty(&sci->sc_copied_buffers));