From: "Paul E. McKenney" <paulmck@linux.vnet.ibm.com>
To: Linus Torvalds <torvalds@linux-foundation.org>
Cc: "Thomas Gleixner" <tglx@linutronix.de>,
"Dave Jones" <davej@redhat.com>, "Chris Mason" <clm@fb.com>,
"Mike Galbraith" <umgwanakikbuti@gmail.com>,
"Ingo Molnar" <mingo@kernel.org>,
"Peter Zijlstra" <peterz@infradead.org>,
"Dâniel Fraga" <fragabr@gmail.com>,
"Sasha Levin" <sasha.levin@oracle.com>,
"Linux Kernel Mailing List" <linux-kernel@vger.kernel.org>,
"Suresh Siddha" <sbsiddha@gmail.com>,
"Oleg Nesterov" <oleg@redhat.com>,
"Peter Anvin" <hpa@linux.intel.com>
Subject: Re: frequent lockups in 3.18rc4
Date: Sat, 20 Dec 2014 19:52:23 -0800 [thread overview]
Message-ID: <20141221035223.GA8045@linux.vnet.ibm.com> (raw)
In-Reply-To: <CA+55aFyQzpQgT91sqpEhXho8KoVRkA1MeRjk+fXO7w2dJkY_Gg@mail.gmail.com>
On Sat, Dec 20, 2014 at 01:16:29PM -0800, Linus Torvalds wrote:
> On Sat, Dec 20, 2014 at 10:25 AM, Linus Torvalds
> <torvalds@linux-foundation.org> wrote:
> >
> > How/where is the HPET overflow case handled? I don't know the code enough.
>
> Hmm, ok, I've re-acquainted myself with it. And I have to admit that I
> can't see anything wrong. The whole "update_wall_clock" and the shadow
> timekeeping state is confusing as hell, but seems fine. We'd have to
> avoid update_wall_clock for a *long* time for overflows to occur.
>
> And the overflow in 32 bits isn't that special, since the only thing
> that really matters is the overflow of "cycle_now - tkr->cycle_last"
> within the mask.
>
> So I'm not seeing anything even halfway suspicious.
One long shot is a bug in rcu_barrier() that I introduced in v3.18-rc1.
This is a low-probability race that can cause rcu_barrier() and friends
to return too soon, which can of course result in arbitrary misbehavior.
Please see below for a fix which looks good thus far in reasonably
intense rcutorture testing.
Might be what Dave and Sasha are seeing. Or not.
Thanx, Paul
------------------------------------------------------------------------
rcu: Fix rcu_barrier() race that could result in too-short wait
The rcu_barrier() no-callbacks check for no-CBs CPUs has race conditions.
It checks a given CPU's lists of callbacks, and if all three no-CBs lists
are empty, ignores that CPU. However, these three lists could potentially
be empty even when callbacks are present if the check executed just as
the callbacks were being moved from one list to another. It turns out
that recent versions of rcutorture can spot this race.
This commit plugs this hole by consolidating the per-list counts of
no-CBs callbacks into a single count, which is incremented before
the corresponding callback is posted and after it is invoked. Then
rcu_barrier() checks this single count to reliably determine whether
the corresponding CPU has no-CBs callbacks.
Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
diff --git a/kernel/rcu/tree.c b/kernel/rcu/tree.c
index 7680fc275036..658b691dc32b 100644
--- a/kernel/rcu/tree.c
+++ b/kernel/rcu/tree.c
@@ -3318,6 +3318,7 @@ static void _rcu_barrier(struct rcu_state *rsp)
} else {
_rcu_barrier_trace(rsp, "OnlineNoCB", cpu,
rsp->n_barrier_done);
+ smp_mb__before_atomic();
atomic_inc(&rsp->barrier_cpu_count);
__call_rcu(&rdp->barrier_head,
rcu_barrier_callback, rsp, cpu, 0);
diff --git a/kernel/rcu/tree.h b/kernel/rcu/tree.h
index 8e7b1843896e..cb5908672f11 100644
--- a/kernel/rcu/tree.h
+++ b/kernel/rcu/tree.h
@@ -340,14 +340,10 @@ struct rcu_data {
#ifdef CONFIG_RCU_NOCB_CPU
struct rcu_head *nocb_head; /* CBs waiting for kthread. */
struct rcu_head **nocb_tail;
- atomic_long_t nocb_q_count; /* # CBs waiting for kthread */
- atomic_long_t nocb_q_count_lazy; /* (approximate). */
+ atomic_long_t nocb_q_count; /* # CBs waiting for nocb */
+ atomic_long_t nocb_q_count_lazy; /* invocation (all stages). */
struct rcu_head *nocb_follower_head; /* CBs ready to invoke. */
struct rcu_head **nocb_follower_tail;
- atomic_long_t nocb_follower_count; /* # CBs ready to invoke. */
- atomic_long_t nocb_follower_count_lazy; /* (approximate). */
- int nocb_p_count; /* # CBs being invoked by kthread */
- int nocb_p_count_lazy; /* (approximate). */
wait_queue_head_t nocb_wq; /* For nocb kthreads to sleep on. */
struct task_struct *nocb_kthread;
int nocb_defer_wakeup; /* Defer wakeup of nocb_kthread. */
@@ -356,8 +352,6 @@ struct rcu_data {
struct rcu_head *nocb_gp_head ____cacheline_internodealigned_in_smp;
/* CBs waiting for GP. */
struct rcu_head **nocb_gp_tail;
- long nocb_gp_count;
- long nocb_gp_count_lazy;
bool nocb_leader_sleep; /* Is the nocb leader thread asleep? */
struct rcu_data *nocb_next_follower;
/* Next follower in wakeup chain. */
@@ -622,24 +616,15 @@ static void rcu_dynticks_task_exit(void);
#endif /* #ifndef RCU_TREE_NONCORE */
#ifdef CONFIG_RCU_TRACE
-#ifdef CONFIG_RCU_NOCB_CPU
-/* Sum up queue lengths for tracing. */
+/* Read out queue lengths for tracing. */
static inline void rcu_nocb_q_lengths(struct rcu_data *rdp, long *ql, long *qll)
{
- *ql = atomic_long_read(&rdp->nocb_q_count) +
- rdp->nocb_p_count +
- atomic_long_read(&rdp->nocb_follower_count) +
- rdp->nocb_p_count + rdp->nocb_gp_count;
- *qll = atomic_long_read(&rdp->nocb_q_count_lazy) +
- rdp->nocb_p_count_lazy +
- atomic_long_read(&rdp->nocb_follower_count_lazy) +
- rdp->nocb_p_count_lazy + rdp->nocb_gp_count_lazy;
-}
+#ifdef CONFIG_RCU_NOCB_CPU
+ *ql = atomic_long_read(&rdp->nocb_q_count);
+ *qll = atomic_long_read(&rdp->nocb_q_count_lazy);
#else /* #ifdef CONFIG_RCU_NOCB_CPU */
-static inline void rcu_nocb_q_lengths(struct rcu_data *rdp, long *ql, long *qll)
-{
*ql = 0;
*qll = 0;
-}
#endif /* #else #ifdef CONFIG_RCU_NOCB_CPU */
+}
#endif /* #ifdef CONFIG_RCU_TRACE */
diff --git a/kernel/rcu/tree_plugin.h b/kernel/rcu/tree_plugin.h
index 3ec85cb5d544..e5c43b7f63f2 100644
--- a/kernel/rcu/tree_plugin.h
+++ b/kernel/rcu/tree_plugin.h
@@ -2056,9 +2056,26 @@ static void wake_nocb_leader(struct rcu_data *rdp, bool force)
static bool rcu_nocb_cpu_needs_barrier(struct rcu_state *rsp, int cpu)
{
struct rcu_data *rdp = per_cpu_ptr(rsp->rda, cpu);
+ unsigned long ret;
+#ifdef CONFIG_PROVE_RCU
struct rcu_head *rhp;
+#endif /* #ifdef CONFIG_PROVE_RCU */
+
+ /*
+ * Check count of all no-CBs callbacks awaiting invocation.
+ * There needs to be a barrier before this function is called,
+ * but associated with a prior determination that no more
+ * callbacks would be posted. In the worst case, the first
+ * barrier in _rcu_barrier() suffices (but the caller cannot
+ * necessarily rely on this, not a substitute for the caller
+ * getting the concurrency design right!). There must also be
+ * a barrier between the following load an posting of a callback
+ * (if a callback is in fact needed). This is associated with an
+ * atomic_inc() in the caller.
+ */
+ ret = atomic_long_read(&rdp->nocb_q_count);
- /* No-CBs CPUs might have callbacks on any of three lists. */
+#ifdef CONFIG_PROVE_RCU
rhp = ACCESS_ONCE(rdp->nocb_head);
if (!rhp)
rhp = ACCESS_ONCE(rdp->nocb_gp_head);
@@ -2072,8 +2089,9 @@ static bool rcu_nocb_cpu_needs_barrier(struct rcu_state *rsp, int cpu)
cpu, rhp->func);
WARN_ON_ONCE(1);
}
+#endif /* #ifdef CONFIG_PROVE_RCU */
- return !!rhp;
+ return !!ret;
}
/*
@@ -2095,9 +2113,10 @@ static void __call_rcu_nocb_enqueue(struct rcu_data *rdp,
struct task_struct *t;
/* Enqueue the callback on the nocb list and update counts. */
+ atomic_long_add(rhcount, &rdp->nocb_q_count);
+ /* rcu_barrier() relies on ->nocb_q_count add before xchg. */
old_rhpp = xchg(&rdp->nocb_tail, rhtp);
ACCESS_ONCE(*old_rhpp) = rhp;
- atomic_long_add(rhcount, &rdp->nocb_q_count);
atomic_long_add(rhcount_lazy, &rdp->nocb_q_count_lazy);
smp_mb__after_atomic(); /* Store *old_rhpp before _wake test. */
@@ -2288,9 +2307,6 @@ wait_again:
/* Move callbacks to wait-for-GP list, which is empty. */
ACCESS_ONCE(rdp->nocb_head) = NULL;
rdp->nocb_gp_tail = xchg(&rdp->nocb_tail, &rdp->nocb_head);
- rdp->nocb_gp_count = atomic_long_xchg(&rdp->nocb_q_count, 0);
- rdp->nocb_gp_count_lazy =
- atomic_long_xchg(&rdp->nocb_q_count_lazy, 0);
gotcbs = true;
}
@@ -2338,9 +2354,6 @@ wait_again:
/* Append callbacks to follower's "done" list. */
tail = xchg(&rdp->nocb_follower_tail, rdp->nocb_gp_tail);
*tail = rdp->nocb_gp_head;
- atomic_long_add(rdp->nocb_gp_count, &rdp->nocb_follower_count);
- atomic_long_add(rdp->nocb_gp_count_lazy,
- &rdp->nocb_follower_count_lazy);
smp_mb__after_atomic(); /* Store *tail before wakeup. */
if (rdp != my_rdp && tail == &rdp->nocb_follower_head) {
/*
@@ -2415,13 +2428,11 @@ static int rcu_nocb_kthread(void *arg)
trace_rcu_nocb_wake(rdp->rsp->name, rdp->cpu, "WokeNonEmpty");
ACCESS_ONCE(rdp->nocb_follower_head) = NULL;
tail = xchg(&rdp->nocb_follower_tail, &rdp->nocb_follower_head);
- c = atomic_long_xchg(&rdp->nocb_follower_count, 0);
- cl = atomic_long_xchg(&rdp->nocb_follower_count_lazy, 0);
- rdp->nocb_p_count += c;
- rdp->nocb_p_count_lazy += cl;
/* Each pass through the following loop invokes a callback. */
- trace_rcu_batch_start(rdp->rsp->name, cl, c, -1);
+ trace_rcu_batch_start(rdp->rsp->name,
+ atomic_long_read(&rdp->nocb_q_count_lazy),
+ atomic_long_read(&rdp->nocb_q_count), -1);
c = cl = 0;
while (list) {
next = list->next;
@@ -2443,9 +2454,9 @@ static int rcu_nocb_kthread(void *arg)
list = next;
}
trace_rcu_batch_end(rdp->rsp->name, c, !!list, 0, 0, 1);
- ACCESS_ONCE(rdp->nocb_p_count) = rdp->nocb_p_count - c;
- ACCESS_ONCE(rdp->nocb_p_count_lazy) =
- rdp->nocb_p_count_lazy - cl;
+ smp_mb__before_atomic(); /* _add after CB invocation. */
+ atomic_long_add(-c, &rdp->nocb_q_count);
+ atomic_long_add(-cl, &rdp->nocb_q_count_lazy);
rdp->n_nocbs_invoked += c;
}
return 0;
next prev parent reply other threads:[~2014-12-21 3:52 UTC|newest]
Thread overview: 486+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-11-14 21:31 frequent lockups in 3.18rc4 Dave Jones
2014-11-14 22:01 ` Linus Torvalds
2014-11-14 22:30 ` Dave Jones
2014-11-14 22:55 ` Thomas Gleixner
2014-11-14 23:32 ` Dave Jones
2014-11-15 0:36 ` Thomas Gleixner
2014-11-15 2:40 ` Dave Jones
2014-11-16 12:16 ` Thomas Gleixner
2014-11-15 1:59 ` Linus Torvalds
2014-11-17 21:22 ` Linus Torvalds
2014-11-17 22:31 ` Thomas Gleixner
2014-11-17 22:43 ` Thomas Gleixner
2014-11-17 22:58 ` Jens Axboe
2014-11-17 23:59 ` Linus Torvalds
2014-11-18 0:15 ` Thomas Gleixner
2014-11-17 23:04 ` Jens Axboe
2014-11-17 23:17 ` Thomas Gleixner
2014-11-18 2:23 ` Jens Axboe
2014-11-15 21:34 ` Dave Jones
2014-11-16 1:40 ` Dave Jones
2014-11-16 6:33 ` Linus Torvalds
2014-11-16 10:06 ` Markus Trippelsdorf
2014-11-16 18:33 ` Linus Torvalds
2014-11-17 17:03 ` Dave Jones
2014-11-17 19:59 ` Linus Torvalds
2014-11-18 2:09 ` Dave Jones
2014-11-18 2:21 ` Linus Torvalds
2014-11-18 2:39 ` Dave Jones
2014-11-18 2:51 ` Linus Torvalds
2014-11-18 14:52 ` Dave Jones
2014-11-18 17:20 ` Linus Torvalds
2014-11-18 19:28 ` Thomas Gleixner
2014-11-18 21:25 ` Don Zickus
2014-11-18 21:31 ` Dave Jones
2014-11-18 18:54 ` Thomas Gleixner
2014-11-18 21:55 ` Don Zickus
2014-11-18 22:02 ` Dave Jones
2014-11-19 14:41 ` Don Zickus
2014-11-19 15:03 ` Vivek Goyal
2014-11-19 15:38 ` Dave Jones
2014-11-19 16:28 ` Vivek Goyal
2014-11-20 16:10 ` Dave Jones
2014-11-20 16:48 ` Vivek Goyal
2014-11-20 17:38 ` Dave Jones
2014-11-21 9:46 ` Dave Young
2014-11-20 16:54 ` Vivek Goyal
2014-11-20 9:54 ` Dave Young
2014-11-19 2:19 ` Dave Jones
2014-11-19 4:40 ` Linus Torvalds
2014-11-19 4:59 ` Dave Jones
2014-11-19 5:15 ` Dave Jones
2014-11-20 14:36 ` Frederic Weisbecker
2014-11-19 14:59 ` Dave Jones
2014-11-19 17:22 ` Linus Torvalds
2014-11-19 17:40 ` Linus Torvalds
2014-11-19 19:02 ` Frederic Weisbecker
2014-11-19 19:03 ` Andy Lutomirski
2014-11-19 23:00 ` Frederic Weisbecker
2014-11-19 23:07 ` Andy Lutomirski
2014-11-19 23:13 ` Frederic Weisbecker
2014-11-19 21:56 ` Thomas Gleixner
2014-11-19 22:56 ` Frederic Weisbecker
2014-11-19 22:59 ` Andy Lutomirski
2014-11-19 23:07 ` Frederic Weisbecker
2014-11-19 23:09 ` Thomas Gleixner
2014-11-19 23:50 ` Frederic Weisbecker
2014-11-20 12:23 ` Tejun Heo
2014-11-20 21:58 ` Thomas Gleixner
2014-11-20 22:06 ` Andy Lutomirski
2014-11-20 22:11 ` Tejun Heo
2014-11-20 22:42 ` Thomas Gleixner
2014-11-20 23:05 ` Tejun Heo
2014-11-20 23:08 ` Andy Lutomirski
2014-11-20 23:34 ` Linus Torvalds
2014-11-20 23:39 ` Tejun Heo
2014-11-20 23:55 ` Andy Lutomirski
2014-11-21 16:27 ` Tejun Heo
2014-11-21 16:38 ` Andy Lutomirski
2014-11-21 16:48 ` Linus Torvalds
2014-11-21 17:08 ` Steven Rostedt
2014-11-21 17:19 ` Linus Torvalds
2014-11-21 17:22 ` Andy Lutomirski
2014-11-21 18:22 ` Linus Torvalds
2014-11-21 18:28 ` Andy Lutomirski
2014-11-21 19:06 ` Linus Torvalds
2014-11-21 19:23 ` Steven Rostedt
2014-11-21 19:34 ` Linus Torvalds
2014-11-21 19:46 ` Linus Torvalds
2014-11-21 19:52 ` Andy Lutomirski
2014-11-21 20:14 ` Josh Boyer
2014-11-21 20:16 ` Andy Lutomirski
2014-11-21 20:23 ` Josh Boyer
2014-11-24 18:48 ` Konrad Rzeszutek Wilk
2014-11-24 19:07 ` Josh Boyer
2014-11-25 5:36 ` Jürgen Groß
2014-11-25 17:22 ` Linus Torvalds
2014-11-21 20:00 ` Dave Jones
2014-11-21 20:02 ` Andy Lutomirski
2014-11-21 19:51 ` Thomas Gleixner
2014-11-21 20:00 ` Linus Torvalds
2014-11-21 20:16 ` Thomas Gleixner
2014-11-21 20:41 ` Linus Torvalds
2014-11-21 21:11 ` Thomas Gleixner
2014-11-21 22:55 ` Linus Torvalds
2014-11-21 23:03 ` Andy Lutomirski
2014-11-21 23:33 ` Linus Torvalds
2014-12-16 19:28 ` Peter Zijlstra
2014-12-16 20:46 ` Linus Torvalds
2014-12-16 21:19 ` Mel Gorman
2014-12-16 23:02 ` Peter Zijlstra
2014-12-17 0:00 ` Linus Torvalds
2014-12-17 0:41 ` Andy Lutomirski
2014-12-17 17:01 ` Konrad Rzeszutek Wilk
2014-12-17 17:14 ` Peter Zijlstra
2014-11-21 22:33 ` Konrad Rzeszutek Wilk
2014-11-22 1:17 ` Thomas Gleixner
2014-11-21 17:34 ` Steven Rostedt
2014-11-21 18:24 ` Linus Torvalds
2014-11-21 22:10 ` Frederic Weisbecker
2014-11-21 2:33 ` Steven Rostedt
2014-11-21 0:54 ` Thomas Gleixner
2014-11-21 14:13 ` Frederic Weisbecker
2014-11-21 16:25 ` Tejun Heo
2014-11-21 17:01 ` Steven Rostedt
2014-11-21 17:11 ` Steven Rostedt
2014-11-21 21:32 ` Frederic Weisbecker
2014-11-21 21:34 ` Andy Lutomirski
2014-11-21 21:50 ` Frederic Weisbecker
2014-11-21 22:45 ` Steven Rostedt
2014-11-21 21:44 ` Frederic Weisbecker
2014-11-22 0:11 ` Tejun Heo
2014-11-22 0:18 ` Linus Torvalds
2014-11-22 0:41 ` Andy Lutomirski
2014-11-19 23:54 ` Andy Lutomirski
2014-11-20 0:00 ` Thomas Gleixner
2014-11-20 0:30 ` Andy Lutomirski
2014-11-20 0:40 ` Linus Torvalds
2014-11-20 0:49 ` Andy Lutomirski
2014-11-20 1:07 ` Linus Torvalds
2014-11-20 1:16 ` Andy Lutomirski
2014-11-20 2:42 ` Linus Torvalds
2014-11-20 6:16 ` Andy Lutomirski
2014-11-19 19:15 ` Andy Lutomirski
2014-11-19 19:38 ` Linus Torvalds
2014-11-19 22:18 ` Dave Jones
2014-11-19 21:01 ` Andy Lutomirski
2014-11-19 21:47 ` Dave Jones
2014-11-19 21:58 ` Borislav Petkov
2014-11-19 22:18 ` Dave Jones
2014-11-20 10:33 ` Borislav Petkov
2014-11-19 21:56 ` [PATCH] x86, syscall: Fix _TIF_NOHZ handling in syscall_trace_enter_phase1 Andy Lutomirski
2014-11-19 22:13 ` Thomas Gleixner
2014-11-20 20:33 ` Linus Torvalds
2014-11-20 22:07 ` Thomas Gleixner
2014-11-20 22:04 ` [tip:x86/urgent] " tip-bot for Andy Lutomirski
2014-11-20 15:25 ` frequent lockups in 3.18rc4 Dave Jones
2014-11-20 19:43 ` Linus Torvalds
2014-11-20 20:06 ` Dave Jones
2014-11-20 20:37 ` Don Zickus
2014-11-20 20:51 ` Linus Torvalds
2014-11-21 6:37 ` Ingo Molnar
2014-11-21 14:50 ` Dave Jones
2014-11-25 12:22 ` Will Deacon
2014-12-01 11:48 ` Will Deacon
2014-12-01 17:05 ` Linus Torvalds
2014-12-01 17:10 ` Will Deacon
2014-12-01 17:53 ` Linus Torvalds
2014-12-01 18:25 ` Kirill A. Shutemov
2014-12-01 18:36 ` Linus Torvalds
2014-12-04 10:51 ` Will Deacon
2014-12-04 14:56 ` Dave Jones
2014-12-05 13:49 ` Will Deacon
2014-11-20 15:04 ` Frederic Weisbecker
2014-11-20 15:08 ` Frederic Weisbecker
2014-11-20 16:19 ` Dave Jones
2014-11-20 16:42 ` Frederic Weisbecker
2014-11-26 0:25 ` Dave Jones
2014-11-26 1:48 ` Linus Torvalds
2014-11-26 2:40 ` Dave Jones
2014-11-26 22:57 ` Dave Jones
2014-11-27 0:46 ` Linus Torvalds
2014-11-27 19:17 ` Linus Torvalds
2014-11-27 22:56 ` Dave Jones
2014-11-29 20:38 ` Dâniel Fraga
2014-11-30 20:45 ` Linus Torvalds
2014-11-30 21:21 ` Dâniel Fraga
2014-12-01 0:21 ` Linus Torvalds
2014-12-01 1:02 ` Dâniel Fraga
2014-12-01 19:14 ` Paul E. McKenney
2014-12-01 20:28 ` Dâniel Fraga
2014-12-01 20:36 ` Linus Torvalds
2014-12-01 23:08 ` Chris Mason
2014-12-01 23:25 ` Linus Torvalds
2014-12-01 23:44 ` Chris Mason
2014-12-02 0:39 ` Linus Torvalds
2014-12-02 14:13 ` Mike Galbraith
2014-12-02 16:33 ` Linus Torvalds
2014-12-02 17:14 ` Chris Mason
2014-12-03 18:41 ` Dave Jones
2014-12-03 18:45 ` Linus Torvalds
2014-12-03 19:00 ` Dave Jones
2014-12-03 19:25 ` Linus Torvalds
2014-12-03 19:30 ` Dave Jones
2014-12-03 19:48 ` Linus Torvalds
2014-12-03 20:09 ` Dave Jones
2014-12-03 20:37 ` Linus Torvalds
2014-12-03 20:55 ` Thomas Gleixner
2014-12-03 21:14 ` Linus Torvalds
2014-12-03 22:19 ` Thomas Gleixner
2014-12-03 23:21 ` Dave Jones
2014-12-03 23:49 ` Thomas Gleixner
2014-12-04 0:19 ` Linus Torvalds
2014-12-04 1:02 ` Thomas Gleixner
2014-12-04 0:20 ` Dave Jones
2014-12-04 0:59 ` Thomas Gleixner
2014-12-04 1:32 ` Dave Jones
2014-12-04 3:45 ` Dave Jones
2014-12-03 19:56 ` John Stultz
2014-12-03 20:37 ` Thomas Gleixner
2014-12-03 20:44 ` Dave Jones
2014-12-03 20:59 ` Thomas Gleixner
2014-12-03 21:05 ` Dave Jones
2014-12-03 21:48 ` Thomas Gleixner
2014-12-03 20:39 ` Thomas Gleixner
2014-12-04 3:15 ` Chris Mason
2014-12-04 5:49 ` Linus Torvalds
2014-12-04 14:57 ` Chris Mason
2014-12-04 15:22 ` Dave Hansen
2014-12-04 15:30 ` Chris Mason
2014-12-03 19:59 ` Chris Mason
2014-12-03 20:11 ` Dave Jones
2014-12-03 20:56 ` Chris Mason
2014-12-04 0:27 ` Dave Jones
2014-12-05 17:15 ` Dave Jones
2014-12-05 18:38 ` Linus Torvalds
2014-12-05 18:48 ` Dave Jones
2014-12-05 19:31 ` Linus Torvalds
2014-12-05 19:37 ` Dave Jones
2014-12-06 22:38 ` Thomas Gleixner
2014-12-06 9:37 ` Chuck Ebbert
2014-12-06 16:22 ` Martin van Es
2014-12-06 20:09 ` Linus Torvalds
2014-12-06 20:41 ` Linus Torvalds
2014-12-06 21:14 ` Martin van Es
2014-12-12 12:58 ` Martin van Es
2014-12-15 12:07 ` Martin van Es
2014-12-06 22:14 ` Thomas Gleixner
2014-12-05 19:04 ` Chris Mason
2014-12-05 19:29 ` Linus Torvalds
2014-12-11 14:54 ` Dave Jones
2014-12-11 21:49 ` Linus Torvalds
2014-12-11 21:52 ` Sasha Levin
2014-12-11 21:57 ` Chris Mason
2014-12-11 22:00 ` Sasha Levin
2014-12-11 22:36 ` Linus Torvalds
2014-12-11 22:57 ` Sasha Levin
2014-12-12 6:54 ` Ingo Molnar
2014-12-12 23:54 ` Sasha Levin
2014-12-13 0:23 ` Linus Torvalds
2014-12-13 0:34 ` Sasha Levin
2014-12-13 0:44 ` Linus Torvalds
2014-12-13 16:28 ` Jeff Chua
2014-12-13 2:32 ` Dave Jones
2014-12-11 21:57 ` Borislav Petkov
2014-12-12 3:03 ` Dave Jones
2014-12-12 4:45 ` Dave Jones
2014-12-12 14:38 ` Dave Jones
2014-12-12 18:24 ` Paul E. McKenney
2014-12-12 18:10 ` Paul E. McKenney
2014-12-12 18:42 ` Dave Jones
2014-12-12 18:54 ` Dave Jones
2014-12-12 19:14 ` Linus Torvalds
2014-12-12 19:23 ` Dave Jones
2014-12-12 19:58 ` David Lang
2014-12-12 20:20 ` Linus Torvalds
2014-12-13 7:43 ` Ingo Molnar
2014-12-12 20:34 ` Paul E. McKenney
2014-12-12 21:23 ` Sasha Levin
2014-12-13 0:58 ` Paul E. McKenney
2014-12-13 12:08 ` Paul E. McKenney
2014-12-13 8:30 ` Ingo Molnar
2014-12-13 15:53 ` Sasha Levin
2014-12-13 18:07 ` Paul E. McKenney
2014-12-14 17:50 ` Paul E. McKenney
2014-12-14 23:46 ` Sasha Levin
2014-12-15 0:11 ` Paul E. McKenney
2014-12-15 1:20 ` Sasha Levin
2014-12-15 6:33 ` Paul E. McKenney
2014-12-15 12:56 ` Paul E. McKenney
2014-12-15 13:16 ` Sasha Levin
2014-12-16 3:40 ` Paul E. McKenney
2014-12-13 7:36 ` [PATCH] sched: Fix lost reschedule in __cond_resched() Ingo Molnar
2014-12-14 18:04 ` Frederic Weisbecker
2014-12-14 19:43 ` Ingo Molnar
2014-12-14 19:50 ` Linus Torvalds
2014-12-14 20:30 ` Frederic Weisbecker
2014-12-13 8:19 ` frequent lockups in 3.18rc4 Ingo Molnar
2014-12-13 8:27 ` Ingo Molnar
2014-12-13 14:15 ` Sasha Levin
2014-12-13 16:59 ` Dave Jones
2014-12-13 18:04 ` Paul E. McKenney
2014-12-13 20:41 ` Dave Jones
2014-12-14 4:04 ` Paul E. McKenney
2014-12-13 22:36 ` Dave Jones
2014-12-13 22:40 ` Linus Torvalds
2014-12-13 22:59 ` Linus Torvalds
2014-12-13 23:09 ` Linus Torvalds
2014-12-13 23:35 ` Al Viro
2014-12-13 23:38 ` Linus Torvalds
2014-12-13 23:47 ` Al Viro
2014-12-14 0:14 ` Linus Torvalds
2014-12-14 0:33 ` Al Viro
2014-12-14 1:35 ` Linus Torvalds
2014-12-14 3:14 ` Al Viro
2014-12-15 0:18 ` Al Viro
2014-12-13 23:39 ` Al Viro
2014-12-14 23:46 ` Dave Jones
2014-12-15 0:38 ` Linus Torvalds
2014-12-15 0:42 ` Dave Jones
2014-12-15 5:47 ` Linus Torvalds
2014-12-15 5:57 ` Dave Jones
2014-12-15 18:21 ` Linus Torvalds
2014-12-15 23:46 ` Linus Torvalds
2014-12-18 2:42 ` Sasha Levin
2014-12-18 2:45 ` Linus Torvalds
2014-12-18 5:13 ` Dave Jones
2014-12-18 15:54 ` Chris Mason
2014-12-18 16:12 ` Dave Jones
2014-12-19 2:45 ` Dave Jones
2014-12-19 3:49 ` Linus Torvalds
2014-12-19 3:58 ` Dave Jones
2014-12-19 4:03 ` Dave Jones
2014-12-19 4:48 ` Linus Torvalds
2014-12-19 11:35 ` Peter Zijlstra
2014-12-19 14:55 ` Dave Jones
2014-12-19 15:14 ` Chris Mason
2014-12-19 19:15 ` Linus Torvalds
2014-12-19 19:44 ` Peter Zijlstra
2014-12-19 19:51 ` Linus Torvalds
2014-12-19 20:46 ` Linus Torvalds
2014-12-19 20:54 ` Dave Jones
2014-12-19 22:05 ` Linus Torvalds
2014-12-20 16:49 ` Dave Jones
2014-12-19 20:31 ` Chris Mason
2014-12-19 20:36 ` Dave Jones
2014-12-19 23:22 ` Thomas Gleixner
2014-12-20 0:12 ` Chris Mason
2014-12-20 1:06 ` Thomas Gleixner
2014-12-19 23:14 ` Thomas Gleixner
2014-12-19 23:55 ` Linus Torvalds
2014-12-20 1:00 ` Thomas Gleixner
2014-12-20 1:57 ` Linus Torvalds
2014-12-20 18:25 ` Linus Torvalds
2014-12-20 21:16 ` Linus Torvalds
2014-12-21 3:52 ` Paul E. McKenney [this message]
2014-12-21 21:22 ` Linus Torvalds
2014-12-21 22:19 ` Linus Torvalds
2014-12-21 22:32 ` Dave Jones
2014-12-21 23:58 ` Linus Torvalds
2014-12-22 0:41 ` Linus Torvalds
2014-12-22 0:52 ` Linus Torvalds
2014-12-22 1:22 ` Dave Jones
2014-12-22 3:11 ` Paul E. McKenney
2014-12-22 19:47 ` Linus Torvalds
2014-12-22 20:06 ` Linus Torvalds
2014-12-22 22:57 ` Dave Jones
2014-12-22 23:59 ` Linus Torvalds
2014-12-23 14:56 ` Dave Jones
2014-12-24 13:58 ` Sasha Levin
2014-12-24 3:01 ` Dave Jones
2014-12-26 16:34 ` Dave Jones
2014-12-26 18:12 ` Dave Jones
2014-12-26 20:57 ` Linus Torvalds
2014-12-26 21:20 ` Dave Jones
2014-12-26 22:57 ` Dave Jones
2014-12-26 23:16 ` Linus Torvalds
2014-12-27 0:36 ` Dave Jones
2014-12-27 3:14 ` Linus Torvalds
2014-12-27 16:48 ` Dave Jones
2014-12-26 23:30 ` Linus Torvalds
2014-12-27 0:39 ` Dave Jones
2014-12-27 2:53 ` Dave Jones
2015-01-03 0:27 ` John Stultz
2015-01-03 14:58 ` Sasha Levin
2015-01-04 19:46 ` Linus Torvalds
2015-01-06 1:17 ` John Stultz
2015-01-06 1:25 ` Linus Torvalds
2015-01-06 2:05 ` John Stultz
2014-12-22 23:59 ` John Stultz
2014-12-23 0:46 ` Linus Torvalds
2014-12-27 20:33 ` Paul E. McKenney
2015-01-12 10:05 ` Thomas Gleixner
2014-12-19 14:30 ` Chris Mason
2014-12-19 15:12 ` Dave Jones
2014-12-18 18:54 ` Linus Torvalds
2014-12-15 14:00 ` Borislav Petkov
2014-12-18 21:17 ` save_xstate_sig (Re: frequent lockups in 3.18rc4) Andy Lutomirski
2014-12-18 21:34 ` Linus Torvalds
2014-12-18 21:41 ` Andy Lutomirski
2014-12-18 21:37 ` Dave Jones
2014-12-17 18:22 ` frequent lockups in 3.18rc4 Dave Jones
2014-12-17 18:57 ` Dave Jones
2014-12-17 19:24 ` Dave Jones
2014-12-17 19:51 ` Linus Torvalds
2014-12-17 20:16 ` Dave Jones
2014-12-17 19:41 ` Linus Torvalds
2014-12-06 5:04 ` Gene Heskett
2014-12-02 17:47 ` Mike Galbraith
2014-12-13 8:11 ` Ingo Molnar
2014-12-13 9:57 ` Mike Galbraith
2014-12-17 11:13 ` Peter Zijlstra
2014-12-02 19:32 ` Dave Jones
2014-12-02 23:32 ` Sasha Levin
2014-12-03 0:09 ` Linus Torvalds
2014-12-03 0:25 ` Sasha Levin
2014-12-05 5:00 ` Sasha Levin
2014-12-05 6:38 ` Linus Torvalds
2014-12-05 15:03 ` Sasha Levin
2014-12-05 18:15 ` Linus Torvalds
2014-12-07 14:58 ` Sasha Levin
2014-12-07 18:24 ` Paul E. McKenney
2014-12-07 19:43 ` Paul E. McKenney
2014-12-07 23:28 ` Sasha Levin
2014-12-08 5:20 ` Paul E. McKenney
2014-12-08 14:33 ` Sasha Levin
2014-12-08 15:28 ` Sasha Levin
2014-12-08 15:57 ` Paul E. McKenney
2014-12-08 16:34 ` Sasha Levin
2014-12-08 15:56 ` Paul E. McKenney
2014-12-07 23:53 ` Linus Torvalds
2014-12-02 19:31 ` Dave Jones
2014-12-02 21:17 ` Linus Torvalds
2014-12-02 20:30 ` Dave Jones
2014-12-02 20:48 ` Paul E. McKenney
2014-12-01 23:08 ` Paul E. McKenney
2014-12-02 16:43 ` Dâniel Fraga
2014-12-02 17:04 ` Paul E. McKenney
2014-12-02 17:14 ` Dâniel Fraga
2014-12-02 18:42 ` Paul E. McKenney
2014-12-02 18:47 ` Dâniel Fraga
2014-12-02 19:11 ` Paul E. McKenney
2014-12-02 19:24 ` Dâniel Fraga
2014-12-02 20:56 ` Paul E. McKenney
2014-12-02 22:01 ` Dâniel Fraga
2014-12-02 22:10 ` Paul E. McKenney
2014-12-02 22:18 ` Dâniel Fraga
2014-12-02 22:35 ` Paul E. McKenney
2014-12-02 22:10 ` Linus Torvalds
2014-12-02 22:16 ` Dâniel Fraga
2014-12-03 3:21 ` Dâniel Fraga
2014-12-03 4:14 ` Linus Torvalds
2014-12-03 4:51 ` Dâniel Fraga
2014-12-03 6:02 ` Chris Rorvick
2014-12-03 15:22 ` Linus Torvalds
2014-12-04 8:43 ` Dâniel Fraga
2014-12-04 16:18 ` Linus Torvalds
2014-12-04 16:52 ` Frederic Weisbecker
2014-12-04 17:25 ` Dâniel Fraga
2014-12-04 17:47 ` Linus Torvalds
2014-12-04 18:07 ` Dâniel Fraga
2014-12-03 14:54 ` Tejun Heo
2014-12-02 18:09 ` Paul E. McKenney
2014-12-02 18:41 ` Dâniel Fraga
2014-12-02 17:08 ` Linus Torvalds
2014-12-02 17:16 ` Dâniel Fraga
2014-12-02 8:40 ` Lai Jiangshan
2014-12-02 16:58 ` Paul E. McKenney
2014-12-02 16:58 ` Dâniel Fraga
2014-12-02 17:17 ` Paul E. McKenney
2014-12-03 2:03 ` Lai Jiangshan
2014-12-03 5:22 ` Paul E. McKenney
2014-12-01 16:56 ` Don Zickus
2014-11-26 4:39 ` Jürgen Groß
[not found] ` <CA+55aFx1SiFBzmA=k9jHxi3cZE3Ei_+2NHepujgf86KEvkz8eQ@mail.gmail.com>
2014-11-26 5:11 ` Dave Jones
2014-11-26 5:24 ` Juergen Gross
2014-11-26 5:52 ` Linus Torvalds
2014-11-26 6:21 ` Linus Torvalds
2014-11-26 6:52 ` Juergen Gross
2014-11-26 9:44 ` Juergen Gross
2014-11-26 14:34 ` Dave Jones
2014-11-26 17:37 ` Linus Torvalds
2014-11-20 15:28 ` Frederic Weisbecker
2014-11-17 15:07 ` Don Zickus
-- strict thread matches above, loose matches on Subject: below --
2014-12-16 3:04 Hillf Danton
2015-02-12 11:09 Martin van Es
2015-02-12 16:01 ` Linus Torvalds
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20141221035223.GA8045@linux.vnet.ibm.com \
--to=paulmck@linux.vnet.ibm.com \
--cc=clm@fb.com \
--cc=davej@redhat.com \
--cc=fragabr@gmail.com \
--cc=hpa@linux.intel.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@kernel.org \
--cc=oleg@redhat.com \
--cc=peterz@infradead.org \
--cc=sasha.levin@oracle.com \
--cc=sbsiddha@gmail.com \
--cc=tglx@linutronix.de \
--cc=torvalds@linux-foundation.org \
--cc=umgwanakikbuti@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).