rpms/kernel/F-11 linux-2.6.29.1-sparc-regression.patch, NONE, 1.1 config-sparc64-generic, 1.24, 1.25 config-sparc64-smp, 1.2, 1.3 kernel.spec, 1.1526, 1.1527

Dennis Gilmore ausil at fedoraproject.org
Thu Apr 9 19:15:50 UTC 2009


Author: ausil

Update of /cvs/extras/rpms/kernel/F-11
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv21560

Modified Files:
	config-sparc64-generic config-sparc64-smp kernel.spec 
Added Files:
	linux-2.6.29.1-sparc-regression.patch 
Log Message:
add patch to fix sparc 2.6.29.1 regression


linux-2.6.29.1-sparc-regression.patch:

--- NEW FILE linux-2.6.29.1-sparc-regression.patch ---
>From davem at davemloft.net Tue Apr  7 17:24:11 2009
Return-Path: <davem at davemloft.net>
X-Original-To: dennis at ausil.us
Delivered-To: dennis at ausil.us
Received: from localhost (unknown [127.0.0.1])
	by mail.ausil.us (Postfix) with ESMTP id 8067B158003
	for <dennis at ausil.us>; Tue,  7 Apr 2009 22:24:22 +0000 (UTC)
X-Virus-Scanned: amavisd-new at example.com
Received: from mail.ausil.us ([127.0.0.1])
	by localhost (anubis.ausil.us [127.0.0.1]) (amavisd-new, port 10024)
	with ESMTP id Wtdx2a8O54+g for <dennis at ausil.us>;
	Tue,  7 Apr 2009 17:24:21 -0500 (CDT)
X-Greylist: from auto-whitelisted by SQLgrey-1.7.5
Received: from sunset.davemloft.net (unknown [74.93.104.97])
	by mail.ausil.us (Postfix) with ESMTP id 7A828158001
	for <dennis at ausil.us>; Tue,  7 Apr 2009 17:24:21 -0500 (CDT)
Received: from localhost (localhost [127.0.0.1])
	by sunset.davemloft.net (Postfix) with ESMTP id CA9B8C8D935;
	Tue,  7 Apr 2009 15:24:11 -0700 (PDT)
Date: Tue, 07 Apr 2009 15:24:11 -0700 (PDT)
Message-Id: <20090407.152411.198483029.davem at davemloft.net>
To: dennis at ausil.us
Cc: sparclinux at vger.kernel.org
Subject: Re: kernel bug with CONFIG_KEYBOARD_ATKBD=y
From: David Miller <davem at davemloft.net>
In-Reply-To: <20090407.151638.93201206.davem at davemloft.net>
References: <20090407.145755.213806619.davem at davemloft.net>
	<200904071710.09685.dennis at ausil.us>
	<20090407.151638.93201206.davem at davemloft.net>
X-Mailer: Mew version 6.2.51 on Emacs 22.1 / Mule 5.0 (SAKAKI)
Mime-Version: 1.0
Content-Type: Text/Plain;
  charset=us-ascii
Content-Transfer-Encoding: 7bit
X-UID: 4807
X-Length: 3606
Status: R
X-Status: N
X-KMail-EncryptionState:  
X-KMail-SignatureState:  
X-KMail-MDN-Sent:  

From: David Miller <davem at davemloft.net>
Date: Tue, 07 Apr 2009 15:16:38 -0700 (PDT)

> From: Dennis Gilmore <dennis at ausil.us>
> Date: Tue, 7 Apr 2009 17:10:08 -0500
> 
>> On Tuesday 07 April 2009 04:57:55 pm David Miller wrote:
>>> From: Dennis Gilmore <dennis at ausil.us>
>>> Date: Tue, 7 Apr 2009 10:01:17 -0500
>>>
>>> > Initalizing network drop monitor service
>>> > kernel BUG at
>>> > /builddir/build/BUILD/kernel-2.6.29/linux-2.6.29.sparc64/arch/sparc/inclu
>>> >de/asm/tlb_64.h:48!
>>>
>>> What kernel is this tree based upon?  2.6.29.1?
>> yeah 2.6.29.1
> 
> A sparc64 fix I put into 2.6.29.1 is likely the cause.  It's possible
> I put in a version without a particular issue cured.

Indeed, here is the fix, I'll push it to -stable.  Thanks for your
report:

sparc64: Fix bug in ("sparc64: Flush TLB before releasing pages.")

[ No upstream commit, this regression was added only to 2.6.29.1 ]

