From: Roman Kagan <rvkagan@yandex-team.ru>
To: "Michael S. Tsirkin" <mst@redhat.com>
Cc: "Kevin Wolf" <kwolf@redhat.com>, "Fam Zheng" <fam@euphon.net>,
"Daniel P. Berrangé" <berrange@redhat.com>,
"Eduardo Habkost" <ehabkost@redhat.com>,
qemu-block@nongnu.org, "John Snow" <jsnow@redhat.com>,
qemu-devel@nongnu.org, "Max Reitz" <mreitz@redhat.com>,
"Gerd Hoffmann" <kraxel@redhat.com>,
"Stefan Hajnoczi" <stefanha@redhat.com>,
"Keith Busch" <kbusch@kernel.org>,
"Paolo Bonzini" <pbonzini@redhat.com>
Subject: Re: [PATCH v4 1/3] virtio-blk: store opt_io_size with correct size
Date: Thu, 21 May 2020 00:11:36 +0300 [thread overview]
Message-ID: <20200520211136.GB104207@rvkaganb.lan> (raw)
In-Reply-To: <20200520064125-mutt-send-email-mst@kernel.org>
On Wed, May 20, 2020 at 06:44:44AM -0400, Michael S. Tsirkin wrote:
> On Wed, May 20, 2020 at 11:06:55AM +0300, Roman Kagan wrote:
> > The width of opt_io_size in virtio_blk_topology is 32bit.
> >
> > Use the appropriate accessor to store it.
> >
> > Signed-off-by: Roman Kagan <rvkagan@yandex-team.ru>
>
>
> Thanks for the patch!
> Could you add a bit of analysis - when does this cause
> bugs? I'm guessing on BE systems with legacy virtio, right?
I guess so too. It was found just by eye inspection, trying to figure
out the potential truncation of opt_io_size in virtio-blk and why it's
different from scsi. I don't have any analysis to add :(
> Also, should we convert virtio_stw_p and friends to get the
> pointer to the correct value type, as opposed to void *?
I dunno. I guess they were designed to be used with untyped buffers and
modeled after virtio_{st,ld}*_phys. The same question applies to the
underlying {st,ld}_{b,l}e_p.
> This will catch bugs like this ...
I'll try and see if this change doesn't cause too much churn / pain.
But I suggest to decouple it from the simple patch at hand.
Thanks,
Roman.
> > ---
> > v4: new patch
> >
> > hw/block/virtio-blk.c | 2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/hw/block/virtio-blk.c b/hw/block/virtio-blk.c
> > index f5f6fc925e..413083e62f 100644
> > --- a/hw/block/virtio-blk.c
> > +++ b/hw/block/virtio-blk.c
> > @@ -918,7 +918,7 @@ static void virtio_blk_update_config(VirtIODevice *vdev, uint8_t *config)
> > virtio_stw_p(vdev, &blkcfg.geometry.cylinders, conf->cyls);
> > virtio_stl_p(vdev, &blkcfg.blk_size, blk_size);
> > virtio_stw_p(vdev, &blkcfg.min_io_size, conf->min_io_size / blk_size);
> > - virtio_stw_p(vdev, &blkcfg.opt_io_size, conf->opt_io_size / blk_size);
> > + virtio_stl_p(vdev, &blkcfg.opt_io_size, conf->opt_io_size / blk_size);
> > blkcfg.geometry.heads = conf->heads;
> > /*
> > * We must ensure that the block device capacity is a multiple of
> > --
> > 2.26.2
>
next prev parent reply other threads:[~2020-05-20 21:21 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-05-20 8:06 [PATCH v4 0/3] block: make BlockConf.*_size properties 32-bit Roman Kagan
2020-05-20 8:06 ` [PATCH v4 1/3] virtio-blk: store opt_io_size with correct size Roman Kagan
2020-05-20 8:48 ` Philippe Mathieu-Daudé
2020-05-20 10:44 ` Michael S. Tsirkin
2020-05-20 21:11 ` Roman Kagan [this message]
2020-05-20 15:36 ` Kevin Wolf
2020-05-20 20:34 ` Roman Kagan
2020-05-20 8:06 ` [PATCH v4 2/3] block: consolidate blocksize properties consistency checks Roman Kagan
2020-05-20 8:57 ` Philippe Mathieu-Daudé
2020-05-20 8:59 ` Philippe Mathieu-Daudé
2020-05-20 15:52 ` Kevin Wolf
2020-05-20 15:50 ` Kevin Wolf
2020-05-20 21:31 ` Roman Kagan
2020-05-20 8:06 ` [PATCH v4 3/3] block: make BlockConf.*_size properties 32-bit Roman Kagan
2020-05-20 9:04 ` Philippe Mathieu-Daudé
2020-05-20 21:45 ` Roman Kagan
2020-05-20 15:54 ` Kevin Wolf
2020-05-20 21:50 ` Roman Kagan
2020-05-25 15:20 ` Kevin Wolf
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20200520211136.GB104207@rvkaganb.lan \
--to=rvkagan@yandex-team.ru \
--cc=berrange@redhat.com \
--cc=ehabkost@redhat.com \
--cc=fam@euphon.net \
--cc=jsnow@redhat.com \
--cc=kbusch@kernel.org \
--cc=kraxel@redhat.com \
--cc=kwolf@redhat.com \
--cc=mreitz@redhat.com \
--cc=mst@redhat.com \
--cc=pbonzini@redhat.com \
--cc=qemu-block@nongnu.org \
--cc=qemu-devel@nongnu.org \
--cc=stefanha@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).