Hi David,
First bad commit (maybe != root cause):
tree:
git://git.kraxel.org/linux drm-qemu-next
head: 9fe2f897499f129f9f0ef4c51a11512dcf2ab7d0
commit: 9fe2f897499f129f9f0ef4c51a11512dcf2ab7d0 [1/1] virtio: fix build for configs
without dma-bufs
config: mips-randconfig-r016-20200818 (attached as .config)
compiler: clang version 12.0.0 (
https://github.com/llvm/llvm-project
b34b1e38381fa4d1b1d9751a6b5233b68e734cfe)
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 mips cross compiling tool for clang build
# apt-get install binutils-mips-linux-gnu
git checkout 9fe2f897499f129f9f0ef4c51a11512dcf2ab7d0
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=mips
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>):
arch/mips/include/asm/atomic.h:52:1: warning: converting the result of
'<<' to a boolean always evaluates to true
arch/mips/include/asm/atomic.h:40:9: note: expanded from macro 'ATOMIC_OPS'
return cmpxchg(&v->counter, o, n); ^
arch/mips/include/asm/cmpxchg.h:204:7: note: expanded from macro 'cmpxchg'
if (!__SYNC_loongson3_war) ^
arch/mips/include/asm/sync.h:147:34: note: expanded from macro
'__SYNC_loongson3_war'
# define __SYNC_loongson3_war (1 << 31)
^
In file included from arch/mips/kernel/asm-offsets.c:12:
In file included from include/linux/compat.h:10:
In file included from include/linux/time.h:73:
In file included from include/linux/time32.h:13:
In file included from include/linux/timex.h:65:
In file included from arch/mips/include/asm/timex.h:19:
In file included from arch/mips/include/asm/cpu-type.h:12:
In file included from include/linux/smp.h:13:
In file included from include/linux/cpumask.h:13:
In file included from include/linux/atomic.h:7:
arch/mips/include/asm/atomic.h:52:1: warning: converting the result of
'<<' to a boolean always evaluates to true
arch/mips/include/asm/atomic.h:45:9: note: expanded from macro 'ATOMIC_OPS'
return xchg(&v->counter, n); ^
arch/mips/include/asm/cmpxchg.h:102:7: note: expanded from macro 'xchg'
if (!__SYNC_loongson3_war) ^
arch/mips/include/asm/sync.h:147:34: note: expanded from macro
'__SYNC_loongson3_war'
# define __SYNC_loongson3_war (1 << 31)
^
In file included from arch/mips/kernel/asm-offsets.c:12:
In file included from include/linux/compat.h:10:
In file included from include/linux/time.h:73:
In file included from include/linux/time32.h:13:
In file included from include/linux/timex.h:65:
In file included from arch/mips/include/asm/timex.h:19:
In file included from arch/mips/include/asm/cpu-type.h:12:
In file included from include/linux/smp.h:13:
In file included from include/linux/cpumask.h:13:
In file included from include/linux/atomic.h:7:
arch/mips/include/asm/atomic.h:257:1: warning: converting the result of
'<<' to a boolean always evaluates to true
ATOMIC_SIP_OP(atomic, int, subu, ll, sc)
^
arch/mips/include/asm/atomic.h:251:7: note: expanded from macro
'ATOMIC_SIP_OP'
if (!__SYNC_loongson3_war) ^
arch/mips/include/asm/sync.h:147:34: note: expanded from macro
'__SYNC_loongson3_war'
# define __SYNC_loongson3_war (1 << 31)
^
In file included from arch/mips/kernel/asm-offsets.c:12:
In file included from include/linux/compat.h:10:
In file included from include/linux/time.h:73:
In file included from include/linux/time32.h:13:
In file included from include/linux/timex.h:65:
In file included from arch/mips/include/asm/timex.h:19:
In file included from arch/mips/include/asm/cpu-type.h:12:
In file included from include/linux/smp.h:13:
In file included from include/linux/cpumask.h:13:
In file included from include/linux/atomic.h:7:
arch/mips/include/asm/atomic.h:261:1: warning: converting the result of
'<<' to a boolean always evaluates to true
ATOMIC_SIP_OP(atomic64, s64, dsubu, lld, scd)
^
arch/mips/include/asm/atomic.h:251:7: note: expanded from macro
'ATOMIC_SIP_OP'
if (!__SYNC_loongson3_war) ^
arch/mips/include/asm/sync.h:147:34: note: expanded from macro
'__SYNC_loongson3_war'
# define __SYNC_loongson3_war (1 << 31)
^
In file included from arch/mips/kernel/asm-offsets.c:12:
In file included from include/linux/compat.h:10:
In file included from include/linux/time.h:73:
In file included from include/linux/time32.h:13:
In file included from include/linux/timex.h:65:
In file included from arch/mips/include/asm/timex.h:19:
In file included from arch/mips/include/asm/cpu-type.h:12:
In file included from include/linux/smp.h:15:
In file included from include/linux/smp_types.h:5:
include/linux/llist.h:222:9: warning: converting the result of '<<' to a
boolean always evaluates to true
return xchg(&head->first, NULL);
^
arch/mips/include/asm/cmpxchg.h:102:7: note: expanded from macro 'xchg'
if (!__SYNC_loongson3_war) ^
arch/mips/include/asm/sync.h:147:34: note: expanded from macro
'__SYNC_loongson3_war'
# define __SYNC_loongson3_war (1 << 31)
^
In file included from arch/mips/kernel/asm-offsets.c:12:
In file included from include/linux/compat.h:14:
In file included from include/linux/sem.h:5:
In file included from include/uapi/linux/sem.h:5:
In file included from include/linux/ipc.h:5:
In file included from include/linux/spinlock.h:59:
In file included from include/linux/lockdep.h:27:
include/linux/debug_locks.h:17:9: warning: converting the result of '<<'
to a boolean always evaluates to true
return xchg(&debug_locks, 0);
^
arch/mips/include/asm/cmpxchg.h:102:7: note: expanded from macro 'xchg'
if (!__SYNC_loongson3_war) ^
arch/mips/include/asm/sync.h:147:34: note: expanded from macro
'__SYNC_loongson3_war'
# define __SYNC_loongson3_war (1 << 31)
^
In file included from arch/mips/kernel/asm-offsets.c:12:
In file included from include/linux/compat.h:17:
In file included from include/linux/fs.h:15:
In file included from include/linux/radix-tree.h:18:
In file included from include/linux/xarray.h:14:
In file included from include/linux/gfp.h:9:
> include/linux/topology.h:119:9: error: implicit declaration of
function 'cpu_logical_map'
return cpu_to_node(raw_smp_processor_id());
^
arch/mips/include/asm/mach-loongson64/topology.h:7:27: note: expanded from macro
'cpu_to_node'
#define cpu_to_node(cpu) (cpu_logical_map(cpu) >> 2)
^
In file included from arch/mips/kernel/asm-offsets.c:12:
In file included from include/linux/compat.h:17:
In file included from include/linux/fs.h:15:
In file included from include/linux/radix-tree.h:18:
In file included from include/linux/xarray.h:14:
In file included from include/linux/gfp.h:9:
include/linux/topology.h:176:9: error: implicit declaration of function
'cpu_logical_map'
return cpu_to_node(cpu);
^
arch/mips/include/asm/mach-loongson64/topology.h:7:27: note: expanded from macro
'cpu_to_node'
#define cpu_to_node(cpu) (cpu_logical_map(cpu) >> 2)
^
In file included from arch/mips/kernel/asm-offsets.c:12:
In file included from include/linux/compat.h:17:
In file included from include/linux/fs.h:15:
In file included from include/linux/radix-tree.h:18:
In file included from include/linux/xarray.h:14:
In file included from include/linux/gfp.h:9:
include/linux/topology.h:210:25: error: implicit declaration of function
'cpu_logical_map'
return cpumask_of_node(cpu_to_node(cpu));
^
arch/mips/include/asm/mach-loongson64/topology.h:7:27: note: expanded from macro
'cpu_to_node'
#define cpu_to_node(cpu) (cpu_logical_map(cpu) >> 2)
^
In file included from arch/mips/kernel/asm-offsets.c:15:
In file included from include/linux/mm.h:33:
In file included from include/linux/pgtable.h:6:
arch/mips/include/asm/pgtable.h:210:3: warning: converting the result of
'<<' to a boolean always evaluates to true
cmpxchg64(&buddy->pte, 0, _PAGE_GLOBAL);
^
arch/mips/include/asm/cmpxchg.h:220:2: note: expanded from macro 'cmpxchg64'
cmpxchg((ptr), (o), (n)); ^
arch/mips/include/asm/cmpxchg.h:194:7: note: expanded from macro 'cmpxchg'
if (!__SYNC_loongson3_war) ^
arch/mips/include/asm/sync.h:147:34: note: expanded from macro
'__SYNC_loongson3_war'
# define __SYNC_loongson3_war (1 << 31)
^
In file included from arch/mips/kernel/asm-offsets.c:15:
In file included from include/linux/mm.h:33:
In file included from include/linux/pgtable.h:6:
arch/mips/include/asm/pgtable.h:210:3: warning: converting the result of
'<<' to a boolean always evaluates to true
arch/mips/include/asm/cmpxchg.h:220:2: note: expanded from macro 'cmpxchg64'
cmpxchg((ptr), (o), (n)); ^
arch/mips/include/asm/cmpxchg.h:204:7: note: expanded from macro 'cmpxchg'
if (!__SYNC_loongson3_war) ^
arch/mips/include/asm/sync.h:147:34: note: expanded from macro
'__SYNC_loongson3_war'
# define __SYNC_loongson3_war (1 << 31)
^
In file included from arch/mips/kernel/asm-offsets.c:17:
In file included from include/linux/suspend.h:5:
In file included from include/linux/swap.h:9:
In file included from include/linux/memcontrol.h:22:
In file included from include/linux/writeback.h:14:
In file included from include/linux/blk-cgroup.h:23:
In file included from include/linux/blkdev.h:8:
In file included from include/linux/genhd.h:35:
In file included from include/linux/device.h:16:
In file included from include/linux/energy_model.h:10:
> include/linux/sched/topology.h:254:9: error: implicit declaration
of function 'cpu_logical_map'
return cpu_to_node(task_cpu(p));
^
arch/mips/include/asm/mach-loongson64/topology.h:7:27: note: expanded from macro
'cpu_to_node'
#define cpu_to_node(cpu) (cpu_logical_map(cpu) >> 2)
^
In file included from arch/mips/kernel/asm-offsets.c:24:
include/linux/kvm_host.h:332:9: warning: converting the result of '<<' to
a boolean always evaluates to true
return cmpxchg(&vcpu->mode, IN_GUEST_MODE, EXITING_GUEST_MODE);
^
arch/mips/include/asm/cmpxchg.h:194:7: note: expanded from macro 'cmpxchg'
if (!__SYNC_loongson3_war) ^
arch/mips/include/asm/sync.h:147:34: note: expanded from macro
'__SYNC_loongson3_war'
# define __SYNC_loongson3_war (1 << 31)
^
In file included from arch/mips/kernel/asm-offsets.c:24:
include/linux/kvm_host.h:332:9: warning: converting the result of '<<' to
a boolean always evaluates to true
arch/mips/include/asm/cmpxchg.h:204:7: note: expanded from macro 'cmpxchg'
if (!__SYNC_loongson3_war) ^
arch/mips/include/asm/sync.h:147:34: note: expanded from macro
'__SYNC_loongson3_war'
# define __SYNC_loongson3_war (1 << 31)
^
arch/mips/kernel/asm-offsets.c:26:6: warning: no previous prototype for function
'output_ptreg_defines'
void output_ptreg_defines(void)
^
arch/mips/kernel/asm-offsets.c:26:1: note: declare 'static' if the function is
not intended to be used outside of this translation unit
void output_ptreg_defines(void)
^
static
arch/mips/kernel/asm-offsets.c:78:6: warning: no previous prototype for function
'output_task_defines'
void output_task_defines(void)
^
arch/mips/kernel/asm-offsets.c:78:1: note: declare 'static' if the function is
not intended to be used outside of this translation unit
void output_task_defines(void)
^
static
arch/mips/kernel/asm-offsets.c:93:6: warning: no previous prototype for function
'output_thread_info_defines'
void output_thread_info_defines(void)
^
arch/mips/kernel/asm-offsets.c:93:1: note: declare 'static' if the function is
not intended to be used outside of this translation unit
void output_thread_info_defines(void)
^
static
arch/mips/kernel/asm-offsets.c:110:6: warning: no previous prototype for function
'output_thread_defines'
void output_thread_defines(void)
^
arch/mips/kernel/asm-offsets.c:110:1: note: declare 'static' if the function is
not intended to be used outside of this translation unit
void output_thread_defines(void)
^
static
arch/mips/kernel/asm-offsets.c:138:6: warning: no previous prototype for function
'output_thread_fpu_defines'
void output_thread_fpu_defines(void)
^
arch/mips/kernel/asm-offsets.c:138:1: note: declare 'static' if the function is
not intended to be used outside of this translation unit
void output_thread_fpu_defines(void)
^
static
arch/mips/kernel/asm-offsets.c:181:6: warning: no previous prototype for function
'output_mm_defines'
void output_mm_defines(void)
^
arch/mips/kernel/asm-offsets.c:181:1: note: declare 'static' if the function is
not intended to be used outside of this translation unit
void output_mm_defines(void)
^
static
arch/mips/kernel/asm-offsets.c:242:6: warning: no previous prototype for function
'output_sc_defines'
void output_sc_defines(void)
^
arch/mips/kernel/asm-offsets.c:242:1: note: declare 'static' if the function is
not intended to be used outside of this translation unit
void output_sc_defines(void)
^
static
arch/mips/kernel/asm-offsets.c:255:6: warning: no previous prototype for function
'output_signal_defined'
void output_signal_defined(void)
^
arch/mips/kernel/asm-offsets.c:255:1: note: declare 'static' if the function is
not intended to be used outside of this translation unit
void output_signal_defined(void)
^
static
arch/mips/kernel/asm-offsets.c:334:6: warning: no previous prototype for function
'output_pm_defines'
void output_pm_defines(void)
^
arch/mips/kernel/asm-offsets.c:334:1: note: declare 'static' if the function is
not intended to be used outside of this translation unit
void output_pm_defines(void)
^
static
arch/mips/kernel/asm-offsets.c:348:6: warning: no previous prototype for function
'output_kvm_defines'
void output_kvm_defines(void)
^
arch/mips/kernel/asm-offsets.c:348:1: note: declare 'static' if the function is
not intended to be used outside of this translation unit
void output_kvm_defines(void)
^
static
24 warnings and 4 errors generated.
Makefile arch include kernel scripts source [scripts/Makefile.build:117:
arch/mips/kernel/asm-offsets.s] Error 1
Target 'missing-syscalls' not remade because of errors.
Makefile arch include kernel scripts source [arch/mips/Makefile:401: archprepare] Error
2
Target 'prepare' not remade because of errors.
make: Makefile arch include kernel scripts source [Makefile:185: __sub-make] Error 2
make: Target 'prepare' not remade because of errors.
git remote add kraxel
git://git.kraxel.org/linux
git fetch --no-tags kraxel drm-qemu-next
git checkout 9fe2f897499f129f9f0ef4c51a11512dcf2ab7d0
vim +/cpu_logical_map +119 include/linux/topology.h
7281201922a0063 Lee Schermerhorn 2010-05-26 114
7281201922a0063 Lee Schermerhorn 2010-05-26 115 /* Returns the number of the current
Node. */
7281201922a0063 Lee Schermerhorn 2010-05-26 116 #ifndef numa_node_id
7281201922a0063 Lee Schermerhorn 2010-05-26 117 static inline int numa_node_id(void)
7281201922a0063 Lee Schermerhorn 2010-05-26 118 {
7281201922a0063 Lee Schermerhorn 2010-05-26 @119 return
cpu_to_node(raw_smp_processor_id());
7281201922a0063 Lee Schermerhorn 2010-05-26 120 }
7281201922a0063 Lee Schermerhorn 2010-05-26 121 #endif
7281201922a0063 Lee Schermerhorn 2010-05-26 122
:::::: The code at line 119 was first introduced by commit
:::::: 7281201922a0063fa60804ce39c277fc98142a47 numa: add generic percpu var
numa_node_id() implementation
:::::: TO: Lee Schermerhorn <lee.schermerhorn(a)hp.com>
:::::: CC: Linus Torvalds <torvalds(a)linux-foundation.org>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org