![]() | |||||||||||||
Messages in this thread |
Dnia Tuesday 30 of March 2004 19:44, Len Brown napisał: > Luming has already taking a swing at this patch here: > http://bugzilla.kernel.org/show_bug.cgi?id=2391 Wouldn't be better to just remove #ifdef CONFIG_X86_CMPXCHG around __cmpxchg() and cmpxchg macro in ./include/asm-i386/system.h so cmpxchg() would be there always even on i386 but leave CONFIG_X86_CMPXCHG macro if anyone want's to check for it in some code. No code duplication and you get what you need. It would be something like: #ifdef CONFIG_X86_CMPXCHG #define __HAVE_ARCH_CMPXCHG 1 #endif static inline unsigned long __cmpxchg(volatile void *ptr, unsigned long old, unsigned long new, int size) { } #define cmpxchg(ptr,o,n)\ ((__typeof__(*(ptr)))__cmpxchg((ptr),(unsigned long)(o),\ (unsigned long)(n),sizeof(*(ptr)))) instead of current: #ifdef CONFIG_X86_CMPXCHG #define __HAVE_ARCH_CMPXCHG 1 static inline unsigned long __cmpxchg(volatile void *ptr, unsigned long old, unsigned long new, int size) { } #define cmpxchg(ptr,o,n)\ ((__typeof__(*(ptr)))__cmpxchg((ptr),(unsigned long)(o),\ (unsigned long)(n),sizeof(*(ptr)))) #else /* Compiling for a 386 proper. Is it worth implementing via cli/sti? */ #endif ? > thanks, > -Len -- Arkadiusz Miśkiewicz CS at FoE, Wroclaw University of Technology arekm.pld-linux.org, 1024/3DB19BBD, JID: arekm.jabber.org, PLD/Linux - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/ | ||||||||||||
| Last update: 2005-03-22 13:02 [from the cache] ©2003-2008 | |||||||||||||