SCST has a very mature qlogic fibre channel target driver. In fact the whole framework hit a 1.0 release that is very stable. Buying a few 2gb quad port qlogic cards on eBay is a very inexpensive way to make a nice SAN box :-). Performance of the iSCSI stack should be better than any other method. In short, this would be a nice package to have in portage. Reproducible: Always
Created attachment 296165 [details] ebuild
Created attachment 296167 [details, diff] patch neede for ebuild
In first, this ebuild have CRLF line terminators and doesn't make Manifest. In second, after removing CRLF, it not build utilites with error: * Package: sys-block/iscsi-scst-2.1.0 * Repository: local * USE: amd64 elibc_glibc kernel_linux multilib userland_GNU * FEATURES: preserve-libs sandbox userpriv usersandbox * This profile is merely a convenience for people who require a more * minimal profile, yet are unable to use hardened due to restrictions in * the software being used on the server. If you seek a secure * production server profile, please check the Hardened project * (http://hardened.gentoo.org) >>> Unpacking source... >>> Unpacking iscsi-scst-2.1.0.tar.gz to /var/tmp/portage/sys-block/iscsi-scst-2.1.0/work >>> Source unpacked in /var/tmp/portage/sys-block/iscsi-scst-2.1.0/work >>> Preparing source in /var/tmp/portage/sys-block/iscsi-scst-2.1.0/work/iscsi-scst-2.1.0 ... >>> Source prepared. >>> Configuring source in /var/tmp/portage/sys-block/iscsi-scst-2.1.0/work/iscsi-scst-2.1.0 ... >>> Source configured. >>> Compiling source in /var/tmp/portage/sys-block/iscsi-scst-2.1.0/work/iscsi-scst-2.1.0 ... make -j9 echo "/* Autogenerated, don't edit */" >include/iscsi_scst_itf_ver.h make -C usr echo "" >>include/iscsi_scst_itf_ver.h make -C /lib/modules/3.0.6-gentoo/build SCST_INC_DIR=/usr/local/include/scst SUBDIRS=/var/tmp/portage/sys-block/iscsi-scst-2.1.0/work/iscsi-scst-2.1.0/kernel modules make[1]: Entering directory `/var/tmp/portage/sys-block/iscsi-scst-2.1.0/work/iscsi-scst-2.1.0/usr' cc -M -O2 -pipe -march=core2 -O2 -fno-inline -Wall -Wextra -Wstrict-prototypes -Wno-sign-compare -Wimplicit-function-declaration -Wno-unused-parameter -Wno-missing-field-initializers -g -I../include -I/usr/local/include/scst -D_GNU_SOURCE iscsid.c iscsi_scstd.c conn.c session.c target.c message.c ctldev.c log.c chap.c event.c param.c config.c isns.c md5.c sha1.c >.depend_d cc -c -o iscsid.o -O2 -pipe -march=core2 -O2 -fno-inline -Wall -Wextra -Wstrict-prototypes -Wno-sign-compare -Wimplicit-function-declaration -Wno-unused-parameter -Wno-missing-field-initializers -g -I../include -I/usr/local/include/scst -D_GNU_SOURCE iscsid.c echo -n "#define ISCSI_SCST_INTERFACE_VERSION " >>include/iscsi_scst_itf_ver.h cc -c -o iscsi_scstd.o -O2 -pipe -march=core2 -O2 -fno-inline -Wall -Wextra -Wstrict-prototypes -Wno-sign-compare -Wimplicit-function-declaration -Wno-unused-parameter -Wno-missing-field-initializers -g -I../include -I/usr/local/include/scst -D_GNU_SOURCE iscsi_scstd.c cc -c -o conn.o -O2 -pipe -march=core2 -O2 -fno-inline -Wall -Wextra -Wstrict-prototypes -Wno-sign-compare -Wimplicit-function-declaration -Wno-unused-parameter -Wno-missing-field-initializers -g -I../include -I/usr/local/include/scst -D_GNU_SOURCE conn.c cc -c -o session.o -O2 -pipe -march=core2 -O2 -fno-inline -Wall -Wextra -Wstrict-prototypes -Wno-sign-compare -Wimplicit-function-declaration -Wno-unused-parameter -Wno-missing-field-initializers -g -I../include -I/usr/local/include/scst -D_GNU_SOURCE session.c echo -n "ISCSI_VERSION_STRING \"_\" " >>include/iscsi_scst_itf_ver.h cc -c -o target.o -O2 -pipe -march=core2 -O2 -fno-inline -Wall -Wextra -Wstrict-prototypes -Wno-sign-compare -Wimplicit-function-declaration -Wno-unused-parameter -Wno-missing-field-initializers -g -I../include -I/usr/local/include/scst -D_GNU_SOURCE target.c echo "\"`sha1sum include/iscsi_scst.h|awk '{printf $1}'`\"" >>include/iscsi_scst_itf_ver.h cc -c -o message.o -O2 -pipe -march=core2 -O2 -fno-inline -Wall -Wextra -Wstrict-prototypes -Wno-sign-compare -Wimplicit-function-declaration -Wno-unused-parameter -Wno-missing-field-initializers -g -I../include -I/usr/local/include/scst -D_GNU_SOURCE message.c cc -c -o ctldev.o -O2 -pipe -march=core2 -O2 -fno-inline -Wall -Wextra -Wstrict-prototypes -Wno-sign-compare -Wimplicit-function-declaration -Wno-unused-parameter -Wno-missing-field-initializers -g -I../include -I/usr/local/include/scst -D_GNU_SOURCE ctldev.c cc -c -o log.o -O2 -pipe -march=core2 -O2 -fno-inline -Wall -Wextra -Wstrict-prototypes -Wno-sign-compare -Wimplicit-function-declaration -Wno-unused-parameter -Wno-missing-field-initializers -g -I../include -I/usr/local/include/scst -D_GNU_SOURCE log.c cc -c -o chap.o -O2 -pipe -march=core2 -O2 -fno-inline -Wall -Wextra -Wstrict-prototypes -Wno-sign-compare -Wimplicit-function-declaration -Wno-unused-parameter -Wno-missing-field-initializers -g -I../include -I/usr/local/include/scst -D_GNU_SOURCE chap.c cc -c -o event.o -O2 -pipe -march=core2 -O2 -fno-inline -Wall -Wextra -Wstrict-prototypes -Wno-sign-compare -Wimplicit-function-declaration -Wno-unused-parameter -Wno-missing-field-initializers -g -I../include -I/usr/local/include/scst -D_GNU_SOURCE event.c cc -c -o param.o -O2 -pipe -march=core2 -O2 -fno-inline -Wall -Wextra -Wstrict-prototypes -Wno-sign-compare -Wimplicit-function-declaration -Wno-unused-parameter -Wno-missing-field-initializers -g -I../include -I/usr/local/include/scst -D_GNU_SOURCE param.c event.c:34:24: fatal error: scst_const.h: No such file or directory compilation terminated. make[1]: *** [event.o] Error 1 make[1]: *** Waiting for unfinished jobs.... event.c:34:24: fatal error: scst_const.h: No such file or directory compilation terminated. make[1]: *** [.depend_d] Error 1 make[1]: Leaving directory `/var/tmp/portage/sys-block/iscsi-scst-2.1.0/work/iscsi-scst-2.1.0/usr' make: *** [progs] Error 2 make: *** Waiting for unfinished jobs.... make[1]: Entering directory `/usr/src/linux-3.0.6-gentoo' CC [M] /var/tmp/portage/sys-block/iscsi-scst-2.1.0/work/iscsi-scst-2.1.0/kernel/iscsi.o CC [M] /var/tmp/portage/sys-block/iscsi-scst-2.1.0/work/iscsi-scst-2.1.0/kernel/nthread.o CC [M] /var/tmp/portage/sys-block/iscsi-scst-2.1.0/work/iscsi-scst-2.1.0/kernel/config.o CC [M] /var/tmp/portage/sys-block/iscsi-scst-2.1.0/work/iscsi-scst-2.1.0/kernel/digest.o CC [M] /var/tmp/portage/sys-block/iscsi-scst-2.1.0/work/iscsi-scst-2.1.0/kernel/conn.o CC [M] /var/tmp/portage/sys-block/iscsi-scst-2.1.0/work/iscsi-scst-2.1.0/kernel/session.o CC [M] /var/tmp/portage/sys-block/iscsi-scst-2.1.0/work/iscsi-scst-2.1.0/kernel/target.o CC [M] /var/tmp/portage/sys-block/iscsi-scst-2.1.0/work/iscsi-scst-2.1.0/kernel/event.o CC [M] /var/tmp/portage/sys-block/iscsi-scst-2.1.0/work/iscsi-scst-2.1.0/kernel/param.o In file included from /var/tmp/portage/sys-block/iscsi-scst-2.1.0/work/iscsi-scst-2.1.0/kernel/session.c:18:0: /var/tmp/portage/sys-block/iscsi-scst-2.1.0/work/iscsi-scst-2.1.0/kernel/iscsi.h:30:18: fatal error: scst.h: No such file or directory compilation terminated. In file included from /var/tmp/portage/sys-block/iscsi-scst-2.1.0/work/iscsi-scst-2.1.0/kernel/digest.c:23:0: /var/tmp/portage/sys-block/iscsi-scst-2.1.0/work/iscsi-scst-2.1.0/kernel/iscsi.h:30:18: fatal error: scst.h: No such file or directory compilation terminated. make[2]: *** [/var/tmp/portage/sys-block/iscsi-scst-2.1.0/work/iscsi-scst-2.1.0/kernel/digest.o] Error 1 make[2]: *** Waiting for unfinished jobs.... make[2]: *** [/var/tmp/portage/sys-block/iscsi-scst-2.1.0/work/iscsi-scst-2.1.0/kernel/session.o] Error 1 In file included from /var/tmp/portage/sys-block/iscsi-scst-2.1.0/work/iscsi-scst-2.1.0/kernel/param.c:17:0: /var/tmp/portage/sys-block/iscsi-scst-2.1.0/work/iscsi-scst-2.1.0/kernel/iscsi.h:30:18: fatal error: scst.h: No such file or directory compilation terminated. make[2]: *** [/var/tmp/portage/sys-block/iscsi-scst-2.1.0/work/iscsi-scst-2.1.0/kernel/param.o] Error 1 In file included from /var/tmp/portage/sys-block/iscsi-scst-2.1.0/work/iscsi-scst-2.1.0/kernel/event.c:26:0: /var/tmp/portage/sys-block/iscsi-scst-2.1.0/work/iscsi-scst-2.1.0/kernel/iscsi.h:30:18: fatal error: scst.h: No such file or directory compilation terminated. make[2]: *** [/var/tmp/portage/sys-block/iscsi-scst-2.1.0/work/iscsi-scst-2.1.0/kernel/event.o] Error 1 In file included from /var/tmp/portage/sys-block/iscsi-scst-2.1.0/work/iscsi-scst-2.1.0/kernel/target.c:20:0: /var/tmp/portage/sys-block/iscsi-scst-2.1.0/work/iscsi-scst-2.1.0/kernel/iscsi.h:30:18: fatal error: scst.h: No such file or directory compilation terminated. make[2]: *** [/var/tmp/portage/sys-block/iscsi-scst-2.1.0/work/iscsi-scst-2.1.0/kernel/target.o] Error 1 In file included from /var/tmp/portage/sys-block/iscsi-scst-2.1.0/work/iscsi-scst-2.1.0/kernel/nthread.c:25:0: /var/tmp/portage/sys-block/iscsi-scst-2.1.0/work/iscsi-scst-2.1.0/kernel/iscsi.h:30:18: fatal error: scst.h: No such file or directory compilation terminated. make[2]: *** [/var/tmp/portage/sys-block/iscsi-scst-2.1.0/work/iscsi-scst-2.1.0/kernel/nthread.o] Error 1 In file included from /var/tmp/portage/sys-block/iscsi-scst-2.1.0/work/iscsi-scst-2.1.0/kernel/config.c:17:0: /var/tmp/portage/sys-block/iscsi-scst-2.1.0/work/iscsi-scst-2.1.0/kernel/iscsi.h:30:18: fatal error: scst.h: No such file or directory compilation terminated. make[2]: *** [/var/tmp/portage/sys-block/iscsi-scst-2.1.0/work/iscsi-scst-2.1.0/kernel/config.o] Error 1 In file included from /var/tmp/portage/sys-block/iscsi-scst-2.1.0/work/iscsi-scst-2.1.0/kernel/iscsi.c:28:0: /var/tmp/portage/sys-block/iscsi-scst-2.1.0/work/iscsi-scst-2.1.0/kernel/iscsi.h:30:18: fatal error: scst.h: No such file or directory compilation terminated. make[2]: *** [/var/tmp/portage/sys-block/iscsi-scst-2.1.0/work/iscsi-scst-2.1.0/kernel/iscsi.o] Error 1 In file included from /var/tmp/portage/sys-block/iscsi-scst-2.1.0/work/iscsi-scst-2.1.0/kernel/conn.c:22:0: /var/tmp/portage/sys-block/iscsi-scst-2.1.0/work/iscsi-scst-2.1.0/kernel/iscsi.h:30:18: fatal error: scst.h: No such file or directory compilation terminated. make[2]: *** [/var/tmp/portage/sys-block/iscsi-scst-2.1.0/work/iscsi-scst-2.1.0/kernel/conn.o] Error 1 make[1]: *** [_module_/var/tmp/portage/sys-block/iscsi-scst-2.1.0/work/iscsi-scst-2.1.0/kernel] Error 2 make[1]: Leaving directory `/usr/src/linux-3.0.6-gentoo' make: *** [mods] Error 2 * ERROR: sys-block/iscsi-scst-2.1.0 failed (compile phase): * emake failed * * If you need support, post the output of 'emerge --info =sys-block/iscsi-scst-2.1.0', * the complete build log and the output of 'emerge -pqv =sys-block/iscsi-scst-2.1.0'. * This ebuild is from an overlay named 'local': '/usr/local/portage/' * The complete build log is located at '/var/tmp/portage/sys-block/iscsi-scst-2.1.0/temp/build.log'. * The ebuild environment file is located at '/var/tmp/portage/sys-block/iscsi-scst-2.1.0/temp/environment'. * S: '/var/tmp/portage/sys-block/iscsi-scst-2.1.0/work/iscsi-scst-2.1.0'