commit-hurd
[Top][All Lists]
Advanced

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

hurd-l4/viengoos viengoos.c t-environment.h obj...


From: Neal H. Walfield
Subject: hurd-l4/viengoos viengoos.c t-environment.h obj...
Date: Fri, 04 Jan 2008 15:48:05 +0000

CVSROOT:        /sources/hurd
Module name:    hurd-l4
Changes by:     Neal H. Walfield <neal> 08/01/04 15:48:05

Modified files:
        viengoos       : viengoos.c t-environment.h object.h object.c 
                         memory.h memory.c ager.c activity.h activity.c 
                         Makefile.am ChangeLog 
Added files:
        viengoos       : pager.h pager.c 

Log message:
        2008-01-04  Neal H. Walfield  <address@hidden>
        
                * activity.h (struct activity): Add fields eviction_clean and
                eviction_dirty.  Improve comments.
                (activity_charge): Change asserts to account for unsignedness.
                * activity.c (activity_destroy): Move all objects owned by 
VICTIM
                to its parent.
                (activity_deprepare): Add additional asserts.
                (do_activity_dump): Don't assert that ACTIVITY->FRAMES_LOCAL is
                the sum of the items on ACTIVITY's LRU lists.
                * object.h (struct object_desc): Add fields eviction_candidate,
                live, laundry_node and available_node.  Make priority_node a 
union
                with activity_node, which replaces activity_lru.  Remove field
                global_lru.
                (object_activity_lru): Rename this list class...
                (activity_lru): ... to this.  Update users.
                (object_global_lru): Don't generate this list class.
                (eviction): Generate new list class.
                (available): Likewise.
                (laundry): Likewise.
                (global_active): Remove declaration.
                (global_inactive_dirty): Likewise.
                (global_inactive_clean): Likewise.
                (disowned): Likewise.
                (laundry): New declaration.
                (available): Likewise.
                (memory_object_destroy): Likewise.
                (object_desc_disown_simple): Remove declaration.
                (object_disown_simple): Remove function.
                (object_desc_disown): Likewise.
                (object_disown): Likewise.
                (object_desc_claim): Take additional parameter 
update_accounting.
                Update users.
                (object_claim): Likewise.
                (object_desc_unmap): New function.
                (object_age): Likewise.
                (objects_folio_offset): Likewise.
                (objects_folio): Likewise.
                (object_free): Implement in terms of the above two functions.
                * object.c (global_active): Remove variable.
                (global_inactive_dirty): Likewise.
                (global_inactive_clean): Likewise.
                (disowned): Likewise.
                (laundry): New variable.
                (available): Likewise.
                (memory_object_alloc): Initialize ODESC to 0.  Call
                object_desc_claim to attach it to the relevant lists.  Assert 
that
                ODESC->LIVE is 0.  Set ODESC->LIVE to 1.
                (memory_object_destroy): Remove static qualifier.  Require that
                LRU_LOCK be held on entry.  Update users.  Use object_desc_claim
                to disconnect DESC from any lists to which it is attached.  
Don't
                call memory_frame_free, that is now the caller's responsibility.
                Update users. Set DESC->LIVE to 0.
                (folio_free): Don't disown the folio header.
                (folio_object_alloc): Call memory_frame_free to really free the
                memory.
                (object_desc_disown_simple): Remove function.
                (object_desc_disown_): Likewise.
                (object_desc_claim): Take additional parameter 
update_accounting.
                If true, update the relevant activities' accounting information.
                Update connect and disconnect code.  Only add an object to one 
of
                the priority tree and the lru lists, but not both.
                * viengoos.c (system_task_load): After allocating the
                root activity, have the root activity claim it and FOLIO.
                * ager.c: Include "zalloc.h".
                (AGE_DELTA): Don't define.
                (ager_loop): Rewrite to walk the object descriptors sequentially
                rather than following a linked list.  Update object list
                connection and disconnection code.
                * pager.h: New file.
                * pager.c: Likewise.
                * Makefile.am (viengoos_SOURCES): Add pager.h and pager.c.
                * memory.h (struct activity): Add forward.
                (memory_frame_allocate): Take additional parameter activity.
                Return a uintptr_t instead of an l4_word_t.  Update users.
                * memory.c: Include "pager.h" and "activity.h".
                (memory_grab): Always get base page sized pages.
                (memory_frame_allocate): Take additional parameter activity.
                Return a uintptr_t instead of an l4_word_t.  If zalloc fails,
                check AVAILABLE_LIST.  If nothing is applicable, call
                pager_collect and try again.
                * t-environment.h (pager_collect): New function.

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/hurd-l4/viengoos/viengoos.c?cvsroot=hurd&r1=1.15&r2=1.16
http://cvs.savannah.gnu.org/viewcvs/hurd-l4/viengoos/t-environment.h?cvsroot=hurd&r1=1.4&r2=1.5
http://cvs.savannah.gnu.org/viewcvs/hurd-l4/viengoos/object.h?cvsroot=hurd&r1=1.13&r2=1.14
http://cvs.savannah.gnu.org/viewcvs/hurd-l4/viengoos/object.c?cvsroot=hurd&r1=1.18&r2=1.19
http://cvs.savannah.gnu.org/viewcvs/hurd-l4/viengoos/memory.h?cvsroot=hurd&r1=1.2&r2=1.3
http://cvs.savannah.gnu.org/viewcvs/hurd-l4/viengoos/memory.c?cvsroot=hurd&r1=1.5&r2=1.6
http://cvs.savannah.gnu.org/viewcvs/hurd-l4/viengoos/ager.c?cvsroot=hurd&r1=1.7&r2=1.8
http://cvs.savannah.gnu.org/viewcvs/hurd-l4/viengoos/activity.h?cvsroot=hurd&r1=1.9&r2=1.10
http://cvs.savannah.gnu.org/viewcvs/hurd-l4/viengoos/activity.c?cvsroot=hurd&r1=1.11&r2=1.12
http://cvs.savannah.gnu.org/viewcvs/hurd-l4/viengoos/Makefile.am?cvsroot=hurd&r1=1.9&r2=1.10
http://cvs.savannah.gnu.org/viewcvs/hurd-l4/viengoos/ChangeLog?cvsroot=hurd&r1=1.69&r2=1.70
http://cvs.savannah.gnu.org/viewcvs/hurd-l4/viengoos/pager.h?cvsroot=hurd&rev=1.1
http://cvs.savannah.gnu.org/viewcvs/hurd-l4/viengoos/pager.c?cvsroot=hurd&rev=1.1




reply via email to

[Prev in Thread] Current Thread [Next in Thread]