>>>>> " " == Alexander Viro <[EMAIL PROTECTED]> writes:

     > Check the archives - basically, it took major efforts on part
     > of Trond to make the thing stay. I'm also not happy about that
     > ugliness...

     > We will need credentials cache and now we've got some of the
     > silliness killed (cloning struct file in loopback). So NFS side
     > of that business can be simplified and then it's a straight
     > path to making it fs-independent.  I have some code, but
     > resurrecting it will take a while. I _want_ to do that - having
     > to pass struct file* when all we really need is credentials
     > makes life inconvenient in many places. ->readdir() is just one
     > of them - block allocation on local filesystems upon
     > writepage() is much funnier, not to mention the need to pass
     > directory to readdir() (obstacle for union-mounts).

As I've said before: I fully agree with all of the above.

All that is needed is to unify all the disparate credential info we
already have at the VFS level. Just look at the ridiculous number of
different places in which we currently try to save the exact same
info: 10 fields in task structure + 2-3 fields in struct file + RPC
auth cache + coda_cred + ....

We should aim for implementing something like *BSD style credentials
in v2.5, and allow control by the VFS rather than such hacks as we
currently live with. I've started work on that, and I hope to get it
in fairly early in the next development cycle.
Even writepage() could benefit from having the MM decide to use
credentials when it has them available rather than the current blanket
case of 'always use the current task credentials'.

Given the API changes this sort of thing implies in order to do it
properly, however, v2.4 seems like a lost cause...

Cheers,
   Trond
-
To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in
the body of a message to [EMAIL PROTECTED]

Reply via email to