On Sat, 8 Aug 2020 08:03:38 +0800 kernel test robot wrote: > tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master > head: 30185b69a2d533c4ba6ca926b8390ce7de495e29 > commit: 295bcca84916cb5079140a89fccb472bb8d1f6e2 linux/bits.h: add compile time sanity check of GENMASK inputs > date: 4 months ago > config: s390-randconfig-r001-20200808 (attached as .config) > compiler: s390-linux-gcc (GCC) 9.3.0 > 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 > git checkout 295bcca84916cb5079140a89fccb472bb8d1f6e2 > # save the attached .config to linux build tree > COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=s390 > > If you fix the issue, kindly add following tag as appropriate > Reported-by: kernel test robot > > All errors (new ones prefixed by >>): > > drivers/mux/mmio.c: In function 'mux_mmio_probe': > drivers/mux/mmio.c:76:20: error: storage size of 'field' isn't known > 76 | struct reg_field field; > | ^~~~~ > In file included from include/linux/bits.h:23, > from include/linux/bitops.h:5, > from drivers/mux/mmio.c:8: > >> include/linux/bits.h:25:21: error: first argument to '__builtin_choose_expr' not a constant I assume the first error is the cause of the second? struct reg_field is only defined if CONFIG_REGMAP, and that is unset in this .config. Perhaps drivers/mux/mmio.c should depend on CONFIG_REGMAP? (cc Peter).