* 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
|
||||
- x86_64: fix 2.6.18 regression - PTRACE_OLDSETOPTIONS should be accepted
|
||||
- ocfs2: ocfs2_link() journal credits update
|
||||
* Update xen patch to changeset 48670 from fedora 2.6.20 branch.
|
||||
|
||||
[ Rod Whitby ]
|
||||
* 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 ]
|
||||
* 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
|
||||
|
||||
|
|
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/bindmount-dev.patch *_vserver *_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
|
||||
+ bugfix/arm/nas100d-artop-temp-fix.patch arm
|
||||
|
|
Loading…
Reference in New Issue