OSDN Git Service

block/nvme: Implement fake truncate() coroutine
authorPhilippe Mathieu-Daudé <philmd@redhat.com>
Thu, 10 Dec 2020 12:52:02 +0000 (13:52 +0100)
committerMax Reitz <mreitz@redhat.com>
Fri, 18 Dec 2020 11:35:55 +0000 (12:35 +0100)
commitc8807c5edcc8bd8917a5b7531d47ef6a99e07bd8
treec3c652f0af6631cea6ed8475779c33bb70ea1e9e
parent5cddb2e95f8d9e9ee535964df4136b562ce268e1
block/nvme: Implement fake truncate() coroutine

NVMe drive cannot be shrunk.

Since commit c80d8b06cfa we can use the @exact parameter (set
to false) to return success if the block device is larger than
the requested offset (even if we can not be shrunk).

Use this parameter to implement the NVMe truncate() coroutine,
similarly how it is done for the iscsi and file-posix drivers
(see commit 82325ae5f2f "Evaluate @exact in protocol drivers").

Reported-by: Xueqiang Wei <xuwei@redhat.com>
Suggested-by: Max Reitz <mreitz@redhat.com>
Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Message-Id: <20201210125202.858656-1-philmd@redhat.com>
Signed-off-by: Max Reitz <mreitz@redhat.com>
block/nvme.c