[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [PATCH] linux-2.6.18/evtchn: clear secondary CPUs' cpu_evtchn_mask[] after restore



>>> On 15.11.10 at 17:56, "Jan Beulich" <JBeulich@xxxxxxxxxx> wrote:
> To bind all event channels to CPU#0, it is not sufficient to set all of
> its cpu_evtchn_mask[] bits; all other CPUs also need to get their bits
> cleared. Otherwise, evtchn_do_upcall() will start handling interrupts
> on CPUs they're not intended to run on, which can be particularly bad
> for per-CPU ones.

I believe this also needs to be fixed in the pv-ops sources.

Furthermore, while debugging this, I looked at pv-ops'
implementation of bind_evtchn_to_cpu(), and I suspect that the
use of __clear_bit() and __set_bit() isn't correct there - looking
over the call sites there doesn't appear to be a common serializing
spinlock. If so the underscore-less variants ought to be used.

Jan


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.