All of lore.kernel.org
 help / color / mirror / Atom feed
* re: octeontx2-af: Introduce internal packet switching
@ 2021-07-22 18:47 Colin Ian King
  0 siblings, 0 replies; only message in thread
From: Colin Ian King @ 2021-07-22 18:47 UTC (permalink / raw)
  To: Subbaraya Sundeep
  Cc: Sunil Goutham, Linu Cherian, Linu Cherian, Jerin Jacob,
	hariprasad, David S. Miller, Jakub Kicinski, netdev,
	linux-kernel

Hi,

Static analysis of linux-next with Coverity has found a couple of
uninitialized variable issues in the following commit:

commit 23109f8dd06d0bd04c9360cf7c501c97b0ab1545
Author: Subbaraya Sundeep <sbhatta@marvell.com>
Date:   Mon Jul 19 14:29:34 2021 +0530

    octeontx2-af: Introduce internal packet switching

The analysis is as follows:

195void rvu_switch_disable(struct rvu *rvu)
196{
197        struct npc_delete_flow_req uninstall_req = { 0 };
198        struct npc_mcam_free_entry_req free_req = { 0 };
199        struct rvu_switch *rswitch = &rvu->rswitch;
200        struct rvu_hwinfo *hw = rvu->hw;

   1. var_decl: Declaring variable numvfs without initializer.

201        int pf, vf, numvfs, hwvf;
202        struct msg_rsp rsp;
203        u16 pcifunc;
204        int err;
205

   2. Condition !rswitch->used_entries, taking false branch.

206        if (!rswitch->used_entries)
207                return;
208

   3. Condition pf < hw->total_pfs, taking true branch.

209        for (pf = 1; pf < hw->total_pfs; pf++) {

   4. Condition !is_pf_cgxmapped(rvu, pf), taking false branch.

210                if (!is_pf_cgxmapped(rvu, pf))
211                        continue;
212
213                pcifunc = pf << 10;
214                err = rvu_switch_install_rx_rule(rvu, pcifunc, 0xFFF);

   5. Condition err, taking false branch.

215                if (err)
216                        dev_err(rvu->dev,
217                                "Reverting RX rule for PF%d
failed(%d)\n",
218                                pf, err);
219

   Uninitialized scalar variable (UNINIT)
   6. uninit_use: Using uninitialized value numvfs.

   Uninitialized scalar variable (UNINIT)
   9. uninit_use: Using uninitialized value hwvf.

220                for (vf = 0; vf < numvfs; vf++, hwvf++) {
221                        pcifunc = pf << 10 | ((vf + 1) & 0x3FF);
222                        err = rvu_switch_install_rx_rule(rvu,
pcifunc, 0xFFF);

   7. Condition err, taking false branch.

223                        if (err)
224                                dev_err(rvu->dev,
225                                        "Reverting RX rule for
PF%dVF%d failed(%d)\n",
226                                        pf, vf, err);
227                }

   8. Jumping back to the beginning of the loop.

228        }
229
230        uninstall_req.start = rswitch->start_entry;
231        uninstall_req.end =  rswitch->start_entry +
rswitch->used_entries - 1;
232        free_req.all = 1;
233        rvu_mbox_handler_npc_delete_flow(rvu, &uninstall_req, &rsp);
234        rvu_mbox_handler_npc_mcam_free_entry(rvu, &free_req, &rsp);
235        rswitch->used_entries = 0;
236        kfree(rswitch->entry2pcifunc);
237}

Colin

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2021-07-22 18:47 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-07-22 18:47 octeontx2-af: Introduce internal packet switching Colin Ian King

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.