On 10/15/2015 11:38 AM, Matan Barak wrote: > Hi Doug, > > This purpose of this series is to add usage of the GID cache to > the CMA and IB stack. Instead of passing Ethernet L2 attributes > via QP attributes, we could just use the GID cache that's already > points to a ndev and thus to all required L2 attributes. > > The first five patches query the GID table to find only GIDs which > are related to the bounded net-device of the specific used port. This > extra information is carried via ib_sa_path_rec (extending it to > include the namespace and ifindex). Querying the ndev and port > is achieved by adding a gid_attr argument to ib_query_gid, add a > ndev argument to ib_find_cached_gid and add a new > ib_find_cached_gid_by_port. This usage of the GID table replaces > the usage of QP attributes. > > The sixth patch adds an ib_cache_gid_find_by_filter function. > This allows the user to query the cache by a specific filter. > ib_cache_gid_find_by_filter is used by the seventh patch. Instead > of storing the smac and vid on the AH, we could just resolve > them from the net-device which the sgid index is assigned to. > This change means that instead of resolving all L2 attributes, > the server, we get the dgid and vlan and searches the GID cache > in order to find a matching GID index. > > The last three patches removed unused fields and attributes. > > Matan > > Changes from V1: > - Rebased patches against Doug's latest k.o/for-4.4 tree. Most of this code seemed like pretty straight forward prepatory word for the follow on patch series. However, I did note that this patch set extends the per-element locking of the GID tables. I've taken this patch set in spite of that fact. Please prioritize changing that locking to something more reasonable. I would prefer if those changes landed prior to the 4.4 merge window closing. -- Doug Ledford <dledford@xxxxxxxxxx> GPG KeyID: 0E572FDD
Attachment:
signature.asc
Description: OpenPGP digital signature