]> www.infradead.org Git - users/dwmw2/linux.git/commitdiff
qed: fix possible uninit pointer read in qed_mcp_nvm_info_populate()
authorGianfranco Trad <gianf.trad@gmail.com>
Sun, 15 Dec 2024 01:17:34 +0000 (02:17 +0100)
committerPaolo Abeni <pabeni@redhat.com>
Tue, 17 Dec 2024 14:08:52 +0000 (15:08 +0100)
Coverity reports an uninit pointer read in qed_mcp_nvm_info_populate().
If EOPNOTSUPP is returned from qed_mcp_bist_nvm_get_num_images() ensure
nvm_info.num_images is set to 0 to avoid possible uninit assignment
to p_hwfn->nvm_info.image_att later on in out label.

Closes: https://scan5.scan.coverity.com/#/project-view/63204/10063?selectedIssue=1636666
Suggested-by: Simon Horman <horms@kernel.org>
Signed-off-by: Gianfranco Trad <gianf.trad@gmail.com>
Reviewed-by: Simon Horman <horms@kernel.org>
Link: https://patch.msgid.link/20241215011733.351325-2-gianf.trad@gmail.com
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
drivers/net/ethernet/qlogic/qed/qed_mcp.c

index b45efc272fdbb33eb4113f5c910a9ec4f1c2b30f..c7f497c36f66ce84dfd773c48752133ec1cd3617 100644 (file)
@@ -3358,6 +3358,7 @@ int qed_mcp_nvm_info_populate(struct qed_hwfn *p_hwfn)
                                             p_ptt, &nvm_info.num_images);
        if (rc == -EOPNOTSUPP) {
                DP_INFO(p_hwfn, "DRV_MSG_CODE_BIST_TEST is not supported\n");
+               nvm_info.num_images = 0;
                goto out;
        } else if (rc || !nvm_info.num_images) {
                DP_ERR(p_hwfn, "Failed getting number of images\n");