summaryrefslogtreecommitdiffstats
path: root/drivers/infiniband/hw
diff options
context:
space:
mode:
authorVikas Gupta <vikas.gupta@broadcom.com>2024-04-09 14:54:29 -0700
committerJakub Kicinski <kuba@kernel.org>2024-04-10 19:55:06 -0700
commit2e4592dc9bee5ca4fd3da4c5451c7f97c76442bf (patch)
tree1bbeda3bf9fa8ad3d3ec7eec3d235112b0c3a43f /drivers/infiniband/hw
parent194fad5b27815ca80e832ac875c0026ff96fc243 (diff)
downloadlinux-2e4592dc9bee5ca4fd3da4c5451c7f97c76442bf.tar.gz
linux-2e4592dc9bee5ca4fd3da4c5451c7f97c76442bf.tar.bz2
linux-2e4592dc9bee5ca4fd3da4c5451c7f97c76442bf.zip
bnxt_en: Change MSIX/NQs allocation policy
The existing scheme sets aside a number of MSIX/NQs for the RoCE driver whether the RoCE driver is registered or not. This scheme is not flexible and limits the resources available for the L2 rings if RoCE is never used. Modify the scheme so that the RoCE MSIX/NQs can be used by the L2 driver if they are not used for RoCE. The MSIX/NQs are now represented by 3 fields. bp->ulp_num_msix_want contains the desired default value, edev->ulp_num_msix_vec contains the available value (but not necessarily in use), and ulp_tbl->msix_requested contains the actual value in use by RoCE. The L2 driver can dip into edev->ulp_num_msix_vec if necessary. We need to add rtnl_lock() back in bnxt_register_dev() and bnxt_unregister_dev() to synchronize the MSIX usage between L2 and RoCE. Reviewed-by: Andy Gospodarek <andrew.gospodarek@broadcom.com> Signed-off-by: Vikas Gupta <vikas.gupta@broadcom.com> Signed-off-by: Michael Chan <michael.chan@broadcom.com> Reviewed-by: Jacob Keller <jacob.e.keller@intel.com> Link: https://lore.kernel.org/r/20240409215431.41424-6-michael.chan@broadcom.com Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Diffstat (limited to 'drivers/infiniband/hw')
0 files changed, 0 insertions, 0 deletions