From: Alex Williamson <alex.williamson-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
To: Baptiste Reynal
<b.reynal-lrHrjnjw1UfHK3s98zE1ajGjJy/sRE9J@public.gmane.org>
Cc: iommu-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org,
tech-lrHrjnjw1UfHK3s98zE1ajGjJy/sRE9J@public.gmane.org,
kvmarm-FPEHb7Xf0XXUo1n7N8X6UoWGPAHP3yOg@public.gmane.org,
christoffer.dall-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org,
eric.auger-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org
Subject: Re: [RFC PATCH v4 0/3] vfio: platform: return device properties for a platform device
Date: Wed, 09 Sep 2015 14:49:05 -0600 [thread overview]
Message-ID: <1441831745.20355.543.camel@redhat.com> (raw)
In-Reply-To: <1441790231-22920-1-git-send-email-b.reynal-lrHrjnjw1UfHK3s98zE1ajGjJy/sRE9J@public.gmane.org>
On Wed, 2015-09-09 at 11:17 +0200, Baptiste Reynal wrote:
> This RFC's intention is to show what an interface to access device
> properties for the VFIO platform driver can look like. These properties
> can be retrieved from the device tree node describing the device, or ACPI
> properties.
>
> If a device property corresponding to a platform device bound to VFIO PLATFORM
> or VFIO AMBA is available, this patch series will allow the user to query
> for this information. This can be useful for userspace drivers to automatically
> query parameters related to the device.
>
> Specifically for QEMU, reading the "compatible" property of the device tree
> node could be of use to find out what device is being assigned to the guest and
> handle appropriately a wider range of devices in the future, and to generate an
> appropriate device tree for the guest.
>
> Older versions of this series were specifically targeted at device tree
> properties. The v3 has been reworked on top of Rafael J. Wysocki's
> uniform device properties API for device tree and ACPI devices. This will allow
> us to use the API in the future with devices described via ACPI.
>
> The API to get the list of available properties and the device tree full_name
> have been removed. These probably don't serve an useful purpose, as the user
> of this API need to know anyway what properties are specific to the device he
> wants to access with VFIO. If we decide to reintroduce the list of properties
> in the future, the generic device properties API in the kernel will have to
> be extended accordingly.
>
> A kernel with this series and all the dependencies applied can be pulled from
> branch vfio-device-properties-v4 from the repository:
> https://git.virtualopensystems.com/dev/linux.git
Did we ever get past whether this is a necessary interface and why it's
vfio's job to provide it? Support for sysfs is a requirement for QEMU
to determine the correct IOMMU group number for a device, and it doesn't
seem unreasonable for sysfs to provide retrieval of device property
information for all users, not just vfio. So I haven't fully bought
into this interface yet, but I reviewed it nonetheless. Thanks,
Alex
> Changes since v3:
> - Rebased on top on v4.2
> - Rework VFIO_DEVICE_GET_DEV_PROPERTY ioctl
> - Rework code according to Eric Auger's comments
> Changes since v2:
> - Reworked on top of Rafael J. Wysocki's uniform device properties API for
> device tree and ACPI
> - Support for u64 array properties
> - Removed API to get list of available properties and device tree full_name
> Changes since v1:
> - Updated for VFIO platform patch series v8:
> VFIO AMBA devices now supported in addition to VFIO PLATFORM devices
> - Refactored and cleaned up the code
>
> Antonios Motakis (3):
> vfio: platform: add device properties skeleton and user API
> vfio: platform: access device property as a list of strings
> vfio: platform: return device properties as arrays of unsigned
> integers
>
> drivers/vfio/platform/Makefile | 3 +-
> drivers/vfio/platform/properties.c | 178 ++++++++++++++++++++++++++
> drivers/vfio/platform/vfio_platform_common.c | 35 +++++
> drivers/vfio/platform/vfio_platform_private.h | 7 +
> include/uapi/linux/vfio.h | 31 +++++
> 5 files changed, 253 insertions(+), 1 deletion(-)
> create mode 100644 drivers/vfio/platform/properties.c
>
prev parent reply other threads:[~2015-09-09 20:49 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-09-09 9:17 [RFC PATCH v4 0/3] vfio: platform: return device properties for a platform device Baptiste Reynal
2015-09-09 9:17 ` [RFC PATCH v4 1/3] vfio: platform: add device properties skeleton and user API Baptiste Reynal
[not found] ` <1441790231-22920-2-git-send-email-b.reynal-lrHrjnjw1UfHK3s98zE1ajGjJy/sRE9J@public.gmane.org>
2015-09-09 20:48 ` Alex Williamson
2015-09-10 6:35 ` Baptiste Reynal
2015-09-09 9:17 ` [RFC PATCH v4 2/3] vfio: platform: access device property as a list of strings Baptiste Reynal
2015-09-09 20:48 ` Alex Williamson
2015-09-10 6:37 ` Baptiste Reynal
2015-09-09 9:17 ` [RFC PATCH v4 3/3] vfio: platform: return device properties as arrays of unsigned integers Baptiste Reynal
2015-09-09 20:48 ` Alex Williamson
2015-09-10 6:39 ` Baptiste Reynal
[not found] ` <1441790231-22920-1-git-send-email-b.reynal-lrHrjnjw1UfHK3s98zE1ajGjJy/sRE9J@public.gmane.org>
2015-09-09 20:49 ` Alex Williamson [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1441831745.20355.543.camel@redhat.com \
--to=alex.williamson-h+wxahxf7alqt0dzr+alfa@public.gmane.org \
--cc=b.reynal-lrHrjnjw1UfHK3s98zE1ajGjJy/sRE9J@public.gmane.org \
--cc=christoffer.dall-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org \
--cc=eric.auger-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org \
--cc=iommu-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org \
--cc=kvmarm-FPEHb7Xf0XXUo1n7N8X6UoWGPAHP3yOg@public.gmane.org \
--cc=tech-lrHrjnjw1UfHK3s98zE1ajGjJy/sRE9J@public.gmane.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox