On Sun, Dec 16 2018 at 11:16am -0500, Christoph Hellwig <hch@xxxxxx> wrote: > On Sun, Dec 16, 2018 at 10:25:16AM +0800, Ming Lei wrote: > > This patch sets map->nr_queues as zero explictly if there is zero > > queues for such queue type, then blk_mq_map_swqueue() can become > > more robust to deal with shared mappings. > > This looks a lot more clumsy than what we had before, can you explain > what additional robustnes it buys us? It enables nvme IO to complete on my testbed with for-4.21/block changes, this NUMA layout is what triggered Ming's work: # numactl --hardware available: 2 nodes (0-1) node 0 cpus: 0 2 4 6 8 10 12 14 node 0 size: 128605 MB node 0 free: 128092 MB node 1 cpus: 1 3 5 7 9 11 13 15 node 1 size: 128997 MB node 1 free: 128529 MB node distances: node 0 1 0: 10 21 1: 21 10 Without the aggregate changes from this patchset (1-3 anyway) I get IO hangs in blkdev_fsync(). With that in mind, Jens needs these fixes (or something comparable) ASAP. Tested-by: Mike Snitzer <snitzer@xxxxxxxxxx>