dm thin metadata: add dm_thin_changed_this_transaction
Introduce dm_thin_changed_this_transaction to dm-thin-metadata to publish a useful bit of information we're already tracking. This will help dm thin decide when to commit. Signed-off-by: Joe Thornber <ejt@redhat.com> Signed-off-by: Mike Snitzer <snitzer@redhat.com> Signed-off-by: Alasdair G Kergon <agk@redhat.com>
This commit is contained in:
parent
66b1edc05e
commit
40db5a5376
2 changed files with 15 additions and 3 deletions
|
@ -1375,10 +1375,9 @@ static int __insert(struct dm_thin_device *td, dm_block_t block,
|
||||||
if (r)
|
if (r)
|
||||||
return r;
|
return r;
|
||||||
|
|
||||||
if (inserted) {
|
|
||||||
td->mapped_blocks++;
|
|
||||||
td->changed = 1;
|
td->changed = 1;
|
||||||
}
|
if (inserted)
|
||||||
|
td->mapped_blocks++;
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
@ -1422,6 +1421,17 @@ int dm_thin_remove_block(struct dm_thin_device *td, dm_block_t block)
|
||||||
return r;
|
return r;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool dm_thin_changed_this_transaction(struct dm_thin_device *td)
|
||||||
|
{
|
||||||
|
int r;
|
||||||
|
|
||||||
|
down_read(&td->pmd->root_lock);
|
||||||
|
r = td->changed;
|
||||||
|
up_read(&td->pmd->root_lock);
|
||||||
|
|
||||||
|
return r;
|
||||||
|
}
|
||||||
|
|
||||||
int dm_pool_alloc_data_block(struct dm_pool_metadata *pmd, dm_block_t *result)
|
int dm_pool_alloc_data_block(struct dm_pool_metadata *pmd, dm_block_t *result)
|
||||||
{
|
{
|
||||||
int r;
|
int r;
|
||||||
|
|
|
@ -148,6 +148,8 @@ int dm_thin_remove_block(struct dm_thin_device *td, dm_block_t block);
|
||||||
/*
|
/*
|
||||||
* Queries.
|
* Queries.
|
||||||
*/
|
*/
|
||||||
|
bool dm_thin_changed_this_transaction(struct dm_thin_device *td);
|
||||||
|
|
||||||
int dm_thin_get_highest_mapped_block(struct dm_thin_device *td,
|
int dm_thin_get_highest_mapped_block(struct dm_thin_device *td,
|
||||||
dm_block_t *highest_mapped);
|
dm_block_t *highest_mapped);
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue