[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH] proto: add 'shift' extension.
From: |
Eric Blake |
Subject: |
Re: [Qemu-devel] [PATCH] proto: add 'shift' extension. |
Date: |
Mon, 26 Sep 2016 15:21:46 -0500 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.3.0 |
On 09/26/2016 07:46 AM, Vladimir Sementsov-Ogievskiy wrote:
> This extension allows big requests for TRIM and WRITE_ZEROES through
> special 'shift' parameter, which means that offset and length should be
> shifted left by several bits.
>
> This is needed for efficient clearing large regions of the disk (up to
> the whole disk).
>
> Signed-off-by: Vladimir Sementsov-Ogievskiy <address@hidden>
> ---
>
> Here mentioned WRITE_ZEROES command which is only an experemental
> extension for now.
>
> To dicuss:
> +- `NBD_OPT_SHIFT` (10)
> +
> + Defines shift used to calculate request offset and length if
> + `NBD_CMD_FLAG_SHIFT` is set.
> +
> + Data:
> +
> + - 32 bits, shift (unsigned); Must not be larger than 32.
Uggh. You're making the protocol stateful (the server has to remember
what the client has previously requested via NBD_CMD_FLAG_SHIFT, rather
than having ALL information it needs immediately available in the
current NBD_CMD_WRITE_ZEROES).
I'd much rather support a single flag that says to zero the entire disk
than to introduce stateful variable-amount shifting.
--
Eric Blake eblake redhat com +1-919-301-3266
Libvirt virtualization library http://libvirt.org
signature.asc
Description: OpenPGP digital signature
- [Qemu-devel] [PATCH] proto: add 'shift' extension., Vladimir Sementsov-Ogievskiy, 2016/09/26
- Re: [Qemu-devel] [PATCH] proto: add 'shift' extension., Alex Bligh, 2016/09/26
- Re: [Qemu-devel] [PATCH] proto: add 'shift' extension.,
Eric Blake <=
- Re: [Qemu-devel] [PATCH] proto: add 'shift' extension., Denis V. Lunev, 2016/09/27
- Re: [Qemu-devel] [PATCH] proto: add 'shift' extension., Paolo Bonzini, 2016/09/27
- Re: [Qemu-devel] [PATCH] proto: add 'shift' extension., Denis V. Lunev, 2016/09/27
- Re: [Qemu-devel] [PATCH] proto: add 'shift' extension., Paolo Bonzini, 2016/09/27
- Re: [Qemu-devel] [PATCH] proto: add 'shift' extension., Denis V. Lunev, 2016/09/27
- Re: [Qemu-devel] [PATCH] proto: add 'shift' extension., Paolo Bonzini, 2016/09/27
- Re: [Qemu-devel] [PATCH] proto: add 'shift' extension., Denis V. Lunev, 2016/09/27
- Re: [Qemu-devel] [PATCH] proto: add 'shift' extension., Kevin Wolf, 2016/09/28