dm: allow targets to require splitting WRITE_ZEROES and SECURE_ERASE

Introduce max_write_zeroes_granularity and
max_secure_erase_granularity flags in the dm_target struct.

If a target sets these then DM core will split IO of these operation
types accordingly (in terms of max_write_zeroes_sectors and
max_secure_erase_sectors respectively).

Signed-off-by: Mike Snitzer <snitzer@kernel.org>
This commit is contained in:
Mike Snitzer
2023-04-14 12:07:27 -04:00
parent 3664ff82da
commit 13f6facf3f
2 changed files with 20 additions and 6 deletions
+14 -2
View File
@@ -359,11 +359,23 @@ struct dm_target {
bool discards_supported:1;
/*
* Set if this target requires that discards be split on both
* 'discard_granularity' and 'max_discard_sectors' boundaries.
* Set if this target requires that discards be split on
* 'max_discard_sectors' boundaries.
*/
bool max_discard_granularity:1;
/*
* Set if this target requires that secure_erases be split on
* 'max_secure_erase_sectors' boundaries.
*/
bool max_secure_erase_granularity:1;
/*
* Set if this target requires that write_zeroes be split on
* 'max_write_zeroes_sectors' boundaries.
*/
bool max_write_zeroes_granularity:1;
/*
* Set if we need to limit the number of in-flight bios when swapping.
*/