diff options
author | Vyacheslav Dubeyko <slava@dubeyko.com> | 2013-08-22 19:35:44 -0400 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2013-08-29 12:47:37 -0400 |
commit | b0e01ab2f3f31384dd9e1c660e0c9831e717e73c (patch) | |
tree | 411dbe31e7bc7fe48770d58ca7f4cd4757d91121 | |
parent | abcdf87c25278b38972e41ca13fffc42b9d1f6f8 (diff) |
nilfs2: remove double bio_put() in nilfs_end_bio_write() for BIO_EOPNOTSUPP error
commit 2df37a19c686c2d7c4e9b4ce1505b5141e3e5552 upstream.
Remove double call of bio_put() in nilfs_end_bio_write() for the case of
BIO_EOPNOTSUPP error detection. The issue was found by Dan Carpenter
and he suggests first version of the fix too.
Signed-off-by: Vyacheslav Dubeyko <slava@dubeyko.com>
Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
Acked-by: Ryusuke Konishi <konishi.ryusuke@lab.ntt.co.jp>
Tested-by: Ryusuke Konishi <konishi.ryusuke@lab.ntt.co.jp>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r-- | fs/nilfs2/segbuf.c | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/fs/nilfs2/segbuf.c b/fs/nilfs2/segbuf.c index dc9a913784ab..5bacf46dc4b3 100644 --- a/fs/nilfs2/segbuf.c +++ b/fs/nilfs2/segbuf.c | |||
@@ -345,8 +345,7 @@ static void nilfs_end_bio_write(struct bio *bio, int err) | |||
345 | 345 | ||
346 | if (err == -EOPNOTSUPP) { | 346 | if (err == -EOPNOTSUPP) { |
347 | set_bit(BIO_EOPNOTSUPP, &bio->bi_flags); | 347 | set_bit(BIO_EOPNOTSUPP, &bio->bi_flags); |
348 | bio_put(bio); | 348 | /* to be detected by nilfs_segbuf_submit_bio() */ |
349 | /* to be detected by submit_seg_bio() */ | ||
350 | } | 349 | } |
351 | 350 | ||
352 | if (!uptodate) | 351 | if (!uptodate) |