Håkon Bugge d58c23c925 IB/core: Only update PKEY and GID caches on respective events
Both the PKEY and GID tables in an HCA can hold in the order of hundreds
entries. Reading them is expensive. Partly because the API for retrieving
them only returns a single entry at a time. Further, on certain
implementations, e.g., CX-3, the VFs are paravirtualized in this respect
and have to rely on the PF driver to perform the read. This again demands
VF to PF communication.

IB Core's cache is refreshed on all events. Hence, filter the refresh of
the PKEY and GID caches based on the event received being
IB_EVENT_PKEY_CHANGE and IB_EVENT_GID_CHANGE respectively.

Fixes: 1da177e4c3f4 ("Linux-2.6.12-rc2")
Link: https://lore.kernel.org/r/1621964949-28484-1-git-send-email-haakon.bugge@oracle.com
Signed-off-by: Håkon Bugge <haakon.bugge@oracle.com>
Reviewed-by: Leon Romanovsky <leonro@nvidia.com>
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com>
2021-05-28 20:26:16 -03:00
..
2021-04-08 16:14:56 -03:00
2021-04-12 14:52:22 -03:00
2020-12-10 15:05:17 -04:00
2020-03-04 14:28:25 -04:00
2020-12-07 15:45:00 -04:00
2021-04-12 14:56:48 -03:00
2019-06-28 21:18:23 -03:00
2021-03-26 09:31:21 -03:00
2021-03-26 09:31:21 -03:00
2021-03-26 09:31:21 -03:00
2021-03-26 09:31:21 -03:00
2021-04-12 14:56:51 -03:00
2020-07-06 14:54:46 -03:00
2021-05-01 09:15:05 -07:00
2021-04-12 14:56:48 -03:00