From: Bruce Allan <[email protected]>

When compiling and analyzing the driver on newer kernels, a static
analyzer warns about the following "numeric overflow" issues:

  "The result of expression: 'budget-1' generates 4-byte type while casting
   to a bigger size of 8-byte".

  "The result of expression: '*words-words_read' generates 4-byte type
   while casting to a bigger size of 8-byte".

Fix them both.

Signed-off-by: Bruce Allan <[email protected]>
Signed-off-by: Anirudh Venkataramanan <[email protected]>
Tested-by: Andrew Bowers <[email protected]>
Signed-off-by: Jeff Kirsher <[email protected]>
---
 drivers/net/ethernet/intel/ice/ice_nvm.c  | 7 ++++---
 drivers/net/ethernet/intel/ice/ice_txrx.c | 2 +-
 2 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/drivers/net/ethernet/intel/ice/ice_nvm.c 
b/drivers/net/ethernet/intel/ice/ice_nvm.c
index ce64cecdae9c..413fdbbcc4d0 100644
--- a/drivers/net/ethernet/intel/ice/ice_nvm.c
+++ b/drivers/net/ethernet/intel/ice/ice_nvm.c
@@ -152,9 +152,10 @@ ice_read_sr_buf_aq(struct ice_hw *hw, u16 offset, u16 
*words, u16 *data)
                 */
                off_w = offset % ICE_SR_SECTOR_SIZE_IN_WORDS;
                read_size = off_w ?
-                       min(*words,
-                           (u16)(ICE_SR_SECTOR_SIZE_IN_WORDS - off_w)) :
-                       min((*words - words_read), ICE_SR_SECTOR_SIZE_IN_WORDS);
+                       min_t(u16, *words,
+                             (ICE_SR_SECTOR_SIZE_IN_WORDS - off_w)) :
+                       min_t(u16, (*words - words_read),
+                             ICE_SR_SECTOR_SIZE_IN_WORDS);
 
                /* Check if this is last command, if so set proper flag */
                if ((words_read + read_size) >= *words)
diff --git a/drivers/net/ethernet/intel/ice/ice_txrx.c 
b/drivers/net/ethernet/intel/ice/ice_txrx.c
index 67d129bfe489..c289d97f477d 100644
--- a/drivers/net/ethernet/intel/ice/ice_txrx.c
+++ b/drivers/net/ethernet/intel/ice/ice_txrx.c
@@ -1169,7 +1169,7 @@ int ice_napi_poll(struct napi_struct *napi, int budget)
                if (test_bit(ICE_FLAG_MSIX_ENA, pf->flags))
                        ice_update_ena_itr(vsi, q_vector);
 
-       return min(work_done, budget - 1);
+       return min_t(int, work_done, budget - 1);
 }
 
 /* helper function for building cmd/type/offset */
-- 
2.20.1

Reply via email to