Unfortunately I merged an earlier version of commit
b6816b706138c3870f03115071872cad824f90b4 ("sparc64: Flush TLB before
releasing pages.") than what I actually tested and merged upstream.

Simply diffing asm/tlb_64.h in Linus's tree vs. what ended up in
2.6.29.1 confirms this.

Sync things up to fix BUG() triggers some users are seeing.

Reported-by: Dennis Gilmore <dennis at ausil.us>
Signed-off-by: David S. Miller <davem at davemloft.net>
---
 arch/sparc/include/asm/tlb_64.h |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/arch/sparc/include/asm/tlb_64.h b/arch/sparc/include/asm/tlb_64.h
index 0aaa086..ee38e73 100644
--- a/arch/sparc/include/asm/tlb_64.h
+++ b/arch/sparc/include/asm/tlb_64.h
@@ -57,9 +57,9 @@ static inline struct mmu_gather *tlb_gather_mmu(struct mm_struct *mm, unsigned i
 
 static inline void tlb_flush_mmu(struct mmu_gather *mp)
 {
+	if (!mp->fullmm)
+		flush_tlb_pending();
 	if (mp->need_flush) {
-		if (!mp->fullmm)
-			flush_tlb_pending();
 		free_pages_and_swap_cache(mp->pages, mp->pages_nr);
 		mp->pages_nr = 0;
 		mp->need_flush = 0;
-- 
1.6.2.2



Index: config-sparc64-generic
===================================================================
RCS file: /cvs/extras/rpms/kernel/F-11/config-sparc64-generic,v
retrieving revision 1.24
retrieving revision 1.25
diff -u -r1.24 -r1.25
--- config-sparc64-generic	12 Mar 2009 03:23:03 -0000	1.24
+++ config-sparc64-generic	9 Apr 2009 19:15:20 -0000	1.25
@@ -151,7 +151,7 @@
 CONFIG_ATM_FORE200E_DEBUG=0
 CONFIG_ATM_FORE200E_TX_RETRY=16
 # CONFIG_DRM_TDFX is not set
-# CONFIG_KEYBOARD_ATKBD is not set
+CONFIG_KEYBOARD_ATKBD=y
 CONFIG_KEYBOARD_SUNKBD=y
 # CONFIG_INPUT_PCSPKR is not set
 CONFIG_INPUT_SPARCSPKR=m
@@ -197,3 +197,5 @@
 CONFIG_SENSORS_ULTRA45=m
 CONFIG_LEDS_SUNFIRE=m
 CONFIG_TADPOLE_TS102_UCTRL=m
+
+# CONFIG_KGDB is not set


Index: config-sparc64-smp
===================================================================
RCS file: /cvs/extras/rpms/kernel/F-11/config-sparc64-smp,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- config-sparc64-smp	16 Jul 2008 21:29:33 -0000	1.2
+++ config-sparc64-smp	9 Apr 2009 19:15:20 -0000	1.3
@@ -1 +1,2 @@
 CONFIG_SMP=y
+CONFIG_KGDB=y


Index: kernel.spec
===================================================================
RCS file: /cvs/extras/rpms/kernel/F-11/kernel.spec,v
retrieving revision 1.1526
retrieving revision 1.1527
diff -u -r1.1526 -r1.1527
--- kernel.spec	9 Apr 2009 17:49:38 -0000	1.1526
+++ kernel.spec	9 Apr 2009 19:15:20 -0000	1.1527
@@ -642,7 +642,7 @@
 Patch530: linux-2.6-silence-fbcon-logo.patch
 Patch570: linux-2.6-selinux-mprotect-checks.patch
 Patch580: linux-2.6-sparc-selinux-mprotect-checks.patch
-
+Patch590: linux-2.6.29.1-sparc-regression.patch
 Patch600: linux-2.6-defaults-alsa-hda-beep-off.patch
 Patch601: alsa-rewrite-hw_ptr-updaters.patch
 Patch602: alsa-pcm-always-reset-invalid-position.patch
@@ -1133,7 +1133,7 @@
 #
 
 ApplyPatch linux-2.6.29-sparc-IOC_TYPECHECK.patch
-
+ApplyPatch linux-2.6.29.1-sparc-regression.patch
 #
 # Exec shield
 #
@@ -1902,6 +1902,9 @@
 # and build.
 
 %changelog
+* Thu Apr 09 2009 Dennis Gilmore <dennis at ausil.us> 2.6.29.1-59
+- add patch to fix regression on sparc
+
 * Thu Apr 09 2009 Adam Jackson <ajax at redhat.com>
 - drm-intel-gen3-fb-hack.patch: Allow up to 4k framebuffers on 9[14]5.  3D
   will be broken if you do that, but at least dualhead will be less broken.




More information about the fedora-extras-commits mailing list