diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2013-09-09 13:19:36 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2013-09-09 13:19:36 -0400 |
commit | d75671e36e14b73d7c0d3cec49328dcd984af699 (patch) | |
tree | 87604fe7c082b82b436f2111e47f5a366436271e /include/uapi | |
parent | bf97293eb878df3792d9de7213bd7b82135aea77 (diff) | |
parent | dac09b57c0ff57e55dd6fa5109076c8af0468a75 (diff) |
Merge tag 'vfio-v3.12-rc0' of git://github.com/awilliam/linux-vfio
Pull VFIO update from Alex Williamson:
"VFIO updates include safer default file flags for VFIO device fds, an
external user interface exported to allow other modules to hold
references to VFIO groups, a fix to test for extended config space on
PCIe and PCI-x, and new hot reset interfaces for PCI devices which
allows the user to do PCI bus/slot resets when all of the devices
affected by the reset are owned by the user.
For this last feature, the PCI bus reset interface, I depend on
changes already merged from Bjorn's PCI pull request. I therefore
merged my tree up to commit cb3e433, which I think was the correct
action, but as Stephen Rothwell noted, I failed to provide a commit
message indicating why the merge was required. Sorry for that.
Thanks, Alex"
* tag 'vfio-v3.12-rc0' of git://github.com/awilliam/linux-vfio:
vfio: fix documentation
vfio-pci: PCI hot reset interface
vfio-pci: Test for extended config space
vfio-pci: Use fdget() rather than eventfd_fget()
vfio: Add O_CLOEXEC flag to vfio device fd
vfio: use get_unused_fd_flags(0) instead of get_unused_fd()
vfio: add external user support
Diffstat (limited to 'include/uapi')
-rw-r--r-- | include/uapi/linux/vfio.h | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/include/uapi/linux/vfio.h b/include/uapi/linux/vfio.h index 916e444e6f74..0fd47f5bc146 100644 --- a/include/uapi/linux/vfio.h +++ b/include/uapi/linux/vfio.h | |||
@@ -324,6 +324,44 @@ enum { | |||
324 | VFIO_PCI_NUM_IRQS | 324 | VFIO_PCI_NUM_IRQS |
325 | }; | 325 | }; |
326 | 326 | ||
327 | /** | ||
328 | * VFIO_DEVICE_GET_PCI_HOT_RESET_INFO - _IORW(VFIO_TYPE, VFIO_BASE + 12, | ||
329 | * struct vfio_pci_hot_reset_info) | ||
330 | * | ||
331 | * Return: 0 on success, -errno on failure: | ||
332 | * -enospc = insufficient buffer, -enodev = unsupported for device. | ||
333 | */ | ||
334 | struct vfio_pci_dependent_device { | ||
335 | __u32 group_id; | ||
336 | __u16 segment; | ||
337 | __u8 bus; | ||
338 | __u8 devfn; /* Use PCI_SLOT/PCI_FUNC */ | ||
339 | }; | ||
340 | |||
341 | struct vfio_pci_hot_reset_info { | ||
342 | __u32 argsz; | ||
343 | __u32 flags; | ||
344 | __u32 count; | ||
345 | struct vfio_pci_dependent_device devices[]; | ||
346 | }; | ||
347 | |||
348 | #define VFIO_DEVICE_GET_PCI_HOT_RESET_INFO _IO(VFIO_TYPE, VFIO_BASE + 12) | ||
349 | |||
350 | /** | ||
351 | * VFIO_DEVICE_PCI_HOT_RESET - _IOW(VFIO_TYPE, VFIO_BASE + 13, | ||
352 | * struct vfio_pci_hot_reset) | ||
353 | * | ||
354 | * Return: 0 on success, -errno on failure. | ||
355 | */ | ||
356 | struct vfio_pci_hot_reset { | ||
357 | __u32 argsz; | ||
358 | __u32 flags; | ||
359 | __u32 count; | ||
360 | __s32 group_fds[]; | ||
361 | }; | ||
362 | |||
363 | #define VFIO_DEVICE_PCI_HOT_RESET _IO(VFIO_TYPE, VFIO_BASE + 13) | ||
364 | |||
327 | /* -------- API for Type1 VFIO IOMMU -------- */ | 365 | /* -------- API for Type1 VFIO IOMMU -------- */ |
328 | 366 | ||
329 | /** | 367 | /** |