[ewg] RE: Building OFED1.4 kernel modules

Vladimir Sokolovsky vlad at mellanox.co.il
Tue Jun 3 05:38:09 PDT 2008


> -----Original Message-----
> From: Doron Shoham [mailto:dorons at Voltaire.COM]
> Sent: Tuesday, June 03, 2008 3:31 PM
> To: Vladimir Sokolovsky
> Cc: ewg at lists.openfabrics.org
> Subject: Building OFED1.4 kernel modules
> 
> Hi Vald,
> I'm working on the backports of OFED1.4
> I'm trying to test my backports and for doing so
> I need to build OFED1.4 kernel modules.
> 
> I'm working by your instruction (for OFED1.3),
> are they relevant for OFED1.4 also?
> 
> I did the following steps:
> 
> 1. git clone -s -n git://git.openfabrics.org/ofed_1_4/linux-2.6.git
testbuild
> 2. cd testbuild
> 3. git checkout ofed_kernel -- ofed_scripts
> 4. ./ofed_scripts/ofed_checkout.sh refs/heads/ofed_kernel
> 5. create my new backports on kernel_patches/backports/2.6.9_U5/
> 6. ./ofed_scripts/ofed_patch.sh --with-backport=2.6.9_U5
> 7. ./configure --with-core-mod
> 8. run `make`
> 
> 
> I got the following errors when trying to run 'make':
> 
> [testbuild]# make
> Building kernel modules
> Kernel version: 2.6.9-55.ELsmp
> Modules directory: //lib/modules/2.6.9-55.ELsmp/updates
> Kernel sources: /lib/modules/2.6.9-55.ELsmp/build
> env CWD=/tmp/testbuild BACKPORT_INCLUDES=-
> I/tmp/testbuild/kernel_addons/backport/2.6.9_U5/include/ \
> make -C /lib/modules/2.6.9-55.ELsmp/build SUBDIRS="/tmp/testbuild" \
>         V=1  \
>         CONFIG_MEMTRACK= \
>         CONFIG_DEBUG_INFO=y \
>         CONFIG_INFINIBAND=m \
>         CONFIG_INFINIBAND_IPOIB= \
>         CONFIG_INFINIBAND_IPOIB_CM= \
>         CONFIG_INFINIBAND_SDP= \
>         CONFIG_INFINIBAND_SRP= \
>         CONFIG_INFINIBAND_SRPT= \
>         CONFIG_INFINIBAND_USER_MAD= \
>         CONFIG_INFINIBAND_USER_ACCESS= \
>         CONFIG_INFINIBAND_USER_MEM= \
>         CONFIG_INFINIBAND_ADDR_TRANS= \
>         CONFIG_INFINIBAND_MTHCA= \
>         CONFIG_INFINIBAND_IPOIB_DEBUG= \
>         CONFIG_INFINIBAND_ISER= \
>         CONFIG_SCSI_ISCSI_ATTRS= \
>         CONFIG_ISCSI_TCP= \
>         CONFIG_INFINIBAND_EHCA= \
>         CONFIG_INFINIBAND_EHCA_SCALING= \
>         CONFIG_RDS= \
>         CONFIG_RDS_IB= \
>         CONFIG_RDS_TCP= \
>         CONFIG_RDS_DEBUG= \
>         CONFIG_INFINIBAND_IPOIB_DEBUG_DATA= \
>         CONFIG_INFINIBAND_SDP_SEND_ZCOPY= \
>         CONFIG_INFINIBAND_SDP_RECV_ZCOPY= \
>         CONFIG_INFINIBAND_SDP_DEBUG= \
>         CONFIG_INFINIBAND_SDP_DEBUG_DATA= \
>         CONFIG_INFINIBAND_IPATH= \
>         CONFIG_INFINIBAND_MTHCA_DEBUG= \
>         CONFIG_INFINIBAND_MADEYE= \
>         CONFIG_INFINIBAND_QLGC_VNIC= \
>         CONFIG_INFINIBAND_QLGC_VNIC_DEBUG= \
>         CONFIG_INFINIBAND_QLGC_VNIC_STATS= \
>         CONFIG_CHELSIO_T3= \
>         CONFIG_INFINIBAND_CXGB3= \
>         CONFIG_INFINIBAND_CXGB3_DEBUG= \
>         CONFIG_INFINIBAND_NES= \
>         CONFIG_INFINIBAND_NES_DEBUG= \
>         CONFIG_MLX4_CORE= \
>         CONFIG_MLX4_INFINIBAND= \
>         CONFIG_MLX4_ETHERNET= \
>         CONFIG_MLX4_DEBUG= \
>         CONFIG_INFINIBAND_AMSO1100= \
>         LINUXINCLUDE=' \
>         -include include/linux/autoconf.h \
>         -include /tmp/testbuild/include/linux/autoconf.h \
>         -I/tmp/testbuild/kernel_addons/backport/2.6.9_U5/include/ \
>          \
>          \
>         -I/tmp/testbuild/include \
>         -I/tmp/testbuild/drivers/infiniband/debug \
>         -I/usr/local/include/scst \
>         -I/tmp/testbuild/drivers/infiniband/ulp/srpt \
>         -I/tmp/testbuild/drivers/net/cxgb3 \
>         -Iinclude \
>         $(if $(KBUILD_SRC),-Iinclude2 -I$(srctree)/include) \
>         ' \
>         modules
> make[1]: Entering directory `/usr/src/kernels/2.6.9-55.EL-smp-x86_64'
> mkdir -p /tmp/testbuild/.tmp_versions
> make -f scripts/Makefile.build obj=/tmp/testbuild
> make -f scripts/Makefile.build obj=/tmp/testbuild/drivers/infiniband
> make -f scripts/Makefile.build
obj=/tmp/testbuild/drivers/infiniband/core
>   gcc -Wp,-MD,/tmp/testbuild/drivers/infiniband/core/.cm.o.d -nostdinc
-
> iwithprefix include -D__KERNEL__ -include include/linux/autoconf.h
-include
> /tmp/testbuild/include/linux/autoconf.h  -
> I/tmp/testbuild/kernel_addons/backport/2.6.9_U5/include/    -
> I/tmp/testbuild/include  -I/tmp/testbuild/drivers/infiniband/debug  -
> I/usr/local/include/scst  -I/tmp/testbuild/drivers/infiniband/ulp/srpt
-
> I/tmp/testbuild/drivers/net/cxgb3  -Iinclude     -Wall
-Wstrict-prototypes -Wno-
> trigraphs -fno-strict-aliasing -fno-common -Os -fomit-frame-pointer -g
-
> Wdeclaration-after-statement  -mno-red-zone -mcmodel=kernel -pipe
-fno-
> reorder-blocks      -Wno-sign-compare -funit-at-a-time   -DMODULE -
> DKBUILD_BASENAME=cm -DKBUILD_MODNAME=ib_cm -c -o
> /tmp/testbuild/drivers/infiniband/core/.tmp_cm.o
> /tmp/testbuild/drivers/infiniband/core/cm.c
> In file included from /tmp/testbuild/include/rdma/ib_cache.h:40,
>                  from /tmp/testbuild/drivers/infiniband/core/cm.c:50:
> /tmp/testbuild/include/rdma/ib_verbs.h:1629: warning: "struct
dma_attrs"
> declared inside parameter list
> /tmp/testbuild/include/rdma/ib_verbs.h:1629: warning: its scope is
only this
> definition or declaration, which is probably not what you want
> /tmp/testbuild/include/rdma/ib_verbs.h: In function
`ib_dma_map_single_attrs':
> /tmp/testbuild/include/rdma/ib_verbs.h:1631: warning: implicit
declaration of
> function `dma_map_single_attrs'
> /tmp/testbuild/include/rdma/ib_verbs.h: At top level:
> /tmp/testbuild/include/rdma/ib_verbs.h:1638: warning: "struct
dma_attrs"
> declared inside parameter list
> /tmp/testbuild/include/rdma/ib_verbs.h: In function
> `ib_dma_unmap_single_attrs':
> /tmp/testbuild/include/rdma/ib_verbs.h:1640: warning: implicit
declaration of
> function `dma_unmap_single_attrs'
> /tmp/testbuild/include/rdma/ib_verbs.h:1641: warning: `return' with a
value, in
> function returning void
> /tmp/testbuild/include/rdma/ib_verbs.h: At top level:
> /tmp/testbuild/include/rdma/ib_verbs.h:1716: warning: "struct
dma_attrs"
> declared inside parameter list
> /tmp/testbuild/include/rdma/ib_verbs.h: In function
`ib_dma_map_sg_attrs':
> /tmp/testbuild/include/rdma/ib_verbs.h:1718: warning: implicit
declaration of
> function `dma_map_sg_attrs'
> /tmp/testbuild/include/rdma/ib_verbs.h: At top level:
> /tmp/testbuild/include/rdma/ib_verbs.h:1724: warning: "struct
dma_attrs"
> declared inside parameter list
> /tmp/testbuild/include/rdma/ib_verbs.h: In function
`ib_dma_unmap_sg_attrs':
> /tmp/testbuild/include/rdma/ib_verbs.h:1726: warning: implicit
declaration of
> function `dma_unmap_sg_attrs'
> /tmp/testbuild/drivers/infiniband/core/cm.c: At top level:
> /tmp/testbuild/drivers/infiniband/core/cm.c:127: error: syntax error
before
> "atomic_long_t"
> /tmp/testbuild/drivers/infiniband/core/cm.c:127: warning: no semicolon
at end of
> struct or union
> /tmp/testbuild/drivers/infiniband/core/cm.c:173: error: field
`counter_group' has
> incomplete type
> /tmp/testbuild/drivers/infiniband/core/cm.c: In function
`cm_dup_req_handler':
> /tmp/testbuild/drivers/infiniband/core/cm.c:1419: warning: implicit
declaration of
> function `atomic_long_inc'
> /tmp/testbuild/drivers/infiniband/core/cm.c: In function
`cm_send_handler':
> /tmp/testbuild/drivers/infiniband/core/cm.c:3235: warning: implicit
declaration of
> function `atomic_long_add'
> /tmp/testbuild/drivers/infiniband/core/cm.c: In function
`cm_show_counter':
> /tmp/testbuild/drivers/infiniband/core/cm.c:3642: error: dereferencing
pointer to
> incomplete type
> /tmp/testbuild/drivers/infiniband/core/cm.c:3642: warning: type
defaults to `int'
> in declaration of `__mptr'
> /tmp/testbuild/drivers/infiniband/core/cm.c:3642: warning:
initialization from
> incompatible pointer type
> /tmp/testbuild/drivers/infiniband/core/cm.c:3642: error: dereferencing
pointer to
> incomplete type
> /tmp/testbuild/drivers/infiniband/core/cm.c:3646: warning: implicit
declaration of
> function `atomic_long_read'
> /tmp/testbuild/drivers/infiniband/core/cm.c:3646: error: dereferencing
pointer to
> incomplete type
> /tmp/testbuild/drivers/infiniband/core/cm.c:3646: warning: long int
format,
> different type arg (arg 3)
> /tmp/testbuild/drivers/infiniband/core/cm.c:3646: warning: long int
format,
> different type arg (arg 3)
> /tmp/testbuild/drivers/infiniband/core/cm.c: In function
`cm_create_port_fs':
> /tmp/testbuild/drivers/infiniband/core/cm.c:3691: warning: implicit
declaration of
> function `kobject_init_and_add'
> /tmp/testbuild/drivers/infiniband/core/cm.c: In function `cm_add_one':
> /tmp/testbuild/drivers/infiniband/core/cm.c:3755: error: structure has
no member
> named `kobj'
> make[4]: *** [/tmp/testbuild/drivers/infiniband/core/cm.o] Error 1
> make[3]: *** [/tmp/testbuild/drivers/infiniband/core] Error 2
> make[2]: *** [/tmp/testbuild/drivers/infiniband] Error 2
> make[1]: *** [_module_/tmp/testbuild] Error 2
> make[1]: Leaving directory `/usr/src/kernels/2.6.9-55.EL-smp-x86_64'
> make: *** [kernel] Error 2
> 
> 
> 
> What am I doing wrong?
> What can be done in order to solve it?
> 
> 
> 
> Thanks,
> Doron

Hi Doron,
Please make sure that you have the latest ofed_1_4 git tree.
I committed the backport patches for RHEL4.0U5  yesterday evening.

Regards,
Vladimir





More information about the ewg mailing list