Skip to contentSkip to conversation

Fix compile errors for RHEL/SLES

PATCH In review Ben Guthro 1 participant 2 messages Dec 3, 2007

lore
Share & tools
lore

Ben Guthro

author
#0 lore raw

PATCH 1/2 Fix compile errors for RHEL/SLES

[PATCH 1/2][PV-on-HVM] Fix compile errors for RHEL/SLES
Fix compile errors on a couple of distros.
1st fix was for SLES10-SP1 and SLES10-SP2:
netif_tx_lock_bh was pulled back into older kernels, and thus must be detected.
2nd fix was for RHEL4-U5 which pulled back the irqreturn_t feature into an older kernel. This too must be detected. 3rd fix was fixing a compile error in a printk for a more strict compile in RHEL4-U5

unmodified_drivers/linux-2.6/compat-include/xen/platform-compat.h +15 -0
diff -r 3211cf988b50 unmodified_drivers/linux-2.6/compat-include/xen/platform-compat.h
@@ -114,9 +114,17 @@ extern char *kasprintf(gfp_t gfp, const 
 #define __supported_pte_mask ((maddr_t)0)
 #endif
 
+/* This code duplication is not ideal, but || does not seem to properly 
+ *  short circuit in a #if condition.
+ **/
 #if defined(_LINUX_NETDEVICE_H) && LINUX_VERSION_CODE < KERNEL_VERSION(2,6,18)
+#if !defined(SLE_VERSION) 
 #define netif_tx_lock_bh(dev) spin_lock_bh(&(dev)->xmit_lock)
 #define netif_tx_unlock_bh(dev) spin_unlock_bh(&(dev)->xmit_lock)
+#elif SLE_VERSION_CODE < SLE_VERSION(10,1,0)
+#define netif_tx_lock_bh(dev) spin_lock_bh(&(dev)->xmit_lock)
+#define netif_tx_unlock_bh(dev) spin_unlock_bh(&(dev)->xmit_lock)
+#endif
 #endif
 
 #if defined(__LINUX_SEQLOCK_H) && !defined(DEFINE_SEQLOCK)
@@ -133,7 +141,14 @@ extern char *kasprintf(gfp_t gfp, const 
 #endif
 
 #if defined(_LINUX_INTERRUPT_H) && LINUX_VERSION_CODE < KERNEL_VERSION(2,6,19)
+/**
+ *   RHEL4-U5 pulled back this feature into the older kernel 
+ *   Since it is a typedef, and not a macro - detect this kernel via
+ *   RHEL_VERSION
+ */
+#if !defined(RHEL_VERSION) || (RHEL_VERSION == 4 && RHEL_UPDATE < 5)
 typedef irqreturn_t (*irq_handler_t)(int, void *, struct pt_regs *);
+#endif
 #endif
 
 #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,23)
unmodified_drivers/linux-2.6/platform-pci/platform-pci.c +1 -1
diff -r 3211cf988b50 unmodified_drivers/linux-2.6/platform-pci/platform-pci.c
@@ -465,7 +465,7 @@ static int __init platform_pci_module_in
 		} else {
 			cpu_khz = simple_strtol(khz, NULL, 0);
 			kfree(khz);
-			printk(KERN_INFO DRV_NAME ": cpu_khz %lu\n", cpu_khz);
+			printk(KERN_INFO DRV_NAME ": cpu_khz %u\n", cpu_khz);
 		}
 	}
 

_______________________________________________
Xen-devel mailing list
[email protected]
http://lists.xensource.com/xen-devel

author
#1 lore raw

Please disregard point 3.

I realized this was against a prior patch that we do not feel is ready for submission just yet.

The other 2 chunks still apply,

I can re-submit, if necessary.

Quoted 7 lines · Ben Guthro

[PATCH 1/2][PV-on-HVM] Fix compile errors for RHEL/SLES
Fix compile errors on a couple of distros.
1st fix was for SLES10-SP1 and SLES10-SP2:
netif_tx_lock_bh was pulled back into older kernels, and thus must be detected.
2nd fix was for RHEL4-U5 which pulled back the irqreturn_t feature into an older kernel. This too must be detected. 3rd fix was fixing a compile error in a printk for a more strict compile in RHEL4-U5

Quoted 7 lines

------------------------------------------------------------------------

_______________________________________________
Xen-devel mailing list
[email protected]
http://lists.xensource.com/xen-devel

_______________________________________________
Xen-devel mailing list
[email protected]
http://lists.xensource.com/xen-devel