On 16/10/2015 10:54, Cornelia Huck wrote: > On Fri, 16 Oct 2015 10:46:31 +0200 > Paolo Bonzini <pbonz...@redhat.com> wrote: > >> >> >> On 16/10/2015 10:41, Paolo Bonzini wrote: >>> >>> >>> On 16/10/2015 10:40, Cornelia Huck wrote: >>>> --- a/hw/s390x/s390-virtio-ccw.c >>>> +++ b/hw/s390x/s390-virtio-ccw.c >>>> @@ -272,6 +272,10 @@ static const TypeInfo ccw_machine_info = { >>>> .driver = "vhost-scsi-ccw",\ >>>> .property = "max_revision",\ >>>> .value = "0",\ >>>> + },{\ >>>> + .driver = "virtio-blk-ccw",\ >>>> + .property = "scsi",\ >>>> + .value = "true",\ >>>> }, >>>> >>>> static void ccw_machine_2_4_class_init(ObjectClass *oc, void *data) >>>> diff --git a/include/hw/compat.h b/include/hw/compat.h >>>> index 095de5d..bbf1ab2 100644 >>>> --- a/include/hw/compat.h >>>> +++ b/include/hw/compat.h >>>> @@ -2,7 +2,11 @@ >>>> #define HW_COMPAT_H >>>> >>>> #define HW_COMPAT_2_4 \ >>>> - /* empty */ >>>> + {\ >>>> + .driver = "virtio-blk-pci",\ >>>> + .property = "scsi",\ >>>> + .value = "true",\ >>>> + }, >>>> >>>> #define HW_COMPAT_2_3 \ >>>> {\ >>>> >>> >>> s390 should use HW_COMPAT_2_4 as well. Otherwise looks good. >> >> Hmm, ECONCISE probably. Sorry. >> >> I mean that virtio-blk-ccw's scsi property should IMO go in >> HW_COMPAT_2_4 as well. > > I was wondering about the semantics of HW_COMPAT_*: Does any hw-related > compat stuff go in there, even if it is architecture specific (like > ccw)?
It depends. For stuff like your max_revision I guess it makes sense to keep it in the board. Similarly, x86 CPU flags go in PC_COMPAT_*. But for stuff like virtio-blk-ccw, it makes some sense to keep it close to virtio-blk-pci. >> But I noticed now that: >> >> * if it works it would be even better if the compat property used >> virtio-blk-device; > > Hm. Previous virtio-compat always treated -pci explicitly, but we only > gained s390x compat handling with 2.4, so it didn't really matter. But > if it works, this is the saner approach. Yes, I agree. Paolo