nilfs2: fix hang-up of cleaner after log writer returned with error
authorRyusuke Konishi <konishi.ryusuke@lab.ntt.co.jp>
Mon, 22 Mar 2010 12:36:06 +0000 (21:36 +0900)
committerRyusuke Konishi <konishi.ryusuke@lab.ntt.co.jp>
Tue, 23 Mar 2010 15:03:06 +0000 (00:03 +0900)
commit110d735a0ae69bdd11af9acb6ea3b979137eb118
treeaa25160aad878031823920a00e802ac3da76b5bb
parent2d8428acaee5468d194d8a84de22a0797791cb33
nilfs2: fix hang-up of cleaner after log writer returned with error

According to the report from Andreas Beckmann (Message-ID:
<4BA54677.3090902@abeckmann.de>), nilfs in 2.6.33 kernel got stuck
after a disk full error.

This turned out to be a regression by log writer updates merged at
kernel 2.6.33.  nilfs_segctor_abort_construction, which is a cleanup
function for erroneous cases, was skipping writeback completion for
some logs.

This fixes the bug and would resolve the hang issue.

Reported-by: Andreas Beckmann <debian@abeckmann.de>
Signed-off-by: Ryusuke Konishi <konishi.ryusuke@lab.ntt.co.jp>
Tested-by: Ryusuke Konishi <konishi.ryusuke@lab.ntt.co.jp>
Cc: stable <stable@kernel.org> [2.6.33.x]
fs/nilfs2/segment.c