On Wed, 14 Aug 2013 16:00:01 -0700, Andrew Morton wrote:
On Wed, 14 Aug 2013 01:51:48 +0900 (JST) Ryusuke Konishi [off-list ref] wrote:
quoted
On Tue, 13 Aug 2013 17:50:33 +0400, Vyacheslav Dubeyko wrote:
quoted
From: Vyacheslav Dubeyko <slava@dubeyko.com>
Subject: [PATCH v3 1/2] nilfs2: remove double bio_put() in nilfs_end_bio_write() for BIO_EOPNOTSUPP error
This patch removes 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.
Reported-by: Dan Carpenter <redacted>
Signed-off-by: Vyacheslav Dubeyko <slava@dubeyko.com>
CC: Ryusuke Konishi <redacted>
Acked-by: Ryusuke Konishi <redacted>
Tested-by: Ryusuke Konishi <redacted>
I tested this patch by inserting a pseudo EOPNOTSUPP error, and this
actually fixed a crach "kernel BUG at fs/bio.c:498!" due to reference
count underflow of bio_put() that nilfs_end_bio_write() induced.
Andrew, please pick up this bug-fix preferably for this cycle.
Should we apply the fix to earlier kernel versions and if so, how
far back in time does it go?
Yes, I think it should also be applied to earlier versions.
I looked back ealiear versions.
This bug, unfortunately, comes from the original version (2.6.30), and
the patch could be applied to all versions.
Regards,
Ryusuke Konishi