diff options
author | Roland Dreier <rolandd@cisco.com> | 2008-07-15 02:48:43 -0400 |
---|---|---|
committer | Roland Dreier <rolandd@cisco.com> | 2008-07-15 02:48:43 -0400 |
commit | 969a60f9db3f879f95bd37026a3c3bf02cc2568f (patch) | |
tree | 1099a085e7b171f45051741f9e0da91af6eaeb04 /drivers/infiniband/ulp/srp | |
parent | 50515af207d410c9f228380e529c56f43c3de0bd (diff) |
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>
Diffstat (limited to 'drivers/infiniband/ulp/srp')
-rw-r--r-- | drivers/infiniband/ulp/srp/ib_srp.c | 13 |
1 files changed, 5 insertions, 8 deletions
diff --git a/drivers/infiniband/ulp/srp/ib_srp.c b/drivers/infiniband/ulp/srp/ib_srp.c index 435145709dd6..81cc59ca5595 100644 --- a/drivers/infiniband/ulp/srp/ib_srp.c +++ b/drivers/infiniband/ulp/srp/ib_srp.c | |||
@@ -49,8 +49,6 @@ | |||
49 | #include <scsi/srp.h> | 49 | #include <scsi/srp.h> |
50 | #include <scsi/scsi_transport_srp.h> | 50 | #include <scsi/scsi_transport_srp.h> |
51 | 51 | ||
52 | #include <rdma/ib_cache.h> | ||
53 | |||
54 | #include "ib_srp.h" | 52 | #include "ib_srp.h" |
55 | 53 | ||
56 | #define DRV_NAME "ib_srp" | 54 | #define DRV_NAME "ib_srp" |
@@ -183,10 +181,10 @@ static int srp_init_qp(struct srp_target_port *target, | |||
183 | if (!attr) | 181 | if (!attr) |
184 | return -ENOMEM; | 182 | return -ENOMEM; |
185 | 183 | ||
186 | ret = ib_find_cached_pkey(target->srp_host->srp_dev->dev, | 184 | ret = ib_find_pkey(target->srp_host->srp_dev->dev, |
187 | target->srp_host->port, | 185 | target->srp_host->port, |
188 | be16_to_cpu(target->path.pkey), | 186 | be16_to_cpu(target->path.pkey), |
189 | &attr->pkey_index); | 187 | &attr->pkey_index); |
190 | if (ret) | 188 | if (ret) |
191 | goto out; | 189 | goto out; |
192 | 190 | ||
@@ -1883,8 +1881,7 @@ static ssize_t srp_create_target(struct device *dev, | |||
1883 | if (ret) | 1881 | if (ret) |
1884 | goto err; | 1882 | goto err; |
1885 | 1883 | ||
1886 | ib_get_cached_gid(host->srp_dev->dev, host->port, 0, | 1884 | ib_query_gid(host->srp_dev->dev, host->port, 0, &target->path.sgid); |
1887 | &target->path.sgid); | ||
1888 | 1885 | ||
1889 | shost_printk(KERN_DEBUG, target->scsi_host, PFX | 1886 | shost_printk(KERN_DEBUG, target->scsi_host, PFX |
1890 | "new target: id_ext %016llx ioc_guid %016llx pkey %04x " | 1887 | "new target: id_ext %016llx ioc_guid %016llx pkey %04x " |