Re: [PATCH COW] remove struct file from readpage() and friends

From: Jörn Engel
Date: Mon Apr 19 2004 - 07:20:17 EST

On Sat, 17 April 2004 20:02:58 -0600, Eric W. Biederman wrote:
> Jörn Engel <joern@xxxxxxxxxxxxxxxxxxxx> writes:
> > this could be a good idea, it could also be utterly insane. If anyone
> > knows for sure, please tell me.
> >
> > The point is that copyfile(), one of the ingredients to cowlinks,
> > currently has to open() the source, because sendfile() requires a
> > struct file* as one of the arguments. Following the path down shows
> > that this struct file* is almost never used, but ultimately required
> > by readpage() and readpages().
> >
> > Those two, again, almost never use the struct file*, except for five
> > cases. One was trivial to fix, nfs, smbfs, cifs and blkmtd remain:
> Interface wise there are per user credentials that need to remain with
> the written data. These credentials by there very nature are per
> file.

Not really. For nfs3, they appear to be per *user*, just accessed in
a funny way. nfs4 looks a little more complicated, but in the end,
all data is either accessable by other means or used for locking.
Does locking work on NFS now? If not, that can go as well.

Looks like I will keep this patch for a while and see what Linus
thinks when 2.7 opens up.


The cheapest, fastest and most reliable components of a computer
system are those that aren't there.
-- Gordon Bell, DEC labratories
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at
Please read the FAQ at