[kbuild] drivers/net/ethernet/broadcom/bnxt/bnxt.c:7654 bnxt_accumulate_all_stats() error: potentially dereferencing uninitialized 'ring0_stats'.
CC: kbuild-...@lists.01.org CC: linux-ker...@vger.kernel.org TO: Michael Chan CC: Vasundhara Volam tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master head: a180bd1d7e16173d965b263c5a536aa40afa2a2a commit: fea6b3335527f41bc729466fb2a95e48a98827ac bnxt_en: Accumulate all counters. date: 11 months ago :: branch date: 8 hours ago :: commit date: 11 months ago config: parisc-randconfig-m031-20210705 (attached as .config) compiler: hppa-linux-gcc (GCC) 9.3.0 If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot Reported-by: Dan Carpenter New smatch warnings: drivers/net/ethernet/broadcom/bnxt/bnxt.c:7654 bnxt_accumulate_all_stats() error: potentially dereferencing uninitialized 'ring0_stats'. Old smatch warnings: drivers/net/ethernet/broadcom/bnxt/bnxt.c:1539 bnxt_tpa_end() warn: bitwise AND condition is false here drivers/net/ethernet/broadcom/bnxt/bnxt.c:4876 bnxt_hwrm_vnic_set_tpa() warn: bitwise AND condition is false here drivers/net/ethernet/broadcom/bnxt/bnxt.c:12283 bnxt_init_one() warn: missing error code 'rc' vim +/ring0_stats +7654 drivers/net/ethernet/broadcom/bnxt/bnxt.c fea6b3335527f4 Michael Chan 2020-07-27 7633 fea6b3335527f4 Michael Chan 2020-07-27 7634 static void bnxt_accumulate_all_stats(struct bnxt *bp) fea6b3335527f4 Michael Chan 2020-07-27 7635 { fea6b3335527f4 Michael Chan 2020-07-27 7636struct bnxt_stats_mem *ring0_stats; fea6b3335527f4 Michael Chan 2020-07-27 7637bool ignore_zero = false; fea6b3335527f4 Michael Chan 2020-07-27 7638int i; fea6b3335527f4 Michael Chan 2020-07-27 7639 fea6b3335527f4 Michael Chan 2020-07-27 7640/* Chip bug. Counter intermittently becomes 0. */ fea6b3335527f4 Michael Chan 2020-07-27 7641if (bp->flags & BNXT_FLAG_CHIP_P5) fea6b3335527f4 Michael Chan 2020-07-27 7642ignore_zero = true; fea6b3335527f4 Michael Chan 2020-07-27 7643 fea6b3335527f4 Michael Chan 2020-07-27 7644for (i = 0; i < bp->cp_nr_rings; i++) { fea6b3335527f4 Michael Chan 2020-07-27 7645struct bnxt_napi *bnapi = bp->bnapi[i]; fea6b3335527f4 Michael Chan 2020-07-27 7646struct bnxt_cp_ring_info *cpr; fea6b3335527f4 Michael Chan 2020-07-27 7647struct bnxt_stats_mem *stats; fea6b3335527f4 Michael Chan 2020-07-27 7648 fea6b3335527f4 Michael Chan 2020-07-27 7649cpr = >cp_ring; fea6b3335527f4 Michael Chan 2020-07-27 7650stats = >stats; fea6b3335527f4 Michael Chan 2020-07-27 7651if (!i) fea6b3335527f4 Michael Chan 2020-07-27 7652ring0_stats = stats; fea6b3335527f4 Michael Chan 2020-07-27 7653 __bnxt_accumulate_stats(stats->hw_stats, stats->sw_stats, fea6b3335527f4 Michael Chan 2020-07-27 @7654 ring0_stats->hw_masks, fea6b3335527f4 Michael Chan 2020-07-27 7655 ring0_stats->len / 8, ignore_zero); fea6b3335527f4 Michael Chan 2020-07-27 7656} fea6b3335527f4 Michael Chan 2020-07-27 7657if (bp->flags & BNXT_FLAG_PORT_STATS) { fea6b3335527f4 Michael Chan 2020-07-27 7658struct bnxt_stats_mem *stats = >port_stats; fea6b3335527f4 Michael Chan 2020-07-27 7659__le64 *hw_stats = stats->hw_stats; fea6b3335527f4 Michael Chan 2020-07-27 7660u64 *sw_stats = stats->sw_stats; fea6b3335527f4 Michael Chan 2020-07-27 7661u64 *masks = stats->hw_masks; fea6b3335527f4 Michael Chan 2020-07-27 7662int cnt; fea6b3335527f4 Michael Chan 2020-07-27 7663 fea6b3335527f4 Michael Chan 2020-07-27 7664cnt = sizeof(struct rx_port_stats) / 8; fea6b3335527f4 Michael Chan 2020-07-27 7665 __bnxt_accumulate_stats(hw_stats, sw_stats, masks, cnt, false); fea6b3335527f4 Michael Chan 2020-07-27 7666 fea6b3335527f4 Michael Chan 2020-07-27 7667hw_stats += BNXT_TX_PORT_STATS_BYTE_OFFSET / 8; fea6b3335527f4 Michael Chan 2020-07-27 7668sw_stats += BNXT_TX_PORT_STATS_BYTE_OFFSET / 8; fea6b3335527f4 Michael Chan 2020-07-27 7669masks += BNXT_TX_PORT_STATS_BYTE_OFFSET / 8; fea6b3335527f4 Michael Chan 2020-07-27 7670cnt = sizeof(struct tx_port_stats) / 8; fea6b3335527f4 Michael Chan 2020-07-27 7671 __bnxt_accumulate_stats(hw_stats, sw_stats, masks, cnt, false); fea6b3335527f4 Michael Chan 2020-07-27 7672} fea6b3335527f4 Michael Chan 2020-07-27 7673if (bp->flags & BNXT_FLAG_PORT_STATS_EXT) { fea6b3335527f4 Michael Chan 2020-07-27 7674 bnxt_accumulate_stats(>rx_port_stats_ext); fea6b3335527f4 Michael Chan 2020-07-27 7675 bnxt_accumulate_stats(>tx_port_stats_ext); fea6b3335527f4 Michael Chan 2020-07-27 7676} fea6b3335527f4 Michael Chan 2020-07-27 7677 } fea6b3335527f4 Michael Chan 2020-07-27 7678 --- 0-DAY CI Kernel Test Service, Intel Corporation
[kbuild] drivers/net/ethernet/broadcom/bnxt/bnxt.c:7654 bnxt_accumulate_all_stats() error: potentially dereferencing uninitialized 'ring0_stats'.
CC: kbuild-...@lists.01.org CC: linux-ker...@vger.kernel.org TO: Michael Chan CC: Vasundhara Volam tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master head: 6b00bc639f1f2beeff3595e1bab9faaa51d23b01 commit: fea6b3335527f41bc729466fb2a95e48a98827ac bnxt_en: Accumulate all counters. date: 11 months ago :: branch date: 3 hours ago :: commit date: 11 months ago config: x86_64-randconfig-m001-20210616 (attached as .config) compiler: gcc-9 (Debian 9.3.0-22) 9.3.0 If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot Reported-by: Dan Carpenter New smatch warnings: drivers/net/ethernet/broadcom/bnxt/bnxt.c:7654 bnxt_accumulate_all_stats() error: potentially dereferencing uninitialized 'ring0_stats'. Old smatch warnings: drivers/net/ethernet/broadcom/bnxt/bnxt.c:12283 bnxt_init_one() warn: missing error code 'rc' vim +/ring0_stats +7654 drivers/net/ethernet/broadcom/bnxt/bnxt.c fea6b3335527f4 Michael Chan 2020-07-27 7633 fea6b3335527f4 Michael Chan 2020-07-27 7634 static void bnxt_accumulate_all_stats(struct bnxt *bp) fea6b3335527f4 Michael Chan 2020-07-27 7635 { fea6b3335527f4 Michael Chan 2020-07-27 7636struct bnxt_stats_mem *ring0_stats; fea6b3335527f4 Michael Chan 2020-07-27 7637bool ignore_zero = false; fea6b3335527f4 Michael Chan 2020-07-27 7638int i; fea6b3335527f4 Michael Chan 2020-07-27 7639 fea6b3335527f4 Michael Chan 2020-07-27 7640/* Chip bug. Counter intermittently becomes 0. */ fea6b3335527f4 Michael Chan 2020-07-27 7641if (bp->flags & BNXT_FLAG_CHIP_P5) fea6b3335527f4 Michael Chan 2020-07-27 7642ignore_zero = true; fea6b3335527f4 Michael Chan 2020-07-27 7643 fea6b3335527f4 Michael Chan 2020-07-27 7644for (i = 0; i < bp->cp_nr_rings; i++) { fea6b3335527f4 Michael Chan 2020-07-27 7645struct bnxt_napi *bnapi = bp->bnapi[i]; fea6b3335527f4 Michael Chan 2020-07-27 7646struct bnxt_cp_ring_info *cpr; fea6b3335527f4 Michael Chan 2020-07-27 7647struct bnxt_stats_mem *stats; fea6b3335527f4 Michael Chan 2020-07-27 7648 fea6b3335527f4 Michael Chan 2020-07-27 7649cpr = >cp_ring; fea6b3335527f4 Michael Chan 2020-07-27 7650stats = >stats; fea6b3335527f4 Michael Chan 2020-07-27 7651if (!i) fea6b3335527f4 Michael Chan 2020-07-27 7652ring0_stats = stats; fea6b3335527f4 Michael Chan 2020-07-27 7653 __bnxt_accumulate_stats(stats->hw_stats, stats->sw_stats, fea6b3335527f4 Michael Chan 2020-07-27 @7654 ring0_stats->hw_masks, fea6b3335527f4 Michael Chan 2020-07-27 7655 ring0_stats->len / 8, ignore_zero); fea6b3335527f4 Michael Chan 2020-07-27 7656} fea6b3335527f4 Michael Chan 2020-07-27 7657if (bp->flags & BNXT_FLAG_PORT_STATS) { fea6b3335527f4 Michael Chan 2020-07-27 7658struct bnxt_stats_mem *stats = >port_stats; fea6b3335527f4 Michael Chan 2020-07-27 7659__le64 *hw_stats = stats->hw_stats; fea6b3335527f4 Michael Chan 2020-07-27 7660u64 *sw_stats = stats->sw_stats; fea6b3335527f4 Michael Chan 2020-07-27 7661u64 *masks = stats->hw_masks; fea6b3335527f4 Michael Chan 2020-07-27 7662int cnt; fea6b3335527f4 Michael Chan 2020-07-27 7663 fea6b3335527f4 Michael Chan 2020-07-27 7664cnt = sizeof(struct rx_port_stats) / 8; fea6b3335527f4 Michael Chan 2020-07-27 7665 __bnxt_accumulate_stats(hw_stats, sw_stats, masks, cnt, false); fea6b3335527f4 Michael Chan 2020-07-27 7666 fea6b3335527f4 Michael Chan 2020-07-27 7667hw_stats += BNXT_TX_PORT_STATS_BYTE_OFFSET / 8; fea6b3335527f4 Michael Chan 2020-07-27 7668sw_stats += BNXT_TX_PORT_STATS_BYTE_OFFSET / 8; fea6b3335527f4 Michael Chan 2020-07-27 7669masks += BNXT_TX_PORT_STATS_BYTE_OFFSET / 8; fea6b3335527f4 Michael Chan 2020-07-27 7670cnt = sizeof(struct tx_port_stats) / 8; fea6b3335527f4 Michael Chan 2020-07-27 7671 __bnxt_accumulate_stats(hw_stats, sw_stats, masks, cnt, false); fea6b3335527f4 Michael Chan 2020-07-27 7672} fea6b3335527f4 Michael Chan 2020-07-27 7673if (bp->flags & BNXT_FLAG_PORT_STATS_EXT) { fea6b3335527f4 Michael Chan 2020-07-27 7674 bnxt_accumulate_stats(>rx_port_stats_ext); fea6b3335527f4 Michael Chan 2020-07-27 7675 bnxt_accumulate_stats(>tx_port_stats_ext); fea6b3335527f4 Michael Chan 2020-07-27 7676} fea6b3335527f4 Michael Chan 2020-07-27 7677 } fea6b3335527f4 Michael Chan 2020-07-27 7678 --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-...@lists.01.org .config.gz Description: application/gzip ___ kbuild mailing list -- kbuild@lists.01.org To unsubscribe send an email to kbuild-le...@lists.01.org
[kbuild] drivers/net/ethernet/broadcom/bnxt/bnxt.c:7654 bnxt_accumulate_all_stats() error: potentially dereferencing uninitialized 'ring0_stats'.
CC: kbuild-...@lists.01.org CC: linux-ker...@vger.kernel.org TO: Michael Chan CC: Vasundhara Volam tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master head: e49d033bddf5b565044e2abe4241353959bc9120 commit: fea6b3335527f41bc729466fb2a95e48a98827ac bnxt_en: Accumulate all counters. date: 8 months ago :: branch date: 10 hours ago :: commit date: 8 months ago config: microblaze-randconfig-m031-20210405 (attached as .config) compiler: microblaze-linux-gcc (GCC) 9.3.0 If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot Reported-by: Dan Carpenter New smatch warnings: drivers/net/ethernet/broadcom/bnxt/bnxt.c:7654 bnxt_accumulate_all_stats() error: potentially dereferencing uninitialized 'ring0_stats'. Old smatch warnings: drivers/net/ethernet/broadcom/bnxt/bnxt.c:1539 bnxt_tpa_end() warn: bitwise AND condition is false here drivers/net/ethernet/broadcom/bnxt/bnxt.c:4876 bnxt_hwrm_vnic_set_tpa() warn: bitwise AND condition is false here drivers/net/ethernet/broadcom/bnxt/bnxt.c:12283 bnxt_init_one() warn: missing error code 'rc' vim +/ring0_stats +7654 drivers/net/ethernet/broadcom/bnxt/bnxt.c fea6b3335527f4 Michael Chan 2020-07-27 7633 fea6b3335527f4 Michael Chan 2020-07-27 7634 static void bnxt_accumulate_all_stats(struct bnxt *bp) fea6b3335527f4 Michael Chan 2020-07-27 7635 { fea6b3335527f4 Michael Chan 2020-07-27 7636struct bnxt_stats_mem *ring0_stats; fea6b3335527f4 Michael Chan 2020-07-27 7637bool ignore_zero = false; fea6b3335527f4 Michael Chan 2020-07-27 7638int i; fea6b3335527f4 Michael Chan 2020-07-27 7639 fea6b3335527f4 Michael Chan 2020-07-27 7640/* Chip bug. Counter intermittently becomes 0. */ fea6b3335527f4 Michael Chan 2020-07-27 7641if (bp->flags & BNXT_FLAG_CHIP_P5) fea6b3335527f4 Michael Chan 2020-07-27 7642ignore_zero = true; fea6b3335527f4 Michael Chan 2020-07-27 7643 fea6b3335527f4 Michael Chan 2020-07-27 7644for (i = 0; i < bp->cp_nr_rings; i++) { fea6b3335527f4 Michael Chan 2020-07-27 7645struct bnxt_napi *bnapi = bp->bnapi[i]; fea6b3335527f4 Michael Chan 2020-07-27 7646struct bnxt_cp_ring_info *cpr; fea6b3335527f4 Michael Chan 2020-07-27 7647struct bnxt_stats_mem *stats; fea6b3335527f4 Michael Chan 2020-07-27 7648 fea6b3335527f4 Michael Chan 2020-07-27 7649cpr = >cp_ring; fea6b3335527f4 Michael Chan 2020-07-27 7650stats = >stats; fea6b3335527f4 Michael Chan 2020-07-27 7651if (!i) fea6b3335527f4 Michael Chan 2020-07-27 7652ring0_stats = stats; fea6b3335527f4 Michael Chan 2020-07-27 7653 __bnxt_accumulate_stats(stats->hw_stats, stats->sw_stats, fea6b3335527f4 Michael Chan 2020-07-27 @7654 ring0_stats->hw_masks, fea6b3335527f4 Michael Chan 2020-07-27 7655 ring0_stats->len / 8, ignore_zero); fea6b3335527f4 Michael Chan 2020-07-27 7656} fea6b3335527f4 Michael Chan 2020-07-27 7657if (bp->flags & BNXT_FLAG_PORT_STATS) { fea6b3335527f4 Michael Chan 2020-07-27 7658struct bnxt_stats_mem *stats = >port_stats; fea6b3335527f4 Michael Chan 2020-07-27 7659__le64 *hw_stats = stats->hw_stats; fea6b3335527f4 Michael Chan 2020-07-27 7660u64 *sw_stats = stats->sw_stats; fea6b3335527f4 Michael Chan 2020-07-27 7661u64 *masks = stats->hw_masks; fea6b3335527f4 Michael Chan 2020-07-27 7662int cnt; fea6b3335527f4 Michael Chan 2020-07-27 7663 fea6b3335527f4 Michael Chan 2020-07-27 7664cnt = sizeof(struct rx_port_stats) / 8; fea6b3335527f4 Michael Chan 2020-07-27 7665 __bnxt_accumulate_stats(hw_stats, sw_stats, masks, cnt, false); fea6b3335527f4 Michael Chan 2020-07-27 7666 fea6b3335527f4 Michael Chan 2020-07-27 7667hw_stats += BNXT_TX_PORT_STATS_BYTE_OFFSET / 8; fea6b3335527f4 Michael Chan 2020-07-27 7668sw_stats += BNXT_TX_PORT_STATS_BYTE_OFFSET / 8; fea6b3335527f4 Michael Chan 2020-07-27 7669masks += BNXT_TX_PORT_STATS_BYTE_OFFSET / 8; fea6b3335527f4 Michael Chan 2020-07-27 7670cnt = sizeof(struct tx_port_stats) / 8; fea6b3335527f4 Michael Chan 2020-07-27 7671 __bnxt_accumulate_stats(hw_stats, sw_stats, masks, cnt, false); fea6b3335527f4 Michael Chan 2020-07-27 7672} fea6b3335527f4 Michael Chan 2020-07-27 7673if (bp->flags & BNXT_FLAG_PORT_STATS_EXT) { fea6b3335527f4 Michael Chan 2020-07-27 7674 bnxt_accumulate_stats(>rx_port_stats_ext); fea6b3335527f4 Michael Chan 2020-07-27 7675 bnxt_accumulate_stats(>tx_port_stats_ext); fea6b3335527f4 Michael Chan 2020-07-27 7676} fea6b3335527f4 Michael Chan 2020-07-27 7677 } fea6b3335527f4 Michael Chan 2020-07-27 7678 --- 0-DAY CI Kernel Test Service, Intel Corporation