On Thu, Jan 05, 2017 at 12:19:56AM +0200, Andy Shevchenko wrote: > NAK, check the PCI devres code, please.
Releasing something through devres that wasn't allocated using a devm_* or pcim_* function isn't expected, and we should fix that instead. pci_free_irq_vectors is _currently_ implemented by calling pci_disable_msi and pci_disable_msix, but there is no guarantee for that in the API. Your code works by accident, not by design. If you want the resources to be auto-released you need to add a proper pcim_alloc_irq_vectors API.