From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jacob Keller Date: Mon, 8 Jul 2019 16:12:17 -0700 Subject: [Intel-wired-lan] [PATCH 00/19] cleanup cppcheck warnings for fm10k driver Message-ID: <20190708231236.20516-1-jacob.e.keller@intel.com> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: intel-wired-lan@osuosl.org List-ID: This series contains several patches which resolve various warnings generated by using the cppcheck tool on the fm10k driver source code. The most comment fix is to reduce the scope of local variables where possible, and the first 10 patches fix issues like this. The remaining 9 patches fix other issues found by the tool. Only one of the patches contains what is likely a bug fix. Specifically, the last patch in the series fixes a 64-bit register read issue where we failed to bitwise or the high and low registers together. As this is only in the reporting flow for fault detection, it is relatively minor. This series does not fix all of the cppcheck warnings: [fm10k_ethtool.c:332]: (style) Argument 'idx!=29' to function BUG_ON is always 0 This warning is due to the fact that we can't use BUILD_BUG_ON. cppcheck is smart enough to realize that the index will always be 29, and thus that BUG_ON will never be triggered. [fm10k_mbx.c:335] -> [fm10k_mbx.c:356]: (style) Variable 'head' is reassigned a value before the old one has been used. [fm10k_mbx.c:350] -> [fm10k_mbx.c:356]: (style) Variable 'head' is reassigned a value before the old one has been used. [fm10k_mbx.c:428] -> [fm10k_mbx.c:442]: (style) Variable 'tail' is reassigned a value before the old one has been used. [fm10k_mbx.c:439] -> [fm10k_mbx.c:442]: (style) Variable 'tail' is reassigned a value before the old one has been used. These are almost certainly due to a bug in cppcheck analysis. The head and tail values are assigned initially outside the loop. Then, they're updated in the for loop. However, they aren't updated until the end of the *first* for-loop iteration. I think cppcheck doesn't understand this and thus assumes that the value will be overwritten before its first use. Jacob Keller (19): fm10k: reduce scope of the err variable fm10k: reduce scope of *p local variable fm10k: reduce the scope of qv local variable fm10k: reduce the scope of local err variable fm10k: reduce the scope of the q_idx local variable fm10k: reduce the scope of the tx_buffer variable fm10k: reduce the scope of the err variable fm10k: reduce the scope of the local i variable fm10k: reduce the scope of the local msg variable fm10k: reduce the scope of the result local variable fm10k: reduce scope of the ring variable fm10k: remove unnecessary variable initializer fm10k: remove needless assignment of err local variable fm10k: remove needless initialization of size local variable fm10k: explicitly return 0 on success path in function fm10k: cast page_addr to u8 * when incrementing it fm10k: mark unused parameters with __always_unused fm10k: convert NON_Q_VECTORS(hw) into NON_Q_VECTORS fm10k: fix fm10k_get_fault_pf to read correct address drivers/net/ethernet/intel/fm10k/fm10k.h | 10 +++----- .../net/ethernet/intel/fm10k/fm10k_dcbnl.c | 6 ++--- .../net/ethernet/intel/fm10k/fm10k_ethtool.c | 15 +++++------ drivers/net/ethernet/intel/fm10k/fm10k_iov.c | 5 ++-- drivers/net/ethernet/intel/fm10k/fm10k_main.c | 15 +++++------ drivers/net/ethernet/intel/fm10k/fm10k_mbx.c | 11 +++++--- .../net/ethernet/intel/fm10k/fm10k_netdev.c | 20 +++++++-------- drivers/net/ethernet/intel/fm10k/fm10k_pci.c | 20 +++++++-------- drivers/net/ethernet/intel/fm10k/fm10k_pf.c | 15 ++++++----- drivers/net/ethernet/intel/fm10k/fm10k_tlv.c | 9 ++++--- drivers/net/ethernet/intel/fm10k/fm10k_type.h | 2 +- drivers/net/ethernet/intel/fm10k/fm10k_vf.c | 25 +++++++++++-------- 12 files changed, 78 insertions(+), 75 deletions(-) -- 2.22.0.214.g8dca754b1e87