All of lore.kernel.org
 help / color / mirror / Atom feed
From: Oren Laadan <orenl@cs.columbia.edu>
To: Jeremy Fitzhardinge <jeremy@goop.org>
Cc: Dave Hansen <dave@linux.vnet.ibm.com>,
	Theodore Tso <tytso@mit.edu>,
	Daniel Lezcano <daniel.lezcano@fr.ibm.com>,
	Arnd Bergmann <arnd@arndb.de>,
	containers@lists.linux-foundation.org,
	linux-kernel@vger.kernel.org,
	Peter Chubb <peterc@gelato.unsw.edu.au>
Subject: Re: checkpoint/restart ABI
Date: Wed, 20 Aug 2008 17:52:29 -0400	[thread overview]
Message-ID: <48AC921D.7050201@cs.columbia.edu> (raw)
In-Reply-To: <48A1C2B9.9070107@goop.org>



Jeremy Fitzhardinge wrote:
> Dave Hansen wrote:
>>>> I'm not sure what you mean by "closed files".  Either the app has a fd,
>>>> it doesn't, or it is in sys_open() somewhere.  We have to get the app
>>>> into a quiescent state before we can checkpoint, so we basically just
>>>> say that we won't checkpoint things that are *in* the kernel.
>>>>       
>>> It's common for an app to write a tmp file, close it, and then open it a 
>>> bit later expecting to find the content it just wrote.  If you 
>>> checkpoint-kill it in the interim, reboot (clearing out /tmp) and then 
>>> resume, then it will lose its tmp file.  There's no explicit connection 
>>> between the process and its potential working set of files.
>>>     
>> I respectfully disagree.  The number one prerequisite for
>> checkpoint/restart is isolation.  Xen just happens to get this for free.
>>   
> 
> (I don't have my Xen hat on at all for this thread.)
> 
>> So, instead of saying that there's no explicit connection between the
>> process and its working set, ask yourself how we make a connection.
>>
>> In this case, we can do it with a filesystem (mount) namespace.  Each
>> container that we might want to checkpoint must have its writable
>> filesystems contained to a private set that are not shared with other
>> containers.  Things like union mounts would help here, but aren't
>> necessarily required.  They just make it more efficient.
>>   
> 
> We were dealing with checkpointing random sets of processes, and that 
> posed all sorts of problems.  Filesystem namespace was one, the pid 
> namespace was another.  Doing checkpointing at the container-level 
> granularity definitely solves a lot of problems.
> 
>>>> Is there anything specific you are thinking of that particularly worries
>>>> you?  I could write pages on the list you have there.
>>>>       
>>> No, that's the problem; it all worries me.  It's a big problem space.
>>>     
>> It's almost as big of a problem as trying to virtualize entire machines
>> and expecting them to run as fast as native. :)
>>   
> 
> No, it's much harder.  Hardware is relatively simple and immutable 
> compared to kernel and process state ;)
> 
>> Cool!  I didn't know you guys did the IRIX implementation.  I'm sure you
>> guys got a lot farther than any of us are.  Did you guys ever write any
>> papers or anything on it?  I'd be interested in more information.
>>   
> 
> Yeah, there was a paper, but it looks like the internet has lost it.  It 
> was at 
> http://www.csu.edu.au/special/conference/apwww95/.papers95/cmaltby/cmaltby.ps
> http://www.csu.edu.au/special/conference/apwww95/sept-all.html has 
> mention of the paper.
> 

you can find it here:

http://ertos.nicta.com.au/publications/papers/Maltby_Chubb_95.pdf

Oren.


  parent reply	other threads:[~2008-08-20 21:56 UTC|newest]

Thread overview: 141+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-08-07 22:40 [RFC][PATCH 0/4] kernel-based checkpoint restart Dave Hansen
2008-08-07 22:40 ` [RFC][PATCH 1/4] checkpoint-restart: general infrastructure Dave Hansen
2008-08-07 22:40 ` Dave Hansen
2008-08-08  9:46   ` Arnd Bergmann
     [not found]     ` <200808081146.54834.arnd-r2nGTMty4D4@public.gmane.org>
