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 /include/linux/dm-ioctl.h | |
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 'include/linux/dm-ioctl.h')
-rw-r--r-- | include/linux/dm-ioctl.h | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/include/linux/dm-ioctl.h b/include/linux/dm-ioctl.h index 3ece4eee84cb..91e3a360f611 100644 --- a/include/linux/dm-ioctl.h +++ b/include/linux/dm-ioctl.h | |||
@@ -267,9 +267,9 @@ enum { | |||
267 | #define DM_DEV_SET_GEOMETRY _IOWR(DM_IOCTL, DM_DEV_SET_GEOMETRY_CMD, struct dm_ioctl) | 267 | #define DM_DEV_SET_GEOMETRY _IOWR(DM_IOCTL, DM_DEV_SET_GEOMETRY_CMD, struct dm_ioctl) |
268 | 268 | ||
269 | #define DM_VERSION_MAJOR 4 | 269 | #define DM_VERSION_MAJOR 4 |
270 | #define DM_VERSION_MINOR 22 | 270 | #define DM_VERSION_MINOR 23 |
271 | #define DM_VERSION_PATCHLEVEL 1 | 271 | #define DM_VERSION_PATCHLEVEL 0 |
272 | #define DM_VERSION_EXTRA "-ioctl (2012-06-01)" | 272 | #define DM_VERSION_EXTRA "-ioctl (2012-07-25)" |
273 | 273 | ||
274 | /* Status bits */ | 274 | /* Status bits */ |
275 | #define DM_READONLY_FLAG (1 << 0) /* In/Out */ | 275 | #define DM_READONLY_FLAG (1 << 0) /* In/Out */ |
@@ -307,6 +307,8 @@ enum { | |||
307 | 307 | ||
308 | /* | 308 | /* |
309 | * Set this to suspend without flushing queued ios. | 309 | * Set this to suspend without flushing queued ios. |
310 | * Also disables flushing uncommitted changes in the thin target before | ||
311 | * generating statistics for DM_TABLE_STATUS and DM_DEV_WAIT. | ||
310 | */ | 312 | */ |
311 | #define DM_NOFLUSH_FLAG (1 << 11) /* In */ | 313 | #define DM_NOFLUSH_FLAG (1 << 11) /* In */ |
312 | 314 | ||