Re: [openib-general] [PATCH 6/6] iSER Kconfig and Makefile

From: Roland Dreier
Date: Thu May 11 2006 - 13:24:44 EST


I fixed up this patch so that it actually hooks into the build (as
below). (BTW, when sending patches in the future, please make them
apply with "-p1" -- your patches had paths like

/usr/src/linux-2.6.17-rc3/drivers/infiniband/ulp/iser-x/Kconfig

so I had to manually strip off the /usr/src/)

Anyway, with a config like

CONFIG_SCSI_ISCSI_ATTRS=y
# CONFIG_ISCSI_TCP is not set
CONFIG_INFINIBAND_ISER=y

My build fails with a bunch of errors like:

drivers/built-in.o: In function `iser_comp_error_worker':iser_verbs.c:(.text+0x7d7cd): undefined reference to `iscsi_conn_failure'

and so on. Is the correct fix for this to add

obj-$(CONFIG_INFINIBAND_ISER) += libiscsi.o

to drivers/scsi/Makefile?

Also, I get the following sparse warning:

drivers/infiniband/ulp/iser/iser_initiator.c:610:25: error: incompatible types for operation (&)

and the code there does look fishy:

itt = hdr->itt & ISCSI_ITT_MASK; /* mask out cid and age bits */

hdr->itt is __be32 but ISCSI_ITT_MASK is just (0xfff), so it seems
that there is something wrong, either with the iSCSI endianness
annotation or with the code itself.

Thanks,
Roland

---

diff-tree 9120bc6c8b5bdd1f4c85df7a04779ae8faa0c1a5 (from 4161cba09429dae06d249584ee1c7d63c672422c)
Author: Or Gerlitz <ogerlitz@xxxxxxxxxxxx>
Date: Thu May 11 10:03:30 2006 +0300

IB/iser: iSER Kconfig and Makefile

Kconfig and Makefile for iSER.

Signed-off-by: Or Gerlitz <ogerlitz@xxxxxxxxxxxx>
Signed-off-by: Roland Dreier <rolandd@xxxxxxxxx>

diff --git a/drivers/infiniband/Kconfig b/drivers/infiniband/Kconfig
index ba2d650..69a53d4 100644
--- a/drivers/infiniband/Kconfig
+++ b/drivers/infiniband/Kconfig
@@ -41,4 +41,6 @@ source "drivers/infiniband/ulp/ipoib/Kco

source "drivers/infiniband/ulp/srp/Kconfig"

+source "drivers/infiniband/ulp/iser/Kconfig"
+
endmenu
diff --git a/drivers/infiniband/Makefile b/drivers/infiniband/Makefile
index eea2732..abeaf79 100644
--- a/drivers/infiniband/Makefile
+++ b/drivers/infiniband/Makefile
@@ -3,3 +3,4 @@ obj-$(CONFIG_INFINIBAND_MTHCA) += hw/mt
obj-$(CONFIG_IPATH_CORE) += hw/ipath/
obj-$(CONFIG_INFINIBAND_IPOIB) += ulp/ipoib/
obj-$(CONFIG_INFINIBAND_SRP) += ulp/srp/
+obj-$(CONFIG_INFINIBAND_SRP) += ulp/iser/
diff --git a/drivers/infiniband/ulp/iser/Kconfig b/drivers/infiniband/ulp/iser/Kconfig
new file mode 100644
index 0000000..fead87d
--- /dev/null
+++ b/drivers/infiniband/ulp/iser/Kconfig
@@ -0,0 +1,11 @@
+config INFINIBAND_ISER
+ tristate "ISCSI RDMA Protocol"
+ depends on INFINIBAND && SCSI
+ select SCSI_ISCSI_ATTRS
+ ---help---
+ Support for the ISCSI RDMA Protocol over InfiniBand. This
+ allows you to access storage devices that speak ISER/ISCSI
+ over InfiniBand.
+
+ The ISER protocol is defined by IETF.
+ See <http://www.ietf.org/>.
diff --git a/drivers/infiniband/ulp/iser/Makefile b/drivers/infiniband/ulp/iser/Makefile
new file mode 100644
index 0000000..fe6cd15
--- /dev/null
+++ b/drivers/infiniband/ulp/iser/Makefile
@@ -0,0 +1,4 @@
+obj-$(CONFIG_INFINIBAND_ISER) += ib_iser.o
+
+ib_iser-y := iser_verbs.o iser_initiator.o iser_memory.o \
+ iscsi_iser.o
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/