• Vasily Gorbik's avatar
    s390/atomic: circumvent gcc 10 build regression · f0cbd3b8
    Vasily Gorbik authored
    Circumvent the following gcc 10 allyesconfig build regression:
    
      CC      drivers/leds/trigger/ledtrig-cpu.o
    In file included from ./arch/s390/include/asm/bitops.h:39,
                     from ./include/linux/bitops.h:29,
                     from ./include/linux/kernel.h:12,
                     from drivers/leds/trigger/ledtrig-cpu.c:18:
    ./arch/s390/include/asm/atomic_ops.h: In function 'ledtrig_cpu':
    ./arch/s390/include/asm/atomic_ops.h:46:2: warning: 'asm' operand 1 probably does not match constraints
       46 |  asm volatile(       \
          |  ^~~
    ./arch/s390/include/asm/atomic_ops.h:53:2: note: in expansion of macro '__ATOMIC_CONST_OP'
       53 |  __ATOMIC_CONST_OP(op_name, op_type, op_string, "\n")  \
          |  ^~~~~~~~~~~~~~~~~
    ./arch/s390/include/asm/atomic_ops.h:56:1: note: in expansion of macro '__ATOMIC_CONST_OPS'
       56 | __ATOMIC_CONST_OPS(__atomic_add_const, int, "asi")
          | ^~~~~~~~~~~~~~~~~~
    ./arch/s390/include/asm/atomic_ops.h:46:2: error: impossible constraint in 'asm'
       46 |  asm volatile(       \
          |  ^~~
    ./arch/s390/include/asm/atomic_ops.h:53:2: note: in expansion of macro '__ATOMIC_CONST_OP'
       53 |  __ATOMIC_CONST_OP(op_name, op_type, op_string, "\n")  \
          |  ^~~~~~~~~~~~~~~~~
    ./arch/s390/include/asm/atomic_ops.h:56:1: note: in expansion of macro '__ATOMIC_CONST_OPS'
       56 | __ATOMIC_CONST_OPS(__atomic_add_const, int, "asi")
          | ^~~~~~~~~~~~~~~~~~
    scripts/Makefile.build:280: recipe for target 'drivers/leds/trigger/ledtrig-cpu.o' failed
    
    By swapping conditions as proposed here:
    https://gcc.gnu.org/pipermail/gcc-patches/2020-July/549318.htmlSuggested-by: default avatarIlya Leoshkevich <iii@linux.ibm.com>
    Signed-off-by: default avatarVasily Gorbik <gor@linux.ibm.com>
    Signed-off-by: default avatarHeiko Carstens <hca@linux.ibm.com>
    f0cbd3b8
atomic.h 3.62 KB