1. 04 Mar, 2010 8 commits
    • Paul E. McKenney's avatar
      rcu: Suppress RCU lockdep warnings during early boot · 54dbf96c
      Paul E. McKenney authored
      RCU is used during very early boot, before RCU and lockdep have
      been initialized.  So make the underlying primitives
      (rcu_read_lock_held(), rcu_read_lock_bh_held(),
      rcu_read_lock_sched_held(), and rcu_dereference_check()) check
      for early boot via the rcu_scheduler_active flag.  This will
      suppress false positives.
      
      Also introduce a debug_lockdep_rcu_enabled() static inline
      helper function, which tags the CONTINUE_PROVE_RCU case as
      likely(), as suggested by Ingo Molnar.
      Signed-off-by: default avatarPaul E. McKenney <paulmck@linux.vnet.ibm.com>
      Cc: laijs@cn.fujitsu.com
      Cc: dipankar@in.ibm.com
      Cc: mathieu.desnoyers@polymtl.ca
      Cc: josh@joshtriplett.org
      Cc: dvhltc@us.ibm.com
      Cc: niv@us.ibm.com
      Cc: peterz@infradead.org
      Cc: rostedt@goodmis.org
      Cc: Valdis.Kletnieks@vt.edu
      Cc: dhowells@redhat.com
      LKML-Reference: <1267631219-8713-2-git-send-email-paulmck@linux.vnet.ibm.com>
      [ v2: removed incomplete debug_lockdep_rcu_update() bits ]
      Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
      54dbf96c
    • Paul E. McKenney's avatar
      rcu, ftrace: Fix RCU lockdep splat in ftrace_perf_buf_prepare() · 8d53dd54
      Paul E. McKenney authored
      Change the pair of rcu_dereference() calls in
      ftrace_perf_buf_prepare() to rcu_dereference_sched().
      Signed-off-by: default avatarPaul E. McKenney <paulmck@linux.vnet.ibm.com>
      Acked-by: default avatarFrederic Weisbecker <fweisbec@gmail.com>
      Cc: Steven Rostedt <rostedt@goodmis.org>
      Cc: laijs@cn.fujitsu.com
      Cc: dipankar@in.ibm.com
      Cc: mathieu.desnoyers@polymtl.ca
      Cc: josh@joshtriplett.org
      Cc: dvhltc@us.ibm.com
      Cc: niv@us.ibm.com
      Cc: peterz@infradead.org
      Cc: Valdis.Kletnieks@vt.edu
      Cc: dhowells@redhat.com
      Cc: Frederic Weisbecker <fweisbec@gmail.com>
      LKML-Reference: <1267667418-32233-3-git-send-email-paulmck@linux.vnet.ibm.com>
      Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
      8d53dd54
    • Paul E. McKenney's avatar
      rcu: Suppress __mpol_dup() false positive from RCU lockdep · 99ee4ca7
      Paul E. McKenney authored
      Common code is used during task creation and after the task has
      started running.  RCU protection is not needed during task
      creation because no other CPU has access to the
      under-construction task.  Provide the RCU protection anyway to
      suppress the false positive, as there does not appear to be a
      good way for the common code to recognize that the task is only
      accessible to the CPU creating it.
      Signed-off-by: default avatarPaul E. McKenney <paulmck@linux.vnet.ibm.com>
      Cc: Paul Menage <menage@google.com>
      Cc: laijs@cn.fujitsu.com
      Cc: dipankar@in.ibm.com
      Cc: mathieu.desnoyers@polymtl.ca
      Cc: josh@joshtriplett.org
      Cc: dvhltc@us.ibm.com
      Cc: niv@us.ibm.com
      Cc: peterz@infradead.org
      Cc: rostedt@goodmis.org
      Cc: Valdis.Kletnieks@vt.edu
      Cc: dhowells@redhat.com
      LKML-Reference: <1267667418-32233-2-git-send-email-paulmck@linux.vnet.ibm.com>
      Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
      99ee4ca7
    • Paul E. McKenney's avatar
      rcu: Make rcu_read_lock_sched_held() handle !PREEMPT · e6033e3b
      Paul E. McKenney authored
      The rcu_read_lock_sched_held() needs to unconditionally return
      the value "1" in a !PREEMPT kernel, because under !PREEMPT,
      -all- kernel code is implicitly preempt-disabled.  This patch
      makes this happen.
      Signed-off-by: default avatarPaul E. McKenney <paulmck@linux.vnet.ibm.com>
      Cc: laijs@cn.fujitsu.com
      Cc: dipankar@in.ibm.com
      Cc: mathieu.desnoyers@polymtl.ca
      Cc: josh@joshtriplett.org
      Cc: dvhltc@us.ibm.com
      Cc: niv@us.ibm.com
      Cc: peterz@infradead.org
      Cc: rostedt@goodmis.org
      Cc: Valdis.Kletnieks@vt.edu
      Cc: dhowells@redhat.com
      LKML-Reference: <1267667418-32233-1-git-send-email-paulmck@linux.vnet.ibm.com>
      Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
      e6033e3b
    • Paul E. McKenney's avatar
      rcu: Add control variables to lockdep_rcu_dereference() diagnostics · cc5b83a9
      Paul E. McKenney authored
      Add the values of rcu_scheduler_active() and debug_locks() to
      the lockdep_rcu_dereference() output to help diagnose RCU
      lockdep splats that occur shortly after the scheduler starts.
      Signed-off-by: default avatarPaul E. McKenney <paulmck@linux.vnet.ibm.com>
      Cc: laijs@cn.fujitsu.com
      Cc: dipankar@in.ibm.com
      Cc: mathieu.desnoyers@polymtl.ca
      Cc: josh@joshtriplett.org
      Cc: dvhltc@us.ibm.com
      Cc: niv@us.ibm.com
      Cc: peterz@infradead.org
      Cc: rostedt@goodmis.org
      Cc: Valdis.Kletnieks@vt.edu
      Cc: dhowells@redhat.com
      LKML-Reference: <1267631219-8713-4-git-send-email-paulmck@linux.vnet.ibm.com>
      Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
      cc5b83a9
    • Paul E. McKenney's avatar
      rcu, cgroup: Relax the check in task_subsys_state() as early boot is now handled by lockdep-RCU · 5ed42b81
      Paul E. McKenney authored
      This patch removes the check for !rcu_scheduler_active because
      this check has been incorporated into rcu_dereference_check().
      Signed-off-by: default avatarPaul E. McKenney <paulmck@linux.vnet.ibm.com>
      Cc: laijs@cn.fujitsu.com
      Cc: dipankar@in.ibm.com
      Cc: mathieu.desnoyers@polymtl.ca
      Cc: josh@joshtriplett.org
      Cc: dvhltc@us.ibm.com
      Cc: niv@us.ibm.com
      Cc: peterz@infradead.org
      Cc: rostedt@goodmis.org
      Cc: Valdis.Kletnieks@vt.edu
      Cc: dhowells@redhat.com
      LKML-Reference: <1267631219-8713-3-git-send-email-paulmck@linux.vnet.ibm.com>
      Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
      5ed42b81
    • Paul E. McKenney's avatar
      rcu: Use wrapper function instead of exporting tasklist_lock · db1466b3
      Paul E. McKenney authored
      Lockdep-RCU commit d11c563d exported tasklist_lock, which is not
      a good thing.  This patch instead exports a function that uses
      lockdep to check whether tasklist_lock is held.
      Suggested-by: default avatarChristoph Hellwig <hch@lst.de>
      Signed-off-by: default avatarPaul E. McKenney <paulmck@linux.vnet.ibm.com>
      Cc: laijs@cn.fujitsu.com
      Cc: dipankar@in.ibm.com
      Cc: mathieu.desnoyers@polymtl.ca
      Cc: josh@joshtriplett.org
      Cc: dvhltc@us.ibm.com
      Cc: niv@us.ibm.com
      Cc: peterz@infradead.org
      Cc: rostedt@goodmis.org
      Cc: Valdis.Kletnieks@vt.edu
      Cc: dhowells@redhat.com
      Cc: Christoph Hellwig <hch@lst.de>
      LKML-Reference: <1267631219-8713-1-git-send-email-paulmck@linux.vnet.ibm.com>
      Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
      db1466b3
    • Ingo Molnar's avatar
      Merge branches 'core/futexes' and 'core/iommu' into core/urgent · 0e064caf
      Ingo Molnar authored
      Merge reason: Switch from topical split to the stabilization track
      Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
      0e064caf
  2. 01 Mar, 2010 2 commits
  3. 28 Feb, 2010 25 commits
  4. 27 Feb, 2010 5 commits