tech-kern archive

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

Re: Proposal for new syscalls: getrusagex and waitx



-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1


On Fri, 17 Oct 2008, Adam Hamsik wrote:

> On Oct,Friday 17 2008, at 2:44 PM, Jachym Holecek wrote:
>
> > # Matt Thomas 2008-10-17:
> > > I'd to add return some additional data in getrusage or wait4.  Extending
> > > struct rusage seems to be a losing proposition since I will need to
> > > version
> > > the syscalls and provide compatiblity shims.  I might as well just add
> > > variants that return proplib dictionaries with the information.
> > >
> > > int getrusagex(int who, struct plistref *dict)
> > > int waitx(pid_t wpid, int *status, int options, struct plistref *rusage);
> >
> > Passing 'struct plistref *' means users will have to duplicate proplib's
> > private _prop_object_[un]pack_pref(), no? If so, isn't it better to instead
> > pass 'prop_dictionary_t *' and hide plist passing details?

Actually no, prop_dictionary_externalize/prop_dictionary_internalize are
enough to do that, and the libc wrapper would handle that.

> yes, it should be enough to pass prop_dictionary_t to syscall.

Then the kernel would have to understand a complicated dictionary
structure stored in userland address space. I don't know how feasible that
would be (but I imagine quite complex)

iain
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (NetBSD)

iQEcBAEBAgAGBQJI+MiaAAoJEPFJxoMWDXVDMFgH/2tPbeiSd4AYI8OpCMmzukLZ
s9qtAyi3ILUgoaeUYA5vKYu2d8AIj12IomKCRRG/x6y6yQ0+GwP3yna/YkvP0O5B
Fcw7GvDZv9wRqo/xiFBcd1wrJqTzEJgtUgIMD40ACHhkAbjuRrGBzj2+zKlmOx27
B1CaNbWTQ+xMvxchbNsEOTAXAi1NSHN+25M28IeTfalUGWNP/j55Z3r1nt0Pefvm
DCWCdZ/lr56btcrv6fjRGZdU4waztHIYbadyDMWjDKsSVjTIHtDzrfxJ4PwJz57w
nO1L0yUJZg+0vUUcYZ9j1xxjL5LXelis3INbJnL9c2zuW1NTtPx8ix9N98imOwQ=
=6Rsz
-----END PGP SIGNATURE-----


Home | Main Index | Thread Index | Old Index