[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]
Subject: Re: [virtio-dev] Clarifications for the new DISCARD and WRITE ZEROES commands
On 08/16/2018 02:25 AM, Liu, Changpeng wrote: > The latest patch set for adding DISCARD and WRITE ZEROES to virtio-blk locates here, > https://lists.linuxfoundation.org/pipermail/virtualization/2018-June/038299.html Wonderful, thanks! Jakub > > > >> -----Original Message----- >> From: virtio-dev@lists.oasis-open.org [mailto:virtio-dev@lists.oasis-open.org] On >> Behalf Of Jakub Jermar >> Sent: Thursday, August 16, 2018 5:33 AM >> To: virtio-dev@lists.oasis-open.org >> Subject: Re: [virtio-dev] Clarifications for the new DISCARD and WRITE ZEROES >> commands >> >> On 08/15/2018 05:47 PM, Paolo Bonzini wrote: >>> On 15/08/2018 17:12, Jakub Jermar wrote: >>>> In the absence of such a conforming patch, I would kindly ask someone to >>>> clarify the relationship between the virtio_blk_discard_write_zeroes >>>> structures and the virtio descriptor. [1] seems to indicate that there >>>> is always one struct virtio_blk_discard_write_zeroes per descriptor, but >>>> the wording is not very clear. If the containing descriptor must be a >>>> multiple of 512 in size (because of u8 data[][512]), >>> >>> The descriptors are intended to be a multiple of 16 bytes in size for >>> discard and write zeroes. >>> >>> In fact, even for reads/writes the descriptors are a multiple of the >>> logical block size, not of 512. That ought to be corrected as well. >>> >>>> there is no way to >>>> figure out how many of these structs it contains. So there must be only >>>> one and the only way to add a segment is to chain descriptors. >>> >>> No, it does not matter how descriptors are chained. Data is always >>> treated as if it was just one descriptor. >>> >>>> Unless >>>> the descriptor size is somehow allowed to be a multiple of sizeof(struct >>>> virtio_blk_discard_write_zeroes) in which case it could be determined >>>> and there may be several of these structures per descriptor. >>>> >>>> Also, why is it that there is discard_sector_alignment but no >>>> write_zeroes_sector_alignment? >>> >>> You can use discard_zeroes_alignment too if unmap=1 in the descriptor's >>> flags. If unmap=0, it doesn't matter. >> >> Thank you, that was quite helpful. >> >> Jakub >> >> --------------------------------------------------------------------- >> To unsubscribe, e-mail: virtio-dev-unsubscribe@lists.oasis-open.org >> For additional commands, e-mail: virtio-dev-help@lists.oasis-open.org > -- Kernkonzept GmbH at Dresden, Germany, HRB 31129, CEO Dr.-Ing. Michael Hohmuth
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]