| From d69a1e68fe093f13eaad271794952ef43791b03d Mon Sep 17 00:00:00 2001 |
| From: Dan Carpenter <dan.carpenter@oracle.com> |
| Date: Fri, 1 Feb 2019 14:20:58 -0800 |
| Subject: lib/test_kmod.c: potential double free in error handling |
| |
| [ Upstream commit db7ddeab3ce5d64c9696e70d61f45ea9909cd196 ] |
| |
| There is a copy and paste bug so we set "config->test_driver" to NULL |
| twice instead of setting "config->test_fs". Smatch complains that it |
| leads to a double free: |
| |
| lib/test_kmod.c:840 __kmod_config_init() warn: 'config->test_fs' double freed |
| |
| Link: http://lkml.kernel.org/r/20190121140011.GA14283@kadam |
| Fixes: d9c6a72d6fa2 ("kmod: add test driver to stress test the module loader") |
| Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com> |
| Acked-by: Luis Chamberlain <mcgrof@kernel.org> |
| Signed-off-by: Andrew Morton <akpm@linux-foundation.org> |
| Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org> |
| Signed-off-by: Sasha Levin <sashal@kernel.org> |
| --- |
| lib/test_kmod.c | 2 +- |
| 1 file changed, 1 insertion(+), 1 deletion(-) |
| |
| diff --git a/lib/test_kmod.c b/lib/test_kmod.c |
| index d82d022111e0..9cf77628fc91 100644 |
| --- a/lib/test_kmod.c |
| +++ b/lib/test_kmod.c |
| @@ -632,7 +632,7 @@ static void __kmod_config_free(struct test_config *config) |
| config->test_driver = NULL; |
| |
| kfree_const(config->test_fs); |
| - config->test_driver = NULL; |
| + config->test_fs = NULL; |
| } |
| |
| static void kmod_config_free(struct kmod_test_device *test_dev) |
| -- |
| 2.19.1 |
| |