IB/srp: Remove use of cached P_Key/GID queries
The SRP initiator is currently using ib_find_cached_pkey() and ib_get_cached_gid() in situations where the uncached ib_find_pkey() and ib_query_gid() functions serve just as well: sleeping is allowed and performance is not an issue. Since we want to eliminate the cached operations in the long term, convert SRP to use the uncached variants. Signed-off-by: Roland Dreier <rolandd@cisco.com>
This commit is contained in:
parent
50515af207
commit
969a60f9db
|
@ -49,8 +49,6 @@
|
||||||
#include <scsi/srp.h>
|
#include <scsi/srp.h>
|
||||||
#include <scsi/scsi_transport_srp.h>
|
#include <scsi/scsi_transport_srp.h>
|
||||||
|
|
||||||
#include <rdma/ib_cache.h>
|
|
||||||
|
|
||||||
#include "ib_srp.h"
|
#include "ib_srp.h"
|
||||||
|
|
||||||
#define DRV_NAME "ib_srp"
|
#define DRV_NAME "ib_srp"
|
||||||
|
@ -183,10 +181,10 @@ static int srp_init_qp(struct srp_target_port *target,
|
||||||
if (!attr)
|
if (!attr)
|
||||||
return -ENOMEM;
|
return -ENOMEM;
|
||||||
|
|
||||||
ret = ib_find_cached_pkey(target->srp_host->srp_dev->dev,
|
ret = ib_find_pkey(target->srp_host->srp_dev->dev,
|
||||||
target->srp_host->port,
|
target->srp_host->port,
|
||||||
be16_to_cpu(target->path.pkey),
|
be16_to_cpu(target->path.pkey),
|
||||||
&attr->pkey_index);
|
&attr->pkey_index);
|
||||||
if (ret)
|
if (ret)
|
||||||
goto out;
|
goto out;
|
||||||
|
|
||||||
|
@ -1883,8 +1881,7 @@ static ssize_t srp_create_target(struct device *dev,
|
||||||
if (ret)
|
if (ret)
|
||||||
goto err;
|
goto err;
|
||||||
|
|
||||||
ib_get_cached_gid(host->srp_dev->dev, host->port, 0,
|
ib_query_gid(host->srp_dev->dev, host->port, 0, &target->path.sgid);
|
||||||
&target->path.sgid);
|
|
||||||
|
|
||||||
shost_printk(KERN_DEBUG, target->scsi_host, PFX
|
shost_printk(KERN_DEBUG, target->scsi_host, PFX
|
||||||
"new target: id_ext %016llx ioc_guid %016llx pkey %04x "
|
"new target: id_ext %016llx ioc_guid %016llx pkey %04x "
|
||||||
|
|
Loading…
Reference in New Issue