i40e: Fix VF disable behavior to block all traffic
authorAndrii Staikov <andrii.staikov@intel.com>
Wed, 29 Nov 2023 14:24:12 +0000 (15:24 +0100)
committerTony Nguyen <anthony.l.nguyen@intel.com>
Tue, 2 Jan 2024 21:46:18 +0000 (13:46 -0800)
commit31deb12e85c35ddd2c037f0107d05d8674cab2c0
treea2c03897c39af3195dfe5f0a5faf3716fba2d9b8
parent5795f533f30a80aa0473652876296ebc9129e33a
i40e: Fix VF disable behavior to block all traffic

Currently, if a VF is disabled using the
'ip link set dev $ETHX vf $VF_NUM state disable' command, the VF is still
able to receive traffic.

Fix the behavior of the 'ip link set dev $ETHX vf $VF_NUM state disable'
to completely shutdown the VF's queues making it entirely disabled and
not able to receive or send any traffic.

Modify the behavior of the 'ip link set $ETHX vf $VF_NUM state enable'
command to make a VF do reinitialization bringing the queues back up.

Co-developed-by: Aleksandr Loktionov <aleksandr.loktionov@intel.com>
Signed-off-by: Aleksandr Loktionov <aleksandr.loktionov@intel.com>
Reviewed-by: Jan Sokolowski <jan.sokolowski@intel.com>
Reviewed-by: Wojciech Drewek <wojciech.drewek@intel.com>
Reviewed-by: Przemek Kitszel <przemyslaw.kitszel@intel.com>
Signed-off-by: Andrii Staikov <andrii.staikov@intel.com>
Tested-by: Rafal Romanowski <rafal.romanowski@intel.com>
Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com>
drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c
drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.h