Subject: linux-next: build failure after merge of the rcu tree

From: Stephen Rothwell <[email-masked]>
Date: Mon, 2 May 2016 14:37:36 +1000

Hi Paul,

After merging the rcu tree, today's linux-next build (x86_64 allmodconfig)
failed like this:

arch/x86/kvm/vmx.c: In function 'vmx_init':
arch/x86/kvm/vmx.c:11026: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:11026: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:11026:2: note: in expansion of macro 'rcu_assign_pointer'
  rcu_assign_pointer(crash_vmclear_loaded_vmcss,
  ^

Caused by commit

  16d7afcaa530 ("rcu: No ordering for rcu_assign_pointer() of NULL")

I have reverted that commit for today.

-- 
Cheers,
Stephen Rothwell