The patch below does not apply to the 4.16-stable tree. If someone wants it applied there, or to any other stable or longterm tree, then please email the backport, including the original git commit id to stable@vger.kernel.org.
thanks,
greg k-h
------------------ original commit in Linus's tree ------------------
From 1c1a2ee1b53b006754073eefc65d2b2cedb5264b Mon Sep 17 00:00:00 2001
From: Coly Li colyli@suse.de Date: Thu, 17 May 2018 23:33:26 +0800 Subject: [PATCH] bcache: return 0 from bch_debug_init() if CONFIG_DEBUG_FS=n
Commit 539d39eb2708 ("bcache: fix wrong return value in bch_debug_init()") returns the return value of debugfs_create_dir() to bcache_init(). When CONFIG_DEBUG_FS=n, bch_debug_init() always returns 1 and makes bcache_init() failedi.
This patch makes bch_debug_init() always returns 0 if CONFIG_DEBUG_FS=n, so bcache can continue to work for the kernels which don't have debugfs enanbled.
Changelog: v4: Add Acked-by from Kent Overstreet. v3: Use IS_ENABLED(CONFIG_DEBUG_FS) to replace #ifdef DEBUG_FS. v2: Remove a warning information v1: Initial version.
Fixes: Commit 539d39eb2708 ("bcache: fix wrong return value in bch_debug_init()") Cc: stable@vger.kernel.org Signed-off-by: Coly Li colyli@suse.de Reported-by: Massimo B. massimo.b@gmx.net Reported-by: Kai Krakow kai@kaishome.de Tested-by: Kai Krakow kai@kaishome.de Acked-by: Kent Overstreet kent.overstreet@gmail.com Signed-off-by: Jens Axboe axboe@kernel.dk
diff --git a/drivers/md/bcache/debug.c b/drivers/md/bcache/debug.c index 4e63c6f6c04d..d030ce3025a6 100644 --- a/drivers/md/bcache/debug.c +++ b/drivers/md/bcache/debug.c @@ -250,7 +250,9 @@ void bch_debug_exit(void)
int __init bch_debug_init(struct kobject *kobj) { - bcache_debug = debugfs_create_dir("bcache", NULL); + if (!IS_ENABLED(CONFIG_DEBUG_FS)) + return 0;
+ bcache_debug = debugfs_create_dir("bcache", NULL); return IS_ERR_OR_NULL(bcache_debug); }
Hey Greg!
2018-05-20 9:49 GMT+02:00 gregkh@linuxfoundation.org:
The patch below does not apply to the 4.16-stable tree. If someone wants it applied there, or to any other stable or longterm tree, then please email the backport, including the original git commit id to stable@vger.kernel.org.
The v1 version applied for me but it shows a compiler warning. I didn't try the newer version yet.
I could prepare a back-ported version.
Regards, Kai
------------------ original commit in Linus's tree ------------------
From 1c1a2ee1b53b006754073eefc65d2b2cedb5264b Mon Sep 17 00:00:00 2001 From: Coly Li colyli@suse.de Date: Thu, 17 May 2018 23:33:26 +0800 Subject: [PATCH] bcache: return 0 from bch_debug_init() if CONFIG_DEBUG_FS=n
Commit 539d39eb2708 ("bcache: fix wrong return value in bch_debug_init()") returns the return value of debugfs_create_dir() to bcache_init(). When CONFIG_DEBUG_FS=n, bch_debug_init() always returns 1 and makes bcache_init() failedi.
This patch makes bch_debug_init() always returns 0 if CONFIG_DEBUG_FS=n, so bcache can continue to work for the kernels which don't have debugfs enanbled.
Changelog: v4: Add Acked-by from Kent Overstreet. v3: Use IS_ENABLED(CONFIG_DEBUG_FS) to replace #ifdef DEBUG_FS. v2: Remove a warning information v1: Initial version.
Fixes: Commit 539d39eb2708 ("bcache: fix wrong return value in bch_debug_init()") Cc: stable@vger.kernel.org Signed-off-by: Coly Li colyli@suse.de Reported-by: Massimo B. massimo.b@gmx.net Reported-by: Kai Krakow kai@kaishome.de Tested-by: Kai Krakow kai@kaishome.de Acked-by: Kent Overstreet kent.overstreet@gmail.com Signed-off-by: Jens Axboe axboe@kernel.dk
diff --git a/drivers/md/bcache/debug.c b/drivers/md/bcache/debug.c index 4e63c6f6c04d..d030ce3025a6 100644 --- a/drivers/md/bcache/debug.c +++ b/drivers/md/bcache/debug.c @@ -250,7 +250,9 @@ void bch_debug_exit(void)
int __init bch_debug_init(struct kobject *kobj) {
bcache_debug = debugfs_create_dir("bcache", NULL);
if (!IS_ENABLED(CONFIG_DEBUG_FS))
return 0;
bcache_debug = debugfs_create_dir("bcache", NULL); return IS_ERR_OR_NULL(bcache_debug);
}
From: Coly Li colyli@suse.de
Commit 539d39eb2708 ("bcache: fix wrong return value in bch_debug_init()") returns the return value of debugfs_create_dir() to bcache_init(). When CONFIG_DEBUG_FS=n, bch_debug_init() always returns 1 and makes bcache_init() failedi.
This patch makes bch_debug_init() always returns 0 if CONFIG_DEBUG_FS=n, so bcache can continue to work for the kernels which don't have debugfs enanbled.
Changelog: v4: Add Acked-by from Kent Overstreet. v3: Use IS_ENABLED(CONFIG_DEBUG_FS) to replace #ifdef DEBUG_FS. v2: Remove a warning information v1: Initial version.
Fixes: Commit 539d39eb2708 ("bcache: fix wrong return value in bch_debug_init()") Cc: stable@vger.kernel.org Signed-off-by: Coly Li colyli@suse.de Reported-by: Massimo B. massimo.b@gmx.net Reported-by: Kai Krakow kai@kaishome.de Tested-by: Kai Krakow kai@kaishome.de Acked-by: Kent Overstreet kent.overstreet@gmail.com Signed-off-by: Jens Axboe axboe@kernel.dk (cherry picked from commit 1c1a2ee1b53b006754073eefc65d2b2cedb5264b) Signed-off-by: Kai Krakow kai@kaishome.de --- drivers/md/bcache/debug.c | 3 +++ 1 file changed, 3 insertions(+)
diff --git a/drivers/md/bcache/debug.c b/drivers/md/bcache/debug.c index af89408befe8..b218426a6493 100644 --- a/drivers/md/bcache/debug.c +++ b/drivers/md/bcache/debug.c @@ -251,6 +251,9 @@ void bch_debug_exit(void)
int __init bch_debug_init(struct kobject *kobj) { + if (!IS_ENABLED(CONFIG_DEBUG_FS)) + return 0; + debug = debugfs_create_dir("bcache", NULL);
return IS_ERR_OR_NULL(debug);
On 2018/5/20 5:53 PM, Kai Krakow wrote:
From: Coly Li colyli@suse.de
Commit 539d39eb2708 ("bcache: fix wrong return value in bch_debug_init()") returns the return value of debugfs_create_dir() to bcache_init(). When CONFIG_DEBUG_FS=n, bch_debug_init() always returns 1 and makes bcache_init() failedi.
This patch makes bch_debug_init() always returns 0 if CONFIG_DEBUG_FS=n, so bcache can continue to work for the kernels which don't have debugfs enanbled.
Changelog: v4: Add Acked-by from Kent Overstreet. v3: Use IS_ENABLED(CONFIG_DEBUG_FS) to replace #ifdef DEBUG_FS. v2: Remove a warning information v1: Initial version.
Fixes: Commit 539d39eb2708 ("bcache: fix wrong return value in bch_debug_init()") Cc: stable@vger.kernel.org Signed-off-by: Coly Li colyli@suse.de Reported-by: Massimo B. massimo.b@gmx.net Reported-by: Kai Krakow kai@kaishome.de Tested-by: Kai Krakow kai@kaishome.de Acked-by: Kent Overstreet kent.overstreet@gmail.com Signed-off-by: Jens Axboe axboe@kernel.dk (cherry picked from commit 1c1a2ee1b53b006754073eefc65d2b2cedb5264b) Signed-off-by: Kai Krakow kai@kaishome.de
Reviewed-by: Coly Li colyli@suse.de
Thanks for the back port.
Coly Li
drivers/md/bcache/debug.c | 3 +++ 1 file changed, 3 insertions(+)
diff --git a/drivers/md/bcache/debug.c b/drivers/md/bcache/debug.c index af89408befe8..b218426a6493 100644 --- a/drivers/md/bcache/debug.c +++ b/drivers/md/bcache/debug.c @@ -251,6 +251,9 @@ void bch_debug_exit(void) int __init bch_debug_init(struct kobject *kobj) {
- if (!IS_ENABLED(CONFIG_DEBUG_FS))
return 0;
- debug = debugfs_create_dir("bcache", NULL);
return IS_ERR_OR_NULL(debug);
linux-stable-mirror@lists.linaro.org