rbd: add notrim option to rbd map

Add the notrim option to the rbd map command to avoid
discarding allocated blocks from a fully provisioned image,
and add the description of notrim option to manpage.

When enabled, user programs such as mkfs.xfs will receive -EOPNOTSUPP
if it sends a discard request for an image with this option.

Signed-off-by: Hitoshi Kamei <hitoshi.kamei.xm@hitachi.com>
Cc: Mitsuo Hayasaka <mitsuo.hayasaka.hu@hitachi.com>
This commit is contained in:
Hitoshi Kamei 2018-03-27 15:39:02 +09:00
parent 6b59fbfcc6
commit bed9225607
2 changed files with 7 additions and 0 deletions

View File

@ -661,6 +661,11 @@ Per mapping (block device) `rbd device map` options:
* exclusive - Disable automatic exclusive lock transitions (since 4.12).
* notrim - Turn off discard and write zeroes offload support to avoid
deprovisioning a fully provisioned image (since 4.17). When enabled, discard
requests will fail with -EOPNOTSUPP, write zeroes requests will fall back to
manually zeroing.
`rbd device unmap` options:
* force - Force the unmapping of a block device that is open (since 4.9). The

View File

@ -143,6 +143,8 @@ static int parse_map_options(const std::string &options_string)
put_map_option("lock_on_read", this_char);
} else if (!strcmp(this_char, "exclusive")) {
put_map_option("exclusive", this_char);
} else if (!strcmp(this_char, "notrim")) {
put_map_option("notrim", this_char);
} else {
std::cerr << "rbd: unknown map option '" << this_char << "'" << std::endl;
return -EINVAL;