[PATCH 00/10] __rcu annotations, first draft

Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
From: Arnd Bergmann
Date: Wednesday, February 24, 2010 - 1:03 pm

On Tuesday 23 February 2010, Paul E. McKenney wrote:

I've implemented the second option now, and this seems to work alright.
In order to test this out, I've annotated all rcu users in the kernel
directory. One observation is that many members of task_struct are
using RCU inconsistently. I'm not sure whether these should be considered
bugs or false positives though. If we get a lot of false positives or
people are generally unhappy about the annotations, they are not worth
it, but if we find a few actual bugs, I guess it would be good to
have this.

Examples of pointers that I did not annotate because most of the
places accessing them do not use RCU are task->sighand, task->nsproxy,
and task->real_parent.

Sorry for hijacking the discussion on your patch, but I assume that
the same people interested in the lockdep diagnostics are also
interested in the static annotations for RCU.

	Arnd

Arnd Bergmann (10):
  rcu: define __rcu address space modifier for sparse
  rcu: annotated list rcu code
  cgroups: __rcu annotations
  credentials: rcu annotation
  perf_event: __rcu annotations
  audit: __rcu annotations
  module: __rcu annotations
  pid: __rcu annotations
  notifiers: __rcu annotations
  scheduler: __rcu annotations

 include/linux/cgroup.h     |    6 +-
 include/linux/compiler.h   |    2 +
 include/linux/cred.h       |    4 +-
 include/linux/fdtable.h    |    2 +-
 include/linux/init_task.h  |    6 +-
 include/linux/module.h     |    4 +-
 include/linux/notifier.h   |   10 ++--
 include/linux/perf_event.h |   10 ++--
 include/linux/pid.h        |    9 ++-
 include/linux/rculist.h    |  152 ++++++++++++++++++++++++++++++++------------
 include/linux/rcupdate.h   |   46 ++++++++++++--
 include/linux/sched.h      |   14 ++--
 kernel/audit.c             |    4 +-
 kernel/audit.h             |    6 +-
 kernel/audit_tree.c        |   14 ++--
 kernel/auditfilter.c       |   28 ++++----
 kernel/auditsc.c           |    8 +-
 kernel/cgroup.c            |   63 ++++++++++---------
 kernel/cpuset.c            |    2 +-
 kernel/cred.c              |   50 ++++++++-------
 kernel/exit.c              |   12 ++--
 kernel/fork.c              |    6 +-
 kernel/module.c            |   20 ++++--
 kernel/notifier.c          |   12 ++--
 kernel/perf_event.c        |   52 ++++++++--------
 kernel/pid.c               |    8 +-
 kernel/sched.c             |   31 +++++----
 27 files changed, 352 insertions(+), 229 deletions(-)

