From: "Paul E. McKenney" <paulmck@linux.vnet.ibm.com>
To: hch@infradead.org
Cc: falakreyaz@gmail.com, nab@linux-iscsi.org,
target-devel@vger.kernel.org, linux-kernel@vger.kernel.org
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
Date: Sun, 1 May 2016 19:49:02 -0700 [thread overview]
Message-ID: <20160502024902.GR3686@linux.vnet.ibm.com> (raw)
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 -----
reply other threads:[~2016-05-02 2:49 UTC|newest]
Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20160502024902.GR3686@linux.vnet.ibm.com \
--to=paulmck@linux.vnet.ibm.com \
--cc=falakreyaz@gmail.com \
--cc=hch@infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=nab@linux-iscsi.org \
--cc=target-devel@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.