X-Git-Url: https://git.kernelconcepts.de/?a=blobdiff_plain;f=drivers%2Finfiniband%2Fcore%2Fcache.c;h=87471ef371986c11f59e6761e7566ebec78cc1cd;hb=231e7cb816250aa7d70c9d94cdc96738a1393166;hp=8f66c67ff0df09380dc7c486dce44d92efac1f18;hpb=1b3dfde386b7c72b8f5430dc40eee538eb40c948;p=karo-tx-linux.git diff --git a/drivers/infiniband/core/cache.c b/drivers/infiniband/core/cache.c index 8f66c67ff0df..87471ef37198 100644 --- a/drivers/infiniband/core/cache.c +++ b/drivers/infiniband/core/cache.c @@ -508,12 +508,12 @@ void ib_cache_gid_set_default_gid(struct ib_device *ib_dev, u8 port, memset(&gid_attr, 0, sizeof(gid_attr)); gid_attr.ndev = ndev; + mutex_lock(&table->lock); ix = find_gid(table, NULL, NULL, true, GID_ATTR_FIND_MASK_DEFAULT); /* Coudn't find default GID location */ WARN_ON(ix < 0); - mutex_lock(&table->lock); if (!__ib_cache_gid_get(ib_dev, port, ix, ¤t_gid, ¤t_gid_attr) && mode == IB_CACHE_GID_DEFAULT_MODE_SET &&