From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Serge E. Hallyn" Subject: [PATCH RFC] refuse checkpoint of file with f_owner Date: Wed, 16 Dec 2009 15:22:58 -0600 Message-ID: <20091216212258.GA31602@us.ibm.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: Content-Disposition: inline List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: containers-bounces-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org Errors-To: containers-bounces-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org To: Oren Laadan Cc: Linux Containers List-Id: containers.vger.kernel.org ... because we don't yet support its restore. Signed-off-by: Serge E. Hallyn --- checkpoint/files.c | 12 ++++++++++++ 1 files changed, 12 insertions(+), 0 deletions(-) diff --git a/checkpoint/files.c b/checkpoint/files.c index c8e8d7f..cac5236 100644 --- a/checkpoint/files.c +++ b/checkpoint/files.c @@ -261,6 +261,7 @@ static int checkpoint_file_desc(struct ckpt_ctx *ctx, struct fdtable *fdt; int objref, ret; int coe = 0; /* avoid gcc warning */ + pid_t pid; h = ckpt_hdr_get_type(ctx, sizeof(*h), CKPT_HDR_FILE_DESC); if (!h) @@ -283,6 +284,17 @@ static int checkpoint_file_desc(struct ckpt_ctx *ctx, } /* + * TODO: Implement c/r of fowner and f_sigio. Should be + * trivial, but for now we just refuse its checkpoint + */ + pid = f_getown(file); + if (pid) { + ret = -EBUSY; + ckpt_err(ctx, ret, "%(T)fd %d has an owner (%d)\n", fd); + goto out; + } + + /* * if seen first time, this will add 'file' to the objhash, keep * a reference to it, dump its state while at it. */ -- 1.6.0.4