lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [day] [month] [year] [list]
Date:	Mon, 11 Jul 2016 15:58:32 +0800
From:	kbuild test robot <fengguang.wu@...el.com>
To:	unlisted-recipients:; (no To-header on input)
Cc:	kbuild-all@...org, linux-kernel@...r.kernel.org,
	tipbuild@...or.com, Thomas Gleixner <tglx@...utronix.de>,
	Sebastian Andrzej Siewior <bigeasy@...utronix.de>
Subject: [tip:WIP.hotplug 59/66] include/linux/rcutree.h:42:20: error:
 redefinition of 'rcu_virt_note_context_switch'

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git WIP.hotplug
head:   0e5de16e9e45b4d853a31761fd74ff56998169a1
commit: 5b7fb17c566567d3470f3651dbd6a18b4875f222 [59/66] rcu: Convert rcutree to hotplug state machine
config: xtensa-allmodconfig (attached as .config)
compiler: xtensa-linux-gcc (GCC) 4.9.0
reproduce:
        wget https://git.kernel.org/cgit/linux/kernel/git/wfg/lkp-tests.git/plain/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        git checkout 5b7fb17c566567d3470f3651dbd6a18b4875f222
        # save the attached .config to linux build tree
        make.cross ARCH=xtensa 

All errors (new ones prefixed by >>):

   In file included from kernel/cpu.c:26:0:
>> include/linux/rcutree.h:42:20: error: redefinition of 'rcu_virt_note_context_switch'
    static inline void rcu_virt_note_context_switch(int cpu)
                       ^
   In file included from include/linux/rcupdate.h:439:0,
                    from include/linux/rculist.h:10,
                    from include/linux/dcache.h:6,
                    from include/linux/fs.h:7,
                    from include/linux/proc_fs.h:8,
                    from kernel/cpu.c:6:
   include/linux/rcutiny.h:100:20: note: previous definition of 'rcu_virt_note_context_switch' was here
    static inline void rcu_virt_note_context_switch(int cpu)
                       ^
   In file included from kernel/cpu.c:26:0:
>> include/linux/rcutree.h:69:20: error: redefinition of 'synchronize_rcu_bh_expedited'
    static inline void synchronize_rcu_bh_expedited(void)
                       ^
   In file included from include/linux/rcupdate.h:439:0,
                    from include/linux/rculist.h:10,
                    from include/linux/dcache.h:6,
                    from include/linux/fs.h:7,
                    from include/linux/proc_fs.h:8,
                    from kernel/cpu.c:6:
   include/linux/rcutiny.h:75:20: note: previous definition of 'synchronize_rcu_bh_expedited' was here
    static inline void synchronize_rcu_bh_expedited(void)
                       ^

vim +/rcu_virt_note_context_switch +42 include/linux/rcutree.h

64db4cff Paul E. McKenney 2008-12-18  36  
29ce8310 Gleb Natapov     2011-05-04  37  /*
29ce8310 Gleb Natapov     2011-05-04  38   * Note a virtualization-based context switch.  This is simply a
29ce8310 Gleb Natapov     2011-05-04  39   * wrapper around rcu_note_context_switch(), which allows TINY_RCU
46a5d164 Paul E. McKenney 2015-10-07  40   * to save a few bytes. The caller must have disabled interrupts.
29ce8310 Gleb Natapov     2011-05-04  41   */
29ce8310 Gleb Natapov     2011-05-04 @42  static inline void rcu_virt_note_context_switch(int cpu)
29ce8310 Gleb Natapov     2011-05-04  43  {
38200cf2 Paul E. McKenney 2014-10-21  44  	rcu_note_context_switch();
29ce8310 Gleb Natapov     2011-05-04  45  }
29ce8310 Gleb Natapov     2011-05-04  46  
584dc4ce Teodora Baluta   2013-11-11  47  void synchronize_rcu_bh(void);
584dc4ce Teodora Baluta   2013-11-11  48  void synchronize_sched_expedited(void);
584dc4ce Teodora Baluta   2013-11-11  49  void synchronize_rcu_expedited(void);
03b042bf Paul E. McKenney 2009-06-25  50  
b6a4ae76 Boqun Feng       2015-07-29  51  void kfree_call_rcu(struct rcu_head *head, rcu_callback_t func);
486e2593 Paul E. McKenney 2012-01-06  52  
236fefaf Paul E. McKenney 2012-01-31  53  /**
236fefaf Paul E. McKenney 2012-01-31  54   * synchronize_rcu_bh_expedited - Brute-force RCU-bh grace period
236fefaf Paul E. McKenney 2012-01-31  55   *
236fefaf Paul E. McKenney 2012-01-31  56   * Wait for an RCU-bh grace period to elapse, but use a "big hammer"
236fefaf Paul E. McKenney 2012-01-31  57   * approach to force the grace period to end quickly.  This consumes
236fefaf Paul E. McKenney 2012-01-31  58   * significant time on all CPUs and is unfriendly to real-time workloads,
236fefaf Paul E. McKenney 2012-01-31  59   * so is thus not recommended for any sort of common-case code.  In fact,
236fefaf Paul E. McKenney 2012-01-31  60   * if you are using synchronize_rcu_bh_expedited() in a loop, please
236fefaf Paul E. McKenney 2012-01-31  61   * restructure your code to batch your updates, and then use a single
236fefaf Paul E. McKenney 2012-01-31  62   * synchronize_rcu_bh() instead.
236fefaf Paul E. McKenney 2012-01-31  63   *
236fefaf Paul E. McKenney 2012-01-31  64   * Note that it is illegal to call this function while holding any lock
236fefaf Paul E. McKenney 2012-01-31  65   * that is acquired by a CPU-hotplug notifier.  And yes, it is also illegal
236fefaf Paul E. McKenney 2012-01-31  66   * to call this function from a CPU-hotplug notifier.  Failing to observe
236fefaf Paul E. McKenney 2012-01-31  67   * these restriction will result in deadlock.
236fefaf Paul E. McKenney 2012-01-31  68   */
03b042bf Paul E. McKenney 2009-06-25 @69  static inline void synchronize_rcu_bh_expedited(void)
64db4cff Paul E. McKenney 2008-12-18  70  {
03b042bf Paul E. McKenney 2009-06-25  71  	synchronize_sched_expedited();
64db4cff Paul E. McKenney 2008-12-18  72  }

:::::: The code at line 42 was first introduced by commit
:::::: 29ce831000081dd757d3116bf774aafffc4b6b20 rcu: provide rcu_virt_note_context_switch() function.

:::::: TO: Gleb Natapov <gleb@...hat.com>
:::::: CC: Paul E. McKenney <paulmck@...ux.vnet.ibm.com>

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

Download attachment ".config.gz" of type "application/octet-stream" (6447 bytes)

Powered by blists - more mailing lists