Intel-Wired-Lan Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [Intel-wired-lan] [PATCH 00/19] cleanup cppcheck warnings for fm10k driver
@ 2019-07-08 23:12 Jacob Keller
  2019-07-08 23:12 ` [Intel-wired-lan] [PATCH 01/19] fm10k: reduce scope of the err variable Jacob Keller
                   ` (18 more replies)
  0 siblings, 19 replies; 39+ messages in thread
From: Jacob Keller @ 2019-07-08 23:12 UTC (permalink / raw)
  To: intel-wired-lan

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


^ permalink raw reply	[flat|nested] 39+ messages in thread

end of thread, other threads:[~2019-07-12 18:08 UTC | newest]

Thread overview: 39+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-07-08 23:12 [Intel-wired-lan] [PATCH 00/19] cleanup cppcheck warnings for fm10k driver Jacob Keller
2019-07-08 23:12 ` [Intel-wired-lan] [PATCH 01/19] fm10k: reduce scope of the err variable Jacob Keller
2019-07-12 17:59   ` Bowers, AndrewX
2019-07-08 23:12 ` [Intel-wired-lan] [PATCH 02/19] fm10k: reduce scope of *p local variable Jacob Keller
2019-07-12 17:59   ` Bowers, AndrewX
2019-07-08 23:12 ` [Intel-wired-lan] [PATCH 03/19] fm10k: reduce the scope of qv " Jacob Keller
2019-07-12 18:00   ` Bowers, AndrewX
2019-07-08 23:12 ` [Intel-wired-lan] [PATCH 04/19] fm10k: reduce the scope of local err variable Jacob Keller
2019-07-12 18:00   ` Bowers, AndrewX
2019-07-08 23:12 ` [Intel-wired-lan] [PATCH 05/19] fm10k: reduce the scope of the q_idx local variable Jacob Keller
2019-07-12 18:01   ` Bowers, AndrewX
2019-07-08 23:12 ` [Intel-wired-lan] [PATCH 06/19] fm10k: reduce the scope of the tx_buffer variable Jacob Keller
2019-07-12 18:02   ` Bowers, AndrewX
2019-07-08 23:12 ` [Intel-wired-lan] [PATCH 07/19] fm10k: reduce the scope of the err variable Jacob Keller
2019-07-12 18:02   ` Bowers, AndrewX
2019-07-08 23:12 ` [Intel-wired-lan] [PATCH 08/19] fm10k: reduce the scope of the local i variable Jacob Keller
2019-07-12 18:02   ` Bowers, AndrewX
2019-07-08 23:12 ` [Intel-wired-lan] [PATCH 09/19] fm10k: reduce the scope of the local msg variable Jacob Keller
2019-07-12 18:03   ` Bowers, AndrewX
2019-07-08 23:12 ` [Intel-wired-lan] [PATCH 10/19] fm10k: reduce the scope of the result local variable Jacob Keller
2019-07-12 18:04   ` Bowers, AndrewX
2019-07-08 23:12 ` [Intel-wired-lan] [PATCH 11/19] fm10k: reduce scope of the ring variable Jacob Keller
2019-07-12 18:04   ` Bowers, AndrewX
2019-07-08 23:12 ` [Intel-wired-lan] [PATCH 12/19] fm10k: remove unnecessary variable initializer Jacob Keller
2019-07-12 18:05   ` Bowers, AndrewX
2019-07-08 23:12 ` [Intel-wired-lan] [PATCH 13/19] fm10k: remove needless assignment of err local variable Jacob Keller
2019-07-12 18:05   ` Bowers, AndrewX
2019-07-08 23:12 ` [Intel-wired-lan] [PATCH 14/19] fm10k: remove needless initialization of size " Jacob Keller
2019-07-12 18:06   ` Bowers, AndrewX
2019-07-08 23:12 ` [Intel-wired-lan] [PATCH 15/19] fm10k: explicitly return 0 on success path in function Jacob Keller
2019-07-12 18:06   ` Bowers, AndrewX
2019-07-08 23:12 ` [Intel-wired-lan] [PATCH 16/19] fm10k: cast page_addr to u8 * when incrementing it Jacob Keller
2019-07-12 18:07   ` Bowers, AndrewX
2019-07-08 23:12 ` [Intel-wired-lan] [PATCH 17/19] fm10k: mark unused parameters with __always_unused Jacob Keller
2019-07-12 18:07   ` Bowers, AndrewX
2019-07-08 23:12 ` [Intel-wired-lan] [PATCH 18/19] fm10k: convert NON_Q_VECTORS(hw) into NON_Q_VECTORS Jacob Keller
2019-07-12 18:08   ` Bowers, AndrewX
2019-07-08 23:12 ` [Intel-wired-lan] [PATCH 19/19] fm10k: fix fm10k_get_fault_pf to read correct address Jacob Keller
2019-07-12 18:08   ` Bowers, AndrewX

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox