lkml.org 
[lkml]   [2004]   [Mar]   [30]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    SubjectRe: [ACPI] Re: Linux 2.4.26-rc1 (cmpxchg vs 80386 build)
    From
    Date
    I can make sure that ACPI checks implicitly or explicitly
    that CMPXCHG is available -- but I can't make sure that
    some other random part of the kernel which may not have
    been written yet does. So I'd rather that they not build,
    like ACPI didn't.

    BTW. CMPXCHG (486 and above) doesn't seem to be in CPUID,
    CMPXCHG8B is, but that starts with Pentium and above.
    Maybe simpler to rely on the implicit "check" that we
    did in previous releases... Earliest known ACPI
    implementation as on Pentium-1.

    cheers,
    -Len

    On Tue, 2004-03-30 at 13:30, Arkadiusz Miskiewicz wrote:
    > 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

    -
    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 14:02    [W:0.024 / U:0.528 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site