[PATCH for-4.5 06/13] NVMe: Remove WQ_MEM_RECLAIM from nvme work queue

Christoph Hellwig hch at infradead.org
Wed Feb 10 10:46:41 PST 2016


On Wed, Feb 10, 2016 at 11:17:23AM -0700, Keith Busch wrote:
> This isn't used for work in the memory reclaim path, and we may need
> to sync with work queues that also are not flagged memory relaim. This
> fixes a kernel warning if we ever do sync with such a work queue.

We do need it during memory reclaim: memory reclaim in general
does I/O, which can be on NVMe.  We then need the workqueue to
abort a command or reset an overloaded controller to make progress.
Not having WQ_MEM_RECLAIM risks deadlocks in heavily loaded systems.



More information about the Linux-nvme mailing list