xfs
[Top] [All Lists]

Re: [RFC PATCH 4/4] xfs: add background scanning to clear EOFBLOCKS inod

To: Brian Foster <bfoster@xxxxxxxxxx>
Subject: Re: [RFC PATCH 4/4] xfs: add background scanning to clear EOFBLOCKS inodes
From: Dave Chinner <david@xxxxxxxxxxxxx>
Date: Mon, 3 Sep 2012 15:28:42 +1000
Cc: xfs@xxxxxxxxxxx
In-reply-to: <1346097111-4476-5-git-send-email-bfoster@xxxxxxxxxx>
References: <1346097111-4476-1-git-send-email-bfoster@xxxxxxxxxx> <1346097111-4476-5-git-send-email-bfoster@xxxxxxxxxx>
User-agent: Mutt/1.5.21 (2010-09-15)
On Mon, Aug 27, 2012 at 03:51:51PM -0400, Brian Foster wrote:
> Create a delayed_work to enable background scanning and freeing
> of EOFBLOCKS inodes. The scanner kicks in once speculative
> preallocation occurs and stops requeueing itself when no EOFBLOCKS
> inodes exist.
> 
> Scans are queued on the existing syncd workqueue and the interval
> is tied to the syncd interval, which is a default of 30s. The
> minimum file size for a background scan is hardcoded to 100MB.

I'd set it to be much longer than the xfs_syncd_centisecs period.
The data may not be written back for a long while, and a file that
is open, written and closed repeatedly (NFS write patterns for large
and/or slowly written files) should not have it's preallocation
truncated every 30s.

I'd suggest that a 5 minute sweep is probably sufficiently frequent
to avoid most fragmentation issues and long term buildup of speculative
preallocation whilst not perturbing large/slow writers too much....

Apart from that, there isn't anything wrong with the code, except
I'll note again that it conflicts with my syncd removal patchset....

Cheers,

Dave.
-- 
Dave Chinner
david@xxxxxxxxxxxxx

<Prev in Thread] Current Thread [Next in Thread>