[OpenAFS] OpenAFS on Linux 2.5.x

Jeffrey Hutzelman jhutz@cmu.edu
Thu, 17 Apr 2003 13:12:43 -0400 (EDT)


On 17 Apr 2003, Derek Atkins wrote:

> Jeffrey Hutzelman <jhutz@cmu.edu> writes:
>
> > To reiterate...  Don't conflate PAG's with process groups; they do
> > different things and need different scoping rules.  Though some may have
> > forgotten, we've learned that lesson already -- it's why there's now a
> > distinction between process groups and sessions.
> >
> > PAG scoping is completely orthogonal to sessions.  Many PAGs contain
> > multiple sessions, due to things like running multiple xterms each of
> > which contains a session leader (as described above).  But conversely, I
> > frequently have xterms which run processes in different PAG's, since I
> > routinely establish new PAG's to do privileged operations.
>
> Clearly we just need to write a patch that adds a pag_t type to struct
> task, copied at fork(), and supplies a pag_create(task_t *) API to
> create a new PAG in the given task.  I think that would be sufficient.
> I don't think it would be a lot of code.  Is there some other API(s)
> that we could need (assuming we could just use task->pag to read the
> PAG out of a task).
>
> I'd also recommend "typedef __u64 pag_t;", but we could use an "__u32"
> if we wanted.
>
> Comments?  Anyone care to write the (small) patch?  I'm willing to present
> it to Linus, Alan, et al.

Not just an API.  If the OS is going to provide a PAG mechanism, it should
also provide the relevant syscalls.  That way everyone can use the same
PAG mechanism, and maybe someday the standard tools will do PAG
management.