Re: [PATCH v2] s390/vfio-ap: Driver feature advertisement

From: Anthony Krowiak
Date: Fri Sep 13 2024 - 12:24:41 EST




On 9/11/24 2:57 AM, Heiko Carstens wrote:
On Tue, Sep 10, 2024 at 07:34:40AM -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@xxxxxxxxxxxxx>
Reviewed-by: Anthony Krowiak <akrowiak@xxxxxxxxxxxxx>
Reviewed-by: Boris Fiuczynski <fiuczy@xxxxxxxxxxxxx>
---
Documentation/arch/s390/vfio-ap.rst | 34 +++++++++++++++++++++++++++++
drivers/s390/crypto/vfio_ap_drv.c | 13 +++++++++++
2 files changed, 47 insertions(+)
...

+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:
I stumbled across this only now: sysfs files are not supposed to have
several key value pairs. Actually the file(name) itself is supposed to
be the key and its contents are the value. So I would expect:

cat /sys/bus/matrix/devices/matrix/flags
guest_matrix dyn ap_config

Which is also easier to parse. Is there a good reason why this does
not follow the general approach for sysfs files?

I am okay with this, but I would keep the sysfs filename  'features'.

cat /sys/bus/matrix/devices/matrix/features
guest_matrix dyn ap_config