lkml.org 
[lkml]   [2007]   [Mar]   [30]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    From
    Subject[patch 17/37] SPARC: Fix sparc builds with gcc-4.2.x
    -stable review patch.  If anyone has any objections, please let us know.

    ------------------
    From: Mikael Pettersson <mikpe@it.uu.se>

    [SPARC]: sparc64 gcc-4.2.0 20070317 -Werror failure

    Compiling 2.6.21-rc5 with gcc-4.2.0 20070317 (prerelease)
    for sparc64 fails as follows:

    gcc -Wp,-MD,arch/sparc64/kernel/.time.o.d -nostdinc -isystem /home/mikpe/pkgs/linux-sparc64/gcc-4.2.0/lib/gcc/sparc64-unknown-linux-gnu/4.2.0/include -D__KERNEL__ -Iinclude -include include/linux/autoconf.h -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -Os -m64 -pipe -mno-fpu -mcpu=ultrasparc -mcmodel=medlow -ffixed-g4 -ffixed-g5 -fcall-used-g7 -Wno-sign-compare -Wa,--undeclared-regs -fomit-frame-pointer -fno-stack-protector -Wdeclaration-after-statement -Wno-pointer-sign -Werror -D"KBUILD_STR(s)=#s" -D"KBUILD_BASENAME=KBUILD_STR(time)" -D"KBUILD_MODNAME=KBUILD_STR(time)" -c -o arch/sparc64/kernel/time.o arch/sparc64/kernel/time.c
    cc1: warnings being treated as errors
    arch/sparc64/kernel/time.c: In function 'kick_start_clock':
    arch/sparc64/kernel/time.c:559: warning: overflow in implicit constant conversion
    make[1]: *** [arch/sparc64/kernel/time.o] Error 1
    make: *** [arch/sparc64/kernel] Error 2

    gcc gets unhappy when the MSTK_SET macro's u8 __val variable
    is updated with &= ~0xff (MSTK_YEAR_MASK). Making the constant
    unsigned fixes the problem.

    [ I fixed up the sparc32 side as well -DaveM ]

    Signed-off-by: Mikael Pettersson <mikpe@it.uu.se>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

    ---
    include/asm-sparc/mostek.h | 2 +-
    include/asm-sparc64/mostek.h | 2 +-
    2 files changed, 2 insertions(+), 2 deletions(-)

    --- a/include/asm-sparc/mostek.h
    +++ b/include/asm-sparc/mostek.h
    @@ -87,7 +87,7 @@ extern void __iomem *mstk48t02_regs;
    #define MSTK_DOW_MASK 0x07
    #define MSTK_DOM_MASK 0x3f
    #define MSTK_MONTH_MASK 0x1f
    -#define MSTK_YEAR_MASK 0xff
    +#define MSTK_YEAR_MASK 0xffU

    /* Binary coded decimal conversion macros. */
    #define MSTK_REGVAL_TO_DECIMAL(x) (((x) & 0x0F) + 0x0A * ((x) >> 0x04))
    --- a/include/asm-sparc64/mostek.h
    +++ b/include/asm-sparc64/mostek.h
    @@ -89,7 +89,7 @@ extern void __iomem *mstk48t02_regs;
    #define MSTK_DOW_MASK 0x07
    #define MSTK_DOM_MASK 0x3f
    #define MSTK_MONTH_MASK 0x1f
    -#define MSTK_YEAR_MASK 0xff
    +#define MSTK_YEAR_MASK 0xffU

    /* Binary coded decimal conversion macros. */
    #define MSTK_REGVAL_TO_DECIMAL(x) (((x) & 0x0F) + 0x0A * ((x) >> 0x04))
    --
    -
    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: 2007-03-30 23:23    [W:4.146 / U:0.052 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site