]> git.baikalelectronics.ru Git - kernel.git/commit
i40e: Add new versions of send ASQ command functions
authorJedrzej Jagielski <jedrzej.jagielski@intel.com>
Fri, 14 Jan 2022 13:19:29 +0000 (13:19 +0000)
committerTony Nguyen <anthony.l.nguyen@intel.com>
Thu, 3 Feb 2022 21:13:50 +0000 (13:13 -0800)
commit009a89121f141e84e5e1a61bfaacfa759c2f065f
tree8b378f4e0016cb0ae86d7b214aca3328316aaa72
parent1b9d625cc5714d7e52b402b05d82a838a2105d74
i40e: Add new versions of send ASQ command functions

ASQ send command functions are returning only i40e status codes
yet some calling functions also need Admin Queue status
that is stored in hw->aq.asq_last_status. Since hw object
is stored on a heap it introduces a possibility for
a race condition in access to hw if calling function is not
fast enough to read hw->aq.asq_last_status before next
send ASQ command is executed.

Add new versions of send ASQ command functions that return
Admin Queue status on the stack to avoid race conditions
in access to hw->aq.asq_last_status.
Add new _v2 version of i40e_aq_remove_macvlan that is using
new _v2 versions of ASQ send command functions and returns
the Admin Queue status on the stack.

Signed-off-by: Sylwester Dziedziuch <sylwesterx.dziedziuch@intel.com>
Signed-off-by: Jedrzej Jagielski <jedrzej.jagielski@intel.com>
Tested-by: Gurucharan G <gurucharanx.g@intel.com>
Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com>
drivers/net/ethernet/intel/i40e/i40e_adminq.c
drivers/net/ethernet/intel/i40e/i40e_common.c
drivers/net/ethernet/intel/i40e/i40e_prototype.h