]> git.itanic.dy.fi Git - linux-stable/commit
iavf: Fix set max MTU size with port VLAN and jumbo frames
authorMichal Jaron <michalx.jaron@intel.com>
Tue, 13 Sep 2022 13:38:35 +0000 (15:38 +0200)
committerTony Nguyen <anthony.l.nguyen@intel.com>
Mon, 19 Sep 2022 21:12:57 +0000 (14:12 -0700)
commit399c98c4dc50b7eb7e9f24da7ffdda6f025676ef
tree733394e5c8928244e0ce43e570021bb8e1b5bc80
parent66039eb9015eee4f7ff0c99b83c65c7ecb3c8190
iavf: Fix set max MTU size with port VLAN and jumbo frames

After setting port VLAN and MTU to 9000 on VF with ice driver there
was an iavf error
"PF returned error -5 (IAVF_ERR_PARAM) to our request 6".

During queue configuration, VF's max packet size was set to
IAVF_MAX_RXBUFFER but on ice max frame size was smaller by VLAN_HLEN
due to making some space for port VLAN as VF is not aware whether it's
in a port VLAN. This mismatch in sizes caused ice to reject queue
configuration with ERR_PARAM error. Proper max_mtu is sent from ice PF
to VF with GET_VF_RESOURCES msg but VF does not look at this.

In iavf change max_frame from IAVF_MAX_RXBUFFER to max_mtu
received from pf with GET_VF_RESOURCES msg to make vf's
max_frame_size dependent from pf. Add check if received max_mtu is
not in eligible range then set it to IAVF_MAX_RXBUFFER.

Fixes: dab86afdbbd1 ("i40e/i40evf: Change the way we limit the maximum frame size for Rx")
Signed-off-by: Michal Jaron <michalx.jaron@intel.com>
Signed-off-by: Mateusz Palczewski <mateusz.palczewski@intel.com>
Tested-by: Konrad Jankowski <konrad0.jankowski@intel.com>
Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com>
drivers/net/ethernet/intel/iavf/iavf_virtchnl.c