unbind_from_irqhandler takes irq, not evtchn, as its first argument. Signed-off-by: Rafal Wojtczuk --- linux-2.6.34.1/drivers/xen/pcifront/xenbus.c.orig 2010-09-29 16:47:39.961674359 +0200 +++ linux-2.6.34.1/drivers/xen/pcifront/xenbus.c 2010-09-29 16:47:49.458675391 +0200 @@ -61,7 +61,7 @@ static void free_pdev(struct pcifront_de /*For PCIE_AER error handling job*/ flush_scheduled_work(); - unbind_from_irqhandler(pdev->evtchn, pdev); + unbind_from_irqhandler(irq_from_evtchn(pdev->evtchn), pdev); if (pdev->evtchn != INVALID_EVTCHN) xenbus_free_evtchn(pdev->xdev, pdev->evtchn);