Messages in this thread | | | Date | Sun, 1 May 2016 19:49:02 -0700 | From | "Paul E. McKenney" <> | Subject | Fw: [rcu:rcu/next 41/41] arch/x86/kvm/vmx.c:11022:2: error: function '_r_a_p__v' is initialized like a variable |
| |
Like this sort of compiler bug, maybe. Compiles just fine on my laptop.
Thoughts?
Thanx, Paul
----- Forwarded message from kbuild test robot <fengguang.wu@intel.com> -----
Date: Mon, 2 May 2016 10:12:38 +0800 From: kbuild test robot <fengguang.wu@intel.com> Cc: kbuild-all@01.org, "Paul E. McKenney" <paulmck@linux.vnet.ibm.com> Subject: [rcu:rcu/next 41/41] arch/x86/kvm/vmx.c:11022:2: error: function '_r_a_p__v' is initialized like a variable
tree: https://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu.git rcu/next head: 16d7afcaa5301f8243a7dda82be4d59e84ac6ee1 commit: 16d7afcaa5301f8243a7dda82be4d59e84ac6ee1 [41/41] rcu: No ordering for rcu_assign_pointer() of NULL config: x86_64-rhel (attached as .config) compiler: gcc-4.9 (Debian 4.9.3-14) 4.9.3 reproduce: git checkout 16d7afcaa5301f8243a7dda82be4d59e84ac6ee1 # save the attached .config to linux build tree make ARCH=x86_64
Note: the rcu/rcu/next HEAD 16d7afcaa5301f8243a7dda82be4d59e84ac6ee1 builds fine. It only hurts bisectibility.
All error/warnings (new ones prefixed by >>):
arch/x86/kvm/vmx.c: In function 'vmx_init': >> arch/x86/kvm/vmx.c:11022:2: error: function '_r_a_p__v' is initialized like a variable rcu_assign_pointer(crash_vmclear_loaded_vmcss, ^ In file included from include/linux/rbtree.h:34:0, from include/linux/mm_types.h:9, from arch/x86/kvm/irq.h:25, from arch/x86/kvm/vmx.c:19: >> include/linux/rcupdate.h:657:45: warning: the comparison will always evaluate as 'false' for the address of '_r_a_p__v' will never be NULL [-Waddress] if (__builtin_constant_p(v) && (_r_a_p__v) == NULL) \ ^ >> arch/x86/kvm/vmx.c:11022:2: note: in expansion of macro 'rcu_assign_pointer' rcu_assign_pointer(crash_vmclear_loaded_vmcss, ^ >> include/linux/rcupdate.h:655:12: error: nested function '_r_a_p__v' declared but never defined typeof(v) _r_a_p__v = (v); \ ^ >> arch/x86/kvm/vmx.c:11022:2: note: in expansion of macro 'rcu_assign_pointer' rcu_assign_pointer(crash_vmclear_loaded_vmcss, ^ In file included from arch/x86/kvm/vmx.c:25:0: arch/x86/kvm/vmx.c: At top level: >> include/linux/module.h:130:6: error: 'init_module' aliased to undefined symbol 'vmx_init' int init_module(void) __attribute__((alias(#initfn))); ^ >> arch/x86/kvm/vmx.c:11039:1: note: in expansion of macro 'module_init' module_init(vmx_init) ^
vim +/_r_a_p__v +11022 arch/x86/kvm/vmx.c
34a1cd60 arch/x86/kvm/vmx.c Tiejun Chen 2014-10-28 11016 int r = kvm_init(&vmx_x86_ops, sizeof(struct vcpu_vmx), 0ee75bea arch/x86/kvm/vmx.c Avi Kivity 2010-04-28 11017 __alignof__(struct vcpu_vmx), THIS_MODULE); fdef3ad1 drivers/kvm/vmx.c He, Qing 2007-04-30 11018 if (r) 34a1cd60 arch/x86/kvm/vmx.c Tiejun Chen 2014-10-28 11019 return r; 25c5f225 arch/x86/kvm/vmx.c Sheng Yang 2008-03-28 11020 2965faa5 arch/x86/kvm/vmx.c Dave Young 2015-09-09 11021 #ifdef CONFIG_KEXEC_CORE 8f536b76 arch/x86/kvm/vmx.c Zhang Yanfei 2012-12-06 @11022 rcu_assign_pointer(crash_vmclear_loaded_vmcss, 8f536b76 arch/x86/kvm/vmx.c Zhang Yanfei 2012-12-06 11023 crash_vmclear_local_loaded_vmcss); 8f536b76 arch/x86/kvm/vmx.c Zhang Yanfei 2012-12-06 11024 #endif 8f536b76 arch/x86/kvm/vmx.c Zhang Yanfei 2012-12-06 11025 fdef3ad1 drivers/kvm/vmx.c He, Qing 2007-04-30 11026 return 0; 6aa8b732 drivers/kvm/vmx.c Avi Kivity 2006-12-10 11027 } 6aa8b732 drivers/kvm/vmx.c Avi Kivity 2006-12-10 11028 6aa8b732 drivers/kvm/vmx.c Avi Kivity 2006-12-10 11029 static void __exit vmx_exit(void) 6aa8b732 drivers/kvm/vmx.c Avi Kivity 2006-12-10 11030 { 2965faa5 arch/x86/kvm/vmx.c Dave Young 2015-09-09 11031 #ifdef CONFIG_KEXEC_CORE 3b63a43f arch/x86/kvm/vmx.c Monam Agarwal 2014-03-22 11032 RCU_INIT_POINTER(crash_vmclear_loaded_vmcss, NULL); 8f536b76 arch/x86/kvm/vmx.c Zhang Yanfei 2012-12-06 11033 synchronize_rcu(); 8f536b76 arch/x86/kvm/vmx.c Zhang Yanfei 2012-12-06 11034 #endif 8f536b76 arch/x86/kvm/vmx.c Zhang Yanfei 2012-12-06 11035 cb498ea2 drivers/kvm/vmx.c Zhang Xiantao 2007-11-14 11036 kvm_exit(); 6aa8b732 drivers/kvm/vmx.c Avi Kivity 2006-12-10 11037 } 6aa8b732 drivers/kvm/vmx.c Avi Kivity 2006-12-10 11038 6aa8b732 drivers/kvm/vmx.c Avi Kivity 2006-12-10 @11039 module_init(vmx_init) 6aa8b732 drivers/kvm/vmx.c Avi Kivity 2006-12-10 11040 module_exit(vmx_exit)
:::::: The code at line 11022 was first introduced by commit :::::: 8f536b7697a0d40ef6b5fd04cf2c04953d5ca06f KVM: VMX: provide the vmclear function and a bitmap to support VMCLEAR in kdump
:::::: TO: Zhang Yanfei <zhangyanfei@cn.fujitsu.com> :::::: CC: Gleb Natapov <gleb@redhat.com>
--- 0-DAY kernel test infrastructure Open Source Technology Center https://lists.01.org/pipermail/kbuild-all Intel Corporation
----- End forwarded message -----
| |