Linux IOMMU Development
 help / color / mirror / Atom feed
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
> 

      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