Re: isert for mellanox drivers

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 4/18/2014 4:57 AM, Nicholas A. Bellinger wrote:
Hi Tony,

(CC'ing target-devel list)

On Thu, 2014-04-17 at 07:00 +0000, 서정민 wrote:
Hi, Nicholas,

Nice to meet you, just one simple question.

I am trying to figure out setting up iSER target with the mellanox
card attached.

The current mellanox driver(2.1.0) does not have the ib_isert kernel
module inside,
Not sure what the plan is for ib_isert wrt to the OFED distro.

CC'ing some Mellanox folks for that bit..

and, as expected, it fails to load the updated version of the ib_isert
module with the mellanox driver, due to the version problem.

Yes, the ib_isert would need to be built against OFED source, and not
upstream sources.

I wonder whether you have any suggestion to resolve this situation, or
any manual to use a mellanox card with your isert module.


Hey Nic, Tony & Co,

So MOFED updates IB core modules which breaks symbol resolution for ib_isert.
You can recompile ib_isert against MOFED sources using the following steps:

(1) Patch kernel Makefile to accept pre-includes:
$ cd /lib/modules/`uname -r`/build
$ patch -p1 < kernel-3.12-pre-cflags.patch [Attached]

(2) Rebuild ib_isert (with pre-includes):
$ cd /lib/modules/`uname -r`/build/drivers/infiniband/ulp_isert
$ Make -C <path_to_kernel_sources> SUBDIRS=$PWD KBUILD_EXTRA_SYMBOLS=/usr/src/ofa_kernel/default/Module.symvers \ PRE_CFLAGS="-I/usr/src/ofa_kernel/default/include -include /usr/src/ofa_kernel/default/include/linux/compat-2.6.h" -j
$ Make -C <path_to_kernel_sources> SUBDIRS=$PWD modules_install -j
$depmod -a
$modprobe -r ib_isert && modprobe ib_isert

(3) Revert the kernel Makefile patch:
$ cd /lib/modules/`uname -r`/build
$ patch -p1 --reverse < kernel-3.12-pre-cflags.patch

That should do the job...

Hope this helps,

Sagi.
diff --git a/Makefile b/Makefile
index 540f7b2..078307f 100644
--- a/Makefile
+++ b/Makefile
@@ -361,6 +361,7 @@ USERINCLUDE    := \
 # Use LINUXINCLUDE when you must reference the include/ directory.
 # Needed to be compatible with the O= option
 LINUXINCLUDE    := \
+		$(PRE_CFLAGS) \
 		-I$(srctree)/arch/$(hdr-arch)/include \
 		-Iarch/$(hdr-arch)/include/generated \
 		$(if $(KBUILD_SRC), -I$(srctree)/include) \

[Index of Archives]     [Linux SCSI]     [Kernel Newbies]     [Linux SCSI Target Infrastructure]     [Share Photos]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Linux IIO]     [Device Mapper]

  Powered by Linux