Hi all, On Thu, 26 Jul 2018 14:56:24 +1000 Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx> wrote: > > After merging the block tree, today's linux-next build (x86_64 > allmodconfig) failed like this: > > drivers/nvme/target/rdma.c: In function 'nvmet_rdma_find_get_device': > drivers/nvme/target/rdma.c:894:26: error: 'struct ib_device_attr' has no member named 'max_sge'; did you mean 'max_cqe'? > cm_id->device->attrs.max_sge) - 1; > ^ > drivers/nvme/target/rdma.c:893:21: note: in expansion of macro 'max' > inline_sge_count = max(cm_id->device->attrs.max_sge_rd, > ^~~ > In file included from include/linux/list.h:9:0, > from include/linux/module.h:9, > from drivers/nvme/host/rdma.c:15: > drivers/nvme/host/rdma.c: In function 'nvme_rdma_find_get_device': > drivers/nvme/host/rdma.c:381:23: error: 'struct ib_device_attr' has no member named 'max_sge'; did you mean 'max_cqe'? > ndev->dev->attrs.max_sge - 1); > ^ > drivers/nvme/host/rdma.c:380:30: note: in expansion of macro 'min' > ndev->num_inline_segments = min(NVME_RDMA_MAX_INLINE_SEGMENTS, > ^~~ > > Caused by commits > > 64a741c1eaa8 ("nvme-rdma: support up to 4 segments of inline data") > 0d5ee2b2ab4f ("nvmet-rdma: support max(16KB, PAGE_SIZE) inline data") > > interacting with commit > > 33023fb85a42 ("IB/core: add max_send_sge and max_recv_sge attributes") > > from the rdma tree. > > I have applied the following merge fix patch for today: > > From: Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx> > Date: Thu, 26 Jul 2018 14:32:15 +1000 > Subject: [PATCH] nvme-dma: merge fix up for replacement of max_sge > > Signed-off-by: Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx> > --- > drivers/nvme/host/rdma.c | 2 +- > drivers/nvme/target/rdma.c | 2 +- > 2 files changed, 2 insertions(+), 2 deletions(-) > > diff --git a/drivers/nvme/host/rdma.c b/drivers/nvme/host/rdma.c > index cfa0319fcd1c..368fe5ac0c6b 100644 > --- a/drivers/nvme/host/rdma.c > +++ b/drivers/nvme/host/rdma.c > @@ -378,7 +378,7 @@ nvme_rdma_find_get_device(struct rdma_cm_id *cm_id) > } > > ndev->num_inline_segments = min(NVME_RDMA_MAX_INLINE_SEGMENTS, > - ndev->dev->attrs.max_sge - 1); > + ndev->dev->attrs.max_send_sge - 1); > list_add(&ndev->entry, &device_list); > out_unlock: > mutex_unlock(&device_list_mutex); > diff --git a/drivers/nvme/target/rdma.c b/drivers/nvme/target/rdma.c > index 86121a7a19b2..8c30ac7d8078 100644 > --- a/drivers/nvme/target/rdma.c > +++ b/drivers/nvme/target/rdma.c > @@ -891,7 +891,7 @@ nvmet_rdma_find_get_device(struct rdma_cm_id *cm_id) > > inline_page_count = num_pages(port->inline_data_size); > inline_sge_count = max(cm_id->device->attrs.max_sge_rd, > - cm_id->device->attrs.max_sge) - 1; > + cm_id->device->attrs.max_send_sge) - 1; > if (inline_page_count > inline_sge_count) { > pr_warn("inline_data_size %d cannot be supported by device %s. Reducing to %lu.\n", > port->inline_data_size, cm_id->device->name, > -- > 2.18.0 This is now needed (with the max_send_sge -> max_recv_sge update in drivers/nvme/target/rdma.c patch) when I merge the rdma tree with Linus' tree. -- Cheers, Stephen Rothwell
Attachment:
pgp1pGNbWYrJi.pgp
Description: OpenPGP digital signature