Re: [RFC/PATCH] revoke/frevoke system calls

From: Pekka Enberg
Date: Sat Jul 22 2006 - 03:39:39 EST


Hi,

On Sat, 22 Jul 2006 09:22:37 +0300 (EEST)
Pekka J Enberg <penberg@xxxxxxxxxxxxxx> wrote:
> > There are alternatives, playing games with ->f_op, creating fake struct
> > file, and doing IS_REVOKED if-else in the paths, but I think this is by
> > far the simplest way to do it. So in the Andrew scale of sads, how
> > sad is it, exactly?-)

On Fri, 2006-07-21 at 23:59 -0700, Andrew Morton wrote:
> Sad enough. Certainly worth an if-else to fix.

Actually, we can fix it with file->f_light thing Tigran is doing:

http://developer.osdl.org/dev/fumount/kernel2/patches/2.6.12/1/forced-unmount-2.6.12-1.patch

On Fri, 2006-07-21 at 23:59 -0700, Andrew Morton wrote:
> Why is this approach so different from Tigran's, I wonder.

Not so different. I am blocking fork until I can revoke all open file
descriptors (i.e. substitute with NULL) whereas Tigran is dropping
tasklist_lock and retrying. I am not doing get_bad_file() because I
don't think we really need it. Tigran's mmap takedown code looks pretty
much what I want too.

On Fri, 2006-07-21 at 23:59 -0700, Andrew Morton wrote:
> iirc, one of the things we added file.f_mapping for was revokation, but
> this patch doesn't use it. Please ask Al Viro about this.

I searched fsdevel archives but couldn't find anything on that. Al?

Pekka

-
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/