2008-08-08 18:50       ` Dave Hansen
2008-08-08 18:50     ` Dave Hansen
2008-08-08 20:59       ` Oren Laadan
2008-08-08 20:59       ` Oren Laadan
2008-08-08 22:17         ` Dave Hansen
2008-08-08 23:27           ` Oren Laadan
2008-08-08 23:27           ` Oren Laadan
2008-08-08 22:23         ` Arnd Bergmann
2008-08-14  8:09         ` [Devel] " Pavel Emelyanov
     [not found]           ` <48A3E81C.6010008-GEFAQzZX7r8dnm+yROfE0A@public.gmane.org>
2008-08-14 15:16             ` Dave Hansen
2008-08-14 15:16           ` Dave Hansen
     [not found]         ` <489CB3CA.6050304-eQaUEPhvms7ENvBUuze7eA@public.gmane.org>
2008-08-08 22:17           ` Dave Hansen
2008-08-08 22:23           ` Arnd Bergmann
2008-08-14  8:09           ` [Devel] " Pavel Emelyanov
2008-08-08 22:13       ` Arnd Bergmann
2008-08-08 22:26         ` Dave Hansen
2008-08-08 22:39           ` Arnd Bergmann
2008-08-08 22:39           ` Arnd Bergmann
2008-08-09  0:43             ` Dave Hansen
2008-08-09  6:37               ` Arnd Bergmann
2008-08-09  6:37               ` Arnd Bergmann
     [not found]                 ` <200808090837.07417.arnd-r2nGTMty4D4@public.gmane.org>
2008-08-09 13:39                   ` Dave Hansen
2008-08-09 13:39                 ` Dave Hansen
     [not found]             ` <200808090039.20289.arnd-r2nGTMty4D4@public.gmane.org>
2008-08-09  0:43               ` Dave Hansen
2008-08-11 15:07           ` Serge E. Hallyn
2008-08-11 15:07           ` Serge E. Hallyn
     [not found]             ` <20080811150703.GA25930-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
2008-08-11 15:25               ` Arnd Bergmann
2008-08-14  5:53               ` Pavel Machek
2008-08-11 15:25             ` Arnd Bergmann
2008-08-14  5:53             ` Pavel Machek
2008-08-14 15:12               ` Dave Hansen
     [not found]               ` <20080814055301.GH6995-+ZI9xUNit7I@public.gmane.org>
2008-08-14 15:12                 ` Dave Hansen
2008-08-20 21:40                 ` Oren Laadan
2008-08-20 21:40                   ` Oren Laadan
     [not found]         ` <200808090013.41999.arnd-r2nGTMty4D4@public.gmane.org>
2008-08-08 22:26           ` Dave Hansen
2008-08-11 15:22           ` Serge E. Hallyn
2008-08-11 15:22         ` Serge E. Hallyn
2008-08-11 16:53           ` Arnd Bergmann
     [not found]             ` <200808111853.13854.arnd-r2nGTMty4D4@public.gmane.org>
2008-08-11 17:11               ` Dave Hansen
2008-08-11 19:48               ` checkpoint/restart ABI Dave Hansen
2008-08-11 17:11             ` [RFC][PATCH 1/4] checkpoint-restart: general infrastructure Dave Hansen
2008-08-11 19:48             ` checkpoint/restart ABI Dave Hansen
2008-08-11 21:47               ` Arnd Bergmann
2008-08-11 21:47               ` Arnd Bergmann
2008-08-11 23:14                 ` Jonathan Corbet
     [not found]                   ` <20080811171433.2ce81f28-vw3g6Xz/EtPk1uMJSBkQmQ@public.gmane.org>
