On 14/10/2019 09:33, Xiao Zhang wrote: > When configuring i40e rx queue, the temporary variable to store max packet > length is not big enough which leads to integer overflow issue. This > patch is to fix the issue by changing the variable type from uint16_t > to uint32_t. > > Fixes: c511a96a34d7 ("mbuf: add accessors for data room and private > size")
It should be Fixes: 4861cde46116 ("i40e: new poll mode driver") > Cc: sta...@dpdk.org > > Signed-off-by: Xiao Zhang <xiao.zh...@intel.com> > --- > drivers/net/i40e/i40e_rxtx.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/drivers/net/i40e/i40e_rxtx.c b/drivers/net/i40e/i40e_rxtx.c > index bfe161f..ca15b12 100644 > --- a/drivers/net/i40e/i40e_rxtx.c > +++ b/drivers/net/i40e/i40e_rxtx.c > @@ -2596,7 +2596,8 @@ i40e_rx_queue_config(struct i40e_rx_queue *rxq) > struct i40e_pf *pf = I40E_VSI_TO_PF(rxq->vsi); > struct i40e_hw *hw = I40E_VSI_TO_HW(rxq->vsi); > struct rte_eth_dev_data *data = pf->dev_data; > - uint16_t buf_size, len; > + uint16_t buf_size; > + uint32_t len; > You can just remove the variable, it's only used once. > buf_size = (uint16_t)(rte_pktmbuf_data_room_size(rxq->mp) - > RTE_PKTMBUF_HEADROOM); >