ublk: zoned: support REQ_OP_ZONE_RESET_ALL
authorMing Lei <ming.lei@redhat.com>
Thu, 10 Aug 2023 12:43:26 +0000 (20:43 +0800)
committerJens Axboe <axboe@kernel.dk>
Mon, 21 Aug 2023 02:24:34 +0000 (20:24 -0600)
commit851e06297f20bbd85c93bbf09469f2150d1db218
tree1a372f811e94b24aa7928873f9b784aadabef1a8
parenteb051b2d3118210b468870aedf21618d697f4f45
ublk: zoned: support REQ_OP_ZONE_RESET_ALL

There isn't any reason to not support REQ_OP_ZONE_RESET_ALL given everything
is actually handled in userspace, not mention it is pretty easy to support
RESET_ALL.

So enable REQ_OP_ZONE_RESET_ALL and let userspace handle it.

Verified by 'tools/zbc_reset_zone -all /dev/ublkb0' in libzbc[1] with
libublk-rs based ublk-zoned target prototype[2], follows command line
for creating ublk-zoned:

cargo run --example zoned -- add -1 1024 # add $dev_id $DEV_SIZE

[1] https://github.com/westerndigitalcorporation/libzbc
[2] https://github.com/ming1/libublk-rs/tree/zoned.v2

Cc: Niklas Cassel <Niklas.Cassel@wdc.com>
Cc: Damien Le Moal <dlemoal@kernel.org>
Cc: Andreas Hindborg <a.hindborg@samsung.com>
Signed-off-by: Ming Lei <ming.lei@redhat.com>
Link: https://lore.kernel.org/r/20230810124326.321472-1-ming.lei@redhat.com
Signed-off-by: Jens Axboe <axboe@kernel.dk>
drivers/block/ublk_drv.c
include/uapi/linux/ublk_cmd.h