diff options
author | 2006-06-17 20:37:34 -0700 | |
---|---|---|
committer | 2006-06-17 20:37:34 -0700 | |
commit | 6fb9cdbf2cdb2ea187e57ec2e16cc59df2adf86a (patch) | |
tree | 329eb272835bd3105696ddbc60cdaea971aa2a6e /include/rdma | |
parent | IB/cm: remove unneeded flush_workqueue (diff) | |
download | linux-6fb9cdbf2cdb2ea187e57ec2e16cc59df2adf86a.tar.gz linux-6fb9cdbf2cdb2ea187e57ec2e16cc59df2adf86a.tar.bz2 linux-6fb9cdbf2cdb2ea187e57ec2e16cc59df2adf86a.zip |
IB: Add caching of ports' LMC
Add an LMC cache to struct ib_device, and add a function
ib_get_cached_lmc() to query the cache.
Signed-off-by: Jack Morgenstein <jackm@mellanox.co.il>
Signed-off-by: Sean Hefty <sean.hefty@intel.com>
Signed-off-by: Roland Dreier <rolandd@cisco.com>
Diffstat (limited to 'include/rdma')
-rw-r--r-- | include/rdma/ib_cache.h | 13 | ||||
-rw-r--r-- | include/rdma/ib_verbs.h | 1 |
2 files changed, 14 insertions, 0 deletions
diff --git a/include/rdma/ib_cache.h b/include/rdma/ib_cache.h index 5bf9834f7dca..f179d233ffc3 100644 --- a/include/rdma/ib_cache.h +++ b/include/rdma/ib_cache.h @@ -102,4 +102,17 @@ int ib_find_cached_pkey(struct ib_device *device, u16 pkey, u16 *index); +/** + * ib_get_cached_lmc - Returns a cached lmc table entry + * @device: The device to query. + * @port_num: The port number of the device to query. + * @lmc: The lmc value for the specified port for that device. + * + * ib_get_cached_lmc() fetches the specified lmc table entry stored in + * the local software cache. + */ +int ib_get_cached_lmc(struct ib_device *device, + u8 port_num, + u8 *lmc); + #endif /* _IB_CACHE_H */ diff --git a/include/rdma/ib_verbs.h b/include/rdma/ib_verbs.h index 6bbf1b364400..aeb4fcd86a9e 100644 --- a/include/rdma/ib_verbs.h +++ b/include/rdma/ib_verbs.h @@ -827,6 +827,7 @@ struct ib_cache { struct ib_event_handler event_handler; struct ib_pkey_cache **pkey_cache; struct ib_gid_cache **gid_cache; + u8 *lmc_cache; }; struct ib_device { |