<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/drivers/vfio/pci, branch linux-3.11.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-3.11.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-3.11.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2013-07-24T22:36:41Z</updated>
<entry>
<title>vfio-pci: Avoid deadlock on remove</title>
<updated>2013-07-24T22:36:41Z</updated>
<author>
<name>Alex Williamson</name>
</author>
<published>2013-06-10T22:40:57Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=d24cdbfd28b7e0ffecb1e281d73e73c03a57f734'/>
<id>urn:sha1:d24cdbfd28b7e0ffecb1e281d73e73c03a57f734</id>
<content type='text'>
If an attempt is made to unbind a device from vfio-pci while that
device is in use, the request is blocked until the device becomes
unused.  Unfortunately, that unbind path still grabs the device_lock,
which certain things like __pci_reset_function() also want to take.
This means we need to try to acquire the locks ourselves and use the
pre-locked version, __pci_reset_function_locked().

Signed-off-by: Alex Williamson &lt;alex.williamson@redhat.com&gt;
</content>
</entry>
<entry>
<title>vfio: remap_pfn_range() sets all those flags...</title>
<updated>2013-06-29T08:46:41Z</updated>
<author>
<name>Al Viro</name>
</author>
<published>2013-05-11T16:33:31Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=a47df1518efb9b5e9c5fc7cc7300e40f945a1f33'/>
<id>urn:sha1:a47df1518efb9b5e9c5fc7cc7300e40f945a1f33</id>
<content type='text'>
Signed-off-by: Al Viro &lt;viro@zeniv.linux.org.uk&gt;
</content>
</entry>
<entry>
<title>Merge tag 'vfio-for-v3.10' of git://github.com/awilliam/linux-vfio</title>
<updated>2013-05-02T21:02:32Z</updated>
<author>
<name>Linus Torvalds</name>
</author>
<published>2013-05-02T21:02:32Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=0b2e3b6bb4a415379f16e38fc92db42379be47a1'/>
<id>urn:sha1:0b2e3b6bb4a415379f16e38fc92db42379be47a1</id>
<content type='text'>
Pull vfio updates from Alex Williamson:
 "Changes include extension to support PCI AER notification to
  userspace, byte granularity of PCI config space and access to
  unarchitected PCI config space, better protection around IOMMU driver
  accesses, default file mode fix, and a few misc cleanups."

* tag 'vfio-for-v3.10' of git://github.com/awilliam/linux-vfio:
  vfio: Set container device mode
  vfio: Use down_reads to protect iommu disconnects
  vfio: Convert container-&gt;group_lock to rwsem
  PCI/VFIO: use pcie_flags_reg instead of access PCI-E Capabilities Register
  vfio-pci: Enable raw access to unassigned config space
  vfio-pci: Use byte granularity in config map
  vfio: make local function vfio_pci_intx_unmask_handler() static
  VFIO-AER: Vfio-pci driver changes for supporting AER
  VFIO: Wrapper for getting reference to vfio_device
</content>
</entry>
<entry>
<title>Merge tag 'pci-v3.10-changes' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci</title>
<updated>2013-04-29T16:30:25Z</updated>
<author>
<name>Linus Torvalds</name>
</author>
<published>2013-04-29T16:30:25Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=96a3e8af5a54c324535472ca946215d5bafe6539'/>
<id>urn:sha1:96a3e8af5a54c324535472ca946215d5bafe6539</id>
<content type='text'>
Pull PCI updates from Bjorn Helgaas:
 "PCI changes for the v3.10 merge window:

  PCI device hotplug
   - Remove ACPI PCI subdrivers (Jiang Liu, Myron Stowe)
   - Make acpiphp builtin only, not modular (Jiang Liu)
   - Add acpiphp mutual exclusion (Jiang Liu)

  Power management
   - Skip "PME enabled/disabled" messages when not supported (Rafael
     Wysocki)
   - Fix fallback to PCI_D0 (Rafael Wysocki)

  Miscellaneous
   - Factor quirk_io_region (Yinghai Lu)
   - Cache MSI capability offsets &amp; cleanup (Gavin Shan, Bjorn Helgaas)
   - Clean up EISA resource initialization and logging (Bjorn Helgaas)
   - Fix prototype warnings (Andy Shevchenko, Bjorn Helgaas)
   - MIPS: Initialize of_node before scanning bus (Gabor Juhos)
   - Fix pcibios_get_phb_of_node() declaration "weak" annotation (Gabor
     Juhos)
   - Add MSI INTX_DISABLE quirks for AR8161/AR8162/etc (Xiong Huang)
   - Fix aer_inject return values (Prarit Bhargava)
   - Remove PME/ACPI dependency (Andrew Murray)
   - Use shared PCI_BUS_NUM() and PCI_DEVID() (Shuah Khan)"