2008-08-11 23:23                     ` Dave Hansen
2008-08-11 23:23                   ` Dave Hansen
     [not found]                 ` <200808112347.50245.arnd-r2nGTMty4D4@public.gmane.org>
2008-08-11 23:14                   ` Jonathan Corbet
2008-08-21  5:56                   ` Oren Laadan
2008-08-21  5:56                     ` Oren Laadan
     [not found]                     ` <48AD0379.9030705-eQaUEPhvms7ENvBUuze7eA@public.gmane.org>
2008-08-21  8:43                       ` Arnd Bergmann
2008-08-21  8:43                     ` Arnd Bergmann
2008-08-21 15:43                       ` Oren Laadan
     [not found]                       ` <200808211043.41387.arnd-r2nGTMty4D4@public.gmane.org>
2008-08-21 15:43                         ` Oren Laadan
2008-08-11 21:54               ` Oren Laadan
2008-08-11 21:54               ` Oren Laadan
2008-08-11 23:38               ` Jeremy Fitzhardinge
2008-08-11 23:54                 ` Peter Chubb
2008-08-12 14:49                   ` Serge E. Hallyn
     [not found]                     ` <20080812144905.GA16016-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
2008-08-28 23:40                       ` Eric W. Biederman
2008-08-28 23:40                     ` Eric W. Biederman
     [not found]                   ` <87d4kfds5i.wl%peterc-LkDQP0DxSMGxwJ88Py/mJxCuuivNXqWP@public.gmane.org>
2008-08-12 14:49                     ` Serge E. Hallyn
2008-08-12 15:11                     ` Dave Hansen
2008-08-12 15:11                   ` Dave Hansen
     [not found]                 ` <48A0CD86.6030704-TSDbQ3PG+2Y@public.gmane.org>
2008-08-11 23:54                   ` Peter Chubb
2008-08-12 14:58                   ` Dave Hansen
2008-08-12 14:58                 ` Dave Hansen
2008-08-12 16:32                   ` Jeremy Fitzhardinge
2008-08-12 16:32                   ` Jeremy Fitzhardinge
2008-08-12 16:46                     ` Dave Hansen
2008-08-12 17:04                       ` Jeremy Fitzhardinge
     [not found]                         ` <48A1C2B9.9070107-TSDbQ3PG+2Y@public.gmane.org>
2008-08-20 21:52                           ` Oren Laadan
2008-08-20 21:52                         ` Oren Laadan [this message]
2008-08-12 17:04                       ` Jeremy Fitzhardinge
2008-08-20 21:54                       ` Oren Laadan
2008-08-20 22:11                         ` Dave Hansen
     [not found]                         ` <48AC929C.9030901-eQaUEPhvms7ENvBUuze7eA@public.gmane.org>
2008-08-20 22:11                           ` Dave Hansen
2008-08-20 21:54                       ` Oren Laadan
     [not found]                     ` <48A1BB39.3090108-TSDbQ3PG+2Y@public.gmane.org>
2008-08-12 16:46                       ` Dave Hansen
2008-08-11 23:38               ` Jeremy Fitzhardinge
     [not found]           ` <20080811152201.GB25930-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
2008-08-11 16:53             ` [RFC][PATCH 1/4] checkpoint-restart: general infrastructure Arnd Bergmann
2008-08-08 22:13       ` Arnd Bergmann
2008-08-08  9:46   ` Arnd Bergmann
2008-08-11 18:03   ` Jonathan Corbet
2008-08-11 18:03   ` Jonathan Corbet
2008-08-11 18:38     ` Dave Hansen
2008-08-12  3:44       ` Oren Laadan
2008-08-12  3:44         ` Oren Laadan
     [not found]     ` <20080811120315.4b3ba2c8-vw3g6Xz/EtPk1uMJSBkQmQ@public.gmane.org>
2008-08-11 18:38       ` Dave Hansen
2008-08-18  9:26   ` [Devel] " Pavel Emelyanov
2008-08-18  9:26     ` Pavel Emelyanov
2008-08-20 19:10     ` Dave Hansen
     [not found]     ` <48A94061.8040206-GEFAQzZX7r8dnm+yROfE0A@public.gmane.org>
2008-08-20 19:10       ` Dave Hansen
2008-08-07 22:40 ` [RFC][PATCH 2/4] checkpoint/restart: x86 support Dave Hansen
2008-08-08 12:09   ` Arnd Bergmann
2008-08-08 12:09   ` Arnd Bergmann
     [not found]     ` <200808081409.30591.arnd-r2nGTMty4D4@public.gmane.org>
