commit-hurd
[Top][All Lists]
Advanced

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

hurd-l4 viengoos/zalloc.c viengoos/thread.c vie...


From: Neal H. Walfield
Subject: hurd-l4 viengoos/zalloc.c viengoos/thread.c vie...
Date: Thu, 29 May 2008 20:45:50 +0000

CVSROOT:        /sources/hurd
Module name:    hurd-l4
Changes by:     Neal H. Walfield <neal> 08/05/29 20:45:50

Modified files:
        viengoos       : zalloc.c thread.c cap-lookup.c as.c ChangeLog 
        libpthread/sysdeps/l4/hurd/ia32: signal-dispatch-lowlevel.c 
                                         pt-setup.c 
        libpthread/sysdeps/l4/hurd: pt-thread-start.c pt-thread-halt.c 
                                    pt-thread-alloc.c pt-sysdep.h 
                                    pt-setactivity-np.c 
        libpthread     : ChangeLog 
        libhurd-mm     : pager.c ia32-exception-entry.S exceptions.c 
                         Makefile.am ChangeLog 
        hurd           : stddef.h exceptions.h ChangeLog 

Log message:
        libhurd-mm/
        
        2008-05-29  Neal H. Walfield  <address@hidden>
        
                * exceptions.c (exception_handler_activated): Assume the fault 
is
                on the stack if it is one page above or three pages below the
                stack pointer.
                (exception_handler_init): Allocate an area of address space
                EXCEPTION_STACK_SIZE bytes larges.  Fill it with pages.  Set the
                first page as the thread's exception page and the top of the 
area
                minus one word as the stack pointer.  Set the last word to the
                location of the exception page.
                * ia32-exception-entry.S: Include <hurd/exceptions.h>.
                (PAGESIZE): Don't define.
                (_exception_handler_entry): Rewrite to not assume that the
                exception page is at the start of the page in which the stack
                pointer is, but at the location stored in the word after the 
bottom
                of the stack.
        
                * Makefile.am (libhurd_mm_a_CCASFLAGS): New variable.
        
                * pager.c (ensure_stack): Change SPACE to be 
EXCEPTION_STACK_SIZE
                - PAGESIZE bytes large.  Write to each page.
        
        libpthread/
        
        2008-05-29  Neal H. Walfield  <address@hidden>
        
                * sysdeps/l4/hurd/pt-sysdep.h Include <hurd/exceptions.h>.
                (EXCEPTION_AREA_SIZE): Define.
                (EXCEPTION_AREA_SIZE_LOG2): Likewise.
                (EXCEPTION_PAGE): Likewise.
                (PTHREAD_SYSDEP_MEMBERS): Change object's type to an addr_t.
                Update users.  Remove field exception_page, replace with
                exception_area.  Add field exception_area_va.
                * sysdeps/l4/hurd/pt-thread-alloc.c: Include <hurd/as.h> and
                <hurd/addr.h>.
                (__pthread_thread_alloc): Allocate EXCEPTION_AREA_SIZE bytes of
                address space.  Save it in THREAD->EXCEPTION_AREA_VA.  Allocate 
a
                page for each page in that area.  Save them in
                THREAD->EXCEPTION_AREA.
                * sysdeps/l4/hurd/ia32/pt-setup.c (__pthread_setup): Set
                EXCEPTION_PAGE->EXCEPTION_HANDLER_SP to the end of
                EXCEPTION_PAGE->EXCEPTION_HANDLER_SP minus one word, in which we
                save the address of the exception page.
                * sysdeps/l4/hurd/pt-thread-start.c (__pthread_thread_start): 
Set
                IN.EXCEPTION_PAGE to the first page in 
THREAD->EXCEPTION_AREA_VA.
                * sysdeps/l4/hurd/pt-thread-halt.c: Include <hurd/mutex.h>,
                <hurd/as.h> and <hurd/addr.h>.
                (saved_object_lock): New variable.
                (__pthread_thread_halt): Lock SAVED_OBJECT_LOCK when accessing
                SAVED_OBJECT.  Free the address space used by the exception
                area (THREAD->EXCEPTION_AREA_VA) and its associated
                storage (THREAD->EXCEPTION_AREA).
        
        hurd/
        
        2008-05-29  Neal H. Walfield  <address@hidden>
        
                * exceptions.h: Include <hurd/stddef.h>.
                [ASM]: Only define relevant macros.
                (EXCEPTION_STACK_SIZE_LOG2): Define.
                (EXCEPTION_STACK_SIZE): Define.
                * stddef.h [ASM]: Only define relevant macros.
                (PAGESIZE): Don't append C type specifier.
                (PAGESIZE_LOG2): Likewise.
        
        viengoos/
        
        2008-05-29  Neal H. Walfield  <address@hidden>
        
                * as.c: Include <hurd/exceptions.h>.
                (ensure_stack): Change SPACE to be EXCEPTION_STACK_SIZE - 
