lkml.org 
[lkml]   [2020]   [Jul]   [27]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
SubjectRe: [PATCH net-next] qed: fix the allocation of the chains with an external PBL
From
From: Alexander Lobakin <alobakin@marvell.com>
Date: Mon, 27 Jul 2020 14:51:33 +0300

> Dan reports static checker warning:
>
> "The patch 9b6ee3cf95d3: "qed: sanitize PBL chains allocation" from Jul
> 23, 2020, leads to the following static checker warning:
>
> drivers/net/ethernet/qlogic/qed/qed_chain.c:299 qed_chain_alloc_pbl()
> error: uninitialized symbol 'pbl_virt'.
>
> drivers/net/ethernet/qlogic/qed/qed_chain.c
> 249 static int qed_chain_alloc_pbl(struct qed_dev *cdev, struct qed_chain *chain)
> 250 {
> 251 struct device *dev = &cdev->pdev->dev;
> 252 struct addr_tbl_entry *addr_tbl;
> 253 dma_addr_t phys, pbl_phys;
> 254 __le64 *pbl_virt;
> ^^^^^^^^^^^^^^^^
> [...]
> 271 if (chain->b_external_pbl)
> 272 goto alloc_pages;
> ^^^^^^^^^^^^^^^^ uninitialized
> [...]
> 298 /* Fill the PBL table with the physical address of the page */
> 299 pbl_virt[i] = cpu_to_le64(phys);
> ^^^^^^^^^^^
> [...]
> "
>
> This issue was introduced with commit c3a321b06a80 ("qed: simplify
> initialization of the chains with an external PBL"), when
> chain->pbl_sp.table_virt initialization was moved up to
> qed_chain_init_params().
> Fix it by initializing pbl_virt with an already filled chain struct field.
>
> Fixes: c3a321b06a80 ("qed: simplify initialization of the chains with an external PBL")
> Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
> Signed-off-by: Alexander Lobakin <alobakin@marvell.com>

Applied, thank you.

\
 
 \ /
  Last update: 2020-07-27 21:19    [W:0.029 / U:1.488 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site