rpms/kernel/FC-6 linux-2.6-add_xt_statistic.h_to_hdrs.patch, NONE, 1.1 linux-2.6-amd-fix-broken-lapic-timer-detect.patch, NONE, 1.1 linux-2.6-slub-dont-bug-on-too-large-allocation.patch, NONE, 1.1 kernel-2.6.spec, 1.3000, 1.3001

fedora-cvs-commits at redhat.com fedora-cvs-commits at redhat.com
Wed Aug 8 18:56:45 UTC 2007


Author: cebbert

Update of /cvs/dist/rpms/kernel/FC-6
In directory cvs.devel.redhat.com:/tmp/cvs-serv27170

Modified Files:
	kernel-2.6.spec 
Added Files:
	linux-2.6-add_xt_statistic.h_to_hdrs.patch 
	linux-2.6-amd-fix-broken-lapic-timer-detect.patch 
	linux-2.6-slub-dont-bug-on-too-large-allocation.patch 
Log Message:
* Wed Aug 08 2007 Chuck Ebbert <cebbert at redhat.com>
- add xt_statistic.h to header list for iptables
- detect broken lapic timer on some dual-core AMD systems
- don't BUG on too-large memory allocation


linux-2.6-add_xt_statistic.h_to_hdrs.patch:
 Kbuild |    1 +
 1 files changed, 1 insertion(+)

--- NEW FILE linux-2.6-add_xt_statistic.h_to_hdrs.patch ---
Add xt_statistic.h to the list of headers to install.

Apparently needed to build newer versions of iptables.

Signed-off-by: Chuck Ebbert <cebbert at redhat.com>
---
 include/linux/netfilter/Kbuild |    1 +
 1 file changed, 1 insertion(+)

--- linux-2.6.22.noarch.orig/include/linux/netfilter/Kbuild
+++ linux-2.6.22.noarch/include/linux/netfilter/Kbuild
@@ -28,6 +28,7 @@ header-y += xt_policy.h
 header-y += xt_realm.h
 header-y += xt_sctp.h
 header-y += xt_state.h
+header-y += xt_statistic.h
 header-y += xt_string.h
 header-y += xt_tcpmss.h
 header-y += xt_tcpudp.h

linux-2.6-amd-fix-broken-lapic-timer-detect.patch:
 arch/i386/kernel/apic.c             |    8 +++-----
 linux/arch/i386/kernel/cpu/amd.c    |    7 ++++++-
 linux/include/asm-i386/apic.h       |    2 ++
 linux/include/asm-i386/cpufeature.h |    2 +-
 4 files changed, 12 insertions(+), 7 deletions(-)

--- NEW FILE linux-2.6-amd-fix-broken-lapic-timer-detect.patch ---
===================================================================
--- linux.orig/arch/i386/kernel/apic.c
+++ linux/arch/i386/kernel/apic.c
@@ -61,8 +61,9 @@ static int enable_local_apic __initdata 
 
 /* Local APIC timer verification ok */
 static int local_apic_timer_verify_ok;
-/* Disable local APIC timer from the kernel commandline or via dmi quirk */
-static int local_apic_timer_disabled;
+/* Disable local APIC timer from the kernel commandline or via dmi quirk
+   or using CPU MSR check */
+int local_apic_timer_disabled;
 /* Local APIC timer works in C2 */
 int local_apic_timer_c2_ok;
 EXPORT_SYMBOL_GPL(local_apic_timer_c2_ok);
@@ -370,9 +371,6 @@ void __init setup_boot_APIC_clock(void)
 	long delta, deltapm;
 	int pm_referenced = 0;
 
