diff options
author | Waldemar Brodkorb <wbx@openadk.org> | 2010-11-23 17:12:14 +0100 |
---|---|---|
committer | Waldemar Brodkorb <wbx@openadk.org> | 2010-11-23 17:12:14 +0100 |
commit | 937473821b259ed94969e62daa2ec60f5f2a9ffc (patch) | |
tree | e65a8238d6a68bc6aea4717a683a6b882143e957 | |
parent | 28adc48e65f44c7be5a007568ffaf7cf12df2833 (diff) |
add preliminary support for a new hardware profile for OVH.net iscsi server
- add open-iscsi package
- add a hardware profile for x86_64 target architecture
- add CPU support for x86/x86_64 targets for hardware profiles
-rw-r--r-- | package/open-iscsi/Makefile | 33 | ||||
-rw-r--r-- | package/open-iscsi/patches/patch-usr_Makefile | 19 | ||||
-rw-r--r-- | package/open-iscsi/patches/patch-usr_iscsi_sysfs_c | 10 | ||||
-rw-r--r-- | package/open-iscsi/patches/patch-usr_log_h | 17 | ||||
-rw-r--r-- | package/open-iscsi/patches/patch-usr_mgmt_ipc_c | 35 | ||||
-rw-r--r-- | target/Config.in.x86 | 1 | ||||
-rw-r--r-- | target/Config.in.x86_64 | 11 | ||||
-rw-r--r-- | target/linux/Config.in | 1 | ||||
-rw-r--r-- | target/linux/config/Config.in.block | 3 | ||||
-rw-r--r-- | target/linux/config/Config.in.cpu | 5 | ||||
-rw-r--r-- | target/linux/config/Config.in.netdevice | 3 |
11 files changed, 134 insertions, 4 deletions
diff --git a/package/open-iscsi/Makefile b/package/open-iscsi/Makefile new file mode 100644 index 000000000..0194c1d3a --- /dev/null +++ b/package/open-iscsi/Makefile @@ -0,0 +1,33 @@ +# This file is part of the OpenADK project. OpenADK is copyrighted +# material, please see the LICENCE file in the top-level directory. + +include $(TOPDIR)/rules.mk + +PKG_NAME:= open-iscsi +PKG_VERSION:= 2.0 +PKG_EXTRAVER:= 871 +PKG_RELEASE:= 1 +PKG_MD5SUM:= 0c403e8c9ad41607571ba0e6e8ff196e +PKG_DESCR:= iSCSI utilities +PKG_SECTION:= fs +PKG_URL:= http://www.open-iscsi.org/ +PKG_SITES:= http://www.open-iscsi.org/bits/ + +DISTFILES:= $(PKG_NAME)-$(PKG_VERSION)-$(PKG_EXTRAVER).tar.gz +WRKDIST= ${WRKDIR}/${PKG_NAME}-${PKG_VERSION}-${PKG_EXTRAVER} + +include $(TOPDIR)/mk/package.mk + +ALL_TARGET:= user +INSTALL_TARGET:= install_user + +$(eval $(call PKG_template,OPEN_ISCSI,$(PKG_NAME),$(PKG_VERSION)-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION})) + +CONFIG_STYLE:= manual + +do-install: + $(INSTALL_DIR) $(IDIR_OPEN_ISCSI)/sbin $(IDIR_OPEN_ISCSI)/etc/iscsi + $(INSTALL_BIN) $(WRKINST)/sbin/* $(IDIR_OPEN_ISCSI)/sbin + $(CP) $(WRKINST)/etc/iscsi/* $(IDIR_OPEN_ISCSI)/etc/iscsi + +include ${TOPDIR}/mk/pkg-bottom.mk diff --git a/package/open-iscsi/patches/patch-usr_Makefile b/package/open-iscsi/patches/patch-usr_Makefile new file mode 100644 index 000000000..af7106fd8 --- /dev/null +++ b/package/open-iscsi/patches/patch-usr_Makefile @@ -0,0 +1,19 @@ +--- open-iscsi-2.0-871.orig/usr/Makefile 2009-07-11 05:55:58.000000000 +0200 ++++ open-iscsi-2.0-871/usr/Makefile 2010-11-22 23:23:09.000000000 +0100 +@@ -1,6 +1,6 @@ + # This Makefile will work only with GNU make. + +-OSNAME=$(shell uname -s) ++OSNAME=Linux + + # allow users to override these + # eg to compile for a kernel that you aren't currently running +@@ -55,7 +55,7 @@ iscsiadm: $(COMMON_SRCS) $(FW_BOOT_SRCS) + + iscsistart: $(IPC_OBJ) $(ISCSI_LIB_SRCS) $(INITIATOR_SRCS) $(FW_BOOT_SRCS) \ + iscsistart.o statics.o +- $(CC) $(CFLAGS) -static $^ -o $@ ++ $(CC) $(CFLAGS) $^ -o $@ + clean: + rm -f *.o $(PROGRAMS) .depend $(LIBSYS) + diff --git a/package/open-iscsi/patches/patch-usr_iscsi_sysfs_c b/package/open-iscsi/patches/patch-usr_iscsi_sysfs_c new file mode 100644 index 000000000..42f5d0330 --- /dev/null +++ b/package/open-iscsi/patches/patch-usr_iscsi_sysfs_c @@ -0,0 +1,10 @@ +--- open-iscsi-2.0-871.orig/usr/iscsi_sysfs.c 2009-07-11 05:55:58.000000000 +0200 ++++ open-iscsi-2.0-871/usr/iscsi_sysfs.c 2010-11-22 23:16:35.000000000 +0100 +@@ -22,6 +22,7 @@ + #include <string.h> + #include <errno.h> + #include <dirent.h> ++#include <sys/stat.h> + + #include "log.h" + #include "initiator.h" diff --git a/package/open-iscsi/patches/patch-usr_log_h b/package/open-iscsi/patches/patch-usr_log_h new file mode 100644 index 000000000..f4a5f9431 --- /dev/null +++ b/package/open-iscsi/patches/patch-usr_log_h @@ -0,0 +1,17 @@ +--- open-iscsi-2.0-871.orig/usr/log.h 2009-07-11 05:55:58.000000000 +0200 ++++ open-iscsi-2.0-871/usr/log.h 2010-11-22 22:45:22.000000000 +0100 +@@ -28,14 +28,12 @@ + + #include "iscsid.h" + +-#if defined(Linux) + union semun { + int val; + struct semid_ds *buf; + unsigned short int *array; + struct seminfo *__buf; + }; +-#endif + #include <sys/sem.h> + + #define DEFAULT_AREA_SIZE 16384 diff --git a/package/open-iscsi/patches/patch-usr_mgmt_ipc_c b/package/open-iscsi/patches/patch-usr_mgmt_ipc_c new file mode 100644 index 000000000..bc29bd21b --- /dev/null +++ b/package/open-iscsi/patches/patch-usr_mgmt_ipc_c @@ -0,0 +1,35 @@ +--- open-iscsi-2.0-871.orig/usr/mgmt_ipc.c 2009-07-11 05:55:58.000000000 +0200 ++++ open-iscsi-2.0-871/usr/mgmt_ipc.c 2010-11-22 22:47:25.000000000 +0100 +@@ -341,31 +341,7 @@ mgmt_ipc_notify_del_portal(queue_task_t + static int + mgmt_peeruser(int sock, char *user) + { +-#if defined(SO_PEERCRED) +- /* Linux style: use getsockopt(SO_PEERCRED) */ +- struct ucred peercred; +- socklen_t so_len = sizeof(peercred); +- struct passwd *pass; +- +- errno = 0; +- if (getsockopt(sock, SOL_SOCKET, SO_PEERCRED, &peercred, +- &so_len) != 0 || so_len != sizeof(peercred)) { +- /* We didn't get a valid credentials struct. */ +- log_error("peeruser_unux: error receiving credentials: %m"); +- return 0; +- } +- +- pass = getpwuid(peercred.uid); +- if (pass == NULL) { +- log_error("peeruser_unix: unknown local user with uid %d", +- (int) peercred.uid); +- return 0; +- } +- +- strlcpy(user, pass->pw_name, PEERUSER_MAX); +- return 1; +- +-#elif defined(SCM_CREDS) ++#if defined(SCM_CREDS) + struct msghdr msg; + typedef struct cmsgcred Cred; + #define cruid cmcred_uid diff --git a/target/Config.in.x86 b/target/Config.in.x86 index 8230e68c4..fd461cb7d 100644 --- a/target/Config.in.x86 +++ b/target/Config.in.x86 @@ -14,6 +14,7 @@ config ADK_HARDWARE_IBMX40 bool "IBM X40 laptop" select ADK_ibmx40 select ADK_CPU_PENTIUM_M + select ADK_KERNEL_MPENTIUMM select ADK_TARGET_WITH_USB select ADK_TARGET_WITH_PCI select ADK_TARGET_WITH_VGA diff --git a/target/Config.in.x86_64 b/target/Config.in.x86_64 index d88ebe785..1a7dac302 100644 --- a/target/Config.in.x86_64 +++ b/target/Config.in.x86_64 @@ -9,6 +9,14 @@ config ADK_HARDWARE_GENERIC_X86_64 help Generic x86_64/amd64 system. +config ADK_HARDWARE_OVH_RPS + bool "RPS iSCSI server from OVH" + select ADK_ovh_rps + select ADK_KERNEL_MATOM + select ADK_TARGET_WITH_PCI + select ADK_KERNEL_SCSI + select ADK_KERNEL_ISCSI_TCP + config ADK_HARDWARE_SHUTTLE bool "Shuttle PC" select ADK_shuttle @@ -21,9 +29,6 @@ config ADK_HARDWARE_SHUTTLE select ADK_TARGET_WITH_PP select ADK_KERNEL_INPUT_KEYBOARD select ADK_KERNEL_SCSI - select ADK_KERNEL_NETDEVICES - select ADK_KERNEL_NET_PCI - select ADK_KERNEL_NET_ETHERNET select ADK_KERNEL_SATA_AHCI select ADK_KERNEL_BLK_DEV_SD select ADK_KERNEL_BLK_DEV_MD diff --git a/target/linux/Config.in b/target/linux/Config.in index 2d7157885..65fc7fbbb 100644 --- a/target/linux/Config.in +++ b/target/linux/Config.in @@ -1,3 +1,4 @@ +source target/linux/config/Config.in.cpu source target/linux/config/Config.in.block source target/linux/config/Config.in.fs source target/linux/config/Config.in.netdevice diff --git a/target/linux/config/Config.in.block b/target/linux/config/Config.in.block index ac8267663..766684f16 100644 --- a/target/linux/config/Config.in.block +++ b/target/linux/config/Config.in.block @@ -30,6 +30,9 @@ config ADK_KERNEL_SCSI config ADK_KERNEL_BLK_DEV_SD boolean +config ADK_KERNEL_ISCSI_TCP + boolean + config ADK_KERNEL_DM_CRYPT boolean diff --git a/target/linux/config/Config.in.cpu b/target/linux/config/Config.in.cpu new file mode 100644 index 000000000..f34cb5238 --- /dev/null +++ b/target/linux/config/Config.in.cpu @@ -0,0 +1,5 @@ +config ADK_KERNEL_MATOM + boolean + +config ADK_KERNEL_MPENTIUMM + boolean diff --git a/target/linux/config/Config.in.netdevice b/target/linux/config/Config.in.netdevice index 1492ebd5b..0836e224d 100644 --- a/target/linux/config/Config.in.netdevice +++ b/target/linux/config/Config.in.netdevice @@ -100,11 +100,12 @@ config ADK_KPACKAGE_KMOD_SKY2 help config ADK_KPACKAGE_KMOD_R8169 - prompt "kmod-net-r8169................. RTL8169 driver" + prompt "kmod-net-r8169................ RTL8169 driver" tristate select ADK_KERNEL_NETDEVICES select ADK_KERNEL_NET_ETHERNET select ADK_KERNEL_NETDEV_1000 + default y if ADK_HARDWARE_OVH_RPS default n help |