From: Dave Hansen <dave@linux.vnet.ibm.com>
To: Christoph Hellwig <hch@infradead.org>
Cc: Ingo Molnar <mingo@elte.hu>,
containers <containers@lists.linux-foundation.org>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
"Serge E. Hallyn" <serue@us.ibm.com>,
Oren Laadan <orenl@cs.columbia.edu>,
Alexey Dobriyan <adobriyan@gmail.com>
Subject: Re: [RFC][PATCH 5/8] add f_op for checkpointability
Date: Sat, 28 Feb 2009 13:37:06 -0800 [thread overview]
Message-ID: <1235857026.26788.421.camel@nimitz> (raw)
In-Reply-To: <20090228205329.GB4254@infradead.org>
On Sat, 2009-02-28 at 15:53 -0500, Christoph Hellwig wrote:
> On Fri, Feb 27, 2009 at 12:34:31PM -0800, Dave Hansen wrote:
> > We have set up sane defaults for how filesystems should
> > be checkpointed. However, as usual in the VFS, there
> > are specialized places that will always need an ability
> > to override these defaults.
> >
> > This adds a new 'file_operations' function for
> > checkpointing a file. I did this under the assumption
> > that we should have a dirt-simple way to make something
> > (un)checkpointable that fits in with current code.
> >
> > As you can see in the /dev/null patch in a second, all
> > that we have to do to make something like /dev/null
> > supported is add a single "generic" f_op entry.
>
> Please don't do the fallback to allow checkpointing without file
> operations. We've never had luck with these fallbacks, and I'm
> in the process of getting of the last default file operation (llseek,
> which has a very bad default) currently.
You'll probably believe me when I tell you that I was looking at how
lseek was done when I did this. :)
Doing this will make for a much, much bigger patch, but I do understand
why you're asking for it to be done this way, so I'll give it a shot for
the next round.
> Incidentally that should also allow you to get rid of the per-fs flag
> by just checking for the presence of the operation to check if
> checkpointing is allowed.
Yup, I completely agree. The flag was basically an indicator when it
was OK to do the fallback.
> Also the double-use of the op seem not very nice to me. Is there any
> real life use case were you would have the operation on a file but
> sometimes not allow checkpoiting?
No, I don't have any good concrete ones. The first thing that comes to
mind is something like a pipe. We can checkpoint when there's no data,
but must refuse when there's data in the pipe. In practice, pipes are
fixable, but it is the kind of situation where I expected it to get
used.
Thanks, Christoph.
-- Dave
next prev parent reply other threads:[~2009-02-28 21:37 UTC|newest]
Thread overview: 81+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-02-27 20:34 [RFC][PATCH 1/8] kill '_data' in cr_hdr_fd_data name Dave Hansen
2009-02-27 20:34 ` [RFC][PATCH 2/8] breakout fdinfo sprintf() into its own function Dave Hansen
2009-02-27 20:34 ` Dave Hansen
2009-02-27 20:56 ` Vegard Nossum
[not found] ` <19f34abd0902271256r49a06336rcba56234c06645a7-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2009-02-27 21:23 ` Dave Hansen
2009-02-27 21:23 ` Dave Hansen
2009-02-27 20:56 ` Vegard Nossum
2009-02-27 20:34 ` [RFC][PATCH 3/8] create fs flags to mark c/r supported fs's Dave Hansen
2009-02-27 20:34 ` Dave Hansen
2009-02-27 21:16 ` Alexey Dobriyan
2009-02-27 21:16 ` Alexey Dobriyan
[not found] ` <20090227211620.GA3326-2ev+ksY9ol182hYKe6nXyg@public.gmane.org>
2009-02-27 21:20 ` Dave Hansen
2009-02-27 21:20 ` Dave Hansen
2009-02-27 20:34 ` [RFC][PATCH 4/8] file c/r: expose functions to query fs support Dave Hansen
2009-02-27 20:34 ` Dave Hansen
2009-02-27 21:14 ` Sukadev Bhattiprolu
2009-02-27 21:14 ` Sukadev Bhattiprolu
2009-02-27 21:24 ` Dave Hansen
2009-02-27 21:32 ` Dave Hansen
2009-02-27 21:32 ` Dave Hansen
[not found] ` <20090227211408.GB19872-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
2009-02-27 21:24 ` Dave Hansen
2009-02-28 1:33 ` Sukadev Bhattiprolu
2009-02-28 1:33 ` Sukadev Bhattiprolu
2009-02-27 20:34 ` [RFC][PATCH 5/8] add f_op for checkpointability Dave Hansen
2009-02-27 20:34 ` Dave Hansen
2009-02-28 2:14 ` Sukadev Bhattiprolu
2009-02-28 2:14 ` Sukadev Bhattiprolu
[not found] ` <20090228021412.GD19872-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
2009-02-28 2:51 ` Dave Hansen
2009-02-28 2:51 ` Dave Hansen
2009-02-28 20:53 ` Christoph Hellwig
2009-02-28 20:53 ` Christoph Hellwig
2009-02-28 21:37 ` Dave Hansen [this message]
2009-03-01 15:19 ` Serge E. Hallyn
2009-03-01 15:19 ` Serge E. Hallyn
[not found] ` <20090228205329.GB4254-wEGCiKHe2LqWVfeAwA7xHQ@public.gmane.org>
2009-02-28 21:37 ` Dave Hansen
2009-03-02 17:05 ` Dave Hansen
2009-03-02 17:05 ` Dave Hansen
2009-03-03 13:15 ` Christoph Hellwig
2009-03-20 21:13 ` Dave Hansen
2009-03-20 21:30 ` Oren Laadan
2009-03-20 21:30 ` Oren Laadan
[not found] ` <20090303131528.GB10931-wEGCiKHe2LqWVfeAwA7xHQ@public.gmane.org>
2009-03-20 21:13 ` Dave Hansen
2009-03-03 13:15 ` Christoph Hellwig
2009-02-27 20:34 ` [RFC][PATCH 6/8] mark /dev/null and zero as checkpointable Dave Hansen
2009-02-27 20:34 ` Dave Hansen
2009-02-27 20:34 ` [RFC][PATCH 7/8] add c/r info to fdinfo Dave Hansen
2009-02-27 20:34 ` Dave Hansen
2009-02-27 20:34 ` [RFC][PATCH 8/8] check files for checkpointability Dave Hansen
2009-02-27 20:34 ` Dave Hansen
2009-02-28 2:57 ` Sukadev Bhattiprolu
2009-02-28 2:57 ` Sukadev Bhattiprolu
[not found] ` <20090228025743.GA22451-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
2009-03-01 17:00 ` Serge E. Hallyn
2009-03-04 23:41 ` Dave Hansen
2009-03-01 17:00 ` Serge E. Hallyn
2009-03-04 23:41 ` Dave Hansen
2009-03-01 19:43 ` Serge E. Hallyn
2009-03-01 19:43 ` Serge E. Hallyn
2009-03-02 13:37 ` Serge E. Hallyn
2009-03-02 13:37 ` Serge E. Hallyn
2009-03-02 15:56 ` Dave Hansen
2009-03-02 15:59 ` Nathan Lynch
2009-03-02 16:27 ` Dave Hansen
2009-03-02 17:22 ` Nathan Lynch
2009-03-02 17:22 ` Nathan Lynch
2009-03-02 17:30 ` Dave Hansen
2009-03-02 17:44 ` Serge E. Hallyn
2009-03-02 17:44 ` Serge E. Hallyn
2009-03-02 17:58 ` Dave Hansen
[not found] ` <20090302174433.GA12708-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
2009-03-02 17:58 ` Dave Hansen
2009-03-02 18:13 ` Dave Hansen
2009-03-02 18:13 ` Dave Hansen
2009-03-02 18:35 ` Serge E. Hallyn
2009-03-02 18:35 ` Serge E. Hallyn
2009-03-05 8:20 ` Cedric Le Goater
2009-03-05 8:20 ` Cedric Le Goater
[not found] ` <20090302112247.76bb3662-4v5LP+xe+1byhTdZtsIeww@public.gmane.org>
2009-03-02 17:30 ` Dave Hansen
2009-03-02 16:28 ` Serge E. Hallyn
[not found] ` <20090302095917.6cfeda55-4v5LP+xe+1byhTdZtsIeww@public.gmane.org>
2009-03-02 16:27 ` Dave Hansen
2009-03-02 16:28 ` Serge E. Hallyn
[not found] ` <20090302133754.GA8033-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
2009-03-02 15:56 ` Dave Hansen
2009-03-02 15:59 ` Nathan Lynch
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=1235857026.26788.421.camel@nimitz \
--to=dave@linux.vnet.ibm.com \
--cc=adobriyan@gmail.com \
--cc=containers@lists.linux-foundation.org \
--cc=hch@infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@elte.hu \
--cc=orenl@cs.columbia.edu \
--cc=serue@us.ibm.com \
/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.