• Dave Chinner's avatar
    xfs: bound maximum wait time for inodegc work · 7cf2b0f9
    Dave Chinner authored
    Currently inodegc work can sit queued on the per-cpu queue until
    the workqueue is either flushed of the queue reaches a depth that
    triggers work queuing (and later throttling). This means that we
    could queue work that waits for a long time for some other event to
    trigger flushing.
    
    Hence instead of just queueing work at a specific depth, use a
    delayed work that queues the work at a bound time. We can still
    schedule the work immediately at a given depth, but we no long need
    to worry about leaving a number of items on the list that won't get
    processed until external events prevail.
    Signed-off-by: default avatarDave Chinner <dchinner@redhat.com>
    Reviewed-by: default avatarDarrick J. Wong <djwong@kernel.org>
    Signed-off-by: default avatarDarrick J. Wong <djwong@kernel.org>
    7cf2b0f9
xfs_icache.c 54.9 KB