arch/s390/include/asm/atomic_ops.h:56:45: error: invalid operand for inline asm constraint 'i'

From: kernel test robot
Date: Wed Nov 11 2020 - 00:29:26 EST


Hi Vasily,

FYI, the error/warning still remains.

tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: eccc876724927ff3b9ff91f36f7b6b159e948f0c
commit: f0cbd3b83ed47803df941865f720934c69abb803 s390/atomic: circumvent gcc 10 build regression
date: 3 months ago
config: s390-randconfig-r013-20201110 (attached as .config)
compiler: clang version 12.0.0 (https://github.com/llvm/llvm-project 4d81c8adb6ed9840257f6cb6b93f60856d422a15)
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# install s390 cross compiling tool for clang build
# apt-get install binutils-s390x-linux-gnu
# https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=f0cbd3b83ed47803df941865f720934c69abb803
git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
git fetch --no-tags linus master
git checkout f0cbd3b83ed47803df941865f720934c69abb803
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=s390

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@xxxxxxxxx>

All errors (new ones prefixed by >>):

In file included from drivers/tty/tty_buffer.c:8:
In file included from include/linux/tty.h:5:
In file included from include/linux/fs.h:6:
In file included from include/linux/wait_bit.h:8:
In file included from include/linux/wait.h:7:
In file included from include/linux/list.h:9:
In file included from include/linux/kernel.h:12:
In file included from include/linux/bitops.h:29:
In file included from arch/s390/include/asm/bitops.h:39:
>> arch/s390/include/asm/atomic_ops.h:56:45: error: invalid operand for inline asm constraint 'i'
__ATOMIC_CONST_OPS(__atomic_add_const, int, "asi")
^
1 error generated.

vim +/i +56 arch/s390/include/asm/atomic_ops.h

126b30c3cb476c Martin Schwidefsky 2016-11-11 51
eb3b7b848fb3dd Martin Schwidefsky 2017-03-24 52 #define __ATOMIC_CONST_OPS(op_name, op_type, op_string) \
eb3b7b848fb3dd Martin Schwidefsky 2017-03-24 53 __ATOMIC_CONST_OP(op_name, op_type, op_string, "\n") \
eb3b7b848fb3dd Martin Schwidefsky 2017-03-24 54 __ATOMIC_CONST_OP(op_name##_barrier, op_type, op_string, "bcr 14,0\n")
eb3b7b848fb3dd Martin Schwidefsky 2017-03-24 55
eb3b7b848fb3dd Martin Schwidefsky 2017-03-24 @56 __ATOMIC_CONST_OPS(__atomic_add_const, int, "asi")
eb3b7b848fb3dd Martin Schwidefsky 2017-03-24 57 __ATOMIC_CONST_OPS(__atomic64_add_const, long, "agsi")
eb3b7b848fb3dd Martin Schwidefsky 2017-03-24 58

:::::: The code at line 56 was first introduced by commit
:::::: eb3b7b848fb3dd00f7a57d633d4ae4d194aa7865 s390/rwlock: introduce rwlock wait queueing

:::::: TO: Martin Schwidefsky <schwidefsky@xxxxxxxxxx>
:::::: CC: Martin Schwidefsky <schwidefsky@xxxxxxxxxx>

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@xxxxxxxxxxxx

Attachment: .config.gz
Description: application/gzip