PAGESIZE
                bytes large.  Write to each page.
                * cap-lookup.c: Include <hurd/exceptions.h>.
                (ensure_stack): Change SPACE to be EXCEPTION_STACK_SIZE - 
PAGESIZE
                bytes large.  Write to each page.
        
                * zalloc.c (ZONE_SIZE): Add suffix the 1 with a U type 
qualifier.
                (ZONES): Include one less zone.

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/hurd-l4/viengoos/zalloc.c?cvsroot=hurd&r1=1.4&r2=1.5
http://cvs.savannah.gnu.org/viewcvs/hurd-l4/viengoos/thread.c?cvsroot=hurd&r1=1.18&r2=1.19
http://cvs.savannah.gnu.org/viewcvs/hurd-l4/viengoos/cap-lookup.c?cvsroot=hurd&r1=1.19&r2=1.20
http://cvs.savannah.gnu.org/viewcvs/hurd-l4/viengoos/as.c?cvsroot=hurd&r1=1.19&r2=1.20
http://cvs.savannah.gnu.org/viewcvs/hurd-l4/viengoos/ChangeLog?cvsroot=hurd&r1=1.177&r2=1.178
http://cvs.savannah.gnu.org/viewcvs/hurd-l4/libpthread/sysdeps/l4/hurd/ia32/signal-dispatch-lowlevel.c?cvsroot=hurd&r1=1.1&r2=1.2
http://cvs.savannah.gnu.org/viewcvs/hurd-l4/libpthread/sysdeps/l4/hurd/ia32/pt-setup.c?cvsroot=hurd&r1=1.5&r2=1.6
http://cvs.savannah.gnu.org/viewcvs/hurd-l4/libpthread/sysdeps/l4/hurd/pt-thread-start.c?cvsroot=hurd&r1=1.3&r2=1.4
http://cvs.savannah.gnu.org/viewcvs/hurd-l4/libpthread/sysdeps/l4/hurd/pt-thread-halt.c?cvsroot=hurd&r1=1.3&r2=1.4
http://cvs.savannah.gnu.org/viewcvs/hurd-l4/libpthread/sysdeps/l4/hurd/pt-thread-alloc.c?cvsroot=hurd&r1=1.3&r2=1.4
http://cvs.savannah.gnu.org/viewcvs/hurd-l4/libpthread/sysdeps/l4/hurd/pt-sysdep.h?cvsroot=hurd&r1=1.5&r2=1.6
http://cvs.savannah.gnu.org/viewcvs/hurd-l4/libpthread/sysdeps/l4/hurd/pt-setactivity-np.c?cvsroot=hurd&r1=1.1&r2=1.2
http://cvs.savannah.gnu.org/viewcvs/hurd-l4/libpthread/ChangeLog?cvsroot=hurd&r1=1.34&r2=1.35
http://cvs.savannah.gnu.org/viewcvs/hurd-l4/libhurd-mm/pager.c?cvsroot=hurd&r1=1.9&r2=1.10
http://cvs.savannah.gnu.org/viewcvs/hurd-l4/libhurd-mm/ia32-exception-entry.S?cvsroot=hurd&r1=1.6&r2=1.7
http://cvs.savannah.gnu.org/viewcvs/hurd-l4/libhurd-mm/exceptions.c?cvsroot=hurd&r1=1.14&r2=1.15
http://cvs.savannah.gnu.org/viewcvs/hurd-l4/libhurd-mm/Makefile.am?cvsroot=hurd&r1=1.11&r2=1.12
http://cvs.savannah.gnu.org/viewcvs/hurd-l4/libhurd-mm/ChangeLog?cvsroot=hurd&r1=1.66&r2=1.67
http://cvs.savannah.gnu.org/viewcvs/hurd-l4/hurd/stddef.h?cvsroot=hurd&r1=1.8&r2=1.9
http://cvs.savannah.gnu.org/viewcvs/hurd-l4/hurd/exceptions.h?cvsroot=hurd&r1=1.9&r2=1.10
http://cvs.savannah.gnu.org/viewcvs/hurd-l4/hurd/ChangeLog?cvsroot=hurd&r1=1.101&r2=1.102




reply via email to

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