[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Do we want a server on `/servers/machine' (or similar)?
From: |
Thomas Schwinge |
Subject: |
Re: Do we want a server on `/servers/machine' (or similar)? |
Date: |
Fri, 11 May 2007 00:50:43 +0200 |
User-agent: |
Mutt/1.5.11 |
[Remove hurd-devel.]
Hello!
In the server T (`/servers/ioperm') I essentially have...
#v+
kern_return_t
S_i386_io_perm_create (mach_port_t port, io_port_t from, io_port_t to,
mach_port_t *io_perm)
{
kern_return_t err;
[Do some checks on PORT.]
err = i386_io_perm_create (devmaster, from, to, io_perm);
return err;
}
#v-
... to serve invocations of `i386_io_perm_create' on T and -- after the
needed checking -- pass the request to the device-master port, invoking
`i386_io_perm_create' on there. This works.
But there is one problem. If the requestee (the program that invoked
`i386_io_perm_create' on T) terminates, the server T won't (tell the
kernel to) destroy the resources that have been allocated by invoking
`i386_io_perm_create' on the device-master port. This is because there
is no association between the port `port' and these resources. How to
establish such a relationship?
If `port' becomes dead, `io_perm' should be deallocated as well, but how?
Regards,
Thomas
signature.asc
Description: Digital signature
Re: Do we want a server on `/servers/machine' (or similar)?, Roland McGrath, 2007/05/13