On Tue, 16 Feb 2021 12:18:30 +0100 Cornelia Huck <coh...@redhat.com> wrote:
> The virtio standard specifies that any non-transitional device must > reject commands prior to revision setting (which we do) and else > assume revision 0 (legacy) if the driver sends a non-revision-setting > command first. We neglected to do the latter. > > Fortunately, nearly everything worked as intended anyway; the only > problem was not properly rejecting revision setting after some other > command had been issued. Easy to fix by setting revision to 0 if > we see a non-revision command on a legacy-capable revision-less > device. > > Signed-off-by: Cornelia Huck <coh...@redhat.com> > --- > hw/s390x/virtio-ccw.c | 21 ++++++++++++++------- > 1 file changed, 14 insertions(+), 7 deletions(-) I now have: Author: Cornelia Huck <coh...@redhat.com> Date: Tue Feb 16 12:18:30 2021 +0100 virtio-ccw: commands on revision-less devices The virtio standard specifies that any non-transitional device must reject commands prior to revision setting (which we do). Devices that are transitional need to assume revision 0 (legacy) if the driver sends a non-revision-setting command first in order to support legacy drivers. We neglected to do the latter. Fortunately, nearly everything worked as intended anyway; the only problem was not properly rejecting revision setting after some other command had been issued. Easy to fix by setting revision to 0 if we see a non-revision command on a legacy-capable revision-less device. Found by code inspection, not observed in the wild. Signed-off-by: Cornelia Huck <coh...@redhat.com> Reviewed-by: Thomas Huth <th...@redhat.com> Reviewed-by: Michael S. Tsirkin <m...@redhat.com> Acked-by: Halil Pasic <pa...@linux.ibm.com> Message-Id: <20210216111830.1087847-1-coh...@redhat.com> Any objections?