Introduce vfio-ap capability.
Signed-off-by: Boris Fiuczynski <fiuczy@linux.ibm.com>
Reviewed-by: Bjoern Walk <bwalk@linux.ibm.com>
---
src/qemu/qemu_capabilities.c | 2 ++
src/qemu/qemu_capabilities.h | 1 +
2 files changed, 3 insertions(+)
diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c
index e228f52ec0..2ca5af3297 100644
--- a/src/qemu/qemu_capabilities.c
+++ b/src/qemu/qemu_capabilities.c
@@ -508,6 +508,7 @@ VIR_ENUM_IMPL(virQEMUCaps, QEMU_CAPS_LAST,
/* 315 */
"vfio-pci.display",
"blockdev",
+ "vfio-ap",
);
@@ -1092,6 +1093,7 @@ struct virQEMUCapsStringFlags virQEMUCapsObjectTypes[] = {
{ "vhost-vsock-device", QEMU_CAPS_DEVICE_VHOST_VSOCK },
{ "mch", QEMU_CAPS_DEVICE_MCH },
{ "sev-guest", QEMU_CAPS_SEV_GUEST },
+ { "vfio-ap", QEMU_CAPS_DEVICE_VFIO_AP },
};
static struct virQEMUCapsStringFlags virQEMUCapsDevicePropsVirtioBalloon[] = {
diff --git a/src/qemu/qemu_capabilities.h b/src/qemu/qemu_capabilities.h
index 934620ed31..6bb9a2c8f0 100644
--- a/src/qemu/qemu_capabilities.h
+++ b/src/qemu/qemu_capabilities.h
@@ -492,6 +492,7 @@ typedef enum { /* virQEMUCapsFlags grouping marker for syntax-check */
/* 315 */
QEMU_CAPS_VFIO_PCI_DISPLAY, /* -device vfio-pci.display */
QEMU_CAPS_BLOCKDEV, /* -blockdev and blockdev-add are supported */
+ QEMU_CAPS_DEVICE_VFIO_AP, /* -device vfio-ap */
QEMU_CAPS_LAST /* this must always be the last item */
} virQEMUCapsFlags;
--
2.17.0
--
libvir-list mailing list
libvir-list@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list
On 2018-10-18 16:54, Boris Fiuczynski wrote:
> Introduce vfio-ap capability.
>
> Signed-off-by: Boris Fiuczynski <fiuczy@linux.ibm.com>
> Reviewed-by: Bjoern Walk <bwalk@linux.ibm.com>
> ---
> src/qemu/qemu_capabilities.c | 2 ++
> src/qemu/qemu_capabilities.h | 1 +
> 2 files changed, 3 insertions(+)
>
> diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c
> index e228f52ec0..2ca5af3297 100644
> --- a/src/qemu/qemu_capabilities.c
> +++ b/src/qemu/qemu_capabilities.c
> @@ -508,6 +508,7 @@ VIR_ENUM_IMPL(virQEMUCaps, QEMU_CAPS_LAST,
> /* 315 */
> "vfio-pci.display",
> "blockdev",
> + "vfio-ap",
> );
>
>
> @@ -1092,6 +1093,7 @@ struct virQEMUCapsStringFlags virQEMUCapsObjectTypes[] = {
> { "vhost-vsock-device", QEMU_CAPS_DEVICE_VHOST_VSOCK },
> { "mch", QEMU_CAPS_DEVICE_MCH },
> { "sev-guest", QEMU_CAPS_SEV_GUEST },
> + { "vfio-ap", QEMU_CAPS_DEVICE_VFIO_AP },
> };
>
> static struct virQEMUCapsStringFlags virQEMUCapsDevicePropsVirtioBalloon[] = {
> diff --git a/src/qemu/qemu_capabilities.h b/src/qemu/qemu_capabilities.h
> index 934620ed31..6bb9a2c8f0 100644
> --- a/src/qemu/qemu_capabilities.h
> +++ b/src/qemu/qemu_capabilities.h
> @@ -492,6 +492,7 @@ typedef enum { /* virQEMUCapsFlags grouping marker for syntax-check */
> /* 315 */
> QEMU_CAPS_VFIO_PCI_DISPLAY, /* -device vfio-pci.display */
> QEMU_CAPS_BLOCKDEV, /* -blockdev and blockdev-add are supported */
> + QEMU_CAPS_DEVICE_VFIO_AP, /* -device vfio-ap */
>
> QEMU_CAPS_LAST /* this must always be the last item */
> } virQEMUCapsFlags;
>
Reviewed-by: Thomas Huth <thuth@redhat.com>
--
libvir-list mailing list
libvir-list@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list
Quoting Thomas Huth (2018-10-19 06:58:34)
> On 2018-10-18 16:54, Boris Fiuczynski wrote:
> > Introduce vfio-ap capability.
> >
> > Signed-off-by: Boris Fiuczynski <fiuczy@linux.ibm.com>
> > Reviewed-by: Bjoern Walk <bwalk@linux.ibm.com>
> > ---
> > src/qemu/qemu_capabilities.c | 2 ++
> > src/qemu/qemu_capabilities.h | 1 +
> > 2 files changed, 3 insertions(+)
> >
> > diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c
> > index e228f52ec0..2ca5af3297 100644
> > --- a/src/qemu/qemu_capabilities.c
> > +++ b/src/qemu/qemu_capabilities.c
> > @@ -508,6 +508,7 @@ VIR_ENUM_IMPL(virQEMUCaps, QEMU_CAPS_LAST,
> > /* 315 */
> > "vfio-pci.display",
> > "blockdev",
> > + "vfio-ap",
> > );
> >
The statement "On s390, we have cryptographic coprocessor cards,
which are modeled on Linux as devices on the AP bus."
was made in email titled "s390: vfio-ap: guest dedicated crypto adapters"
Does this imply other devices can exist on an AP Bus?
Any chance this should be something like "vfio-ap.crypto" in the same
way a "vfio-pci.display" entry is listed above seemingly implying a
display device on a more generic pci bus? Or does "vfio-ap" always imply
crypto?
Having difficulty sorting out the relationships between adjunct
processor, crypto processor and ap bus from the patch docs and initial
review of the references.
> >
> > @@ -1092,6 +1093,7 @@ struct virQEMUCapsStringFlags virQEMUCapsObjectTypes[] = {
> > { "vhost-vsock-device", QEMU_CAPS_DEVICE_VHOST_VSOCK },
> > { "mch", QEMU_CAPS_DEVICE_MCH },
> > { "sev-guest", QEMU_CAPS_SEV_GUEST },
> > + { "vfio-ap", QEMU_CAPS_DEVICE_VFIO_AP },
> > };
> >
> > static struct virQEMUCapsStringFlags virQEMUCapsDevicePropsVirtioBalloon[] = {
> > diff --git a/src/qemu/qemu_capabilities.h b/src/qemu/qemu_capabilities.h
> > index 934620ed31..6bb9a2c8f0 100644
> > --- a/src/qemu/qemu_capabilities.h
> > +++ b/src/qemu/qemu_capabilities.h
> > @@ -492,6 +492,7 @@ typedef enum { /* virQEMUCapsFlags grouping marker for syntax-check */
> > /* 315 */
> > QEMU_CAPS_VFIO_PCI_DISPLAY, /* -device vfio-pci.display */
> > QEMU_CAPS_BLOCKDEV, /* -blockdev and blockdev-add are supported */
> > + QEMU_CAPS_DEVICE_VFIO_AP, /* -device vfio-ap */
> >
> > QEMU_CAPS_LAST /* this must always be the last item */
> > } virQEMUCapsFlags;
> >
>
> Reviewed-by: Thomas Huth <thuth@redhat.com>
>
> --
> libvir-list mailing list
> libvir-list@redhat.com
> https://www.redhat.com/mailman/listinfo/libvir-list
--
libvir-list mailing list
libvir-list@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list
On 10/25/18 5:17 AM, Chris Venteicher wrote:
> Quoting Thomas Huth (2018-10-19 06:58:34)
>> On 2018-10-18 16:54, Boris Fiuczynski wrote:
>>> Introduce vfio-ap capability.
>>>
>>> Signed-off-by: Boris Fiuczynski <fiuczy@linux.ibm.com>
>>> Reviewed-by: Bjoern Walk <bwalk@linux.ibm.com>
>>> ---
>>> src/qemu/qemu_capabilities.c | 2 ++
>>> src/qemu/qemu_capabilities.h | 1 +
>>> 2 files changed, 3 insertions(+)
>>>
>>> diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c
>>> index e228f52ec0..2ca5af3297 100644
>>> --- a/src/qemu/qemu_capabilities.c
>>> +++ b/src/qemu/qemu_capabilities.c
>>> @@ -508,6 +508,7 @@ VIR_ENUM_IMPL(virQEMUCaps, QEMU_CAPS_LAST,
>>> /* 315 */
>>> "vfio-pci.display",
>>> "blockdev",
>>> + "vfio-ap",
>>> );
>>>
>
> The statement "On s390, we have cryptographic coprocessor cards,
> which are modeled on Linux as devices on the AP bus."
> was made in email titled "s390: vfio-ap: guest dedicated crypto adapters"
>
Patch 6 of the qemu patch series
(https://lists.gnu.org/archive/html/qemu-devel/2018-10/msg01997.html)
has a very detailed documentation (docs/vfio-ap.txt) covering IBM
Adjunct Processor (AP) Cryptographic Facility.
> Does this imply other devices can exist on an AP Bus?
The AP bus is a linux construct used to represent the cryptographic
devices available via the Adjunct Processor Cryptographic Facility.
This implies even so there are different cards they all are crypto cards.
>
> Any chance this should be something like "vfio-ap.crypto" in the same
> way a "vfio-pci.display" entry is listed above seemingly implying a
> display device on a more generic pci bus? Or does "vfio-ap" always imply
> crypto?
Yes, it always is crypto only. Actually a vfio-ap mediated device is
used to specify the configuration of the ap bus including all cards,
usage domains and control domains passed into a qemu guest.
>
> Having difficulty sorting out the relationships between adjunct
> processor, crypto processor and ap bus from the patch docs and initial
> review of the references.
Maybe the KVM forum session of Halil Pasic can help a bit...?
https://events.linuxfoundation.org/wp-content/uploads/2017/12/vfio-ap-The-Perils-of-the-Weird-Halil-Pasic-IBM.pdf
>
>>>
>>> @@ -1092,6 +1093,7 @@ struct virQEMUCapsStringFlags virQEMUCapsObjectTypes[] = {
>>> { "vhost-vsock-device", QEMU_CAPS_DEVICE_VHOST_VSOCK },
>>> { "mch", QEMU_CAPS_DEVICE_MCH },
>>> { "sev-guest", QEMU_CAPS_SEV_GUEST },
>>> + { "vfio-ap", QEMU_CAPS_DEVICE_VFIO_AP },
>>> };
>>>
>>> static struct virQEMUCapsStringFlags virQEMUCapsDevicePropsVirtioBalloon[] = {
>>> diff --git a/src/qemu/qemu_capabilities.h b/src/qemu/qemu_capabilities.h
>>> index 934620ed31..6bb9a2c8f0 100644
>>> --- a/src/qemu/qemu_capabilities.h
>>> +++ b/src/qemu/qemu_capabilities.h
>>> @@ -492,6 +492,7 @@ typedef enum { /* virQEMUCapsFlags grouping marker for syntax-check */
>>> /* 315 */
>>> QEMU_CAPS_VFIO_PCI_DISPLAY, /* -device vfio-pci.display */
>>> QEMU_CAPS_BLOCKDEV, /* -blockdev and blockdev-add are supported */
>>> + QEMU_CAPS_DEVICE_VFIO_AP, /* -device vfio-ap */
>>>
>>> QEMU_CAPS_LAST /* this must always be the last item */
>>> } virQEMUCapsFlags;
>>>
>>
>> Reviewed-by: Thomas Huth <thuth@redhat.com>
>>
>> --
>> libvir-list mailing list
>> libvir-list@redhat.com
>> https://www.redhat.com/mailman/listinfo/libvir-list
>
> --
> libvir-list mailing list
> libvir-list@redhat.com
> https://www.redhat.com/mailman/listinfo/libvir-list
>
--
Mit freundlichen Grüßen/Kind regards
Boris Fiuczynski
IBM Deutschland Research & Development GmbH
Vorsitzender des Aufsichtsrats: Martina Köderitz
Geschäftsführung: Dirk Wittkopp
Sitz der Gesellschaft: Böblingen
Registergericht: Amtsgericht Stuttgart, HRB 243294
--
libvir-list mailing list
libvir-list@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list
On 10/25/18 1:54 PM, Boris Fiuczynski wrote:
> On 10/25/18 5:17 AM, Chris Venteicher wrote:
>> Quoting Thomas Huth (2018-10-19 06:58:34)
>>> On 2018-10-18 16:54, Boris Fiuczynski wrote:
>>>> Introduce vfio-ap capability.
>>>>
>>>> Signed-off-by: Boris Fiuczynski <fiuczy@linux.ibm.com>
>>>> Reviewed-by: Bjoern Walk <bwalk@linux.ibm.com>
>>>> ---
>>>> src/qemu/qemu_capabilities.c | 2 ++
>>>> src/qemu/qemu_capabilities.h | 1 +
>>>> 2 files changed, 3 insertions(+)
>>>>
>>>> diff --git a/src/qemu/qemu_capabilities.c
>>>> b/src/qemu/qemu_capabilities.c
>>>> index e228f52ec0..2ca5af3297 100644
>>>> --- a/src/qemu/qemu_capabilities.c
>>>> +++ b/src/qemu/qemu_capabilities.c
>>>> @@ -508,6 +508,7 @@ VIR_ENUM_IMPL(virQEMUCaps, QEMU_CAPS_LAST,
>>>> /* 315 */
>>>> "vfio-pci.display",
>>>> "blockdev",
>>>> + "vfio-ap",
>>>> );
>>
>> The statement "On s390, we have cryptographic coprocessor cards,
>> which are modeled on Linux as devices on the AP bus."
>> was made in email titled "s390: vfio-ap: guest dedicated crypto adapters"
>>
> Patch 6 of the qemu patch series
> (https://lists.gnu.org/archive/html/qemu-devel/2018-10/msg01997.html)
> has a very detailed documentation (docs/vfio-ap.txt) covering IBM
> Adjunct Processor (AP) Cryptographic Facility.
>
>> Does this imply other devices can exist on an AP Bus?
> The AP bus is a linux construct used to represent the cryptographic
> devices available via the Adjunct Processor Cryptographic Facility.
> This implies even so there are different cards they all are crypto cards.
>
>>
>> Any chance this should be something like "vfio-ap.crypto" in the same
>> way a "vfio-pci.display" entry is listed above seemingly implying a
>> display device on a more generic pci bus? Or does "vfio-ap" always imply
>> crypto?
> Yes, it always is crypto only. Actually a vfio-ap mediated device is
> used to specify the configuration of the ap bus including all cards,
> usage domains and control domains passed into a qemu guest.
>
>>
>> Having difficulty sorting out the relationships between adjunct
>> processor, crypto processor and ap bus from the patch docs and initial
>> review of the references.
> Maybe the KVM forum session of Halil Pasic can help a bit...?
> https://events.linuxfoundation.org/wp-content/uploads/2017/12/vfio-ap-The-Perils-of-the-Weird-Halil-Pasic-IBM.pdf
Or you could have a look at "Chapter 47. Generic cryptographic device
driver" here:
http://public.dhe.ibm.com/software/dw/linux390/docu/l418dd35.pdf
>
>
>>
>>>>
>>>> @@ -1092,6 +1093,7 @@ struct virQEMUCapsStringFlags
>>>> virQEMUCapsObjectTypes[] = {
>>>> { "vhost-vsock-device", QEMU_CAPS_DEVICE_VHOST_VSOCK },
>>>> { "mch", QEMU_CAPS_DEVICE_MCH },
>>>> { "sev-guest", QEMU_CAPS_SEV_GUEST },
>>>> + { "vfio-ap", QEMU_CAPS_DEVICE_VFIO_AP },
>>>> };
>>>> static struct virQEMUCapsStringFlags
>>>> virQEMUCapsDevicePropsVirtioBalloon[] = {
>>>> diff --git a/src/qemu/qemu_capabilities.h
>>>> b/src/qemu/qemu_capabilities.h
>>>> index 934620ed31..6bb9a2c8f0 100644
>>>> --- a/src/qemu/qemu_capabilities.h
>>>> +++ b/src/qemu/qemu_capabilities.h
>>>> @@ -492,6 +492,7 @@ typedef enum { /* virQEMUCapsFlags grouping
>>>> marker for syntax-check */
>>>> /* 315 */
>>>> QEMU_CAPS_VFIO_PCI_DISPLAY, /* -device vfio-pci.display */
>>>> QEMU_CAPS_BLOCKDEV, /* -blockdev and blockdev-add are
>>>> supported */
>>>> + QEMU_CAPS_DEVICE_VFIO_AP, /* -device vfio-ap */
>>>> QEMU_CAPS_LAST /* this must always be the last item */
>>>> } virQEMUCapsFlags;
>>>>
>>>
>>> Reviewed-by: Thomas Huth <thuth@redhat.com>
>>>
>>> --
>>> libvir-list mailing list
>>> libvir-list@redhat.com
>>> https://www.redhat.com/mailman/listinfo/libvir-list
>>
>> --
>> libvir-list mailing list
>> libvir-list@redhat.com
>> https://www.redhat.com/mailman/listinfo/libvir-list
>>
>
>
--
Mit freundlichen Grüßen/Kind regards
Boris Fiuczynski
IBM Deutschland Research & Development GmbH
Vorsitzender des Aufsichtsrats: Martina Köderitz
Geschäftsführung: Dirk Wittkopp
Sitz der Gesellschaft: Böblingen
Registergericht: Amtsgericht Stuttgart, HRB 243294
--
libvir-list mailing list
libvir-list@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list
Quoting Boris Fiuczynski (2018-10-25 07:35:44)
> On 10/25/18 1:54 PM, Boris Fiuczynski wrote:
> > On 10/25/18 5:17 AM, Chris Venteicher wrote:
> >> Quoting Thomas Huth (2018-10-19 06:58:34)
> >>> On 2018-10-18 16:54, Boris Fiuczynski wrote:
> >>>> Introduce vfio-ap capability.
> >>>>
> >>>> Signed-off-by: Boris Fiuczynski <fiuczy@linux.ibm.com>
> >>>> Reviewed-by: Bjoern Walk <bwalk@linux.ibm.com>
> >>>> ---
> >>>> src/qemu/qemu_capabilities.c | 2 ++
> >>>> src/qemu/qemu_capabilities.h | 1 +
> >>>> 2 files changed, 3 insertions(+)
> >>>>
> >>>> diff --git a/src/qemu/qemu_capabilities.c
> >>>> b/src/qemu/qemu_capabilities.c
> >>>> index e228f52ec0..2ca5af3297 100644
> >>>> --- a/src/qemu/qemu_capabilities.c
> >>>> +++ b/src/qemu/qemu_capabilities.c
> >>>> @@ -508,6 +508,7 @@ VIR_ENUM_IMPL(virQEMUCaps, QEMU_CAPS_LAST,
> >>>> /* 315 */
> >>>> "vfio-pci.display",
> >>>> "blockdev",
> >>>> + "vfio-ap",
> >>>> );
> >>
> >> The statement "On s390, we have cryptographic coprocessor cards,
> >> which are modeled on Linux as devices on the AP bus."
> >> was made in email titled "s390: vfio-ap: guest dedicated crypto adapters"
> >>
> > Patch 6 of the qemu patch series
> > (https://lists.gnu.org/archive/html/qemu-devel/2018-10/msg01997.html)
> > has a very detailed documentation (docs/vfio-ap.txt) covering IBM
> > Adjunct Processor (AP) Cryptographic Facility.
> >
> >> Does this imply other devices can exist on an AP Bus?
> > The AP bus is a linux construct used to represent the cryptographic
> > devices available via the Adjunct Processor Cryptographic Facility.
> > This implies even so there are different cards they all are crypto cards.
> >
> >>
> >> Any chance this should be something like "vfio-ap.crypto" in the same
> >> way a "vfio-pci.display" entry is listed above seemingly implying a
> >> display device on a more generic pci bus? Or does "vfio-ap" always imply
> >> crypto?
> > Yes, it always is crypto only. Actually a vfio-ap mediated device is
> > used to specify the configuration of the ap bus including all cards,
> > usage domains and control domains passed into a qemu guest.
> >
> >>
> >> Having difficulty sorting out the relationships between adjunct
> >> processor, crypto processor and ap bus from the patch docs and initial
> >> review of the references.
> > Maybe the KVM forum session of Halil Pasic can help a bit...?
> > https://events.linuxfoundation.org/wp-content/uploads/2017/12/vfio-ap-The-Perils-of-the-Weird-Halil-Pasic-IBM.pdf
> Or you could have a look at "Chapter 47. Generic cryptographic device
> driver" here:
> http://public.dhe.ibm.com/software/dw/linux390/docu/l418dd35.pdf
Thanks for the info. The Halil 2018 doc was good for orienting.
Can't say I understand the details but I don't see problems in the
source code it's self.
Reviewed-by: Chris Venteicher <cventeic@redhat.com>
> >
> >
> >>
> >>>>
> >>>> @@ -1092,6 +1093,7 @@ struct virQEMUCapsStringFlags
> >>>> virQEMUCapsObjectTypes[] = {
> >>>> { "vhost-vsock-device", QEMU_CAPS_DEVICE_VHOST_VSOCK },
> >>>> { "mch", QEMU_CAPS_DEVICE_MCH },
> >>>> { "sev-guest", QEMU_CAPS_SEV_GUEST },
> >>>> + { "vfio-ap", QEMU_CAPS_DEVICE_VFIO_AP },
> >>>> };
> >>>> static struct virQEMUCapsStringFlags
> >>>> virQEMUCapsDevicePropsVirtioBalloon[] = {
> >>>> diff --git a/src/qemu/qemu_capabilities.h
> >>>> b/src/qemu/qemu_capabilities.h
> >>>> index 934620ed31..6bb9a2c8f0 100644
> >>>> --- a/src/qemu/qemu_capabilities.h
> >>>> +++ b/src/qemu/qemu_capabilities.h
> >>>> @@ -492,6 +492,7 @@ typedef enum { /* virQEMUCapsFlags grouping
> >>>> marker for syntax-check */
> >>>> /* 315 */
> >>>> QEMU_CAPS_VFIO_PCI_DISPLAY, /* -device vfio-pci.display */
> >>>> QEMU_CAPS_BLOCKDEV, /* -blockdev and blockdev-add are
> >>>> supported */
> >>>> + QEMU_CAPS_DEVICE_VFIO_AP, /* -device vfio-ap */
> >>>> QEMU_CAPS_LAST /* this must always be the last item */
> >>>> } virQEMUCapsFlags;
> >>>>
> >>>
> >>> Reviewed-by: Thomas Huth <thuth@redhat.com>
> >>>
> >>> --
> >>> libvir-list mailing list
> >>> libvir-list@redhat.com
> >>> https://www.redhat.com/mailman/listinfo/libvir-list
> >>
> >> --
> >> libvir-list mailing list
> >> libvir-list@redhat.com
> >> https://www.redhat.com/mailman/listinfo/libvir-list
> >>
> >
> >
>
>
> --
> Mit freundlichen Grüßen/Kind regards
> Boris Fiuczynski
>
> IBM Deutschland Research & Development GmbH
> Vorsitzender des Aufsichtsrats: Martina Köderitz
> Geschäftsführung: Dirk Wittkopp
> Sitz der Gesellschaft: Böblingen
> Registergericht: Amtsgericht Stuttgart, HRB 243294
>
--
libvir-list mailing list
libvir-list@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list
© 2016 - 2026 Red Hat, Inc.