On Mon, 2018-12-03 at 15:24 -0700, Jens Axboe wrote: +AD4 On 12/3/18 3:02 AM, Ming Lei wrote: +AD4 +AD4 Hi, +AD4 +AD4 +AD4 +AD4 Just found there is sbmitmap related lockdep warning, not take a close +AD4 +AD4 look yet, maybe +AD4 +AD4 it is caused by recent sbitmap change. +AD4 +AD4 +AD4 +AD4 +AFs-1+AF0 test +AD4 +AD4 - modprobe null+AF8-blk queue+AF8-mode+AD0-2 nr+AF8-devices+AD0-4 shared+AF8-tags+AD0-1 +AD4 +AD4 submit+AF8-queues+AD0-1 hw+AF8-queue+AF8-depth+AD0-1 +AD4 +AD4 - then run fio on the 4 null+AF8-blk devices +AD4 +AD4 This is a false positive - lockdep thinks that -+AD4-swap+AF8-lock needs to be +AD4 IRQ safe since it's called with IRQs disabled from the +AD4 blk+AF8-mq+AF8-mark+AF8-tag+AF8-wait() path. But we never grab the lock from IRQ +AD4 context. I wonder how to teach lockdep about that... There is probably a better solution, but one possible solution is to disable lockdep checking for swap+AF8-lock by using lockdep+AF8-set+AF8-novalidate+AF8-class(). Bart.