[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [qemu-s390x] [PATCH v8 4/6] s390x/ap: base Adjunct Proc
From: |
Christian Borntraeger |
Subject: |
Re: [Qemu-devel] [qemu-s390x] [PATCH v8 4/6] s390x/ap: base Adjunct Processor (AP) object model |
Date: |
Thu, 13 Sep 2018 08:32:48 +0200 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.9.1 |
On 09/13/2018 08:29 AM, Christian Borntraeger wrote:
>>> +++ b/hw/s390x/ap-bridge.c
>> [...]
>>> +void s390_init_ap(void)
>>> +{
>>> + DeviceState *dev;
>>> +
>>> + /* Create bridge device */
>>> + dev = qdev_create(NULL, TYPE_AP_BRIDGE);
>>> + object_property_add_child(qdev_get_machine(), TYPE_AP_BRIDGE,
>>> + OBJECT(dev), NULL);
>>> + qdev_init_nofail(dev);
>>> +
>>> + /* Create bus on bridge device */
>>> + qbus_create(TYPE_VFIO_AP_BUS, dev, TYPE_VFIO_AP_BUS);
>>> + }
>> [...]
>>> +type_init(ap_device_register)
>>> diff --git a/hw/s390x/s390-virtio-ccw.c b/hw/s390x/s390-virtio-ccw.c
>>> index f0f7fdc..3c100c2 100644
>>> --- a/hw/s390x/s390-virtio-ccw.c
>>> +++ b/hw/s390x/s390-virtio-ccw.c
>>> @@ -32,6 +32,7 @@
>>> #include "ipl.h"
>>> #include "hw/s390x/s390-virtio-ccw.h"
>>> #include "hw/s390x/css-bridge.h"
>>> +#include "hw/s390x/ap-bridge.h"
>>> #include "migration/register.h"
>>> #include "cpu_models.h"
>>> #include "hw/nmi.h"
>>> @@ -263,6 +264,9 @@ static void ccw_init(MachineState *machine)
>>> /* init the SIGP facility */
>>> s390_init_sigp();
>>>
>>> + /* create AP bridge and bus(es) */
>>> + s390_init_ap();
>>> +
>>
>> Not sure since there is no explicit migration state involved here, but I
>> think you cannot simply create the ap-bridge device always
>> unconditionally, can you? Did you check whether you can ping-pong
>> migrate an guest that runs on an older version of QEMU to a QEMU that
>> contains this patch and back? If it does not work, it might be necessary
>> to restrict this ap-bridge device for new machine types only, I think.
>
> We have already the cpu features at this point in time. So simply doing
s/doing/checking/
> s390_has_feat(S390_FEAT_AP) in s390_init_ap ?
>
- Re: [Qemu-devel] [qemu-s390x] [PATCH v8 3/6] s390x/kvm: enable/disable AP instruction interpretation for guest, (continued)
Re: [Qemu-devel] [PATCH v8 3/6] s390x/kvm: enable/disable AP instruction interpretation for guest, Cornelia Huck, 2018/09/20
[Qemu-devel] [PATCH v8 4/6] s390x/ap: base Adjunct Processor (AP) object model, Tony Krowiak, 2018/09/12
- Re: [Qemu-devel] [qemu-s390x] [PATCH v8 4/6] s390x/ap: base Adjunct Processor (AP) object model, Thomas Huth, 2018/09/13
- Re: [Qemu-devel] [qemu-s390x] [PATCH v8 4/6] s390x/ap: base Adjunct Processor (AP) object model, Christian Borntraeger, 2018/09/13
- Re: [Qemu-devel] [qemu-s390x] [PATCH v8 4/6] s390x/ap: base Adjunct Processor (AP) object model,
Christian Borntraeger <=
- Re: [Qemu-devel] [qemu-s390x] [PATCH v8 4/6] s390x/ap: base Adjunct Processor (AP) object model, Tony Krowiak, 2018/09/13
- Re: [Qemu-devel] [qemu-s390x] [PATCH v8 4/6] s390x/ap: base Adjunct Processor (AP) object model, Tony Krowiak, 2018/09/13
- Re: [Qemu-devel] [qemu-s390x] [PATCH v8 4/6] s390x/ap: base Adjunct Processor (AP) object model, Halil Pasic, 2018/09/13
- Re: [Qemu-devel] [qemu-s390x] [PATCH v8 4/6] s390x/ap: base Adjunct Processor (AP) object model, Tony Krowiak, 2018/09/14
[Qemu-devel] [PATCH v8 5/6] s390x/vfio: ap: Introduce VFIO AP device, Tony Krowiak, 2018/09/12
[Qemu-devel] [PATCH v8 6/6] s390: doc: detailed specifications for AP virtualization, Tony Krowiak, 2018/09/12
Re: [Qemu-devel] [qemu-s390x] [PATCH v8 0/6] s390x: vfio-ap: guest dedicated crypto adapters, David Hildenbrand, 2018/09/17