* tag 'pci-v3.10-changes' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci: (63 commits)
  vfio-pci: Use cached MSI/MSI-X capabilities
  vfio-pci: Use PCI_MSIX_TABLE_BIR, not PCI_MSIX_FLAGS_BIRMASK
  PCI: Remove "extern" from function declarations
  PCI: Use PCI_MSIX_TABLE_BIR, not PCI_MSIX_FLAGS_BIRMASK
  PCI: Drop msi_mask_reg() and remove drivers/pci/msi.h
  PCI: Use msix_table_size() directly, drop multi_msix_capable()
  PCI: Drop msix_table_offset_reg() and msix_pba_offset_reg() macros
  PCI: Drop is_64bit_address() and is_mask_bit_support() macros
  PCI: Drop msi_data_reg() macro
  PCI: Drop msi_lower_address_reg() and msi_upper_address_reg() macros
  PCI: Drop msi_control_reg() macro and use PCI_MSI_FLAGS directly
  PCI: Use cached MSI/MSI-X offsets from dev, not from msi_desc
  PCI: Clean up MSI/MSI-X capability #defines
  PCI: Use cached MSI-X cap while enabling MSI-X
  PCI: Use cached MSI cap while enabling MSI interrupts
  PCI: Remove MSI/MSI-X cap check in pci_msi_check_device()
  PCI: Cache MSI/MSI-X capability offsets in struct pci_dev
  PCI: Use u8, not int, for PM capability offset
  [SCSI] megaraid_sas: Use correct #define for MSI-X capability
  PCI: Remove "extern" from function declarations
  ...
</content>
</entry>
<entry>
<title>vfio-pci: Use cached MSI/MSI-X capabilities</title>
<updated>2013-04-24T17:35:56Z</updated>
<author>
<name>Bjorn Helgaas</name>
</author>
<published>2013-04-18T21:12:58Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=a9047f24df85b06d3fd443ff76e9993bc127c570'/>
<id>urn:sha1:a9047f24df85b06d3fd443ff76e9993bc127c570</id>
<content type='text'>
We now cache the MSI/MSI-X capability offsets in the struct pci_dev,
so no need to find the capabilities again.

Signed-off-by: Bjorn Helgaas &lt;bhelgaas@google.com&gt;
Acked-by: Alex Williamson &lt;alex.williamson@redhat.com&gt;</content>
</entry>
<entry>
<title>vfio-pci: Use PCI_MSIX_TABLE_BIR, not PCI_MSIX_FLAGS_BIRMASK</title>
<updated>2013-04-24T17:35:56Z</updated>
<author>
<name>Bjorn Helgaas</name>
</author>
<published>2013-04-18T18:42:58Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=508d1aa602ef0679a9cfc181ce918fbc4a2b3a45'/>
<id>urn:sha1:508d1aa602ef0679a9cfc181ce918fbc4a2b3a45</id>
<content type='text'>
PCI_MSIX_FLAGS_BIRMASK is mis-named because the BIR mask is in the
Table Offset register, not the flags ("Message Control" per spec)
register.

