On 05/01/2010 12:06 PM, Hiroshi KIHIRA wrote:
Hi,
I tried to build open-iscsi-2.0.871.3 on my system with linux-2.6.33.2
by adjusting kernel/Makefile. But I failed to build.
(Simply I added "linux_2_6_33: $(unpatch_code)" in kernel/Makefile.)
Error messages are described below:
----- [snip] -----
CC [M] /root/open-iscsi-2.0.871.3/kernel/libiscsi.o
/root/open-iscsi-2.0.871.3/kernel/libiscsi.c: In function
'iscsi_free_task':
/root/open-iscsi-2.0.871.3/kernel/libiscsi.c:431: error: implicit
declaration of function '__kfifo_put'
/root/open-iscsi-2.0.871.3/kernel/libiscsi.c: In function
'__iscsi_conn_send_pdu':
/root/open-iscsi-2.0.871.3/kernel/libiscsi.c:617: error: implicit
declaration of function '__kfifo_get'
/root/open-iscsi-2.0.871.3/kernel/libiscsi.c: In function
'iscsi_target_alloc':
/root/open-iscsi-2.0.871.3/kernel/libiscsi.c:1552: warning: unused
variable 'session'
/root/open-iscsi-2.0.871.3/kernel/libiscsi.c: In function
'iscsi_pool_init':
/root/open-iscsi-2.0.871.3/kernel/libiscsi.c:2127: warning: passing
argument 2 of 'kfifo_init' makes pointer from integer without a cast
include/linux/kfifo.h:105: note: expected 'void *' but argument is of
type 'long unsigned int'
/root/open-iscsi-2.0.871.3/kernel/libiscsi.c:2127: error: too many
arguments to function 'kfifo_init'
/root/open-iscsi-2.0.871.3/kernel/libiscsi.c:2127: error: void value
not ignored as it ought to be
make[3]: *** [/root/open-iscsi-2.0.871.3/kernel/libiscsi.o] Error 1
----- [snip] -----
The kfifo API seems to have changed from linux-2.6.33,
so I wrote a patch to support this API change.
The patched open-iscsi-2.0.871.3 was built with linux-2.6.33.2
successfully. And it passed very simple test(modprobe iscsi_tcp,
start iscsid, discovery, login, write and modprobe -r iscsi_tcp).
But it has not tested strictly yet.
Please use this patch carefully.
Thanks a lot for the patch! I am working on a new release. The very
boring part is making these backport patches that handle these problems,
so I am behind on that.
Your patch seems to fix the current kernel, but does not fix up the
compat patches for other kernels. Since kfifo_in is not defined in older
kernels is not defined, the compilation will fail there.
I am working on this for the next release so do not worry about it. If
you want to take a stab at it go ahead. It is not fun though :)
Until then, you can just use the kernel modules that come with your
kernel. Just build the userspace tools
make user
make install_user
--
You received this message because you are subscribed to the Google Groups
"open-iscsi" group.
To post to this group, send email to open-is...@googlegroups.com.
To unsubscribe from this group, send email to
open-iscsi+unsubscr...@googlegroups.com.
For more options, visit this group at
http://groups.google.com/group/open-iscsi?hl=en.