Re: Re: [PATCH tip/core/rcu 02/18] rcu: Move rcu_report_exp_rnp() to allow consolidation

From: kbuild test robot
Date: Wed Oct 07 2015 - 08:12:03 EST


Hi Peter,

[auto build test WARNING on v4.3-rc4 -- if it's inappropriate base, please ignore]

config: i386-randconfig-x007-201540 (attached as .config)
reproduce:
# save the attached .config to linux build tree
make ARCH=i386

All warnings (new ones prefixed by >>):

kernel/rcu/tree.c: In function '_raw_spin_lock_irqsave_rcu_node':
kernel/rcu/tree.c:1488:2: error: too many arguments to function '_raw_spin_lock_irqsave'
_raw_spin_lock_irqsave(&rnp->lock, flags);
^
In file included from include/linux/spinlock.h:280:0,
from kernel/rcu/tree.c:33:
include/linux/spinlock_api_smp.h:34:26: note: declared here
unsigned long __lockfunc _raw_spin_lock_irqsave(raw_spinlock_t *lock)
^
kernel/rcu/tree.c: At top level:
kernel/rcu/tree.c:1493:34: error: expected declaration specifiers or '...' before '(' token
_raw_spin_lock_irqsave_rcu_node((rnp), &(flags))
^
kernel/rcu/tree.c:1493:41: error: expected declaration specifiers or '...' before '&' token
_raw_spin_lock_irqsave_rcu_node((rnp), &(flags))
^
In file included from include/uapi/linux/stddef.h:1:0,
from include/linux/stddef.h:4,
from include/uapi/linux/posix_types.h:4,
from include/uapi/linux/types.h:13,
from include/linux/types.h:5,
from kernel/rcu/tree.c:30:
kernel/rcu/tree.c: In function 'note_gp_changes':
kernel/rcu/tree.c:1807:7: error: implicit declaration of function 'raw_spin_trylock_rcu_node' [-Werror=implicit-function-declaration]
!raw_spin_trylock_rcu_node(rnp)) { /* irqs already off, so later. */
^
include/linux/compiler.h:147:28: note: in definition of macro '__trace_if'
if (__builtin_constant_p((cond)) ? !!(cond) : \
^
>> kernel/rcu/tree.c:1804:2: note: in expansion of macro 'if'
if ((rdp->gpnum == READ_ONCE(rnp->gpnum) &&
^
cc1: some warnings being treated as errors

vim +/if +1804 kernel/rcu/tree.c

5cd37193 kernel/rcu/tree.c Paul E. McKenney 2014-12-13 1788 rdp->rcu_qs_ctr_snap = __this_cpu_read(rcu_qs_ctr);
6eaef633 kernel/rcutree.c Paul E. McKenney 2013-03-19 1789 rdp->qs_pending = !!(rnp->qsmask & rdp->grpmask);
6eaef633 kernel/rcutree.c Paul E. McKenney 2013-03-19 1790 zero_cpu_stall_ticks(rdp);
7d0ae808 kernel/rcu/tree.c Paul E. McKenney 2015-03-03 1791 WRITE_ONCE(rdp->gpwrap, false);
6eaef633 kernel/rcutree.c Paul E. McKenney 2013-03-19 1792 }
48a7639c kernel/rcu/tree.c Paul E. McKenney 2014-03-11 1793 return ret;
6eaef633 kernel/rcutree.c Paul E. McKenney 2013-03-19 1794 }
6eaef633 kernel/rcutree.c Paul E. McKenney 2013-03-19 1795
d34ea322 kernel/rcutree.c Paul E. McKenney 2013-03-19 1796 static void note_gp_changes(struct rcu_state *rsp, struct rcu_data *rdp)
6eaef633 kernel/rcutree.c Paul E. McKenney 2013-03-19 1797 {
6eaef633 kernel/rcutree.c Paul E. McKenney 2013-03-19 1798 unsigned long flags;
48a7639c kernel/rcu/tree.c Paul E. McKenney 2014-03-11 1799 bool needwake;
6eaef633 kernel/rcutree.c Paul E. McKenney 2013-03-19 1800 struct rcu_node *rnp;
6eaef633 kernel/rcutree.c Paul E. McKenney 2013-03-19 1801
6eaef633 kernel/rcutree.c Paul E. McKenney 2013-03-19 1802 local_irq_save(flags);
6eaef633 kernel/rcutree.c Paul E. McKenney 2013-03-19 1803 rnp = rdp->mynode;
7d0ae808 kernel/rcu/tree.c Paul E. McKenney 2015-03-03 @1804 if ((rdp->gpnum == READ_ONCE(rnp->gpnum) &&
7d0ae808 kernel/rcu/tree.c Paul E. McKenney 2015-03-03 1805 rdp->completed == READ_ONCE(rnp->completed) &&
7d0ae808 kernel/rcu/tree.c Paul E. McKenney 2015-03-03 1806 !unlikely(READ_ONCE(rdp->gpwrap))) || /* w/out lock. */
3538015d kernel/rcu/tree.c Peter Zijlstra 2015-10-07 1807 !raw_spin_trylock_rcu_node(rnp)) { /* irqs already off, so later. */
6eaef633 kernel/rcutree.c Paul E. McKenney 2013-03-19 1808 local_irq_restore(flags);
6eaef633 kernel/rcutree.c Paul E. McKenney 2013-03-19 1809 return;
6eaef633 kernel/rcutree.c Paul E. McKenney 2013-03-19 1810 }
48a7639c kernel/rcu/tree.c Paul E. McKenney 2014-03-11 1811 needwake = __note_gp_changes(rsp, rnp, rdp);
6eaef633 kernel/rcutree.c Paul E. McKenney 2013-03-19 1812 raw_spin_unlock_irqrestore(&rnp->lock, flags);

:::::: The code at line 1804 was first introduced by commit
:::::: 7d0ae8086b828311250c6afdf800b568ac9bd693 rcu: Convert ACCESS_ONCE() to READ_ONCE() and WRITE_ONCE()

:::::: TO: Paul E. McKenney <paulmck@xxxxxxxxxxxxxxxxxx>
:::::: CC: Paul E. McKenney <paulmck@xxxxxxxxxxxxxxxxxx>

---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all Intel Corporation

Attachment: .config.gz
Description: Binary data