SOURCES: kernel-gcc4.patch - i386 _proxy_pda fix for gcc42.

pluto pluto at pld-linux.org
Thu Feb 1 11:40:50 CET 2007


Author: pluto                        Date: Thu Feb  1 10:40:50 2007 GMT
Module: SOURCES                       Tag: HEAD
---- Log message:
- i386 _proxy_pda fix for gcc42.

---- Files affected:
SOURCES:
   kernel-gcc4.patch (1.2 -> 1.3) 

---- Diffs:

================================================================
Index: SOURCES/kernel-gcc4.patch
diff -u SOURCES/kernel-gcc4.patch:1.2 SOURCES/kernel-gcc4.patch:1.3
--- SOURCES/kernel-gcc4.patch:1.2	Wed Jan 31 00:14:19 2007
+++ SOURCES/kernel-gcc4.patch	Thu Feb  1 11:40:45 2007
@@ -1,5 +1,5 @@
---- a/include/asm-x86_64/pda.h	2006-11-29 22:57:37.000000000 +0100
-+++ b/include/asm-x86_64/pda.h	2007-01-24 00:42:01.207003500 +0100
+--- a/include/asm-i386/pda.h	2006-11-29 22:57:37.000000000 +0100
++++ b/include/asm-i386/pda.h	2007-01-24 00:42:01.207003500 +0100
 @@ -55,22 +55,22 @@
  	if (0) { T__ tmp__; tmp__ = (val); }	/* type checking */ \
  	switch (sizeof(_proxy_pda.field)) {	\
@@ -75,3 +75,69 @@
  	    : "dIr" (bit), "i" (pda_offset(field)) : "memory");	\
  	old__;							\
  })
+--- a/include/asm-i386/pda.h	2007-02-01 11:25:09.262405000 +0100
++++ b/include/asm-i386/pda.h	2007-02-01 11:34:55.163021500 +0100
+@@ -39,22 +39,22 @@
+ 		if (0) { T__ tmp__; tmp__ = (val); }			\
+ 		switch (sizeof(_proxy_pda.field)) {			\
+ 		case 1:							\
+-			asm(op "b %1,%%gs:%c2"				\
+-			    : "+m" (_proxy_pda.field)			\
++			asm volatile(op "b %0,%%gs:%c1":		\
+ 			    :"ri" ((T__)val),				\
+-			     "i"(pda_offset(field)));			\
++			     "i"(pda_offset(field))			\
++			    :"memory");					\
+ 			break;						\
+ 		case 2:							\
+-			asm(op "w %1,%%gs:%c2"				\
+-			    : "+m" (_proxy_pda.field)			\
++			asm volatile(op "w %0,%%gs:%c1":		\
+ 			    :"ri" ((T__)val),				\
+-			     "i"(pda_offset(field)));			\
++			     "i"(pda_offset(field))			\
++			    :"memory");					\
+ 			break;						\
+ 		case 4:							\
+-			asm(op "l %1,%%gs:%c2"				\
+-			    : "+m" (_proxy_pda.field)			\
++			asm volatile(op "l %0,%%gs:%c1":		\
+ 			    :"ri" ((T__)val),				\
+-			     "i"(pda_offset(field)));			\
++			     "i"(pda_offset(field))			\
++			    :"memory");					\
+ 			break;						\
+ 		default: __bad_pda_field();				\
+ 		}							\
+@@ -65,22 +65,22 @@
+ 		typeof(_proxy_pda.field) ret__;				\
+ 		switch (sizeof(_proxy_pda.field)) {			\
+ 		case 1:							\
+-			asm(op "b %%gs:%c1,%0"				\
++			asm volatile(op "b %%gs:%c1,%0"			\
+ 			    : "=r" (ret__)				\
+-			    : "i" (pda_offset(field)),			\
+-			      "m" (_proxy_pda.field));			\
++			    : "i" (pda_offset(field))			\
++			    : "memory");				\
+ 			break;						\
+ 		case 2:							\
+-			asm(op "w %%gs:%c1,%0"				\
++			asm volatile(op "w %%gs:%c1,%0"			\
+ 			    : "=r" (ret__)				\
+-			    : "i" (pda_offset(field)),			\
+-			      "m" (_proxy_pda.field));			\
++			    : "i" (pda_offset(field))			\
++	 		    : "memory");				\
+ 			break;						\
+ 		case 4:							\
+-			asm(op "l %%gs:%c1,%0"				\
++			asm volatile(op "l %%gs:%c1,%0"			\
+ 			    : "=r" (ret__)				\
+-			    : "i" (pda_offset(field)),			\
+-			      "m" (_proxy_pda.field));			\
++			    : "i" (pda_offset(field))			\
++			    : "memory");				\
+ 			break;						\
+ 		default: __bad_pda_field();				\
+ 		}							\
================================================================

---- CVS-web:
    http://cvs.pld-linux.org/SOURCES/kernel-gcc4.patch?r1=1.2&r2=1.3&f=u



More information about the pld-cvs-commit mailing list