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

Re: [Xen-devel] [PATCH] xen: schedule: allow dom0 vCPUs to be re-pinned when dom0_vcpus_pin is set



>>> On 05.12.12 at 18:06, Matt Wilson <msw@xxxxxxxxxx> wrote:
> On Wed, Dec 05, 2012 at 04:25:36PM +0000, Jan Beulich wrote:
>> >>> On 05.12.12 at 16:59, Matt Wilson <msw@xxxxxxxxxx> wrote:
>> > On Wed, Dec 05, 2012 at 10:44:04AM +0000, Andrew Cooper wrote:
>> >> On 05/12/12 06:02, Matt Wilson wrote:
>> >> > An administrator may want Xen to pin dom0 vCPUs to pCPUs 1:1 at boot,
>> >> > but still have the flexibility to change the configuration later.
>> >> > There's no logic that keys off of domain->is_pinned outside of
>> >> > sched_init_vcpu() and vcpu_set_affinity(). By adjusting the
>> >> > is_pinned_vcpu() macro to only check for a single CPU set in the
>> >> > cpu_affinity mask, dom0 vCPUs can safely be re-pinned after the system
>> >> > boots.
>> >> 
>> >> Sadly this patch will break things.  There are certain callers of
>> >> is_pinned_vcpu() which rely on the value to allow access to certain
>> >> power related MSRs, which is where the requirement for never permitting
>> >> an update of the affinity mask comes from.
>> > 
>> > If this is true, the existing is_pinned_vcpu() test is broken:
>> > 
>> >    #define is_pinned_vcpu(v) ((v)->domain->is_pinned || \
>> >                               cpumask_weight((v)->cpu_affinity) == 1)
>> > 
>> > It's && not ||. So if someone pins dom0 vCPUs to pCPUs 1:1 after boot,
>> > the MSR traps will suddenly start working.
>> > 
>> > See commit: 
> http://xenbits.xen.org/gitweb/?p=xen.git;a=commitdiff;h=cc0854dd 
>> 
>> I don't see what's wrong here. Certain things merely require the
>> pCPU that a vCPU runs on to be stable, which is what the test
>> above is for.
> 
> Me either. That said, are you willing to Ack and commit my patch that
> started this thread?

In no case without Andrew's concerns addressed. Beyond that,
I'd be hesitant to ack it as I'm myself suspecting side effects that
we don't want and/or aren't aware of, and in no case could I
commit it without Keir's ack.

Jan


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

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