[<prev] [next>] [day] [month] [year] [list]
Message-ID: <20151231192806.0a2d7415@canb.auug.org.au>
Date: Thu, 31 Dec 2015 19:28:06 +1100
From: Stephen Rothwell <sfr@...b.auug.org.au>
To: "Nicholas A. Bellinger" <nab@...ux-iscsi.org>,
"J. Bruce Fields" <bfields@...ldses.org>
Cc: linux-next@...r.kernel.org, linux-kernel@...r.kernel.org,
Christoph Hellwig <hch@....de>,
Jenny Derzhavetz <jennyf@...lanox.com>
Subject: linux-next: manual merge of the target-updates tree with the nfsd
tree
Hi Nicholas,
Today's linux-next merge of the target-updates tree got conflicts in:
drivers/infiniband/ulp/iser/iser_memory.c
drivers/infiniband/ulp/isert/ib_isert.c
between commit:
6c7b6d2d442c ("IB: merge struct ib_device_attr into struct ib_device")
from the nfsd tree and commits:
6d2cb3ad4bc2 ("iser-target: Support the remote invalidation exception")
9a4a71456262 ("IB/iser: Support the remote invalidation exception")
from the target-updates tree.
I fixed it up (see below) and can carry the fix as necessary (no action
is required).
--
Cheers,
Stephen Rothwell sfr@...b.auug.org.au
diff --cc drivers/infiniband/ulp/iser/iser_memory.c
index 81ad5e998fc2,8a57d4eadda6..000000000000
--- a/drivers/infiniband/ulp/iser/iser_memory.c
+++ b/drivers/infiniband/ulp/iser/iser_memory.c
@@@ -69,16 -69,17 +69,17 @@@ static struct iser_reg_ops fmr_ops =
int iser_assign_reg_ops(struct iser_device *device)
{
- struct ib_device_attr *dev_attr = &device->dev_attr;
+ struct ib_device *ib_dev = device->ib_device;
/* Assign function handles - based on FMR support */
- if (device->ib_device->alloc_fmr && device->ib_device->dealloc_fmr &&
- device->ib_device->map_phys_fmr && device->ib_device->unmap_fmr) {
+ if (ib_dev->alloc_fmr && ib_dev->dealloc_fmr &&
+ ib_dev->map_phys_fmr && ib_dev->unmap_fmr) {
iser_info("FMR supported, using FMR for registration\n");
device->reg_ops = &fmr_ops;
- } else if (dev_attr->device_cap_flags & IB_DEVICE_MEM_MGT_EXTENSIONS) {
+ } else if (ib_dev->device_cap_flags & IB_DEVICE_MEM_MGT_EXTENSIONS) {
iser_info("FastReg supported, using FastReg for registration\n");
device->reg_ops = &fastreg_ops;
+ device->remote_inv_sup = iser_always_reg;
} else {
iser_err("IB device does not support FMRs nor FastRegs, can't register memory\n");
return -1;
diff --cc drivers/infiniband/ulp/isert/ib_isert.c
index 77f894970aeb,91eb22c4fdba..000000000000
--- a/drivers/infiniband/ulp/isert/ib_isert.c
+++ b/drivers/infiniband/ulp/isert/ib_isert.c
@@@ -654,6 -679,32 +653,32 @@@ out_login_buf
return ret;
}
+ static void
+ isert_set_nego_params(struct isert_conn *isert_conn,
+ struct rdma_conn_param *param)
+ {
+ struct isert_device *device = isert_conn->device;
+
+ /* Set max inflight RDMA READ requests */
+ isert_conn->initiator_depth = min_t(u8, param->initiator_depth,
- device->dev_attr.max_qp_init_rd_atom);
++ device->ib_device->max_qp_init_rd_atom);
+ isert_dbg("Using initiator_depth: %u\n", isert_conn->initiator_depth);
+
+ if (param->private_data) {
+ u8 flags = *(u8 *)param->private_data;
+
+ /*
+ * use remote invalidation if the both initiator
+ * and the HCA support it
+ */
+ isert_conn->snd_w_inv = !(flags & ISER_SEND_W_INV_NOT_SUP) &&
- (device->dev_attr.device_cap_flags &
++ (device->ib_device->device_cap_flags &
+ IB_DEVICE_MEM_MGT_EXTENSIONS);
+ if (isert_conn->snd_w_inv)
+ isert_info("Using remote invalidation\n");
+ }
+ }
+
static int
isert_connect_request(struct rdma_cm_id *cma_id, struct rdma_cm_event *event)
{
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists