[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Xen-devel] dom0less + sched=null => broken in staging
On Tue, 2019-08-13 at 19:43 +0100, Julien Grall wrote:
> On 8/13/19 6:34 PM, Dario Faggioli wrote:
> > On Tue, 2019-08-13 at 17:52 +0100, Julien Grall wrote:
> > >
> > So, unless the flag gets cleared again, or something else happens
> > that
> > makes the vCPU(s) fail the vcpu_runnable() check in
> > domain_unpause()->vcpu_wake(), I don't see why the wakeup that let
> > the
> > null scheduler start scheduling the vCPU doesn't happen... as it
> > instead does on x86 or !dom0less ARM (because, as far as I've
> > understood, it's only dom0less that doesn't work, it this correct?)
>
> Yes, I quickly tried to use NULL scheduler with just dom0 and it
> boots.
>
Ok.
> Interestingly, I can't see the log:
>
> (XEN) Freed 328kB init memory.
>
> This is called as part of init_done before CPU0 goes into the idle
> loop.
>
> Adding more debug, it is getting stuck when calling
> domain_unpause_by_controller for dom0. Specifically vcpu_wake on
> dom0v0.
>
Wait... Is this also with just dom0, or when trying dom0less with some
domUs?
Dom0 is unpaused after all the domUs. In other words, the scheduler will see domUs first.
> The loop to assign a pCPU in null_vcpu_wake() is turning into an
> infinite loop. Indeed the loop is trying to pick CPU0 for dom0v0 that
> is
> already used by dom1v0. So the problem is in pick_cpu() or the data
> used
> by it.
>
Ah, interesting...
> It feels to me this is an affinity problem. Note that I didn't
> request
> to pin dom0 vCPUs.
>
Yep, looking better, I think I've seen something suspicious now. I'll
send another debug patch.
You may want to see my last e-mail first just in case it rings a bell. :) I did more debugging during the evening.
Cheers,
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxxx
https://lists.xenproject.org/mailman/listinfo/xen-devel
|