tech-kern archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: openat/fstatat functions implementation

On Mon, Oct 05, 2009 at 01:09:18AM +0200, Martin Husemann wrote:
> On Sun, Oct 04, 2009 at 07:01:57PM -0400, Christos Zoulas wrote:
> > 3) Design and implement the proper set, then provide compatibility by
> >    defining the busted functions in terms of the correct ones.
> My personal favorite is: implement a "make $cwd a per thread entity" syscall
> and be done. However, it's not possible to implement the "standard" calls
> in terms of this.


A per-thread $cwd would be nice (for all sorts of reasons).
The "standard" openat() needs a non-sticky thread $cwd.

So make an lwp have 3 $cwd vnodes:
        1) A temporary one that is discared once used
        2) An lwp specific one
        3) The process one.

Then openat() can be implemented as 2 system calls (maybe 3).
(system call restart might be lively!)
Also calls from interrupt handlers need thought!


David Laight:

Home | Main Index | Thread Index | Old Index