ia64/xen-unstable

changeset 12801:968caf47b548

[IA64] workaround NaT consumption fault when hiding a PCI function from dom0

The free_irq() path seems to have trouble with devices hidden from
dom0 for driver domains. The result is a NaT consumption fault in
the reboot notifier_call_chain() when dom0 reboots. This workaround
prevents the problem until it can be further investigated.

Signed-off-by: Alex Williamson <alex.williamson@hp.com>
author awilliam@xenbuild2.aw
date Thu Dec 07 16:18:55 2006 -0700 (2006-12-07)
parents 21267b552cc9
children 970ff2ba748f
files xen/arch/ia64/xen/hypercall.c
line diff
     1.1 --- a/xen/arch/ia64/xen/hypercall.c	Thu Dec 07 05:43:04 2006 -0700
     1.2 +++ b/xen/arch/ia64/xen/hypercall.c	Thu Dec 07 16:18:55 2006 -0700
     1.3 @@ -472,7 +472,12 @@ static long do_physdev_op(int cmd, XEN_G
     1.4              vector > IA64_LAST_DEVICE_VECTOR)
     1.5              break;
     1.6          
     1.7 -        free_irq_vector(vector);
     1.8 +        /* XXX This should be called, but causes a NAT consumption via the
     1.9 +	 * reboot notifier_call_chain in dom0 if a device is hidden for
    1.10 +	 * a driver domain using pciback.hide= (specifically, hiding function
    1.11 +	 * 1 of a 2 port e1000 card).
    1.12 +	 * free_irq_vector(vector);
    1.13 +	 */
    1.14          ret = 0;
    1.15          break;
    1.16      }