Hard hang in hypervisor!?

Paul Mackerras paulus at samba.org
Thu Oct 11 10:04:40 EST 2007


Linas Vepstas writes:

> Err ..  it was cpu 0 that was spinlocked.  Are interrupts not
> distributed?

We have some bogosities in the xics code that I noticed a couple of
days ago.  Basically we only set the xics to distribute interrupts to
all cpus if (a) the affinity mask is equal to CPU_MASK_ALL (which has
ones in every bit position from 0 to NR_CPUS-1) and (b) all present
cpus are online (cpu_online_map == cpu_present_map).  Otherwise we
direct interrupts to the first cpu in the affinity map.  So you can
easily have the affinity mask containing all the online cpus and still
not get distributed interrupts.

So in your case it's quite possible that all interrupts were directed
to cpu 0.

Paul.



More information about the Linuxppc-dev mailing list