A background flush work may run for ever. So it's reasonable for it to
mimic the kupdate behavior of syncing old/expired inodes first.
At each queue_io() time, first try enqueuing only newly expired inodes.
If there are zero expired inodes to work with, then relax the rule and
enqueue all dirty inodes.
CC: Dave Chinner<david@xxxxxxxxxxxxx>
CC: Jan Kara<jack@xxxxxxx>
CC: Rik van Riel<riel@xxxxxxxxxx>
Acked-by: Mel Gorman<mel@xxxxxxxxx>
Signed-off-by: Wu Fengguang<fengguang.wu@xxxxxxxxx>