[ENBD] enbd_ioctl 2.6.9 kernel fails to modprobe enbd - seg fault
scunacc
scunacc at yahoo.com
Thu Mar 2 17:44:25 MST 2006
Dear Peter,
> > ___ts2.tv_usec___ is used uninitialized in this function
>
> Yep. Needs initializing.
>
> Congrats. You found a bug. Not important, though.
Thankful that is useful. :-)
> Now, could you compile kernelspace, this time with LINUXDIR pointing
> at the appropriate kernel dir (maybe it will be like that by default)?
>
> make module 2>&1 | tail -60
make module 2>&1 | tail -60
/bin/sh: line 0: [: -ge: unary operator expected
make[1]: Entering directory `/usr/src/linux-2.6.9-cm46'
*** Warning: Overriding SUBDIRS on the command line can cause
*** inconsistencies
mkdir -p /tmp/enbd/linux-2.6.x/.tmp_versions
make -f /usr/src/linux-2.6.9-cm46/scripts/Makefile.build
obj=arch/i386/kernel arch/i386/kernel/asm-offsets.s
gcc -I/home/sysadmin/net_disk/nbd-2.4.33/kernel/linux-2.6.x/include
-Wp,-MD,arch/i386/kernel/.asm-offsets.s.d -nostdinc -iwithprefix include
-D__KERNEL__ -Iinclude -D__KERNEL__ -Iinclude -Wall
-Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common
-pipe -msoft-float -Iinclude/asm-i386/mach-default -O2
-fomit-frame-pointer -Wdeclaration-after-statement -D__SMP__
-DCONFIG_X86_LOCAL_APIC -DKBUILD_BASENAME=asm_offsets
-DKBUILD_MODNAME=asm_offsets -S -o arch/i386/kernel/asm-offsets.s
arch/i386/kernel/asm-offsets.c
CHK include/asm-i386/asm_offsets.h
make -f /usr/src/linux-2.6.9-cm46/scripts/Makefile.build
obj=/tmp/enbd/linux-2.6.x/drivers/block/enbd
gcc -I/home/sysadmin/net_disk/nbd-2.4.33/kernel/linux-2.6.x/include
-Wp,-MD,/tmp/enbd/linux-2.6.x/drivers/block/enbd/.enbd_base.o.d
-nostdinc -iwithprefix include -D__KERNEL__ -Iinclude -D__KERNEL__
-Iinclude -Wall -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing
-fno-common -pipe -msoft-float -Iinclude/asm-i386/mach-default -O2
-fomit-frame-pointer -Wdeclaration-after-statement -D__SMP__
-DCONFIG_X86_LOCAL_APIC -DMODULE
-I"/home/sysadmin/net_disk/nbd-2.4.33/kernel/linux-2.6.x/include"
-DKBUILD_BASENAME=enbd_base -DKBUILD_MODNAME=enbd -c
-o /tmp/enbd/linux-2.6.x/drivers/block/enbd/.tmp_enbd_base.o /tmp/enbd/linux-2.6.x/drivers/block/enbd/enbd_base.c
In file included
from /tmp/enbd/linux-2.6.x/drivers/block/enbd/enbd_base.c:295:
/home/sysadmin/net_disk/nbd-2.4.33/kernel/linux-2.6.x/include/linux/enbd.h: In function âlocal_nbd_end_requestâ:
/home/sysadmin/net_disk/nbd-2.4.33/kernel/linux-2.6.x/include/linux/enbd.h:443: error: invalid storage class for function ârq_typeâ
/home/sysadmin/net_disk/nbd-2.4.33/kernel/linux-2.6.x/include/linux/enbd.h:444: warning: implicit declaration of function ârq_typeâ
/home/sysadmin/net_disk/nbd-2.4.33/kernel/linux-2.6.x/include/linux/enbd.h: In function âenbd_end_requestâ:
/home/sysadmin/net_disk/nbd-2.4.33/kernel/linux-2.6.x/include/linux/enbd.h:485: error: invalid storage class for function ârq_set_seqnoâ
/home/sysadmin/net_disk/nbd-2.4.33/kernel/linux-2.6.x/include/linux/enbd.h:487: warning: implicit declaration of function ârq_set_seqnoâ
/home/sysadmin/net_disk/nbd-2.4.33/kernel/linux-2.6.x/include/linux/enbd.h: In function âenbd_end_request_lockâ:
/home/sysadmin/net_disk/nbd-2.4.33/kernel/linux-2.6.x/include/linux/enbd.h:500: error: invalid storage class for function ârq_set_seqnoâ
/tmp/enbd/linux-2.6.x/drivers/block/enbd/enbd_base.c: At top level:
/tmp/enbd/linux-2.6.x/drivers/block/enbd/enbd_base.c:495: error: static
declaration of ârq_typeâ follows non-static declaration
/home/sysadmin/net_disk/nbd-2.4.33/kernel/linux-2.6.x/include/linux/enbd.h:444: error: previous implicit declaration of ârq_typeâ was here
/tmp/enbd/linux-2.6.x/drivers/block/enbd/enbd_base.c:627: warning:
conflicting types for ârq_set_seqnoâ
/tmp/enbd/linux-2.6.x/drivers/block/enbd/enbd_base.c:627: error: static
declaration of ârq_set_seqnoâ follows non-static declaration
/home/sysadmin/net_disk/nbd-2.4.33/kernel/linux-2.6.x/include/linux/enbd.h:487: error: previous implicit declaration of ârq_set_seqnoâ was here
/tmp/enbd/linux-2.6.x/drivers/block/enbd/enbd_base.c: In function
âenbd_get_reqâ:
/tmp/enbd/linux-2.6.x/drivers/block/enbd/enbd_base.c:1878: error:
invalid storage class for function âenbd_clr_sockâ
/tmp/enbd/linux-2.6.x/drivers/block/enbd/enbd_base.c:1924: warning:
implicit declaration of function âenbd_clr_sockâ
/tmp/enbd/linux-2.6.x/drivers/block/enbd/enbd_base.c: At top level:
/tmp/enbd/linux-2.6.x/drivers/block/enbd/enbd_base.c:2628: error: static
declaration of âenbd_clr_sockâ follows non-static declaration
/tmp/enbd/linux-2.6.x/drivers/block/enbd/enbd_base.c:1924: error:
previous implicit declaration of âenbd_clr_sockâ was here
/tmp/enbd/linux-2.6.x/drivers/block/enbd/enbd_base.c: In function
âenbd_clr_sockâ:
/tmp/enbd/linux-2.6.x/drivers/block/enbd/enbd_base.c:2635: error:
invalid storage class for function âenbd_soft_resetâ
/tmp/enbd/linux-2.6.x/drivers/block/enbd/enbd_base.c:2680: warning:
implicit declaration of function âenbd_soft_resetâ
/tmp/enbd/linux-2.6.x/drivers/block/enbd/enbd_base.c: At top level:
/tmp/enbd/linux-2.6.x/drivers/block/enbd/enbd_base.c:2859: warning:
conflicting types for built-in function âlog2â
/tmp/enbd/linux-2.6.x/drivers/block/enbd/enbd_base.c:3284: error: static
declaration of âenbd_soft_resetâ follows non-static declaration
/tmp/enbd/linux-2.6.x/drivers/block/enbd/enbd_base.c:2680: error:
previous implicit declaration of âenbd_soft_resetâ was here
/tmp/enbd/linux-2.6.x/drivers/block/enbd/enbd_base.c: In function
âenbd_ioctlâ:
/tmp/enbd/linux-2.6.x/drivers/block/enbd/enbd_base.c:4423: warning:
pointer targets in passing argument 1 of
âremote_ioctl->convert_inplaceâ differ in signedness
make[2]: *** [/tmp/enbd/linux-2.6.x/drivers/block/enbd/enbd_base.o]
Error 1
make[1]: *** [/tmp/enbd/linux-2.6.x/drivers/block/enbd] Error 2
make[1]: Leaving directory `/usr/src/linux-2.6.9-cm46'
*************************************
* please apply kernel patch instead *
*************************************
More information about the ENBD
mailing list