From 21cbd209c6bda1507a527c0908b18ef909e2899f Mon Sep 17 00:00:00 2001 From: Niels Horn Date: Thu, 17 Mar 2011 23:44:10 -0300 Subject: [PATCH] system/vhba-module: Included patch for kernel 2.6.37.x Signed-off-by: Niels Horn --- system/vhba-module/README | 3 ++ system/vhba-module/vhba-module.SlackBuild | 11 +++++-- .../vhba-module/vhba-module_v730_SCSI.patch | 32 +++++++++++++++++++ .../vhba-module/vhba-module_v735_Werror.patch | 11 +++++++ 4 files changed, 55 insertions(+), 2 deletions(-) create mode 100644 system/vhba-module/vhba-module_v730_SCSI.patch create mode 100644 system/vhba-module/vhba-module_v735_Werror.patch diff --git a/system/vhba-module/README b/system/vhba-module/README index 1c7ddd2b4d..34b895c552 100644 --- a/system/vhba-module/README +++ b/system/vhba-module/README @@ -2,3 +2,6 @@ This is VHBA (Virtual SCSI Host Bus adapter), a Linux kernel module which acts as a low-level SCSI driver and which provides the SCSI layer with a virtual SCSI adapter which can have multiple virtual devices. It is part of the userspace-cdemu suite, a free GPL CD/DVD-ROM device emulator for linux. + +NOTE: +The resulting package will be specific for the kernel it was built on. diff --git a/system/vhba-module/vhba-module.SlackBuild b/system/vhba-module/vhba-module.SlackBuild index 991d646880..8f8e3d154e 100644 --- a/system/vhba-module/vhba-module.SlackBuild +++ b/system/vhba-module/vhba-module.SlackBuild @@ -24,11 +24,11 @@ # ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. # Maintained as of version 20100822 by Niels Horn -# Revision date: 2010/11/20 +# Revision date: 2011/03/17 PRGNAM=vhba-module VERSION=${VERSION:-20100822} -BUILD=${BUILD:-1} +BUILD=${BUILD:-2} TAG=${TAG:-_SBo} if [ -z "$ARCH" ]; then @@ -58,6 +58,13 @@ cd $PRGNAM-$VERSION chown -R root:root . chmod -R u+w,go+r-w,a-s . +# Patch from upstream for kernels 2.6.37.x +# (thanks to Melvin Xavier for pointing me to this) +patch -p2 < $CWD/vhba-module_v730_SCSI.patch + +# Patch from upstream to stop building on warnings +patch -p2 < $CWD/vhba-module_v735_Werror.patch + # Use -j1 to avoid problems if larger number of jobs is defined in MAKEFLAGS make -j1 KERNELRELEASE=$KERNEL diff --git a/system/vhba-module/vhba-module_v730_SCSI.patch b/system/vhba-module/vhba-module_v730_SCSI.patch new file mode 100644 index 0000000000..46cea328dd --- /dev/null +++ b/system/vhba-module/vhba-module_v730_SCSI.patch @@ -0,0 +1,32 @@ +--- trunk/vhba-module/vhba.c 2010/08/15 20:11:18 691 ++++ trunk/vhba-module/vhba.c 2011/02/27 15:56:27 730 +@@ -363,7 +363,7 @@ + spin_unlock_irqrestore(&vhost->cmd_lock, flags); + } + +-static int vhba_queuecommand(struct scsi_cmnd *cmd, void (*done)(struct scsi_cmnd *)) ++static int vhba_queuecommand_lck(struct scsi_cmnd *cmd, void (*done)(struct scsi_cmnd *)) + { + struct vhba_device *vdev; + int retval; +@@ -388,6 +388,12 @@ + return retval; + } + ++#ifdef DEF_SCSI_QCMD ++DEF_SCSI_QCMD(vhba_queuecommand) ++#else ++#define vhba_queuecommand vhba_queuecommand_lck ++#endif ++ + static int vhba_abort(struct scsi_cmnd *cmd) + { + struct vhba_device *vdev; +@@ -796,7 +802,7 @@ + .poll = vhba_ctl_poll, + .unlocked_ioctl = vhba_ctl_ioctl, + #ifdef CONFIG_COMPAT +- .compat_ioctl = vhba_ctl_compat_ioctl, ++ .compat_ioctl = vhba_ctl_compat_ioctl, + #endif + }; diff --git a/system/vhba-module/vhba-module_v735_Werror.patch b/system/vhba-module/vhba-module_v735_Werror.patch new file mode 100644 index 0000000000..92096b3ac8 --- /dev/null +++ b/system/vhba-module/vhba-module_v735_Werror.patch @@ -0,0 +1,11 @@ +--- trunk/vhba-module/Makefile 2010/08/22 22:17:02 696 ++++ trunk/vhba-module/Makefile 2011/03/11 21:20:08 735 +@@ -1,7 +1,7 @@ + VHBA_VERSION = $(shell date +%Y%m%d) + PACKAGE = vhba-module-$(VHBA_VERSION) + +-EXTRA_CFLAGS += -DVHBA_VERSION=\"$(VHBA_VERSION)\" -I$(PWD) ++EXTRA_CFLAGS += -DVHBA_VERSION=\"$(VHBA_VERSION)\" -I$(PWD) -Werror + + obj-m += vhba.o +