diff options
author | Joern Engel <joern@logfs.org> | 2014-09-02 17:49:54 -0400 |
---|---|---|
committer | Zefan Li <lizefan@huawei.com> | 2014-12-01 18:02:34 +0800 |
commit | 0965d12e7ee793a911fed1b674ba3464680b959a (patch) | |
tree | 21011f07e92a15894f3a1d3bbfd3977a625d9110 | |
parent | bce95d5d5ce5d57e72da6ab6dda819c4d79cbb52 (diff) |
iscsi-target: avoid NULL pointer in iscsi_copy_param_list failure
commit 8ae757d09c45102b347a1bc2867f54ffc1ab8fda upstream.
In iscsi_copy_param_list() a failed iscsi_param_list memory allocation
currently invokes iscsi_release_param_list() to cleanup, and will promptly
trigger a NULL pointer dereference.
Instead, go ahead and return for the first iscsi_copy_param_list()
failure case.
Found by coverity.
Signed-off-by: Joern Engel <joern@logfs.org>
Signed-off-by: Nicholas Bellinger <nab@linux-iscsi.org>
Signed-off-by: Zefan Li <lizefan@huawei.com>
-rw-r--r-- | drivers/target/iscsi/iscsi_target_parameters.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/target/iscsi/iscsi_target_parameters.c b/drivers/target/iscsi/iscsi_target_parameters.c index 8a8ff238c231..ed4abadc3df6 100644 --- a/drivers/target/iscsi/iscsi_target_parameters.c +++ b/drivers/target/iscsi/iscsi_target_parameters.c @@ -552,7 +552,7 @@ int iscsi_copy_param_list( param_list = kzalloc(sizeof(struct iscsi_param_list), GFP_KERNEL); if (!param_list) { pr_err("Unable to allocate memory for struct iscsi_param_list.\n"); - goto err_out; + return -1; } INIT_LIST_HEAD(¶m_list->param_list); INIT_LIST_HEAD(¶m_list->extra_response_list); |