On Fri, Oct 30, 2026 at 12:09:57AM +0100, Kevin Wolf wrote:
> QEMU has allowed the user to specify serials of arbitrary length for
> virtio-blk devices, even though the virtio-blk protocol can only
> communicate 20 characters of the serial to the guest. This means that a
> longer serial number on the command line is silently truncated to 20
> characters from the guest perspective.
> 
> As a first step to fix this, deprecate the silent truncation and turn it
> into a warning; we can later make this a hard error. While touching
> GET_ID, let's make it more spec compliant and clean up the internal
> state.
> 
> Another part is planned that will actually enable users to use longer
> serials and additional device identifiers. This will need spec changes
> and would take more time than we have until the QEMU 11.2 freeze anyway,
> so I'll address this later. For now, the important thing is to get the
> deprecation period started.
> 
> v2:
> - Drop truncation of qdev property for now [Stefan]
> - Add test case for exactly 20 characters [Stefan]
> - Fix missing guest_free() [Stefan]
> - Pass pattern_byte to get_id_request() instead of hardcoding it
>   [Stefan]
> 
> Kevin Wolf (4):
>   virtio-blk: Implement full NUL padding for GET_ID
>   virtio-blk-test: Add a basic GET_ID test case
>   virtio-blk: Deprecate silent truncation of serial
>   virtio-blk-test: Test truncated serial
> 
>  docs/about/deprecated.rst     |  13 ++++
>  hw/block/virtio-blk.c         |  18 +++--
>  tests/qtest/virtio-blk-test.c | 119 ++++++++++++++++++++++++++++++++++
>  3 files changed, 146 insertions(+), 4 deletions(-)
> 
> -- 
> 2.56.0
> 

Thanks, applied to my block tree:
https://gitlab.com/stefanha/qemu/commits/block

Stefan

Reply via email to