Hi all, My understanding is that there's still no real agreement on the proper approach to address this problem. The RFC I floated [1] intended to cap the size of ioends to avoid any latency issues with holding so many pages in writeback for effectively a single completion instance of a GB+ sized I/O. Instead, Christoph preferred to dump those large bios onto the completion workqueue and use cond_resched() rather than cap the ioend size. This series implements the latter (for XFS) since it seems like incremental progress and should at least address the warning. Thoughts, reviews, flames appreciated. Brian [1] https://lore.kernel.org/linux-fsdevel/20200825144917.GA321765@bfoster/ Brian Foster (2): iomap: resched ioend completion when in non-atomic context xfs: kick extra large ioends to completion workqueue fs/iomap/buffered-io.c | 15 +++++++++------ fs/xfs/xfs_aops.c | 12 ++++++++++-- include/linux/iomap.h | 2 +- 3 files changed, 20 insertions(+), 9 deletions(-) -- 2.25.4