* [PATCH] s390/vfio-ap: Driver feature advertisement
@ 2024-09-05 12:43 Jason J. Herne
2024-09-06 10:45 ` Heiko Carstens
0 siblings, 1 reply; 5+ messages in thread
From: Jason J. Herne @ 2024-09-05 12:43 UTC (permalink / raw)
To: linux-s390
Cc: linux-kernel, akrowiak, borntraeger, agordeev, gor, hca,
Jason J. Herne
Advertise features of the driver for the benefit of automated tooling
like Libvirt and mdevctl.
Signed-off-by: Jason J. Herne <jjherne@linux.ibm.com>
Reviewed-by: Anthony Krowiak <akrowiak@linux.ibm.com>
---
Documentation/arch/s390/vfio-ap.rst | 34 +++++++++++++++++++++++++++++
drivers/s390/crypto/vfio_ap_drv.c | 13 +++++++++++
2 files changed, 47 insertions(+)
diff --git a/Documentation/arch/s390/vfio-ap.rst b/Documentation/arch/s390/vfio-ap.rst
index ea744cbc8687..22f1965af500 100644
--- a/Documentation/arch/s390/vfio-ap.rst
+++ b/Documentation/arch/s390/vfio-ap.rst
@@ -999,6 +999,40 @@ the vfio_ap mediated device to which it is assigned as long as each new APQN
resulting from plugging it in references a queue device bound to the vfio_ap
device driver.
+Driver Features
+===============
+The vfio_ap driver exposes a sysfs file containing supported features.
+This exists so third party tools (like Libvirt and mdevctl) can query the
+availability of specific features.
+
+The features list can be found here: /sys/bus/matrix/devices/matrix/features
+
+Entries are \n delimited. Each entry contains a key value pair. The key is made
+up of a combination of alphanumeric and underscore characters. The separator
+consists of a space, a colon and then another space. The value consists of
+alphanumeric, space, and underscore characters.
+
+Example:
+cat /sys/bus/matrix/devices/matrix/features
+flags : guest_matrix dyn ap_config
+
+Presently only a single field named flags is defined. It is meant to advertise a
+list of features the driver provides. The flags fields advertises the following
+features:
+
+---------------+---------------------------------------------------------------+
+| Flag | Description |
++==============+===============================================================+
+| guest_matrix | guest_matrix attribute exists. It reports the matrix of |
+| | adapters and domains that are or will be passed through to a |
+| | guest when the mdev is attached to it. |
++--------------+---------------------------------------------------------------+
+| hotplug | Indicates hot plug/unplug of AP adapters, domains and control |
+| | domains for a guest to which the mdev is attached. |
++------------+-----------------------------------------------------------------+
+| ap_config | ap_config interface for one-shot modifications to mdev config |
++--------------+---------------------------------------------------------------+
+
Limitations
===========
Live guest migration is not supported for guests using AP devices without
diff --git a/drivers/s390/crypto/vfio_ap_drv.c b/drivers/s390/crypto/vfio_ap_drv.c
index 4aeb3e1213c7..85b8094f5e69 100644
--- a/drivers/s390/crypto/vfio_ap_drv.c
+++ b/drivers/s390/crypto/vfio_ap_drv.c
@@ -26,6 +26,18 @@ MODULE_LICENSE("GPL v2");
struct ap_matrix_dev *matrix_dev;
debug_info_t *vfio_ap_dbf_info;
+static ssize_t features_show(struct device *dev, struct device_attribute *attr, char *buf)
+{
+ return sprintf(buf, "flags : guest_matrix hotplug ap_config\n");
+}
+static DEVICE_ATTR_RO(features);
+
+static struct attribute *matrix_dev_attrs[] = {
+ &dev_attr_features.attr,
+ NULL,
+};
+ATTRIBUTE_GROUPS(matrix_dev);
+
/* Only type 10 adapters (CEX4 and later) are supported
* by the AP matrix device driver
*/
@@ -68,6 +80,7 @@ static struct device_driver matrix_driver = {
.name = "vfio_ap",
.bus = &matrix_bus,
.suppress_bind_attrs = true,
+ .dev_groups = matrix_dev_groups,
};
static int vfio_ap_matrix_dev_create(void)
--
2.46.0
^ permalink raw reply related [flat|nested] 5+ messages in thread
* Re: [PATCH] s390/vfio-ap: Driver feature advertisement
2024-09-05 12:43 [PATCH] s390/vfio-ap: Driver feature advertisement Jason J. Herne
@ 2024-09-06 10:45 ` Heiko Carstens
2024-09-09 12:02 ` Jason J. Herne
0 siblings, 1 reply; 5+ messages in thread
From: Heiko Carstens @ 2024-09-06 10:45 UTC (permalink / raw)
To: Jason J. Herne
Cc: linux-s390, linux-kernel, akrowiak, borntraeger, agordeev, gor
On Thu, Sep 05, 2024 at 08:43:51AM -0400, Jason J. Herne wrote:
> Advertise features of the driver for the benefit of automated tooling
> like Libvirt and mdevctl.
>
> Signed-off-by: Jason J. Herne <jjherne@linux.ibm.com>
> Reviewed-by: Anthony Krowiak <akrowiak@linux.ibm.com>
> ---
> Documentation/arch/s390/vfio-ap.rst | 34 +++++++++++++++++++++++++++++
> drivers/s390/crypto/vfio_ap_drv.c | 13 +++++++++++
> 2 files changed, 47 insertions(+)
Via which tree should this go upstream?
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH] s390/vfio-ap: Driver feature advertisement
2024-09-06 10:45 ` Heiko Carstens
@ 2024-09-09 12:02 ` Jason J. Herne
2024-09-09 12:41 ` Heiko Carstens
0 siblings, 1 reply; 5+ messages in thread
From: Jason J. Herne @ 2024-09-09 12:02 UTC (permalink / raw)
To: Heiko Carstens
Cc: linux-s390, linux-kernel, akrowiak, borntraeger, agordeev, gor
On 9/6/24 6:45 AM, Heiko Carstens wrote:
> On Thu, Sep 05, 2024 at 08:43:51AM -0400, Jason J. Herne wrote:
>> Advertise features of the driver for the benefit of automated tooling
>> like Libvirt and mdevctl.
>>
>> Signed-off-by: Jason J. Herne <jjherne@linux.ibm.com>
>> Reviewed-by: Anthony Krowiak <akrowiak@linux.ibm.com>
>> ---
>> Documentation/arch/s390/vfio-ap.rst | 34 +++++++++++++++++++++++++++++
>> drivers/s390/crypto/vfio_ap_drv.c | 13 +++++++++++
>> 2 files changed, 47 insertions(+)
>
> Via which tree should this go upstream?
>
I'm not 100% sure. Would s390 next be appropriate?
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH] s390/vfio-ap: Driver feature advertisement
2024-09-09 12:02 ` Jason J. Herne
@ 2024-09-09 12:41 ` Heiko Carstens
2024-09-09 12:49 ` Christian Borntraeger
0 siblings, 1 reply; 5+ messages in thread
From: Heiko Carstens @ 2024-09-09 12:41 UTC (permalink / raw)
To: Jason J. Herne
Cc: linux-s390, linux-kernel, akrowiak, borntraeger, agordeev, gor
On Mon, Sep 09, 2024 at 08:02:17AM -0400, Jason J. Herne wrote:
> On 9/6/24 6:45 AM, Heiko Carstens wrote:
> > On Thu, Sep 05, 2024 at 08:43:51AM -0400, Jason J. Herne wrote:
> > > Advertise features of the driver for the benefit of automated tooling
> > > like Libvirt and mdevctl.
> > >
> > > Signed-off-by: Jason J. Herne <jjherne@linux.ibm.com>
> > > Reviewed-by: Anthony Krowiak <akrowiak@linux.ibm.com>
> > > ---
> > > Documentation/arch/s390/vfio-ap.rst | 34 +++++++++++++++++++++++++++++
> > > drivers/s390/crypto/vfio_ap_drv.c | 13 +++++++++++
> > > 2 files changed, 47 insertions(+)
> >
> > Via which tree should this go upstream?
> >
> I'm not 100% sure. Would s390 next be appropriate?
Well that's up to you to decide; no objection from my side.
FWIW it would be helpful if for future patches there would be a
statement in the cover-letter how this should go upstream. Also
looking at the "To" list of your patch I don't think anybody would
feel like there is a todo :)
That said, you still need to send a v2 which replaces sprintf() with
sysfs_emit().
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH] s390/vfio-ap: Driver feature advertisement
2024-09-09 12:41 ` Heiko Carstens
@ 2024-09-09 12:49 ` Christian Borntraeger
0 siblings, 0 replies; 5+ messages in thread
From: Christian Borntraeger @ 2024-09-09 12:49 UTC (permalink / raw)
To: Heiko Carstens, Jason J. Herne
Cc: linux-s390, linux-kernel, akrowiak, agordeev, gor
Am 09.09.24 um 14:41 schrieb Heiko Carstens:
> On Mon, Sep 09, 2024 at 08:02:17AM -0400, Jason J. Herne wrote:
>> On 9/6/24 6:45 AM, Heiko Carstens wrote:
>>> On Thu, Sep 05, 2024 at 08:43:51AM -0400, Jason J. Herne wrote:
>>>> Advertise features of the driver for the benefit of automated tooling
>>>> like Libvirt and mdevctl.
>>>>
>>>> Signed-off-by: Jason J. Herne <jjherne@linux.ibm.com>
>>>> Reviewed-by: Anthony Krowiak <akrowiak@linux.ibm.com>
>>>> ---
>>>> Documentation/arch/s390/vfio-ap.rst | 34 +++++++++++++++++++++++++++++
>>>> drivers/s390/crypto/vfio_ap_drv.c | 13 +++++++++++
>>>> 2 files changed, 47 insertions(+)
>>>
>>> Via which tree should this go upstream?
>>>
>> I'm not 100% sure. Would s390 next be appropriate?
>
> Well that's up to you to decide; no objection from my side.
I think as long as we do not touch vfio internals (then we need to talk
to Alex) or kvm internals the s390 tree is a good default tree for
vfio-ap, so lets do that here.
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2024-09-09 12:49 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-09-05 12:43 [PATCH] s390/vfio-ap: Driver feature advertisement Jason J. Herne
2024-09-06 10:45 ` Heiko Carstens
2024-09-09 12:02 ` Jason J. Herne
2024-09-09 12:41 ` Heiko Carstens
2024-09-09 12:49 ` Christian Borntraeger
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox