Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 82791940 authored by Wu Fengguang's avatar Wu Fengguang
Browse files

writeback: do strict bdi dirty_exceeded



This helps to reduce dirty throttling polls and hence CPU overheads.

bdi->dirty_exceeded typically only helps when suddenly starting 100+
dd's on a disk, in which case the dd's may need to poll
balance_dirty_pages() earlier than tsk->nr_dirtied_pause.

CC: Jan Kara <jack@suse.cz>
CC: Peter Zijlstra <a.p.zijlstra@chello.nl>
Signed-off-by: default avatarWu Fengguang <fengguang.wu@intel.com>
parent 5b9b3574
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -1160,7 +1160,7 @@ static void balance_dirty_pages(struct address_space *mapping,
				    bdi_stat(bdi, BDI_WRITEBACK);
		}

		dirty_exceeded = (bdi_dirty > bdi_thresh) ||
		dirty_exceeded = (bdi_dirty > bdi_thresh) &&
				  (nr_dirty > dirty_thresh);
		if (dirty_exceeded && !bdi->dirty_exceeded)
			bdi->dirty_exceeded = 1;