On Wed, 20 Mar 2019 14:19:27 +0300 Kirill Tkhai <ktkhai@xxxxxxxxxxxxx> wrote: > 1)Spinlock must be locked in any case, so assert_spin_locked() > are moved above the switch; This isn't true. When the ->isolate() handler xfs_buftarg_wait_rele() (at least) returns LRU_SKIP, the lock is not held.