Re: nfsd oops on Linus' current tree.

From: Myklebust, Trond
Date: Thu Jan 03 2013 - 17:12:22 EST

On Thu, 2013-01-03 at 17:08 -0500, Tejun Heo wrote:
+AD4- Hello,
+AD4- On Thu, Jan 03, 2013 at 03:11:20PM -0500, J. Bruce Fields wrote:
+AD4- +AD4- Both rpciod and nfsiod already set WQ+AF8-MEM+AF8-RECLAIM.
+AD4- +AD4-
+AD4- +AD4- But, right, looking at kernel/workqueue.c, it seems that the dedicated
+AD4- +AD4- +ACI-rescuer+ACI- threads are invoked only in the case when work is stalled
+AD4- +AD4- because a new worker thread isn't allocated quickly enough.
+AD4- Because that's the +ACo-only+ACo- case where progress can't be guaranteed
+AD4- otherwise.
+AD4- +AD4- So, what to do that's simplest enough that it would work for
+AD4- +AD4- post-rc2/stable? I was happy having just a simple dedicated
+AD4- +AD4- thread--these are only started when nfsd is, so there's no real thread
+AD4- +AD4- proliferation problem.
+AD4- The analysis is likely completely wrong, so please don't go off doing
+AD4- something unnecessary. Please take look at what's causing the
+AD4- deadlocks again.

The analysis is a no-brainer:
We see a deadlock due to one work item waiting for completion of another
work item that is queued on the same CPU. There is no other dependency
between the two work items.

Trond Myklebust
Linux NFS client maintainer

To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at
Please read the FAQ at