Ah, you're right. I *can* easily see the problem; somehow I just didn't notice it, but when I look back at my test logs, it's definitely there. I thought sb_start_write() took s_umount, but it doesn't, because it was trying to solve the exact same lock ordering problem. Drat.... Unfortunately, there doesn't seem to be a good solution here. The two options I see is either (a) create another version of writeback_inodes_sb() which doesn't have the WARN_ON check in fs/fs-writeback.c (the warning is a false positive, since there are other mechanisms which protect the superblock from being unmounted while the write system call is in progress), or (b) call writeback_inodes_sb() out of a workqueue. - Ted -- To unsubscribe from this list: send the line "unsubscribe linux-ext4" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html