2008-08-08 20:28       ` Oren Laadan
2008-08-08 20:28         ` Oren Laadan
2008-08-08 22:29         ` Arnd Bergmann
     [not found]           ` <200808090029.28286.arnd-r2nGTMty4D4@public.gmane.org>
2008-08-08 23:04             ` Oren Laadan
2008-08-08 23:04           ` Oren Laadan
2008-08-09  0:38             ` Dave Hansen
2008-08-09  1:20               ` Oren Laadan
     [not found]                 ` <489CF0CE.1000603-eQaUEPhvms7ENvBUuze7eA@public.gmane.org>
2008-08-09  2:20                   ` Dave Hansen
2008-08-09  2:20                 ` Dave Hansen
2008-08-09  2:35                   ` Oren Laadan
2008-08-09  2:35                   ` Oren Laadan
2008-08-09  1:20               ` Oren Laadan
2008-08-10 14:55               ` Jeremy Fitzhardinge
2008-08-10 14:55               ` Jeremy Fitzhardinge
2008-08-11 15:36                 ` Dave Hansen
2008-08-11 16:07                   ` Jeremy Fitzhardinge
2008-08-11 16:07                   ` Jeremy Fitzhardinge
     [not found]                 ` <489F015E.9080704-TSDbQ3PG+2Y@public.gmane.org>
2008-08-11 15:36                   ` Dave Hansen
2008-08-09  6:43             ` Arnd Bergmann
     [not found]             ` <489CD0F9.9060603-eQaUEPhvms7ENvBUuze7eA@public.gmane.org>
2008-08-09  0:38               ` Dave Hansen
2008-08-09  6:43               ` Arnd Bergmann
     [not found]         ` <489CAC70.7090809-eQaUEPhvms7ENvBUuze7eA@public.gmane.org>
2008-08-08 22:29           ` Arnd Bergmann
2008-08-07 22:40 ` Dave Hansen
2008-08-07 22:40 ` [RFC][PATCH 3/4] checkpoint/restart: memory management Dave Hansen
2008-08-08 12:12   ` Arnd Bergmann
2008-08-08 12:12     ` Arnd Bergmann
2008-08-07 22:40 ` Dave Hansen
2008-08-07 22:40 ` [RFC][PATCH 4/4] introduce sys_checkpoint and sys_restore Dave Hansen
2008-08-08 12:15   ` Arnd Bergmann
     [not found]     ` <200808081415.19179.arnd-r2nGTMty4D4@public.gmane.org>
2008-08-08 20:33       ` Oren Laadan
2008-08-08 20:33         ` Oren Laadan
2008-08-08 12:15   ` Arnd Bergmann
2008-08-07 22:40 ` Dave Hansen
2008-08-08  9:25 ` [RFC][PATCH 0/4] kernel-based checkpoint restart Arnd Bergmann
2008-08-08  9:25   ` Arnd Bergmann
2008-08-08 18:06   ` Dave Hansen
2008-08-08 18:18     ` Arnd Bergmann
2008-08-08 18:18     ` Arnd Bergmann
     [not found]   ` <200808081125.12706.arnd-r2nGTMty4D4@public.gmane.org>
2008-08-08 18:06     ` Dave Hansen
2008-08-08 19:44     ` Oren Laadan
2008-08-08 19:44       ` Oren Laadan

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=48AC921D.7050201@cs.columbia.edu \
    --to=orenl@cs.columbia.edu \
    --cc=arnd@arndb.de \
    --cc=containers@lists.linux-foundation.org \
    --cc=daniel.lezcano@fr.ibm.com \
    --cc=dave@linux.vnet.ibm.com \
    --cc=jeremy@goop.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=peterc@gelato.unsw.edu.au \
    --cc=tytso@mit.edu \
    /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.