lkml.org 
[lkml]   [2008]   [Jul]   [30]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH 1/1] cpumask: Change cpumask_of_cpu to use cpumask_of_cpu_map - build breakage
    Tim Bird wrote:
    > Mike Travis wrote:
    >> * The previous "lvalue replacement for cpumask_of_cpu()" was not usable
    >> in certain situations and generally added unneeded complexity. So
    >> this patch replaces the cpumask_of_cpu_ptr* macros with a generic
    >> cpumask_of_cpu_map[]. The only config option is whether this is a
    >> static map, or allocated at boot up time:
    > I'm having trouble compiling 2.6.27-rc1 for ARM OMAP.
    >
    > I'm using gcc 3.4.4 (specifically, one used for
    > cross-compiling for ARM)
    >
    > The file that fails to compile is kernel/time/tick-common.c
    >
    > Here is the compiler message:
    > arm-sony-linux-gcc -Wp,-MD,kernel/time/.tick-common.o.d -nostdinc -isystem /a/home/usr/local/arm-sony-linux/devel/bin/../lib/gcc/arm-sony-linux/3.4.4/include -D__KERNEL__ -Iinclude -Iinclude2
    > -I/a/home/tbird/work/console-translations/linux/include -I/a/home/tbird/work/console-translations/linux/arch/arm/include -include include/linux/autoconf.h -mlittle-endian
    > -I/a/home/tbird/work/console-translations/linux/kernel/time -Ikernel/time -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -Werror-implicit-function-declaration -Os
    > -marm -fno-omit-frame-pointer -mapcs -mno-sched-prolog -mapcs-32 -mno-thumb-interwork -D__LINUX_ARM_ARCH__=5 -march=armv5te -mtune=arm9tdmi -malignment-traps -msoft-float -Uarm -fno-omit-frame-pointer
    > -fno-optimize-sibling-calls -Wdeclaration-after-statement -D"KBUILD_STR(s)=#s" -D"KBUILD_BASENAME=KBUILD_STR(tick_common)" -D"KBUILD_MODNAME=KBUILD_STR(tick_common)" -c -o kernel/time/tick-common.o
    > /a/home/tbird/work/console-translations/linux/kernel/time/tick-common.c
    > /a/home/tbird/work/console-translations/linux/kernel/time/tick-common.c: In function `tick_check_new_device':
    > /a/home/tbird/work/console-translations/linux/kernel/time/tick-common.c:210: error: invalid lvalue in unary `&'
    > /a/home/tbird/work/console-translations/linux/kernel/time/tick-common.c:223: error: invalid lvalue in unary `&'
    > /a/home/tbird/work/console-translations/linux/kernel/time/tick-common.c:255: error: invalid lvalue in unary `&'
    > make[3]: *** [kernel/time/tick-common.o] Error 1
    > make[2]: *** [kernel/time] Error 2
    > make[1]: *** [kernel] Error 2
    > make: *** [sub-make] Error 2
    >
    > This seems to be related to commit 0bc3cc03fa6e in Linus' 2.6 tree.
    >
    > Any assistance you can provide would be appreciated.
    >
    > Thanks,
    > -- Tim
    >
    > =============================
    > Tim Bird
    > Architecture Group Chair, CE Linux Forum
    > Senior Staff Engineer, Sony Corporation of America
    > =============================

    There was a later update that fixed this. You should have the following
    in include/linux/cpumask.h particularly line 291.


    e56b3bc7 (Linus Torvalds 2008-07-28 11:32:33 -0700 285) /*
    e56b3bc7 (Linus Torvalds 2008-07-28 11:32:33 -0700 286) * In cases where we take the address of the cpumask immediately,
    e56b3bc7 (Linus Torvalds 2008-07-28 11:32:33 -0700 287) * gcc optimizes it out (it's a constant) and there's no huge stack
    e56b3bc7 (Linus Torvalds 2008-07-28 11:32:33 -0700 288) * variable created:
    e56b3bc7 (Linus Torvalds 2008-07-28 11:32:33 -0700 289) */
    1eddd657 (Stephen Rothwell 2008-07-29 16:07:37 +1000 290) #define cpumask_of_cpu(cpu) (*get_cpu_mask(cpu))
    ^1da177e (Linus Torvalds 2005-04-16 15:20:36 -0700 291)

    If 1eddd657 is there, would you send the config?

    Dave - I just re-verified that allyesconfig builds with lot's of warnings but no errors.

    Thanks,
    Mike


    \
     
     \ /
      Last update: 2008-07-30 23:27    [W:0.023 / U:31.376 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site