Thread (37 messages) 37 messages, 8 authors, 2014-08-07

Re: vmstat: On demand vmstat workers V8

From: Peter Zijlstra <peterz@infradead.org>
Date: 2014-07-29 12:23:10
Also in: lkml

On Tue, Jul 29, 2014 at 08:05:25AM -0400, Tejun Heo wrote:
On Tue, Jul 29, 2014 at 09:56:37AM +0200, Peter Zijlstra wrote:
quoted
On Mon, Jul 28, 2014 at 01:55:17PM -0500, Christoph Lameter wrote:
quoted
On Fri, 25 Jul 2014, Sasha Levin wrote:
quoted
This patch doesn't interact well with my fuzzing setup. I'm seeing
the following:

[  490.446927] BUG: using __this_cpu_read() in preemptible [00000000] code: kworker/16:1/7368
[  490.447909] caller is __this_cpu_preempt_check+0x13/0x20
__this_cpu_read() from vmstat_update is only called from a kworker that
is bound to a single cpu. A false positive?
kworkers are never guaranteed to be so, its a 'feature' :/
It's because we don't distinguish work items which are per-cpu for
optimization and per-cpu for correctness and can't automatically flush
/ cancel / block per-cpu work items when a cpu goes down.  I like the
idea of distingushing them but it's gonna take a lot of auditing.
Just force flush on unplug and fix those that complain. No auditing
needed for that.
Any work item usage which requires per-cpu for correctness should
implement cpu down hook to flush in-flight work items and block
further issuance.  This hasn't changed from the beginning and was
necessary even before cmwq.
I think before cmwq we'd run into the broken affinity warning in the
scheduler.

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help