* Update xen patch to changeset 48670 from fedora 2.6.20 branch.
* Fix identified problems with this patch. * debian/changelog: Update. * debian/patches/features/all/xen/fedora-2.6.18-36186.patch: Remove. * debian/patches/features/all/xen/fedora-2.6.20-48670.patch, debian/patches/features/all/xen/update.patch: Add. * debian/patches/series/1~experimental.1-extra: Update. svn path=/dists/trunk/linux-2.6/; revision=8364
This commit is contained in:
parent
6f136690de
commit
b9c68efdbc
|
@ -125,6 +125,7 @@ linux-2.6 (2.6.20-1~experimental.1) UNRELEASED; urgency=low
|
||||||
- rtc-pcf8563: detect polarity of century bit automatically
|
- rtc-pcf8563: detect polarity of century bit automatically
|
||||||
- x86_64: fix 2.6.18 regression - PTRACE_OLDSETOPTIONS should be accepted
|
- x86_64: fix 2.6.18 regression - PTRACE_OLDSETOPTIONS should be accepted
|
||||||
- ocfs2: ocfs2_link() journal credits update
|
- ocfs2: ocfs2_link() journal credits update
|
||||||
|
* Update xen patch to changeset 48670 from fedora 2.6.20 branch.
|
||||||
|
|
||||||
[ Rod Whitby ]
|
[ Rod Whitby ]
|
||||||
* arm/ixp4xx: Enable PATA_ARTOP for the nas100d and dsmg600.
|
* arm/ixp4xx: Enable PATA_ARTOP for the nas100d and dsmg600.
|
||||||
|
@ -163,7 +164,7 @@ linux-2.6 (2.6.20-1~experimental.1) UNRELEASED; urgency=low
|
||||||
[ Frederik Schüler ]
|
[ Frederik Schüler ]
|
||||||
* Disable NAPI on forcedeth, it is broken.
|
* Disable NAPI on forcedeth, it is broken.
|
||||||
|
|
||||||
-- Bastian Blank <waldi@debian.org> Thu, 15 Mar 2007 14:28:09 +0100
|
-- Bastian Blank <waldi@debian.org> Fri, 16 Mar 2007 19:24:10 +0100
|
||||||
|
|
||||||
linux-2.6 (2.6.18.dfsg.1-10) unstable; urgency=low
|
linux-2.6 (2.6.18.dfsg.1-10) unstable; urgency=low
|
||||||
|
|
||||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,80 @@
|
||||||
|
diff -r 563a16543a96 arch/i386/Kconfig
|
||||||
|
--- a/arch/i386/Kconfig Mon Mar 12 14:07:24 2007 +0100
|
||||||
|
+++ b/arch/i386/Kconfig Fri Mar 16 20:29:31 2007 +0100
|
||||||
|
@@ -200,7 +200,7 @@ config PARAVIRT
|
||||||
|
config PARAVIRT
|
||||||
|
bool "Paravirtualization support (EXPERIMENTAL)"
|
||||||
|
depends on EXPERIMENTAL
|
||||||
|
- depends on !(X86_VISWS || X86_VOYAGER)
|
||||||
|
+ depends on !(X86_VISWS || X86_VOYAGER || X86_XEN)
|
||||||
|
help
|
||||||
|
Paravirtualization is a way of running multiple instances of
|
||||||
|
Linux on the same machine, under a hypervisor. This option
|
||||||
|
diff -r 563a16543a96 arch/i386/kernel/microcode-xen.c
|
||||||
|
--- a/arch/i386/kernel/microcode-xen.c Mon Mar 12 14:07:24 2007 +0100
|
||||||
|
+++ b/arch/i386/kernel/microcode-xen.c Fri Mar 16 20:15:51 2007 +0100
|
||||||
|
@@ -52,30 +52,32 @@ MODULE_LICENSE("GPL");
|
||||||
|
/* no concurrent ->write()s are allowed on /dev/cpu/microcode */
|
||||||
|
static DEFINE_MUTEX(microcode_mutex);
|
||||||
|
|
||||||
|
-static void __user *user_buffer; /* user area microcode data buffer */
|
||||||
|
-static unsigned int user_buffer_size; /* it's size */
|
||||||
|
-
|
||||||
|
static int microcode_open (struct inode *unused1, struct file *unused2)
|
||||||
|
{
|
||||||
|
return capable(CAP_SYS_RAWIO) ? 0 : -EPERM;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
-static int do_microcode_update (void)
|
||||||
|
+static int do_microcode_update (const void __user *ubuf, size_t len)
|
||||||
|
{
|
||||||
|
int err;
|
||||||
|
- dom0_op_t op;
|
||||||
|
+ void *kbuf;
|
||||||
|
|
||||||
|
- err = sys_mlock((unsigned long)user_buffer, user_buffer_size);
|
||||||
|
- if (err != 0)
|
||||||
|
- return err;
|
||||||
|
+ kbuf = vmalloc(len);
|
||||||
|
+ if (!kbuf)
|
||||||
|
+ return -ENOMEM;
|
||||||
|
|
||||||
|
- op.cmd = DOM0_MICROCODE;
|
||||||
|
- set_xen_guest_handle(op.u.microcode.data, user_buffer);
|
||||||
|
- op.u.microcode.length = user_buffer_size;
|
||||||
|
- err = HYPERVISOR_dom0_op(&op);
|
||||||
|
+ if (copy_from_user(kbuf, ubuf, len) == 0) {
|
||||||
|
+ dom0_op_t op;
|
||||||
|
|
||||||
|
- (void)sys_munlock((unsigned long)user_buffer, user_buffer_size);
|
||||||
|
+ op.cmd = DOM0_MICROCODE;
|
||||||
|
+ set_xen_guest_handle(op.u.microcode.data, kbuf);
|
||||||
|
+ op.u.microcode.length = len;
|
||||||
|
+ err = HYPERVISOR_dom0_op(&op);
|
||||||
|
+ } else
|
||||||
|
+ err = -EFAULT;
|
||||||
|
+
|
||||||
|
+ vfree(kbuf);
|
||||||
|
|
||||||
|
return err;
|
||||||
|
}
|
||||||
|
@@ -89,17 +91,9 @@ static ssize_t microcode_write (struct f
|
||||||
|
return -EINVAL;
|
||||||
|
}
|
||||||
|
|
||||||
|
- if ((len >> PAGE_SHIFT) > num_physpages) {
|
||||||
|
- printk(KERN_ERR "microcode: too much data (max %ld pages)\n", num_physpages);
|
||||||
|
- return -EINVAL;
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
mutex_lock(µcode_mutex);
|
||||||
|
|
||||||
|
- user_buffer = (void __user *) buf;
|
||||||
|
- user_buffer_size = (int) len;
|
||||||
|
-
|
||||||
|
- ret = do_microcode_update();
|
||||||
|
+ ret = do_microcode_update(buf, len);
|
||||||
|
if (!ret)
|
||||||
|
ret = (ssize_t)len;
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
+ features/all/vserver/vs2.2.0-rc15.patch *_vserver *_xen-vserver
|
+ features/all/vserver/vs2.2.0-rc15.patch *_vserver *_xen-vserver
|
||||||
+ features/all/vserver/bindmount-dev.patch *_vserver *_xen-vserver
|
+ features/all/vserver/bindmount-dev.patch *_vserver *_xen-vserver
|
||||||
+ features/all/xen/vserver-clash.patch *_xen-vserver
|
+ features/all/xen/vserver-clash.patch *_xen-vserver
|
||||||
#+ features/all/xen/fedora-36252.patch *_xen *_xen-vserver
|
+ features/all/xen/fedora-2.6.20-48670.patch *_xen *_xen-vserver
|
||||||
|
+ features/all/xen/update.patch *_xen *_xen-vserver
|
||||||
+ features/all/xen/vserver-update.patch *_xen-vserver
|
+ features/all/xen/vserver-update.patch *_xen-vserver
|
||||||
+ bugfix/arm/nas100d-artop-temp-fix.patch arm
|
+ bugfix/arm/nas100d-artop-temp-fix.patch arm
|
||||||
|
|
Loading…
Reference in New Issue