diff options
author | Alasdair G Kergon <agk@redhat.com> | 2012-07-27 10:08:16 -0400 |
---|---|---|
committer | Alasdair G Kergon <agk@redhat.com> | 2012-07-27 10:08:16 -0400 |
commit | 1f4e0ff07980820977f45d6a5dbc81d3bb9ce4d3 (patch) | |
tree | 5b5a159add010d09ea58ca12fd079b16f05333b8 /drivers/md/dm-stripe.c | |
parent | e49e582965b3694f07a106adc83ddb44aa4f0890 (diff) |
dm thin: commit before gathering status
Commit outstanding metadata before returning the status for a dm thin
pool so that the numbers reported are as up-to-date as possible.
The commit is not performed if the device is suspended or if
the DM_NOFLUSH_FLAG is supplied by userspace and passed to the target
through a new 'status_flags' parameter in the target's dm_status_fn.
The userspace dmsetup tool will support the --noflush flag with the
'dmsetup status' and 'dmsetup wait' commands from version 1.02.76
onwards.
Tested-by: Mike Snitzer <snitzer@redhat.com>
Signed-off-by: Alasdair G Kergon <agk@redhat.com>
Diffstat (limited to 'drivers/md/dm-stripe.c')
-rw-r--r-- | drivers/md/dm-stripe.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/md/dm-stripe.c b/drivers/md/dm-stripe.c index 9e8f4cc63d6c..a087bf2a8d66 100644 --- a/drivers/md/dm-stripe.c +++ b/drivers/md/dm-stripe.c | |||
@@ -311,8 +311,8 @@ static int stripe_map(struct dm_target *ti, struct bio *bio, | |||
311 | * | 311 | * |
312 | */ | 312 | */ |
313 | 313 | ||
314 | static int stripe_status(struct dm_target *ti, | 314 | static int stripe_status(struct dm_target *ti, status_type_t type, |
315 | status_type_t type, char *result, unsigned int maxlen) | 315 | unsigned status_flags, char *result, unsigned maxlen) |
316 | { | 316 | { |
317 | struct stripe_c *sc = (struct stripe_c *) ti->private; | 317 | struct stripe_c *sc = (struct stripe_c *) ti->private; |
318 | char buffer[sc->stripes + 1]; | 318 | char buffer[sc->stripes + 1]; |