Re: [PATCH 09/20] m68k: use the new byteorder headers - Kernel

This is a discussion on Re: [PATCH 09/20] m68k: use the new byteorder headers - Kernel ; On Mon, 20 Oct 2008, Harvey Harrison wrote: > Signed-off-by: Harvey Harrison > --- > The final prerequisite patches to prevent breakage of headers-install and > usage of the swabb.h functions have gone into mainline, please move your arch > ...

+ Reply to Thread
Results 1 to 3 of 3

Thread: Re: [PATCH 09/20] m68k: use the new byteorder headers

  1. Re: [PATCH 09/20] m68k: use the new byteorder headers

    On Mon, 20 Oct 2008, Harvey Harrison wrote:
    > Signed-off-by: Harvey Harrison
    > ---
    > The final prerequisite patches to prevent breakage of headers-install and
    > usage of the swabb.h functions have gone into mainline, please move your arch
    > to the new header.
    >
    > b8e465f4945bc0e9f324e3bbe15f5180a8e9a6fe byteorder: add new headers for make headers-install
    > acf0108a84edae22b99655eb2f6f6c9f7ec4d449 byteorder: use generic C version for value byteswapping
    > 1d8cca44b6a244b7e378546d719041819049a0f9 byteorder: provide swabb.h generically in asm/byteorder.h
    > 1a651a00e20fd4997f0b91258f6f95b7d96edcd9 byteorder: remove direct includes of linux/byteorder/swab[b].h
    >
    > include/asm-m68k/byteorder.h | 16 +++++-----------
    > 1 files changed, 5 insertions(+), 11 deletions(-)
    >
    > diff --git a/include/asm-m68k/byteorder.h b/include/asm-m68k/byteorder.h
    > index 81d420b..b354acd 100644
    > --- a/include/asm-m68k/byteorder.h
    > +++ b/include/asm-m68k/byteorder.h
    > @@ -4,22 +4,16 @@
    > #include
    > #include
    >
    > -#ifdef __GNUC__
    > +#define __BIG_ENDIAN
    > +#define __SWAB_64_THRU_32__
    >
    > -static __inline__ __attribute_const__ __u32 ___arch__swab32(__u32 val)
    > +static inline __attribute_const__ __u32 __arch_swab32(__u32 val)
    > {
    > __asm__("rolw #8,%0; swap %0; rolw #8,%0" : "=d" (val) : "0" (val));
    > return val;
    > }
    > -#define __arch__swab32(x) ___arch__swab32(x)
    > +#define __arch_swab32 __arch_swab32
    >
    > -#endif
    > -
    > -#if defined(__GNUC__) && !defined(__STRICT_ANSI__) || defined(__KERNEL__)
    > -# define __BYTEORDER_HAS_U64__
    > -# define __SWAB_64_THRU_32__
    > -#endif
    > -
    > -#include
    > +#include
    >
    > #endif /* _M68K_BYTEORDER_H */
    > --
    > 1.6.0.2


    This patch breaks rcutorture:

    | CC [M] kernel/rcutorture.o
    | In file included from kernel/rcutorture.c:45:
    | include/linux/byteorder/swabb.h:82:1: warning: "__swahw32" redefined
    | In file included from include/linux/byteorder.h:5,
    | from include2/asm/byteorder.h:17,
    | from include/linux/kernel.h:20,
    | from kernel/rcutorture.c:26:
    | include/linux/swab.h:128:1: warning: this is the location of the previous definition
    | In file included from kernel/rcutorture.c:45:
    | include/linux/byteorder/swabb.h:86:1: warning: "__swahb32" redefined
    | In file included from include/linux/byteorder.h:5,
    | from include2/asm/byteorder.h:17,
    | from include/linux/kernel.h:20,
    | from kernel/rcutorture.c:26:
    | include/linux/swab.h:139:1: warning: this is the location of the previous definition
    | In file included from kernel/rcutorture.c:46:
    | include/linux/byteorder/swabb.h:98: error: conflicting types for '__swahw32p'
    | include/linux/swab.h:190: error: previous definition of '__swahw32p' was here
    | include/linux/byteorder/swabb.h:103: error: redefinition of '__swahw32s'
    | include/linux/swab.h:258: error: previous definition of '__swahw32s' was here
    | include/linux/byteorder/swabb.h:113: error: conflicting types for '__swahb32p'
    | include/linux/swab.h:205: error: previous definition of '__swahb32p' was here
    | include/linux/byteorder/swabb.h:118: error: redefinition of '__swahb32s'
    | include/linux/swab.h:273: error: previous definition of '__swahb32s' was here
    | make[3]: *** [kernel/rcutorture.o] Error 1
    | make[2]: *** [kernel/rcutorture.o] Error 2

    Gr{oetje,eeting}s,

    Geert

    --
    Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org

    In personal conversations with technical people, I call myself a hacker. But
    when I'm talking to journalists I just say "programmer" or something like that.
    -- Linus Torvalds
    --
    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/

  2. Re: [PATCH 09/20] m68k: use the new byteorder headers

    On Tue, 2008-10-21 at 20:05 +0200, Geert Uytterhoeven wrote:
    > On Mon, 20 Oct 2008, Harvey Harrison wrote:
    > > Signed-off-by: Harvey Harrison
    > > ---
    > > The final prerequisite patches to prevent breakage of headers-install and
    > > usage of the swabb.h functions have gone into mainline, please move your arch
    > > to the new header.
    > >
    > > b8e465f4945bc0e9f324e3bbe15f5180a8e9a6fe byteorder: add new headers for make headers-install
    > > acf0108a84edae22b99655eb2f6f6c9f7ec4d449 byteorder: use generic C version for value byteswapping
    > > 1d8cca44b6a244b7e378546d719041819049a0f9 byteorder: provide swabb.h generically in asm/byteorder.h
    > > 1a651a00e20fd4997f0b91258f6f95b7d96edcd9 byteorder: remove direct includes of linux/byteorder/swab[b].h
    > >


    A hunk got lost, see mainline:


    > commit f07767fd0f95c385108fa4c456a9cb216a424fec
    > Author: Harvey Harrison
    > Date: Mon Oct 20 10:23:38 2008 -0700
    >
    > byteorder: remove direct includes of linux/byteorder/swab[b].h
    >
    > A consolidated implementation will provide this generically through
    > asm/byteorder, remove direct includes to avoid breakage when the
    > changeover to the new implementation occurs.
    >
    > This hunk was lost from commit 1d8cca44b6a244b7e378546d719041819049a0f9
    > ("byteorder: provide swabb.h generically in asm/byteorder.h")
    >
    > Signed-off-by: Harvey Harrison
    > Signed-off-by: Linus Torvalds


    Cheers,

    Harvey

    --
    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/

  3. Re: [PATCH 09/20] m68k: use the new byteorder headers

    On Tue, 21 Oct 2008, Harvey Harrison wrote:
    > On Tue, 2008-10-21 at 20:05 +0200, Geert Uytterhoeven wrote:
    > > On Mon, 20 Oct 2008, Harvey Harrison wrote:
    > > > Signed-off-by: Harvey Harrison
    > > > ---
    > > > The final prerequisite patches to prevent breakage of headers-install and
    > > > usage of the swabb.h functions have gone into mainline, please move your arch
    > > > to the new header.
    > > >
    > > > b8e465f4945bc0e9f324e3bbe15f5180a8e9a6fe byteorder: add new headers for make headers-install
    > > > acf0108a84edae22b99655eb2f6f6c9f7ec4d449 byteorder: use generic C version for value byteswapping
    > > > 1d8cca44b6a244b7e378546d719041819049a0f9 byteorder: provide swabb.h generically in asm/byteorder.h
    > > > 1a651a00e20fd4997f0b91258f6f95b7d96edcd9 byteorder: remove direct includes of linux/byteorder/swab[b].h
    > > >

    >
    > A hunk got lost, see mainline:
    >
    > > commit f07767fd0f95c385108fa4c456a9cb216a424fec
    > > Author: Harvey Harrison
    > > Date: Mon Oct 20 10:23:38 2008 -0700
    > >
    > > byteorder: remove direct includes of linux/byteorder/swab[b].h
    > >
    > > A consolidated implementation will provide this generically through
    > > asm/byteorder, remove direct includes to avoid breakage when the
    > > changeover to the new implementation occurs.
    > >
    > > This hunk was lost from commit 1d8cca44b6a244b7e378546d719041819049a0f9
    > > ("byteorder: provide swabb.h generically in asm/byteorder.h")
    > >
    > > Signed-off-by: Harvey Harrison
    > > Signed-off-by: Linus Torvalds


    Ah, my tree didn't have that one yet.
    After upgrading, kernel/rcutorture.c compiles again.
    I'll let you know if more breakage pops up (I expect not, as I built
    with `make -k' ;-).

    Gr{oetje,eeting}s,

    Geert

    --
    Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org

    In personal conversations with technical people, I call myself a hacker. But
    when I'm talking to journalists I just say "programmer" or something like that.
    -- Linus Torvalds
    --
    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/

+ Reply to Thread