pci_intx() is a hybrid function which can sometimes be managed through
devres. To remove this hybrid nature from pci_intx(), it is necessary to
port users to either an always-managed or a never-managed version.

xen enables its PCI-Device with pci_enable_device(). Thus, it
needs the never-managed version.

Replace pci_intx() with pci_intx_unmanaged().

Signed-off-by: Philipp Stanner <pstan...@redhat.com>
Acked-by: Juergen Gross <jgr...@suse.com>
---
 drivers/xen/xen-pciback/conf_space_header.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/xen/xen-pciback/conf_space_header.c 
b/drivers/xen/xen-pciback/conf_space_header.c
index fc0332645966..8d26d64232e8 100644
--- a/drivers/xen/xen-pciback/conf_space_header.c
+++ b/drivers/xen/xen-pciback/conf_space_header.c
@@ -106,7 +106,7 @@ static int command_write(struct pci_dev *dev, int offset, 
u16 value, void *data)
 
        if (dev_data && dev_data->allow_interrupt_control &&
            ((cmd->val ^ value) & PCI_COMMAND_INTX_DISABLE))
-               pci_intx(dev, !(value & PCI_COMMAND_INTX_DISABLE));
+               pci_intx_unmanaged(dev, !(value & PCI_COMMAND_INTX_DISABLE));
 
        cmd->val = value;
 
-- 
2.47.0


Reply via email to