Sophie

Sophie

distrib > Scientific%20Linux > 5x > x86_64 > by-pkgid > 27922b4260f65d317aabda37e42bbbff > files > 1543

kernel-2.6.18-238.el5.src.rpm

From: Tetsu Yamamoto <tyamamot@redhat.com>
Date: Tue, 15 Jul 2008 10:28:37 -0400
Subject: [ia64] xen: incompatibility with HV and userspace tools
Message-id: 487CB415.70305@redhat.com
O-Subject: [RHEL5.3 PATCH] ia64-xen: fix incompatibility between HV and userspace toolset
Bugzilla: 444589
RH-Acked-by: Jarod Wilson <jwilson@redhat.com>

BZ444589
https://bugzilla.redhat.com/show_bug.cgi?id=444589

[Description]
Interface version check between HV and userspace was modified in RHEL5.2
to allow through physinfo calls with newer versions for NUMA extensions.
 HV and tools have the modification, but kernel does not have it which
is needed for xen/ia64.  This patch add it in kernel.

[Upstream Status]
This fix is specific to RHEL5 to keep ABI compatibility.

[brew ID]
http://brewweb.devel.redhat.com/brew/taskinfo?taskID=1390047

[Test Status]
I've tested this patch with kernel-96 on ia64 box and confirmed that
xentop command does not show any warning messages of 'sysctl operation
failed -- need to rebuild the user-space tool set?'.

Please review and ACK.

Regards,

Tetsu Yamamoto

diff --git a/arch/ia64/xen/xcom_privcmd.c b/arch/ia64/xen/xcom_privcmd.c
index d950b17..9ae710b 100644
--- a/arch/ia64/xen/xcom_privcmd.c
+++ b/arch/ia64/xen/xcom_privcmd.c
@@ -192,7 +192,17 @@ xencomm_privcmd_sysctl(privcmd_hypercall_t *hypercall)
 		return -EFAULT;
 
 	if (kern_op.interface_version != XEN_SYSCTL_INTERFACE_VERSION)
-		return -EACCES;
+	{
+	    /*
+	     * RHEL5 ABI compat: Allow through physinfo calls with
+	     * newer versions for NUMA extensions
+	     */
+	    if (kern_op.cmd == XEN_SYSCTL_physinfo &&
+		kern_op.interface_version == (XEN_SYSCTL_INTERFACE_VERSION+1))
+	      printk(KERN_DEBUG "Allowing physinfo call with newer ABI version\n");
+	    else
+	      return -EACCES;
+	}
 
 	op_desc = xencomm_create_inline(&kern_op);