vm: controller: add an auto-detach flag for vm-objects
This commit is contained in:
@@ -14,19 +14,25 @@ enum vm_object_flags {
|
||||
VMO_IN_PLACE = 0x01u,
|
||||
/* this vm-object is/was attached to a vm-controller */
|
||||
VMO_CONTROLLER = 0x02u,
|
||||
/* when a vm-object is attached to a controller, and the ref-count of
|
||||
* the object falls to one (i.e. the last reference is the handle to
|
||||
* the object held by the server that created it), the object will
|
||||
* be detached, allowing the server to close the last handle to the
|
||||
* object and dispose of it. */
|
||||
VMO_AUTO_DETACH = 0x04u,
|
||||
|
||||
/* these flags are for use with vm_object_get_page */
|
||||
/**************************************************/
|
||||
|
||||
/* if the relevant page hasn't been allocated yet, it will be allocated
|
||||
* and returned. if this flag isn't specified, NULL will be returned. */
|
||||
VMO_ALLOCATE_MISSING_PAGE = 0x04u,
|
||||
VMO_ALLOCATE_MISSING_PAGE = 0x08u,
|
||||
/* if the vm-object is attached to a vm-controller, and the relevant
|
||||
* page is uncommitted, send a request to the vm-controller to provide
|
||||
* the missing page. will result in the vm-object being unlocked and
|
||||
* the current thread sleeping until the request is fulfilled. the
|
||||
* vm-object will be re-locked before the function returns. */
|
||||
VMO_REQUEST_MISSING_PAGE = 0x08u,
|
||||
VMO_REQUEST_MISSING_PAGE = 0x10u,
|
||||
};
|
||||
|
||||
struct vm_object {
|
||||
|
||||
Reference in New Issue
Block a user