rpms/kernel/devel linux-2.6-ppc32-ucmpdi2.patch, 1.2, 1.3 kernel.spec, 1.311, 1.312

Dave Jones (davej) fedora-extras-commits at redhat.com
Fri Dec 14 05:51:34 UTC 2007


Author: davej

Update of /cvs/pkgs/rpms/kernel/devel
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv19984

Modified Files:
	kernel.spec 
Added Files:
	linux-2.6-ppc32-ucmpdi2.patch 
Log Message:
add back ucmpdi2 patch, it's needed for nouveau

linux-2.6-ppc32-ucmpdi2.patch:

Index: linux-2.6-ppc32-ucmpdi2.patch
===================================================================
RCS file: linux-2.6-ppc32-ucmpdi2.patch
diff -N linux-2.6-ppc32-ucmpdi2.patch
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ linux-2.6-ppc32-ucmpdi2.patch	14 Dec 2007 05:51:14 -0000	1.3
@@ -0,0 +1,49 @@
+Without this diff, nouveau doesn't build on ppc32.
+It works around a gcc bug. (PR #25724 / #21237)
+
+Hopefully we can just drop this when we move to gcc4.3
+
+--- linux-2.6.19.ppc/arch/powerpc/kernel/misc_32.S~	2006-11-29 21:57:37.000000000 +0000
++++ linux-2.6.19.ppc/arch/powerpc/kernel/misc_32.S	2006-12-17 12:19:48.000000000 +0000
+@@ -728,6 +728,27 @@ _GLOBAL(__lshrdi3)
+ 	or	r4,r4,r7	# LSW |= t2
+ 	blr
+ 
++/*
++ * __ucmpdi2: 64-bit comparison
++ *
++ * R3/R4 has 64 bit value A
++ * R5/R6 has 64 bit value B
++ * result in R3: 0 for A < B
++ *		 1 for A == B
++ *		 2 for A > B
++ */
++_GLOBAL(__ucmpdi2)
++	cmplw	r7,r3,r5	# compare high words
++	li	r3,0
++	blt	r7,2f		# a < b ... return 0
++	bgt	r7,1f		# a > b ... return 2
++	cmplw	r6,r4,r6	# compare low words
++	blt	r6,2f		# a < b ... return 0
++	li	r3,1
++	ble	r6,2f		# a = b ... return 1
++1:	li	r3,2
++2:	blr
++
+ _GLOBAL(abs)
+ 	srawi	r4,r3,31
+ 	xor	r3,r3,r4
+--- linux-2.6.19.ppc/arch/powerpc/kernel/ppc_ksyms.c~	2006-12-15 17:19:56.000000000 +0000
++++ linux-2.6.19.ppc/arch/powerpc/kernel/ppc_ksyms.c	2006-12-17 12:16:54.000000000 +0000
+@@ -161,9 +161,11 @@ EXPORT_SYMBOL(to_tm);
+ long long __ashrdi3(long long, int);
+ long long __ashldi3(long long, int);
+ long long __lshrdi3(long long, int);
++int __ucmpdi2(uint64_t, uint64_t);
+ EXPORT_SYMBOL(__ashrdi3);
+ EXPORT_SYMBOL(__ashldi3);
+ EXPORT_SYMBOL(__lshrdi3);
++EXPORT_SYMBOL(__ucmpdi2);
+ #endif
+ 
+ EXPORT_SYMBOL(memcpy);


Index: kernel.spec
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/devel/kernel.spec,v
retrieving revision 1.311
retrieving revision 1.312
diff -u -r1.311 -r1.312
--- kernel.spec	13 Dec 2007 23:00:07 -0000	1.311
+++ kernel.spec	14 Dec 2007 05:51:14 -0000	1.312
@@ -641,6 +641,7 @@
 Patch1800: linux-2.6-agp-mm.patch
 # nouveau + drm fixes
 Patch1802: nouveau-drm.patch
+Patch1803: linux-2.6-ppc32-ucmpdi2.patch
 
 # Work around E1000 corrupt EEPROM problem.
 Patch2000: linux-2.6-e1000-corrupt-eeprom-checksum.patch
@@ -1153,6 +1154,7 @@
 ApplyPatch linux-2.6-drm-mm.patch
 # Nouveau DRM + drm fixes
 ApplyPatch nouveau-drm.patch
+ApplyPatch linux-2.6-ppc32-ucmpdi2.patch
 
 # ---------- below all scheduled for 2.6.24 -----------------
 




More information about the fedora-extras-commits mailing list