The kernel may sleep with holding a spinlock. The function call paths (from bottom to top) in Linux-4.16 are: [FUNC] mutex_lock_nested fs/nfs/write.c, 1045: mutex_lock_nested in nfs_scan_commit_listfs/nfs/pnfs_nfs.c, 145: nfs_scan_commit_list in pnfs_generic_recover_commit_reqs
fs/nfs/pnfs_nfs.c, 154: spin_lock in pnfs_generic_recover_commit_reqs I do not find a good way to fix, so I only report. This is found by my static analysis tool (DSAC). Thanks, Jia-Ju Bai