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

Re: [Xen-devel] [PATCH v2 0/6] xen: simplify suspend/resume handling



Hi,

On Thu, 28 Mar 2019 at 15:21, Juergen Gross <jgross@xxxxxxxx> wrote:
>
> On 28/03/2019 14:01, Volodymyr Babchuk wrote:
> > Hello Juergen,
> >
> > On Thu, 28 Mar 2019 at 14:09, Juergen Gross <jgross@xxxxxxxx> wrote:
> >>
> >> Especially in the scheduler area (schedule.c, cpupool.c) there is a
> >> rather complex handling involved when doing suspend and resume.
> >>
> >> This can be simplified a lot by not performing a complete cpu down and
> >> up cycle for the non-boot cpus, but keeping the pure software related
> >> state and freeing it only in case a cpu didn't come up again during
> >> resume.
> >>
> >> In summary not only the complexity can be reduced, but the failure
> >> tolerance will be even better with this series: With a dedicated hook
> >> for failing cpus when resuming it is now possible to survive e.g. a
> >> cpupool being left without any cpu after resume by moving its domains
> >> to cpupool0.
> >>
> >> Juergen Gross (6):
> >>   xen/sched: call cpu_disable_scheduler() via cpu notifier
> >>   xen: add helper for calling notifier_call_chain() to common/cpu.c
> >>   xen: add new cpu notifier action CPU_RESUME_FAILED
> >>   xen: don't free percpu areas during suspend
> >>   xen/cpupool: simplify suspend/resume handling
> >>   xen/sched: don't disable scheduler on cpus during suspend
> >>
> >>  xen/arch/arm/smpboot.c     |   4 -
> >>  xen/arch/x86/percpu.c      |   3 +-
> >>  xen/arch/x86/smpboot.c     |   3 -
> >>  xen/common/cpu.c           |  61 +++++++-------
> >>  xen/common/cpupool.c       | 131 ++++++++++++-----------------
> >>  xen/common/schedule.c      | 203 
> >> +++++++++++++++++++--------------------------
> >>  xen/include/xen/cpu.h      |  29 ++++---
> >>  xen/include/xen/sched-if.h |   1 -
> >>  8 files changed, 190 insertions(+), 245 deletions(-)
> >>
> >
> > I tested your patch series on ARM64 platform. We had issue with hard
> > affinity - there was assertion failure in sched_credit2 code during
> > suspension if one of the vCPUs is pinned to non-0 pCPU.
> >
> > Seems, your patch series fixes the issue during suspend. But now I'm
> > seeing crash during resume:
>
> Oh, I wasn't aware the suspend/resume is possible on ARM, too.
It is not upstreamed yet, but yes, it is possible.

> I need to modify arch/arm/percpu.c like on x86.
> Could you test the attached patch if it is working?
Yes, it is fixes the issue. Thank you.

-- 
WBR Volodymyr Babchuk aka lorc [+380976646013]
mailto: vlad.babchuk@xxxxxxxxx

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxxx
https://lists.xenproject.org/mailman/listinfo/xen-devel

 


Rackspace

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