-	if (boot_cpu_has(X86_FEATURE_LAPIC_TIMER_BROKEN))
-		local_apic_timer_disabled = 1;
-
 	/*
 	 * The local apic timer can be disabled via the kernel
 	 * commandline or from the test above. Register the lapic
Index: linux/arch/i386/kernel/cpu/amd.c
===================================================================
--- linux.orig/arch/i386/kernel/cpu/amd.c
+++ linux/arch/i386/kernel/cpu/amd.c
@@ -3,6 +3,7 @@
 #include <linux/mm.h>
 #include <asm/io.h>
 #include <asm/processor.h>
+#include <asm/apic.h>
 
 #include "cpu.h"
 
@@ -22,6 +23,7 @@
 extern void vide(void);
 __asm__(".align 4\nvide: ret");
 
+#ifdef CONFIG_X86_LOCAL_APIC
 #define ENABLE_C1E_MASK         0x18000000
 #define CPUID_PROCESSOR_SIGNATURE       1
 #define CPUID_XFAM              0x0ff00000
@@ -52,6 +54,7 @@ static __cpuinit int amd_apic_timer_brok
         }
 	return 0;
 }
+#endif
 
 int force_mwait __cpuinitdata;
 
@@ -282,8 +285,10 @@ static void __cpuinit init_amd(struct cp
 	if (cpuid_eax(0x80000000) >= 0x80000006)
 		num_cache_leaves = 3;
 
+#ifdef CONFIG_X86_LOCAL_APIC
 	if (amd_apic_timer_broken())
-		set_bit(X86_FEATURE_LAPIC_TIMER_BROKEN, c->x86_capability);
+		local_apic_timer_disabled = 1;
+#endif
 
 	if (c->x86 == 0x10 && !force_mwait)
 		clear_bit(X86_FEATURE_MWAIT, c->x86_capability);
Index: linux/include/asm-i386/apic.h
===================================================================
--- linux.orig/include/asm-i386/apic.h
+++ linux/include/asm-i386/apic.h
@@ -116,6 +116,8 @@ extern void enable_NMI_through_LVT0 (voi
 extern int timer_over_8254;
 extern int local_apic_timer_c2_ok;
 
+extern int local_apic_timer_disabled;
+
 #else /* !CONFIG_X86_LOCAL_APIC */
 static inline void lapic_shutdown(void) { }
 
Index: linux/include/asm-i386/cpufeature.h
===================================================================
--- linux.orig/include/asm-i386/cpufeature.h
+++ linux/include/asm-i386/cpufeature.h
@@ -79,7 +79,7 @@
 #define X86_FEATURE_ARCH_PERFMON (3*32+11) /* Intel Architectural PerfMon */
 #define X86_FEATURE_PEBS	(3*32+12)  /* Precise-Event Based Sampling */
 #define X86_FEATURE_BTS		(3*32+13)  /* Branch Trace Store */
-#define X86_FEATURE_LAPIC_TIMER_BROKEN (3*32+ 14) /* lapic timer broken in C1 */
+/* 14 free */
 #define X86_FEATURE_SYNC_RDTSC	(3*32+15)  /* RDTSC synchronizes the CPU */
 
 /* Intel-defined CPU features, CPUID level 0x00000001 (ecx), word 4 */

linux-2.6-slub-dont-bug-on-too-large-allocation.patch:
 slub.c |    3 ++-
 1 files changed, 2 insertions(+), 1 deletion(-)

--- NEW FILE linux-2.6-slub-dont-bug-on-too-large-allocation.patch ---
Don't BUG on too-large allocation in SLUB.

Taken from larger 2.6.23-rc1 commit.

Signed-off-by: Chuck Ebbert <cebbert at redhat.com>
---
 mm/slub.c |    3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