Signed-off-by: Bjorn Helgaas &lt;bhelgaas@google.com&gt;
Acked-by: Alex Williamson &lt;alex.williamson@redhat.com&gt;</content>
</entry>
<entry>
<title>PCI/VFIO: use pcie_flags_reg instead of access PCI-E Capabilities Register</title>
<updated>2013-04-15T14:45:10Z</updated>
<author>
<name>Yijing Wang</name>
</author>
<published>2013-04-15T14:45:10Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=aa2cba51a0a85dfbd5be58239e59bc5e8b5fb7cf'/>
<id>urn:sha1:aa2cba51a0a85dfbd5be58239e59bc5e8b5fb7cf</id>
<content type='text'>
Currently, we use pcie_flags_reg to cache PCI-E Capabilities Register,
because PCI-E Capabilities Register bits are almost read-only. This patch
use pcie_caps_reg() instead of another access PCI-E Capabilities Register.

Signed-off-by: Yijing Wang &lt;wangyijing@huawei.com&gt;
Signed-off-by: Alex Williamson &lt;alex.williamson@redhat.com&gt;
</content>
</entry>
<entry>
<title>vfio-pci: Enable raw access to unassigned config space</title>
<updated>2013-04-01T15:04:12Z</updated>
<author>
<name>Alex Williamson</name>
</author>
<published>2013-04-01T15:04:12Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=a7d1ea1c11b33bda2691f3294b4d735ed635535a'/>
<id>urn:sha1:a7d1ea1c11b33bda2691f3294b4d735ed635535a</id>
<content type='text'>
Devices like be2net hide registers between the gaps in capabilities
and architected regions of PCI config space.  Our choices to support
such devices is to either build an ever growing and unmanageable white
list or rely on hardware isolation to protect us.  These registers are
really no different than MMIO or I/O port space registers, which we
don't attempt to regulate, so treat PCI config space in the same way.

Reported-by: Gavin Shan &lt;shangw@linux.vnet.ibm.com&gt;
Signed-off-by: Alex Williamson &lt;alex.williamson@redhat.com&gt;
Tested-by: Gavin Shan &lt;shangw@linux.vnet.ibm.com&gt;
</content>
</entry>
<entry>
<title>vfio-pci: Use byte granularity in config map</title>
<updated>2013-04-01T15:03:44Z</updated>
<author>
<name>Alex Williamson</name>
</author>
<published>2013-04-01T15:03:44Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=180b1381078924b2442a42cded514afd6faff458'/>
<id>urn:sha1:180b1381078924b2442a42cded514afd6faff458</id>
<content type='text'>
The config map previously used a byte per dword to map regions of
config space to capabilities.  Modulo a bug where we round the length
of capabilities down instead of up, this theoretically works well and
saves space so long as devices don't try to hide registers in the gaps
between capabilities.  Unfortunately they do exactly that so we need
byte granularity on our config space map.  Increase the allocation of
the config map and split accesses at capability region boundaries.

Signed-off-by: Alex Williamson &lt;alex.williamson@redhat.com&gt;
Tested-by: Gavin Shan &lt;shangw@linux.vnet.ibm.com&gt;
</content>
</entry>
<entry>
<title>vfio-pci: Fix possible integer overflow</title>
<updated>2013-03-26T17:33:16Z</updated>
<author>
<name>Alex Williamson</name>
</author>
<published>2013-03-26T17:33:16Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=904c680c7bf016a8619a045850937427f8d7368c'/>
<id>urn:sha1:904c680c7bf016a8619a045850937427f8d7368c</id>
<content type='text'>
The VFIO_DEVICE_SET_IRQS ioctl takes a start and count parameter, both
of which are unsigned.  We attempt to bounds check these, but fail to
account for the case where start is a very large number, allowing
start + count to wrap back into the valid range.  Bounds check both
start and start + count.

Reported-by: Dan Carpenter &lt;dan.carpenter@oracle.com&gt;
Signed-off-by: Alex Williamson &lt;alex.williamson@redhat.com&gt;
</content>
</entry>
</feed>
