From: Martin Schwidefsky <schwidefsky-tA70FqPdS9bQT0dZR+AlfA@public.gmane.org>
To: Oren Laadan <orenl-eQaUEPhvms7ENvBUuze7eA@public.gmane.org>
Cc: Linux Containers
<containers-qjLDD68F18O7TbgM5vRIOg@public.gmane.org>,
Arnd Bergmann <arnd-r2nGTMty4D4@public.gmane.org>
Subject: Re: [RFC PATCH 0/2] cr: Introduce s390x checkpoint/restart code
Date: Thu, 15 Jan 2009 11:10:44 +0100 [thread overview]
Message-ID: <1232014244.30152.19.camel@localhost> (raw)
In-Reply-To: <496F082C.3020008-eQaUEPhvms7ENvBUuze7eA@public.gmane.org>
On Thu, 2009-01-15 at 04:55 -0500, Oren Laadan wrote:
>
> Martin Schwidefsky wrote:
> > This hunk from patch #2 worries me a bit:
> >
> > struct cr_hdr_mm_context {
> > - __s16 unimplemented;
> > +#if 0
> > + unsigned long asce_bits;
> > + unsigned long asce_limit;
> > + int noexec;
> > + int has_pgste;
> > + int alloc_pgste;
> > +#endif
> > + unsigned long vdso_base;
> > };
> >
> > The page table can have 2, 3, or 4 levels and if KVM is used the page
> > tables have a the pgste table attached to them. If that is ignored then
> > the creation of the process address space on restart is definitly
> > broken.
>
> Disclaimer: I have zero knowledge about s390 specifics, so take
> this with a grain of salt...
>
> That said, I wonder why would we care about the page table choice ?
> Does user-level have any notion of this low-level detail ?
>
> We save the VMAs in checkpoint, and reconstruct them in restart by
> calling do_mmap_pgoff(). The nearest we get to that level is in
> calling follow_page() in cr_consider_private_page(), at checkpoint.
>
> I'd expect everything below to be entirely transparent to us.
Ok, the recreation of the VMs with do_mmap_pgoff takes care of the
number of page table leves. It gets automatically upgraded when the
first VMA is mapped that is over the limit.
What is left are the pgstes tables. After you forked the new process
that is used to restart a KVM enabled process you need to call
s390_enable_sie(), preferably before you recreate the VMAs.
--
blue skies,
Martin.
"Reality continues to ruin my life." - Calvin.
next prev parent reply other threads:[~2009-01-15 10:10 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-01-15 5:05 [RFC PATCH 0/2] cr: Introduce s390x checkpoint/restart code Serge E. Hallyn
[not found] ` <20090115050523.GA10415-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
2009-01-15 5:06 ` [RFC PATCH 1/2] c/r: hook checkpoint and restart for s390 Serge E. Hallyn
2009-01-15 5:06 ` [RFC PATCH 2/2] cr: s390: fill in the read/write routines Serge E. Hallyn
2009-01-15 9:39 ` [RFC PATCH 0/2] cr: Introduce s390x checkpoint/restart code Martin Schwidefsky
2009-01-15 9:55 ` Oren Laadan
[not found] ` <496F082C.3020008-eQaUEPhvms7ENvBUuze7eA@public.gmane.org>
2009-01-15 10:10 ` Martin Schwidefsky [this message]
2009-01-15 22:25 ` Serge E. Hallyn
2009-01-15 16:29 ` Serge E. Hallyn
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1232014244.30152.19.camel@localhost \
--to=schwidefsky-ta70fqpds9bqt0dzr+alfa@public.gmane.org \
--cc=arnd-r2nGTMty4D4@public.gmane.org \
--cc=containers-qjLDD68F18O7TbgM5vRIOg@public.gmane.org \
--cc=orenl-eQaUEPhvms7ENvBUuze7eA@public.gmane.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.