Currently, when we compare queue numbers against maximum traffic class
value of 64, we do not use unsigned values, which results in compiler
warning when attempting to compare `I40E_MAX_Q_PER_TC` to an unsigned
value. Make it unsigned, and adjust callers to use correct types. As a
consequence, `i40e_align_floor` now returns unsigned value as well - this
is correct, because nothing about that function implies signed usage being
a valid use case.

Signed-off-by: Anatoly Burakov <[email protected]>
---
 drivers/net/intel/i40e/i40e_ethdev.c | 2 +-
 drivers/net/intel/i40e/i40e_ethdev.h | 6 +++---
 drivers/net/intel/i40e/i40e_hash.c   | 4 ++--
 3 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/drivers/net/intel/i40e/i40e_ethdev.c 
b/drivers/net/intel/i40e/i40e_ethdev.c
index 770c78473e..06430e6319 100644
--- a/drivers/net/intel/i40e/i40e_ethdev.c
+++ b/drivers/net/intel/i40e/i40e_ethdev.c
@@ -9040,7 +9040,7 @@ i40e_pf_reset_rss_reta(struct i40e_pf *pf)
        struct i40e_hw *hw = &pf->adapter->hw;
        uint8_t lut[RTE_ETH_RSS_RETA_SIZE_512];
        uint32_t i;
-       int num;
+       size_t num;
 
        /* If both VMDQ and RSS enabled, not all of PF queues are
         * configured. It's necessary to calculate the actual PF
diff --git a/drivers/net/intel/i40e/i40e_ethdev.h 
b/drivers/net/intel/i40e/i40e_ethdev.h
index 0de036f2d9..d144297360 100644
--- a/drivers/net/intel/i40e/i40e_ethdev.h
+++ b/drivers/net/intel/i40e/i40e_ethdev.h
@@ -24,7 +24,7 @@
 #define I40E_AQ_LEN               32
 #define I40E_AQ_BUF_SZ            4096
 /* Number of queues per TC should be one of 1, 2, 4, 8, 16, 32, 64 */
-#define I40E_MAX_Q_PER_TC         64
+#define I40E_MAX_Q_PER_TC         64U
 #define I40E_NUM_DESC_DEFAULT     512
 #define I40E_NUM_DESC_ALIGN       32
 #define I40E_BUF_SIZE_MIN         1024
@@ -1517,8 +1517,8 @@ i40e_init_adminq_parameter(struct i40e_hw *hw)
        hw->aq.asq_buf_size = I40E_AQ_BUF_SZ;
 }
 
-static inline int
-i40e_align_floor(int n)
+static inline uint32_t
+i40e_align_floor(uint32_t n)
 {
        if (n == 0)
                return 0;
diff --git a/drivers/net/intel/i40e/i40e_hash.c 
b/drivers/net/intel/i40e/i40e_hash.c
index f20b40e7d0..cbb377295d 100644
--- a/drivers/net/intel/i40e/i40e_hash.c
+++ b/drivers/net/intel/i40e/i40e_hash.c
@@ -949,7 +949,7 @@ i40e_hash_parse_queues(const struct rte_eth_dev *dev,
        struct i40e_pf *pf;
        struct i40e_hw *hw;
        uint16_t i;
-       int max_queue;
+       size_t max_queue;
 
        hw = I40E_DEV_PRIVATE_TO_HW(dev->data->dev_private);
        if (!rss_act->queue_num ||
@@ -971,7 +971,7 @@ i40e_hash_parse_queues(const struct rte_eth_dev *dev,
        max_queue = RTE_MIN(max_queue, I40E_MAX_Q_PER_TC);
 
        for (i = 0; i < rss_act->queue_num; i++) {
-               if ((int)rss_act->queue[i] >= max_queue)
+               if (rss_act->queue[i] >= max_queue)
                        break;
        }
 
-- 
2.47.3

Reply via email to