[dm-devel] [PATCH 13/14] dm_thin: commit just before processing a pool target info request
Alasdair G Kergon
agk at redhat.com
Mon Mar 19 14:00:12 UTC 2012
On Fri, Mar 16, 2012 at 03:22:36PM +0000, Joe Thornber wrote:
> This makes the free block counts more accurate.
I'm not keen on this one: deferring it.
> --- a/drivers/md/dm-thin.c
> +++ b/drivers/md/dm-thin.c
> @@ -2305,6 +2305,15 @@ static int pool_status(struct dm_target *ti, status_type_t type,
(Used by dmsetup status and wait.)
> + /*
> + * If we're in the middle of a transaction the free block
> + * counts can be quite out of date, so we do a quick
> + * commit.
> + */
> + r = dm_pool_commit_metadata(pool->pmd);
> + if (r)
> + return r;
> +
1) If commit fails (repeatedly?) we still need to get the status.
2) Could the commit ever be too slow? (Or re-use NOFLUSH flag to skip it?)
Alasdair
More information about the dm-devel
mailing list