--
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
[PATCH tip/core/rcu 14/21] rcu: fix citation of Mathieu's ..., Paul E. McKenney, (Mon Feb 22, 6:04 pm)
[PATCH tip/core/rcu 18/21] rcu: Convert to raw_spinlocks, Paul E. McKenney, (Mon Feb 22, 6:05 pm)
[PATCH tip/core/rcu 21/21] rcu: add RCU_CPU_STALL_VERBOSE ..., Paul E. McKenney, (Mon Feb 22, 6:05 pm)
Re: [PATCH tip/core/rcu 0/21] v6 add lockdep-based diagnos ..., Mathieu Desnoyers, (Tue Feb 23, 6:15 am)
Re: [PATCH tip/core/rcu 0/21] v6 add lockdep-based diagnos ..., Paul E. McKenney, (Tue Feb 23, 11:01 am)
[PATCH 00/10] __rcu annotations, first draft, Arnd Bergmann, (Wed Feb 24, 1:03 pm)
[PATCH 02/10] rcu: annotated list rcu code, Arnd Bergmann, (Wed Feb 24, 1:03 pm)
[PATCH 03/10] cgroups: __rcu annotations, Arnd Bergmann, (Wed Feb 24, 1:03 pm)
[PATCH 05/10] perf_event: __rcu annotations, Arnd Bergmann, (Wed Feb 24, 1:04 pm)
[PATCH 06/10] audit: __rcu annotations, Arnd Bergmann, (Wed Feb 24, 1:04 pm)
[PATCH 07/10] module: __rcu annotations, Arnd Bergmann, (Wed Feb 24, 1:04 pm)
[PATCH 08/10] pid: __rcu annotations, Arnd Bergmann, (Wed Feb 24, 1:04 pm)
[PATCH 09/10] notifiers: __rcu annotations, Arnd Bergmann, (Wed Feb 24, 1:04 pm)
Re: [PATCH 01/10] rcu: define __rcu address space modifier ..., Mathieu Desnoyers, (Wed Feb 24, 1:12 pm)
Re: [PATCH 07/10] module: __rcu annotations, Alexey Dobriyan, (Wed Feb 24, 1:13 pm)
Re: [PATCH 02/10] rcu: annotated list rcu code, Mathieu Desnoyers, (Wed Feb 24, 1:15 pm)
Re: [PATCH 07/10] module: __rcu annotations, Arnd Bergmann, (Wed Feb 24, 1:26 pm)
Re: [PATCH 02/10] rcu: annotated list rcu code, Arnd Bergmann, (Wed Feb 24, 1:32 pm)
Re: [PATCH 07/10] module: __rcu annotations, Paul E. McKenney, (Wed Feb 24, 3:17 pm)
Re: [PATCH 00/10] __rcu annotations, first draft, Paul E. McKenney, (Wed Feb 24, 3:18 pm)
Re: [PATCH 07/10] module: __rcu annotations, Arnd Bergmann, (Wed Feb 24, 4:07 pm)
Re: [PATCH 07/10] module: __rcu annotations, Paul E. McKenney, (Wed Feb 24, 4:59 pm)
Re: [PATCH 00/10] __rcu annotations, first draft, Ingo Molnar, (Thu Feb 25, 1:37 am)
[tip:core/rcu] rcu: Introduce lockdep-based checking to RC ..., tip-bot for Paul E. ..., (Thu Feb 25, 3:09 am)
[tip:core/rcu] rcu: Add lockdep-enabled variants of rcu_de ..., tip-bot for Paul E. ..., (Thu Feb 25, 3:09 am)
[tip:core/rcu] rcu: Integrate rcu_dereference_check() mess ..., tip-bot for Paul E. ..., (Thu Feb 25, 3:09 am)
[tip:core/rcu] rcu: Disable lockdep checking in RCU list-t ..., tip-bot for Paul E. ..., (Thu Feb 25, 3:10 am)
[tip:core/rcu] net: Add checking to rcu_dereference() prim ..., tip-bot for Paul E. ..., (Thu Feb 25, 3:10 am)
[tip:core/rcu] sched: Use lockdep-based checking on rcu_de ..., tip-bot for Paul E. ..., (Thu Feb 25, 3:11 am)
[tip:core/rcu] sched: Better name for for_each_domain_rd, tip-bot for Paul E. ..., (Thu Feb 25, 3:11 am)
[tip:core/rcu] vfs: Apply lockdep-based checking to rcu_de ..., tip-bot for Paul E. ..., (Thu Feb 25, 3:11 am)
[tip:core/rcu] vfs: Abstract rcu_dereference_check for fil ..., tip-bot for Paul E. ..., (Thu Feb 25, 3:11 am)
[tip:core/rcu] radix-tree: Disable RCU lockdep checking in ..., tip-bot for Paul E. ..., (Thu Feb 25, 3:12 am)
[tip:core/rcu] idr: Apply lockdep-based diagnostics to rcu ..., tip-bot for Paul E. ..., (Thu Feb 25, 3:12 am)
[tip:core/rcu] security: Apply lockdep-based checking to r ..., tip-bot for Paul E. ..., (Thu Feb 25, 3:12 am)
[tip:core/rcu] rcu: Documentation update for CONFIG_PROVE_RCU, tip-bot for Paul E. ..., (Thu Feb 25, 3:12 am)
[tip:core/rcu] rcu: Fix citation of Mathieu's dissertation, tip-bot for Paul E. ..., (Thu Feb 25, 3:13 am)
[tip:core/rcu] rcu: Accelerate grace period if last non-dy ..., tip-bot for Paul E. ..., (Thu Feb 25, 3:13 am)
[tip:core/rcu] rcu: Use canonical URL for Mathieu's disser ..., tip-bot for Paul E. ..., (Thu Feb 25, 3:13 am)
[tip:core/rcu] rcu: Stop overflowing signed integers, tip-bot for Paul E. ..., (Thu Feb 25, 3:14 am)
[tip:core/rcu] rcu: Convert to raw_spinlocks, tip-bot for Paul E. ..., (Thu Feb 25, 3:14 am)
[tip:core/rcu] rcu: Fix deadlock in TREE_PREEMPT_RCU CPU s ..., tip-bot for Paul E. ..., (Thu Feb 25, 3:14 am)
[tip:core/rcu] rcu: Fix rcutorture mod_timer argument to d ..., tip-bot for Paul E. ..., (Thu Feb 25, 3:14 am)
[tip:core/rcu] rcu: Add RCU_CPU_STALL_VERBOSE to dump deta ..., tip-bot for Paul E. ..., (Thu Feb 25, 3:15 am)
[tip:core/rcu] sched, cgroups: Fix module export, tip-bot for Ingo Molnar, (Thu Feb 25, 4:06 am)
Re: [PATCH 07/10] module: __rcu annotations, Paul E. McKenney, (Thu Feb 25, 10:06 am)
Re: [PATCH 07/10] module: __rcu annotations, Arnd Bergmann, (Thu Feb 25, 11:10 am)
Re: [PATCH tip/core/rcu 0/21] v6 add lockdep-based diagnos ..., Paul E. McKenney, (Thu Feb 25, 11:18 am)
Re: [PATCH 07/10] module: __rcu annotations, Paul E. McKenney, (Thu Feb 25, 1:05 pm)
Re: [PATCH 07/10] module: __rcu annotations, Paul E. McKenney, (Thu Feb 25, 7:12 pm)