Ray Barnes
2010-Jun-29 05:40 UTC
[Xen-users] trouble with Linux iscsi initiator with Xen compiled from source
Hi all. I''ve been having a heck of a time lately with the Linux iscsi initiator. This all started when I tried to login to an iscsi target on a Solaris box, using my CentOS 5.5 machine running a compiled-from-source version of Xen 3.2.2. As soon as I logged into the target, the kernel would panic with a bug in the iscsi code. Then I tried compiling 3.4.3 from source - same result. Specifically, the kernel panic from 3.4.3 can be seen at http://www.suicidedoorz.com/iscsipanic.jpg Note that I was previously using the "iscsi-initiator-utils" package that comes with CentOS, and that I''ve never had a problem using that package with custom compiled versions of Xen, i.e. 3.2.2. However, after some research, it seems that the Linux iscsi initiator package wants you to compile it against the specific kernel version that you''re running. I''m not sure if that means major versions or minor versions, but either way, I presumed that I need to compile the iscsi tools after installing and booting up on the dom0 kernel. So I started fresh with CentOS 5.5 and compiled the latest 4.0.1-rc2 from source, installed it and a custom kernel, and booted on it. Then I attempted to compile the source RPM for iscsi-initiator-utils and install it - it went smoothly but it simply didn''t work. The error recorded in /var/log/messages was: Jun 23 12:53:18 vpsbox7 iscsid: iSCSI logger with pid=12171 started! Jun 23 12:53:18 vpsbox7 iscsid: Missing or Invalid version from /sys/module/scsi_transport_i scsi/version. Make sure a up to date scsi_transport_iscsi module is loaded and a up todate v ersion of iscsid is running. Exiting... At first it would seem that perhaps I didn''t have all the goods compiled into the kernel. After double-checking, I see the only two (seemlingly) necessary drivers are enabled: CONFIG_SCSI_TGT=y CONFIG_SCSI_ISCSI_ATTRS=y So I''m not sure why exactly that doesn''t work. Finally I removed those newly compiled RPMs and tried compiling version 3.6.3 of the iscsi tools from source. I was greeted with the errors indicated below. Any idea where I might be going wrong here? TIA! -Ray driver/iscsi.c:15925: error: âiscsi_hba_tâ has no member named âsession_lockâ driver/iscsi.c: At top level: driver/iscsi.c:15948: error: expected â=â, â,â, â;â, âasmâ or â__attribute__â before âiscsi_driver_templateâ driver/iscsi.c:15995: warning: data definition has no type or storage class driver/iscsi.c:15998: error: expected â=â, â,â, â;â, âasmâ or â__attribute__â before âiscsi_initâ driver/iscsi.c:16059: error: expected â=â, â,â, â;â, âasmâ or â__attribute__â before âiscsi_cleanupâ driver/iscsi.c:16095: warning: data definition has no type or storage class driver/iscsi.c:16095: warning: parameter names (without types) in function declaration driver/iscsi.c:16096: warning: data definition has no type or storage class driver/iscsi.c:16096: warning: parameter names (without types) in function declaration make: *** [/root/build/linux-iscsi-3.6.3/Linux-i686/kobj/driver/iscsi.o] Error 1 _______________________________________________ Xen-users mailing list Xen-users@lists.xensource.com http://lists.xensource.com/xen-users
Ray Barnes
2010-Jun-30 07:17 UTC
[Xen-users] Re: trouble with Linux iscsi initiator with Xen compiled from source
Following up on this for the benefit of anyone having similar troubles, this is not a Xen-specific problem. Rather, the two kernel options I listed below, as well as libiscsi and iscsi_tcp (from the drivers/scsi directory within the kernel tree) must all be compiled as modules. Additionally, MD5 and CRC32c cryptography must be enabled within the kernel. The error messages I received would eventually lead you to the right answer through extensive Googling, but hopefully this gives someone a shortcut... -Ray On Tue, Jun 29, 2010 at 1:40 AM, Ray Barnes <tical.net@gmail.com> wrote:> Hi all. I''ve been having a heck of a time lately with the Linux iscsi > initiator. This all started when I tried to login to an iscsi target on a > Solaris box, using my CentOS 5.5 machine running a compiled-from-source > version of Xen 3.2.2. As soon as I logged into the target, the kernel would > panic with a bug in the iscsi code. Then I tried compiling 3.4.3 from > source - same result. Specifically, the kernel panic from 3.4.3 can be seen > at http://www.suicidedoorz.com/iscsipanic.jpg > > Note that I was previously using the "iscsi-initiator-utils" package that > comes with CentOS, and that I''ve never had a problem using that package with > custom compiled versions of Xen, i.e. 3.2.2. However, after some research, > it seems that the Linux iscsi initiator package wants you to compile it > against the specific kernel version that you''re running. I''m not sure if > that means major versions or minor versions, but either way, I presumed that > I need to compile the iscsi tools after installing and booting up on the > dom0 kernel. So I started fresh with CentOS 5.5 and compiled the latest > 4.0.1-rc2 from source, installed it and a custom kernel, and booted on it. > Then I attempted to compile the source RPM for iscsi-initiator-utils and > install it - it went smoothly but it simply didn''t work. The error recorded > in /var/log/messages was: > > Jun 23 12:53:18 vpsbox7 iscsid: iSCSI logger with pid=12171 started! > Jun 23 12:53:18 vpsbox7 iscsid: Missing or Invalid version from > /sys/module/scsi_transport_i > scsi/version. Make sure a up to date scsi_transport_iscsi module is loaded > and a up todate v > ersion of iscsid is running. Exiting... > At first it would seem that perhaps I didn''t have all the goods compiled > into the kernel. After double-checking, I see the only two (seemlingly) > necessary drivers are enabled: > > CONFIG_SCSI_TGT=y > CONFIG_SCSI_ISCSI_ATTRS=y > > So I''m not sure why exactly that doesn''t work. Finally I removed those > newly compiled RPMs and tried compiling version 3.6.3 of the iscsi tools > from source. I was greeted with the errors indicated below. Any idea where > I might be going wrong here? > > TIA! > -Ray > > > > driver/iscsi.c:15925: error: âiscsi_hba_tâ has no member named > âsession_lockâ > driver/iscsi.c: At top level: > driver/iscsi.c:15948: error: expected â=â, â,â, â;â, âasmâ or > â__attribute__â before âiscsi_driver_templateâ > driver/iscsi.c:15995: warning: data definition has no type or storage class > driver/iscsi.c:15998: error: expected â=â, â,â, â;â, âasmâ or > â__attribute__â before âiscsi_initâ > driver/iscsi.c:16059: error: expected â=â, â,â, â;â, âasmâ or > â__attribute__â before âiscsi_cleanupâ > driver/iscsi.c:16095: warning: data definition has no type or storage class > driver/iscsi.c:16095: warning: parameter names (without types) in function > declaration > driver/iscsi.c:16096: warning: data definition has no type or storage class > driver/iscsi.c:16096: warning: parameter names (without types) in function > declaration > make: *** [/root/build/linux-iscsi-3.6.3/Linux-i686/kobj/driver/iscsi.o] > Error 1 >_______________________________________________ Xen-users mailing list Xen-users@lists.xensource.com http://lists.xensource.com/xen-users