summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTim Yamin <plasmaroo@gentoo.org>2004-06-14 22:24:42 +0000
committerTim Yamin <plasmaroo@gentoo.org>2004-06-14 22:24:42 +0000
commitddd3054e3fa9e265bca8eb8825a53d69a1732993 (patch)
tree44f78b07877e76f4509b76f736283cbb022725a8 /sys-kernel/rsbac-dev-sources
parent~ppc64, initial x support, bug #53763 (Manifest recommit) (diff)
downloadgentoo-2-ddd3054e3fa9e265bca8eb8825a53d69a1732993.tar.gz
gentoo-2-ddd3054e3fa9e265bca8eb8825a53d69a1732993.tar.bz2
gentoo-2-ddd3054e3fa9e265bca8eb8825a53d69a1732993.zip
Added a patch for the FPU-lockup issue; and also for the CAN-2004-0075, CAN-2004-0228, CAN-2004-0229, and CAN-2004-0427 issues. Please see bugs #47881 and #58304 for details.
Diffstat (limited to 'sys-kernel/rsbac-dev-sources')
-rw-r--r--sys-kernel/rsbac-dev-sources/ChangeLog15
-rw-r--r--sys-kernel/rsbac-dev-sources/files/digest-rsbac-dev-sources-2.6.5-r1 (renamed from sys-kernel/rsbac-dev-sources/files/digest-rsbac-dev-sources-2.6.5)0
-rw-r--r--sys-kernel/rsbac-dev-sources/files/rsbac-dev-sources.CAN-2004-0075.patch39
-rw-r--r--sys-kernel/rsbac-dev-sources/files/rsbac-dev-sources.CAN-2004-0228.patch11
-rw-r--r--sys-kernel/rsbac-dev-sources/files/rsbac-dev-sources.CAN-2004-0229.patch11
-rw-r--r--sys-kernel/rsbac-dev-sources/files/rsbac-dev-sources.CAN-2004-0427.patch11
-rw-r--r--sys-kernel/rsbac-dev-sources/files/rsbac-dev-sources.FPULockup-53804.patch24
-rw-r--r--sys-kernel/rsbac-dev-sources/rsbac-dev-sources-2.6.5-r1.ebuild (renamed from sys-kernel/rsbac-dev-sources/rsbac-dev-sources-2.6.5.ebuild)10
8 files changed, 117 insertions, 4 deletions
diff --git a/sys-kernel/rsbac-dev-sources/ChangeLog b/sys-kernel/rsbac-dev-sources/ChangeLog
index 35cffb16f0ac..82d1373adffd 100644
--- a/sys-kernel/rsbac-dev-sources/ChangeLog
+++ b/sys-kernel/rsbac-dev-sources/ChangeLog
@@ -1,6 +1,19 @@
# ChangeLog for sys-kernel/rsbac-dev-sources
# Copyright 2000-2004 Gentoo Technologies, Inc.; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/sys-kernel/rsbac-dev-sources/ChangeLog,v 1.1 2004/06/09 12:34:51 kang Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-kernel/rsbac-dev-sources/ChangeLog,v 1.2 2004/06/14 22:24:42 plasmaroo Exp $
+
+*rsbac-dev-sources-2.6.5-r1 (14 Jun 2004)
+
+ 14 Jun 2004; <plasmaroo@gentoo.org> +rsbac-dev-sources-2.6.5-r1.ebuild,
+ -rsbac-dev-sources-2.6.5.ebuild,
+ +files/rsbac-dev-sources.CAN-2004-0075.patch,
+ +files/rsbac-dev-sources.CAN-2004-0228.patch,
+ +files/rsbac-dev-sources.CAN-2004-0229.patch,
+ +files/rsbac-dev-sources.CAN-2004-0427.patch,
+ +files/rsbac-dev-sources.FPULockup-53804.patch:
+ Added a patch for the FPU-lockup issue; and also for the CAN-2004-0075,
+ CAN-2004-0228, CAN-2004-0229, and CAN-2004-0427 issues. Please see bugs
+ #47881 and #58304 for details.
*rsbac-dev-sources-2.6.5 (09 Jun 2004)
diff --git a/sys-kernel/rsbac-dev-sources/files/digest-rsbac-dev-sources-2.6.5 b/sys-kernel/rsbac-dev-sources/files/digest-rsbac-dev-sources-2.6.5-r1
index 60e446567061..60e446567061 100644
--- a/sys-kernel/rsbac-dev-sources/files/digest-rsbac-dev-sources-2.6.5
+++ b/sys-kernel/rsbac-dev-sources/files/digest-rsbac-dev-sources-2.6.5-r1
diff --git a/sys-kernel/rsbac-dev-sources/files/rsbac-dev-sources.CAN-2004-0075.patch b/sys-kernel/rsbac-dev-sources/files/rsbac-dev-sources.CAN-2004-0075.patch
new file mode 100644
index 000000000000..e131c957cb0a
--- /dev/null
+++ b/sys-kernel/rsbac-dev-sources/files/rsbac-dev-sources.CAN-2004-0075.patch
@@ -0,0 +1,39 @@
+--- linux-2.6.6-rc1/drivers/usb/media/vicam.c 2004-04-15 11:18:18.000000000 +0200
++++ linux-2.6.6-rc1-mich/drivers/usb/media/vicam.c 2004-04-15 11:50:02.791604312 +0200
+@@ -612,15 +612,20 @@ vicam_ioctl(struct inode *inode, struct
+
+ case VIDIOCSPICT:
+ {
+- struct video_picture *vp = (struct video_picture *) arg;
+-
+- DBG("VIDIOCSPICT depth = %d, pal = %d\n", vp->depth,
+- vp->palette);
++ struct video_picture vp;
++
++ if (copy_from_user(&vp, arg, sizeof(vp))) {
++ retval = -EFAULT;
++ break;
++ }
++
++ DBG("VIDIOCSPICT depth = %d, pal = %d\n", vp.depth,
++ vp.palette);
+
+- cam->gain = vp->brightness >> 8;
++ cam->gain = vp.brightness >> 8;
+
+- if (vp->depth != 24
+- || vp->palette != VIDEO_PALETTE_RGB24)
++ if (vp.depth != 24
++ || vp.palette != VIDEO_PALETTE_RGB24)
+ retval = -EINVAL;
+
+ break;
+@@ -659,7 +659,7 @@
+ {
+
+ struct video_window *vw = (struct video_window *) arg;
+- DBG("VIDIOCSWIN %d x %d\n", vw->width, vw->height);
++ DBG("VIDIOCSWIN %d x %d\n", vw.width, vw.height);
+
+ if ( vw->width != 320 || vw->height != 240 )
+ retval = -EFAULT;
diff --git a/sys-kernel/rsbac-dev-sources/files/rsbac-dev-sources.CAN-2004-0228.patch b/sys-kernel/rsbac-dev-sources/files/rsbac-dev-sources.CAN-2004-0228.patch
new file mode 100644
index 000000000000..746ade9ab1c0
--- /dev/null
+++ b/sys-kernel/rsbac-dev-sources/files/rsbac-dev-sources.CAN-2004-0228.patch
@@ -0,0 +1,11 @@
+--- linux-2.6.3/drivers/cpufreq/cpufreq_userspace.c.overflow 2004-02-18 04:57:16.000000000 +0100
++++ linux-2.6.3/drivers/cpufreq/cpufreq_userspace.c 2004-05-14 11:40:37.000000000 +0200
+@@ -168,7 +168,7 @@ cpufreq_procctl(ctl_table *ctl, int writ
+ {
+ char buf[16], *p;
+ int cpu = (int) ctl->extra1;
+- int len, left = *lenp;
++ unsigned int len, left = *lenp;
+
+ if (!left || (filp->f_pos && !write) || !cpu_online(cpu)) {
+ *lenp = 0;
diff --git a/sys-kernel/rsbac-dev-sources/files/rsbac-dev-sources.CAN-2004-0229.patch b/sys-kernel/rsbac-dev-sources/files/rsbac-dev-sources.CAN-2004-0229.patch
new file mode 100644
index 000000000000..2b6dfff88e25
--- /dev/null
+++ b/sys-kernel/rsbac-dev-sources/files/rsbac-dev-sources.CAN-2004-0229.patch
@@ -0,0 +1,11 @@
+--- linux-2.6.3/drivers/video/fbmem.c.zy67 2004-04-23 07:32:22.000000000 -0400
++++ linux-2.6.3/drivers/video/fbmem.c 2004-04-23 07:33:09.000000000 -0400
+@@ -1042,7 +1042,7 @@
+ case FBIOGETCMAP:
+ if (copy_from_user(&cmap, (void *) arg, sizeof(cmap)))
+ return -EFAULT;
+- return (fb_copy_cmap(&info->cmap, &cmap, 0));
++ return (fb_copy_cmap(&info->cmap, &cmap, 2));
+ case FBIOPAN_DISPLAY:
+ if (copy_from_user(&var, (void *) arg, sizeof(var)))
+ return -EFAULT;
diff --git a/sys-kernel/rsbac-dev-sources/files/rsbac-dev-sources.CAN-2004-0427.patch b/sys-kernel/rsbac-dev-sources/files/rsbac-dev-sources.CAN-2004-0427.patch
new file mode 100644
index 000000000000..adadefd53db2
--- /dev/null
+++ b/sys-kernel/rsbac-dev-sources/files/rsbac-dev-sources.CAN-2004-0427.patch
@@ -0,0 +1,11 @@
+--- linux-2.6.3/kernel/fork.c.zy64 2004-04-21 12:26:51.000000000 -0400
++++ linux-2.6.3/kernel/fork.c 2004-04-21 12:29:34.000000000 -0400
+@@ -1073,6 +1073,8 @@
+ exit_namespace(p);
+ bad_fork_cleanup_mm:
+ exit_mm(p);
++ if (p->active_mm)
++ mmdrop(p->active_mm);
+ bad_fork_cleanup_signal:
+ exit_signal(p);
+ bad_fork_cleanup_sighand:
diff --git a/sys-kernel/rsbac-dev-sources/files/rsbac-dev-sources.FPULockup-53804.patch b/sys-kernel/rsbac-dev-sources/files/rsbac-dev-sources.FPULockup-53804.patch
new file mode 100644
index 000000000000..a813f48ec23b
--- /dev/null
+++ b/sys-kernel/rsbac-dev-sources/files/rsbac-dev-sources.FPULockup-53804.patch
@@ -0,0 +1,24 @@
+diff -Nru a/include/asm-i386/i387.h b/include/asm-i386/i387.h
+--- a/include/asm-i386/i387.h 2004-05-06 12:26:10 -07:00
++++ b/include/asm-i386/i387.h 2004-06-12 19:12:23 -07:00
+@@ -51,7 +51,7 @@
+ #define __clear_fpu( tsk ) \
+ do { \
+ if ((tsk)->thread_info->status & TS_USEDFPU) { \
+- asm volatile("fwait"); \
++ asm volatile("fnclex ; fwait"); \
+ (tsk)->thread_info->status &= ~TS_USEDFPU; \
+ stts(); \
+ } \
+diff -Nru a/include/asm-x86_64/i387.h b/include/asm-x86_64/i387.h
+--- a/include/asm-x86_64/i387.h 2004-06-13 20:43:56.742530792 +0100
++++ a/include/asm-x86_64/i387.h 2004-06-13 20:42:59.200278544 +0100
+@@ -46,7 +46,7 @@
+
+ #define clear_fpu(tsk) do { \
+ if ((tsk)->thread_info->status & TS_USEDFPU) { \
+- asm volatile("fwait"); \
++ asm volatile("fnclex; fwait"); \
+ (tsk)->thread_info->status &= ~TS_USEDFPU; \
+ stts(); \
+ } \
diff --git a/sys-kernel/rsbac-dev-sources/rsbac-dev-sources-2.6.5.ebuild b/sys-kernel/rsbac-dev-sources/rsbac-dev-sources-2.6.5-r1.ebuild
index f0d1daedc858..4ead20fb52a0 100644
--- a/sys-kernel/rsbac-dev-sources/rsbac-dev-sources-2.6.5.ebuild
+++ b/sys-kernel/rsbac-dev-sources/rsbac-dev-sources-2.6.5-r1.ebuild
@@ -1,6 +1,6 @@
# Copyright 1999-2004 Gentoo Technologies, Inc.
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/sys-kernel/rsbac-dev-sources/rsbac-dev-sources-2.6.5.ebuild,v 1.1 2004/06/09 12:34:51 kang Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-kernel/rsbac-dev-sources/rsbac-dev-sources-2.6.5-r1.ebuild,v 1.1 2004/06/14 22:24:42 plasmaroo Exp $
IUSE=""
ETYPE="sources"
@@ -19,7 +19,12 @@ RGPV_SRC="mirror://rsbac-patches-${KV_MAJOR}.${KV_MINOR}-${RGPV}.tar.bz2 http://
UNIPATCH_STRICTORDER="yes"
# exclude 12xx grsec and 13xx selinux patches
UNIPATCH_EXCLUDE="12 13"
-UNIPATCH_LIST="${DISTDIR}/rsbac-patches-${KV_MAJOR}.${KV_MINOR}-${RGPV}.tar.bz2"
+UNIPATCH_LIST="${DISTDIR}/rsbac-patches-${KV_MAJOR}.${KV_MINOR}-${RGPV}.tar.bz2
+ ${FILESDIR}/${PN}.CAN-2004-0075.patch
+ ${FILESDIR}/${PN}.CAN-2004-0228.patch
+ ${FILESDIR}/${PN}.CAN-2004-0229.patch
+ ${FILESDIR}/${PN}.CAN-2004-0427.patch
+ ${FILESDIR}/${PN}.FPULockup-53804.patch"
UNIPATCH_DOCS="${WORKDIR}/patches/rsbac-patches-${KV_MAJOR}.${KV_MINOR}-${RGPV}/0000_README"
HOMEPAGE="http://www.gentoo.org/proj/en/hardened/rsbac"
@@ -28,7 +33,6 @@ DESCRIPTION="RSBAC hardened sources for the ${KV_MAJOR}.${KV_MINOR} kernel tree"
SRC_URI="${KERNEL_URI} ${RSBAC_SRC} ${RGPV_SRC} ${GPV_SRC}"
KEYWORDS="~x86"
-
src_unpack() {
universal_unpack
(cd ${WORKDIR}/linux-${KV}; unpack rsbac-v${RSBACV}${REL}.tar.bz2)