Re: [RFC][PATCH 2/2] first callers of process_deny_checkpoint()

From: Serge E. Hallyn
Date: Fri Oct 10 2008 - 10:04:48 EST


Quoting Cedric Le Goater (clg@xxxxxxxxxx):
> > diff -puN ipc/mqueue.c~no-checkpointing-for-sockets ipc/mqueue.c
> > --- linux-2.6.git/ipc/mqueue.c~no-checkpointing-for-sockets 2008-10-09 11:56:58.000000000 -0700
> > +++ linux-2.6.git-dave/ipc/mqueue.c 2008-10-09 11:56:58.000000000 -0700
> > @@ -14,6 +14,7 @@
> > */
> >
> > #include <linux/capability.h>
> > +#include <linux/checkpoint.h>
> > #include <linux/init.h>
> > #include <linux/pagemap.h>
> > #include <linux/file.h>
> > @@ -655,6 +656,8 @@ asmlinkage long sys_mq_open(const char _
> > char *name;
> > int fd, error;
> >
> > + process_deny_checkpointing(current);
> > +
>
> mqueue being a file system, i would put the checks in the inode_operations.
>
> Also, you can't always deny ! I would expect some allow in sys_mq_unlink().

Remember a part of Ingo's motivation is to push c/r developers to
address the lacking features that users use most, earlier. So the
warnings and subsequent email complaints are what we're after. Hence a
single 'checkpointable or not' flag.

Given the single flag, how do you know at sys_mq_unlink() whether the
process also has an opensocket?

Rather than make this tracking facility more complicated and intrusive,
if people complain that they couldn't checkpoint bc of a warning about
aio, then we implement aio c/r! We don't just try and reduce the amount
of time that you can't checkpoint bc of lack of aio c/r support :)

-serge
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/