[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
hurd-l4 viengoos/viengoos.c viengoos/t-as.c vie...
From: |
Neal H. Walfield |
Subject: |
hurd-l4 viengoos/viengoos.c viengoos/t-as.c vie... |
Date: |
Mon, 10 Dec 2007 13:51:07 +0000 |
CVSROOT: /sources/hurd
Module name: hurd-l4
Changes by: Neal H. Walfield <neal> 07/12/10 13:51:07
Modified files:
viengoos : viengoos.c t-as.c server.c rm.h object.h
object.c cap.h cap.c activity.h activity.c
Makefile.am ChangeLog
ruth : ruth.c ChangeLog
hurd : activity.h ChangeLog
Added files:
viengoos : t-link.c t-activity.c
Log message:
viengoos/
2007-12-10 Neal H. Walfield <address@hidden>
Properly account memory and folios.
* activity.h (struct activity): Remove field objects. New
fields
parent_ptr, active, inactive_clean, inactive_dirty and dying.
(root_activity): New declaration.
(activity_create): Return void. Don't take priority, weight and
storage_quota arguments. Update callers.
(activity_for_each_ancestor): New macro.
(activity_charge): New function.
(activity_for_each_child): New macro.
(activity_dump): New declaration.
(activity_consistency_check_): Likewise.
(activity_consistency_check): New macro.
* activity.c (root_activity): Define.
(activity_create): Return void. Don't take priority, weight and
storage_quota arguments. Remove relevant functionality. Set
CHILD->PARENT_PTR appropriately. Be careful when bootstrapping.
(activity_destroy): Check that VICTIM->DYING is not set. If so,
panic. Otherwise, set it. When recursively destroying an
activity, call object_free, not activity_destroy, to clean up.
Abandon all own frames. Assert that VICTIM->FRAMES and
VICTIM_FOLIO_COUNT are 0. Set PARENT->CHILDREN to
VICTIM->SIBLING_NEXT if VICTIM is the head of the list.
(do_activity_dump): New function.
(activity_dump): New function.
(activity_consistency_check_): New function.
* object.h: Don't include "thread.h".
(struct object_desc): Remove field activity. Rename field alru
to
activity_lru. Rename field GLRU to global_lru. New fields
dirty,
age and activity.
(LINK_TEMPLATE): New macro. Use it.
(dirty): Remove declaration.
(clean): Likewise.
(global_active): New declaration.
(global_inactive_dirty): Likewise.
(global_inactive_clean): Likewise.
(disowned): Likewise.
(object_desc_disown_simple): New function.
(object_disown_simple): Likewise.
(object_desc_disown_): Likewise.
(object_disown_): Likewise.
(object_desc_disown): New macro.
(object_disown): Likewise.
(object_desc_claim_): New function.
(object_claim_): Likewise.
(object_desc_claim): New macro.
(object_claim): Likewise.
(folio_parent): Remove parameter principal. Update callers.
(object_free): Improve parentheses.
* object.c: Include "thread.h".
(global_active): Define.
(global_inactive_dirty): Likewise.
(global_inactive_clean): Likewise.
(disowned): Likewise.
(object_init): Add asserts.
(memory_object_setup): Rename from this...
(memory_object_alloc): ... to this. Take additional parameters,
the type, oid and version. Also set up the object's descriptor.
Update callers.
(memory_object_destroy): Add asserts. Remove object from the
various linked lists. If OBJECT is an activity, assert that
there
are no frames allocated against it.
(object_find_soft): If OBJECT is not accounted or inactive,
assign
to ACTIVITY.
(folio_reparent): Rename from this...
(folio_parent): ... to this. Remove the parameter PRINCIPAL.
Use
ACTIVITY where PRINCIPAL was previous used. Add asserts.
Correctly add FOLIO to ACTIVITY's folio list.
(folio_alloc): Check if the activity's storage quota allows the
allocation of another folio. Account the allocation of the
folio.
(folio_free): Add asserts. Correctly account the folio. Clear
FOLIO->NEXT and FOLIO->PREV. Disown FOLIO's frame.
(folio_object_alloc): Assign OBJECT to ACTIVITY. When creating
an
activity, call activity_create.
* cap.h (cap_set): Take additional parameter, a struct activity
*.
Pass it to cap copy.
* cap.c Include "thread.h".
(cap_set_object): Remove dead function.
(cap_to_object): Clear CAP->TYPE if object_find returns NULL.
(cap_shootdown): Asser that ACTIVITY is not NULL.
* viengoos.c (root_activity): Don't define here.
* t-as.c (root_activity): Remove static qualifier.
* t-link.c: New file.
* t-activity.c: New file.
* Makefile.am (TESTS): Add t-activity and t-link.
(t_activity_CPPFLAGS): New variable.
(t_activity_SOURCES): Likewise.
(t_activity_LDADD): Likewise.
(t_link_CPPFLAGS): Likewise.
(t_link_SOURCES): Likewise.
* rm.h (RM_as_dump): Define.
(rm_method_id_string): Remove case for RM_activity_create.
(as_dump): New method.
* server.c (server_loop): Add support for method as_dump.
Remove
support for method activity_create.
hurd/
2007-12-10 Neal H. Walfield <address@hidden>
* activity.h (RM_activity_create): Don't define.
(activity_create): Remove method.
ruth/
2007-12-10 Neal H. Walfield <address@hidden>
* ruth.c (main): Don't call rm_activity_create.
CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/hurd-l4/viengoos/viengoos.c?cvsroot=hurd&r1=1.5&r2=1.6
http://cvs.savannah.gnu.org/viewcvs/hurd-l4/viengoos/t-as.c?cvsroot=hurd&r1=1.2&r2=1.3
http://cvs.savannah.gnu.org/viewcvs/hurd-l4/viengoos/server.c?cvsroot=hurd&r1=1.11&r2=1.12
http://cvs.savannah.gnu.org/viewcvs/hurd-l4/viengoos/rm.h?cvsroot=hurd&r1=1.9&r2=1.10
http://cvs.savannah.gnu.org/viewcvs/hurd-l4/viengoos/object.h?cvsroot=hurd&r1=1.2&r2=1.3
http://cvs.savannah.gnu.org/viewcvs/hurd-l4/viengoos/object.c?cvsroot=hurd&r1=1.4&r2=1.5
http://cvs.savannah.gnu.org/viewcvs/hurd-l4/viengoos/cap.h?cvsroot=hurd&r1=1.1&r2=1.2
http://cvs.savannah.gnu.org/viewcvs/hurd-l4/viengoos/cap.c?cvsroot=hurd&r1=1.2&r2=1.3
http://cvs.savannah.gnu.org/viewcvs/hurd-l4/viengoos/activity.h?cvsroot=hurd&r1=1.2&r2=1.3
http://cvs.savannah.gnu.org/viewcvs/hurd-l4/viengoos/activity.c?cvsroot=hurd&r1=1.3&r2=1.4
http://cvs.savannah.gnu.org/viewcvs/hurd-l4/viengoos/Makefile.am?cvsroot=hurd&r1=1.1&r2=1.2
http://cvs.savannah.gnu.org/viewcvs/hurd-l4/viengoos/ChangeLog?cvsroot=hurd&r1=1.19&r2=1.20
http://cvs.savannah.gnu.org/viewcvs/hurd-l4/viengoos/t-link.c?cvsroot=hurd&rev=1.1
http://cvs.savannah.gnu.org/viewcvs/hurd-l4/viengoos/t-activity.c?cvsroot=hurd&rev=1.1
http://cvs.savannah.gnu.org/viewcvs/hurd-l4/ruth/ruth.c?cvsroot=hurd&r1=1.9&r2=1.10
http://cvs.savannah.gnu.org/viewcvs/hurd-l4/ruth/ChangeLog?cvsroot=hurd&r1=1.11&r2=1.12
http://cvs.savannah.gnu.org/viewcvs/hurd-l4/hurd/activity.h?cvsroot=hurd&r1=1.3&r2=1.4
http://cvs.savannah.gnu.org/viewcvs/hurd-l4/hurd/ChangeLog?cvsroot=hurd&r1=1.32&r2=1.33
- hurd-l4 viengoos/viengoos.c viengoos/t-as.c vie...,
Neal H. Walfield <=