diff options
| author | Parav Pandit <[email protected]> | 2018-06-05 08:40:15 +0300 |
|---|---|---|
| committer | Jason Gunthorpe <[email protected]> | 2018-06-18 11:09:05 -0600 |
| commit | b150c3862d21a4a9ce0f26d8067b9dcd41e2050c (patch) | |
| tree | eb5a9408a5aed358b372d00423452ee5ff8e75c8 /tools/perf/scripts/python/export-to-postgresql.py | |
| parent | 1c36cf912ad19c99592c7d089aed5d1c321a678a (diff) | |
IB/core: Introduce GID entry reference counts
In order to be able to expose pointers to the ib_gid_attrs in the GID
table we need to make it so the value of the pointer cannot be
changed. Thus each GID table entry gets a unique piece of kref'd memory
that is written only during initialization and remains constant for its
lifetime.
This eventually will allow the struct ib_gid_attrs to be returned without
copy from many of query the APIs, but it also provides a way to track when
all users of a HW table index go away.
For roce we no longer allow an in-use HW table index to be re-used for a
new an different entry. When a GID table entry needs to be removed it is
hidden from the find API, but remains as a valid HW index and all
ib_gid_attr points remain valid. The HW index is not relased until all
users put the kref.
Later patches will broadly replace the use of the sgid_index integer with
the kref'd structure.
Ultimately this will prevent security problems where the OS changes the
properties of a HW GID table entry while an active user object is still
using the entry.
Signed-off-by: Parav Pandit <[email protected]>
Signed-off-by: Leon Romanovsky <[email protected]>
Signed-off-by: Jason Gunthorpe <[email protected]>
Diffstat (limited to 'tools/perf/scripts/python/export-to-postgresql.py')
0 files changed, 0 insertions, 0 deletions