--- linux-2.6.22.noarch.orig/mm/slub.c
+++ linux-2.6.22.noarch/mm/slub.c
@@ -2201,7 +2201,8 @@ static struct kmem_cache *get_slab(size_
 		return NULL;
 
 	/* Allocation too large? */
-	BUG_ON(index < 0);
+	if (index < 0)
+		return 0;
 
 #ifdef CONFIG_ZONE_DMA
 	if ((flags & SLUB_DMA)) {


Index: kernel-2.6.spec
===================================================================
RCS file: /cvs/dist/rpms/kernel/FC-6/kernel-2.6.spec,v
retrieving revision 1.3000
retrieving revision 1.3001
diff -u -r1.3000 -r1.3001
--- kernel-2.6.spec	1 Aug 2007 17:59:03 -0000	1.3000
+++ kernel-2.6.spec	8 Aug 2007 18:56:43 -0000	1.3001
@@ -529,12 +529,13 @@
 Patch40: linux-2.6-x86-tune-generic.patch
 Patch50: linux-2.6-x86-vga-vidfail.patch
 Patch51: linux-2.6-i386-hpet-check-if-the-counter-works.patch
-Patch95: linux-2.6-kvm-suspend.patch
+Patch52: linux-2.6-amd-fix-broken-lapic-timer-detect.patch
+Patch90: linux-2.6-kvm-suspend.patch
+
 Patch100: linux-2.6-g5-therm-shutdown.patch
 Patch120: linux-2.6-ppc32-ucmpdi2.patch
 Patch130: linux-2.6-ibmvscsi-schizo.patch
 Patch140: linux-2.6-pmac-zilog.patch
-
 Patch150: linux-2.6-build-nonintconfig.patch
 Patch160: linux-2.6-execshield.patch
 Patch170: linux-2.6-modsign-mpilib.patch
@@ -569,6 +570,7 @@
 Patch431: linux-2.6-tcp-sack-fix-leak-msgs.patch
 Patch432: linux-2.6-net_sched_fix_deadlock.patch
 Patch433: linux-2.6-net-dst_entry-reorder-crash.patch
+Patch434: linux-2.6-add_xt_statistic.h_to_hdrs.patch
 Patch440: linux-2.6-sha_alignment.patch
 Patch450: linux-2.6-input-kill-stupid-messages.patch
 Patch451: linux-2.6-input-rfkill-wrong-size-flags.patch
@@ -580,6 +582,7 @@
 Patch570: linux-2.6-selinux-mprotect-checks.patch
 Patch590: linux-2.6-unexport-symbols.patch
 Patch600: linux-2.6-vm-silence-atomic-alloc-failures.patch
+Patch601: linux-2.6-slub-dont-bug-on-too-large-allocation.patch
 Patch610: linux-2.6-defaults-fat-utf8.patch
 Patch620: linux-2.6-defaults-unicode-vt.patch
 Patch630: linux-2.6-defaults-nonmi.patch
@@ -1112,6 +1115,8 @@
 ApplyPatch linux-2.6-x86-vga-vidfail.patch
 # Check the hpet is counting.
 ApplyPatch linux-2.6-i386-hpet-check-if-the-counter-works.patch
+# check all AMD CPU cores for broken lapic timer
+ApplyPatch linux-2.6-amd-fix-broken-lapic-timer-detect.patch
 
 # patch to fix suspend with kvm loaded and guests running
 ApplyPatch linux-2.6-kvm-suspend.patch
@@ -1213,6 +1218,8 @@
 ApplyPatch linux-2.6-net_sched_fix_deadlock.patch
 # fix crash in xfrm4
 ApplyPatch linux-2.6-net-dst_entry-reorder-crash.patch
+# add header needed to build new iptables
+ApplyPatch linux-2.6-add_xt_statistic.h_to_hdrs.patch
 
 # Misc fixes
 # Fix SHA1 alignment problem on ia64
@@ -1241,6 +1248,8 @@
 #
 # Silence GFP_ATOMIC failures.
 ApplyPatch linux-2.6-vm-silence-atomic-alloc-failures.patch
+# don't crash the machine when a too-large memory request arrives
+ApplyPatch linux-2.6-slub-dont-bug-on-too-large-allocation.patch
 
 # Changes to upstream defaults.
 # Use UTF-8 by default on VFAT.
@@ -2248,6 +2257,11 @@
 %endif
 
 %changelog
+* Wed Aug 08 2007 Chuck Ebbert <cebbert at redhat.com>
+- add xt_statistic.h to header list for iptables
+- detect broken lapic timer on some dual-core AMD systems
+- don't BUG on too-large memory allocation
+
 * Wed Aug 01 2007 Chuck Ebbert <cebbert at redhat.com>
 - fix crash in xfrm4
 - restore md driver START_ARRAY ioctl




More information about the fedora-cvs-commits mailing list