From: Alexander Lobakin Date: Wed, 22 Jul 2020 22:10:34 +0000 (+0300) Subject: qed: prevent possible double-frees of the chains X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=96ca4c50c7f711531d4fa238906f8abbbd0ff517;p=linux.git qed: prevent possible double-frees of the chains Zero-initialize chain on qed_chain_free(), so it couldn't be freed twice and provoke undefined behaviour. Signed-off-by: Alexander Lobakin Signed-off-by: Igor Russkikh Signed-off-by: Michal Kalderon Signed-off-by: David S. Miller --- diff --git a/drivers/net/ethernet/qlogic/qed/qed_chain.c b/drivers/net/ethernet/qlogic/qed/qed_chain.c index bab02ff325141..917b783433f7d 100644 --- a/drivers/net/ethernet/qlogic/qed/qed_chain.c +++ b/drivers/net/ethernet/qlogic/qed/qed_chain.c @@ -92,8 +92,10 @@ void qed_chain_free(struct qed_dev *cdev, struct qed_chain *chain) qed_chain_free_pbl(cdev, chain); break; default: - break; + return; } + + qed_chain_init_mem(chain, NULL, 0); } static int