From: "Serge E. Hallyn" <serge@hallyn.com>
To: ntl@pobox.com
Cc: linux-kernel@vger.kernel.org, containers@lists.linux-foundation.org
Subject: Re: [PATCH 04/10] Introduce vfs_fcntl() helper
Date: Sun, 3 Apr 2011 13:57:27 -0500 [thread overview]
Message-ID: <20110403185727.GC15044@hallyn.com> (raw)
In-Reply-To: <1298936432-29607-5-git-send-email-ntl@pobox.com>
Quoting ntl@pobox.com (ntl@pobox.com):
> From: Nathan Lynch <ntl@pobox.com>
>
> When restoring process state from a checkpoint image, it will be
> necessary to restore file status flags; add vfs_fcntl() for this
> purpose.
>
> Based on original code by Oren Laadan.
>
> Signed-off-by: Oren Laadan <orenl@cs.columbia.edu>
> [ntl: extracted from "c/r: checkpoint and restart open file descriptors"]
> Signed-off-by: Nathan Lynch <ntl@pobox.com>
Acked-by: Serge Hallyn <serge.hallyn@ubuntu.com>
> ---
> fs/fcntl.c | 21 +++++++++++++--------
> include/linux/fs.h | 2 ++
> 2 files changed, 15 insertions(+), 8 deletions(-)
>
> diff --git a/fs/fcntl.c b/fs/fcntl.c
> index ecc8b39..8e797b7 100644
> --- a/fs/fcntl.c
> +++ b/fs/fcntl.c
> @@ -426,6 +426,18 @@ static long do_fcntl(int fd, unsigned int cmd, unsigned long arg,
> return err;
> }
>
> +int vfs_fcntl(int fd, unsigned int cmd, unsigned long arg, struct file *filp)
> +{
> + int err;
> +
> + err = security_file_fcntl(filp, cmd, arg);
> + if (err)
> + goto out;
> + err = do_fcntl(fd, cmd, arg, filp);
> + out:
> + return err;
> +}
> +
> SYSCALL_DEFINE3(fcntl, unsigned int, fd, unsigned int, cmd, unsigned long, arg)
> {
> struct file *filp;
> @@ -435,14 +447,7 @@ SYSCALL_DEFINE3(fcntl, unsigned int, fd, unsigned int, cmd, unsigned long, arg)
> if (!filp)
> goto out;
>
> - err = security_file_fcntl(filp, cmd, arg);
> - if (err) {
> - fput(filp);
> - return err;
> - }
> -
> - err = do_fcntl(fd, cmd, arg, filp);
> -
> + err = vfs_fcntl(fd, cmd, arg, filp);
> fput(filp);
> out:
> return err;
> diff --git a/include/linux/fs.h b/include/linux/fs.h
> index 315ded4..175bb75 100644
> --- a/include/linux/fs.h
> +++ b/include/linux/fs.h
> @@ -1112,6 +1112,8 @@ struct file_lock {
>
> #include <linux/fcntl.h>
>
> +extern int vfs_fcntl(int fd, unsigned cmd, unsigned long arg, struct file *fp);
> +
> extern void send_sigio(struct fown_struct *fown, int fd, int band);
>
> #ifdef CONFIG_FILE_LOCKING
> --
> 1.7.4
>
> _______________________________________________
> Containers mailing list
> Containers@lists.linux-foundation.org
> https://lists.linux-foundation.org/mailman/listinfo/containers
next prev parent reply other threads:[~2011-04-03 18:57 UTC|newest]
Thread overview: 41+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-02-28 23:40 [RFC 00/10] container-based checkpoint/restart prototype ntl
2011-02-28 23:40 ` [PATCH 01/10] Make exec_mmap extern ntl
2011-04-03 16:56 ` Serge E. Hallyn
2011-02-28 23:40 ` [PATCH 02/10] Introduce mm_has_pending_aio() helper ntl
2011-03-01 15:40 ` Jeff Moyer
2011-03-01 16:04 ` Nathan Lynch
2011-02-28 23:40 ` [PATCH 03/10] Introduce has_locks_with_owner() helper ntl
2011-04-03 18:55 ` Serge E. Hallyn
2011-02-28 23:40 ` [PATCH 04/10] Introduce vfs_fcntl() helper ntl
2011-04-03 18:57 ` Serge E. Hallyn [this message]
2011-02-28 23:40 ` [PATCH 05/10] Core checkpoint/restart support code ntl
2011-04-03 19:03 ` Serge E. Hallyn
2011-04-04 15:00 ` Nathan Lynch
2011-04-04 15:10 ` Serge E. Hallyn
2011-04-04 15:40 ` Nathan Lynch
2011-04-04 16:27 ` Serge E. Hallyn
2011-04-04 17:32 ` Oren Laadan
2011-04-04 21:43 ` Nathan Lynch
2011-04-04 22:03 ` Serge E. Hallyn
2011-04-04 23:42 ` Dan Smith
2011-04-05 2:17 ` Serge E. Hallyn
2011-04-05 19:18 ` Nathan Lynch
2011-04-04 22:29 ` Matt Helsley
2011-04-04 17:41 ` Andrew Morton
2011-04-04 18:51 ` Serge E. Hallyn
2011-04-04 19:42 ` Andrew Morton
2011-04-04 20:29 ` Serge E. Hallyn
2011-04-04 21:55 ` Matt Helsley
2011-04-04 23:15 ` Andrew Morton
2011-04-04 23:16 ` Valdis.Kletnieks
2011-04-04 23:43 ` Matt Helsley
2011-04-04 22:11 ` Serge E. Hallyn
2011-04-04 22:53 ` Serge E. Hallyn
2011-04-04 21:20 ` Nathan Lynch
2011-04-04 21:53 ` Serge E. Hallyn
2011-02-28 23:40 ` [PATCH 06/10] Checkpoint/restart mm support ntl
2011-02-28 23:40 ` [PATCH 07/10] Checkpoint/restart vfs support ntl
2011-02-28 23:40 ` [PATCH 08/10] Add generic '->checkpoint' f_op to ext filesystems ntl
2011-02-28 23:40 ` [PATCH 09/10] Add generic '->checkpoint()' f_op to simple char devices ntl
2011-02-28 23:40 ` [PATCH 10/10] x86_32 support for checkpoint/restart ntl
2011-03-01 1:08 ` [RFC 00/10] container-based checkpoint/restart prototype 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=20110403185727.GC15044@hallyn.com \
--to=serge@hallyn.com \
--cc=containers@lists.linux-foundation.org \
--cc=linux-kernel@vger.kernel.org \
--cc=ntl@pobox.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox