Age | Commit message (Collapse) | Author |
|
2008-12-18 Neal H. Walfield <neal@gnu.org>
* viengoos/activity.h (struct activity_memory_policy): Rename from
this...
(struct vg_activity_memory_policy): ... to this. Update users.
(struct activity_policy): Rename from this...
(struct vg_activity_policy): ... to this. Update users.
(ACTIVITY_STATS_PERIODS): Rename from this...
(VG_ACTIVITY_STATS_PERIODS): ... to this. Update users.
(struct activity_stats): Rename from this...
(struct vg_activity_stats): ... to this. Update users.
(struct activity_info): Rename from this...
(struct vg_activity_info): ... to this. Update users.
* viengoos/addr.h (struct addr): Rename from this...
(struct vg_addr): ... to this. Update users.
* viengoos/cap.h (struct object_policy): Rename from this...
(struct vg_object_policy): ... to this. Update users.
(struct object_name): Rename from this...
(struct vg_object_name): ... to this. Update users.
(struct object): Rename from this...
(struct vg_object): ... to this. Update users.
* viengoos/folio.h (struct folio_policy): Rename from this...
(struct vg_folio_policy): ... to this. Update users.
(struct folio): Rename for this...
(struct vg_folio): ... to this. Update users.
* viengoos/thread.h
(HURD_EXREGS_SET_UTCB): Rename from this...
(VG_EXREGS_SET_UTCB): ... to this. Update users.
(HURD_EXREGS_SET_EXCEPTION_MESSENGER): Rename from this...
(VG_EXREGS_SET_EXCEPTION_MESSENGER): ... to this. Update users.
(HURD_EXREGS_SET_ASPACE): Rename from this...
(VG_EXREGS_SET_ASPACE): ... to this. Update users.
(HURD_EXREGS_SET_ACTIVITY): Rename from this...
(VG_EXREGS_SET_ACTIVITY): ... to this. Update users.
(HURD_EXREGS_SET_SP): Rename from this...
(VG_EXREGS_SET_SP): ... to this. Update users.
(HURD_EXREGS_SET_IP): Rename from this...
(VG_EXREGS_SET_IP): ... to this. Update users.
(HURD_EXREGS_SET_SP_IP): Rename from this...
(VG_EXREGS_SET_SP_IP): ... to this. Update users.
(HURD_EXREGS_SET_EFLAGS): Rename from this...
(VG_EXREGS_SET_EFLAGS): ... to this. Update users.
(HURD_EXREGS_SET_USER_HANDLE): Rename from this...
(VG_EXREGS_SET_USER_HANDLE): ... to this. Update users.
(HURD_EXREGS_SET_REGS): Rename from this...
(VG_EXREGS_SET_REGS): ... to this. Update users.
(HURD_EXREGS_GET_REGS): Rename from this...
(VG_EXREGS_GET_REGS): ... to this. Update users.
(HURD_EXREGS_START): Rename from this...
(VG_EXREGS_START): ... to this. Update users.
(HURD_EXREGS_STOP): Rename from this...
(VG_EXREGS_STOP): ... to this. Update users.
(HURD_EXREGS_ABORT_SEND): Rename from this...
(VG_EXREGS_ABORT_SEND): ... to this. Update users.
(HURD_EXREGS_ABORT_RECEIVE): Rename from this...
(VG_EXREGS_ABORT_RECEIVE): ... to this. Update users.
(HURD_EXREGS_ABORT_IPC): Rename from this...
(VG_EXREGS_ABORT_IPC): ... to this. Update users.
(struct hurd_thread_exregs_in): Rename form this...
(struct vg_thread_exregs_in): ... to this. Update users.
(struct hurd_thread_exregs_out): Rename form this...
(struct vg_thread_exregs_out): ... to this. Update users.
(RPC_STUB_PREFIX): Define to vg_activation. Update users.
(RPC_ID_PREFIX): Define to VG_ACTIVATION. Update users.
(ACTIVATION_fault): Rename from this...
(VG_ACTIVATION_fault): ... to this. Update users.
|
|
2008-12-17 Neal H. Walfield <neal@gnu.org>
* viengoos/activity.h: Add a "vg_" to public viengoos identifiers.
Update users.
* viengoos/addr-trans.h: Likewise.
* viengoos/addr.h: Likewise.
* viengoos/cap.h: Likewise.
* viengoos/folio.h: Likewise.
* viengoos/futex.h: Likewise.
* viengoos/rpc.h: Likewise.
* viengoos/thread.h: Likewise.
|
|
/
2008-12-17 Neal H. Walfield <neal@gnu.org>
* libviengoos: New directory.
* Makefile.am (SUBDIRS): Add libviengoos.
* configure.ac: Include libviengoos/headers.m4. Generate
libviengoos/Makefile.
hurd/
2008-12-17 Neal H. Walfield <neal@gnu.org>
* activity.h: Move to ../libviengoos/viengoos. Update references.
* addr-trans.h: Likewise.
* addr.h: Likewise.
* cap.h: Likewise.
* folio.h: Likewise.
* futex.h: Likewise.
* ipc.h: Likewise.
* message.h: Likewise.
* messenger.h: Likewise.
* rpc.h: Likewise.
* thread.h: Move viengoos specific bits...
* ../libviengoos/viengoos/thread.h: ... to this new file.
* thread.h (struct hurd_utcb): New structure.
* exceptions.h (hurd_utcb): Use a struct hurd_utcb *, not a
struct vg_utcb *. Update users.
(hurd_activation_state_alloc): Likewise.
(hurd_activation_state_free): Likewise.
(hurd_activation_handler_activated): Likewise.
(hurd_activation_handler_normal): Likewise.
* t-addr-trans.c: Move to ../libviengoos.
* t-addr.c: Likewise.
* t-rpc.c: Likewise.
* Makefile.am (TESTS, check_PROGRAMS, t_addr_CPPFLAGS)
(t_addr_SOURCES, t_addr_trans_CPPFLAGS, t_addr_trans_SOURCES)
(t_rpc_CPPFLAGS, t_rpc_SOURCES): Move from this file...
* ../libviengoos/Makefile.am.
* Makefile.am (includehurd_HEADERS): Don't mention activity.h,
addr-trans.h, addr.h, cap.h, folio.h, futex.h, ipc.h, message.h or
messenger.h.
* headers.m4: Don't create a link to hurd/addr.h,
hurd/addr-trans.h, hurd/cap.h, hurd/folio.h, hurd/rpc.h,
hurd/activity.h, hurd/futex.h, hurd/message.h, hurd/messenger.h or
hurd/ipc.h.
libviengoos/
2008-12-17 Neal H. Walfield <neal@gnu.org>
* Makefile.am: New file.
* headers.m4: Likewise.
* t-addr-trans.c: Move from ../hurd.
* t-addr.c: Likewise.
* t-rpc.c: Likewise.
* viengoos.h: Likewise.
* viengoos/activity.h: Likewise.
* viengoos/addr-trans.h: Likewise.
* viengoos/addr.h: Likewise.
* viengoos/cap.h: Likewise.
* viengoos/folio.h: Likewise.
* viengoos/futex.h: Likewise.
* viengoos/ipc.h: Likewise.
* viengoos/message.h: Likewise.
* viengoos/messenger.h: Likewise.
* viengoos/rpc.h: Likewise.
* viengoos/misc.h: Moved from ../viengoos/rm.h.
* viengoos/thread.h: New file split from ../hurd/thread.h.
libpthread/
2008-12-17 Neal H. Walfield <neal@gnu.org>
* Makefile.am: New file.
* headers.m4: Likewise.
* t-addr-trans.c: Move from ../hurd.
* t-addr.c: Likewise.
* t-rpc.c: Likewise.
* viengoos.h: Likewise.
* viengoos/activity.h: Likewise.
* viengoos/addr-trans.h: Likewise.
* viengoos/addr.h: Likewise.
* viengoos/cap.h: Likewise.
* viengoos/folio.h: Likewise.
* viengoos/futex.h: Likewise.
* viengoos/ipc.h: Likewise.
* viengoos/message.h: Likewise.
* viengoos/messenger.h: Likewise.
* viengoos/rpc.h: Likewise.
* viengoos/misc.h: Moved from ../viengoos/rm.h.
* viengoos/thread.h: New file split from ../hurd/thread.h.
viengoos/
2008-12-17 Neal H. Walfield <neal@gnu.org>
* rm.h: Move from here...
* ../libviengoos/viengoos/misc.h: ... to here. Update users.
* headers.m4: Don't link rm.h to hurd/rm.h.
* Makefile.am (viengoos_SOURCES): Remove rm.h.
|
|
2008-02-13 Neal H. Walfield <neal@gnu.org>
* storage.h (storage_alloc): Take additional parameter policy.
Update callers.
* storage.c (storage_alloc): Take additional parameter policy.
Use it when allocating the object and updating the shadow
capability slots.
libpthread/
2008-02-13 Neal H. Walfield <neal@gnu.org>
* sysdeps/l4/hurd/pt-thread-alloc.c (__pthread_thread_alloc):
Update use of storage_alloc to be consistent with new API.
newlib/
2008-02-13 Neal H. Walfield <neal@gnu.org>
* addon/newlib/libc/sys/hurd/getreent.c (slab_alloc): Update use
of storage_alloc to be consistent with new API.
ruth/
2008-02-13 Neal H. Walfield <neal@gnu.org>
* ruth.c (main): Update use of storage_alloc to be consistent with
new API.
|
|
* capalloc.c (link): Rename from this...
(list_link): ... to this. Update users.
(unlink): Rename from this...
(list_unlink): ... to this. Update users.
* storage.c (link): Rename from this...
(list_link): ... to this. Update users.
(unlink): Rename from this...
(list_unlink): ... to this. Update users.
|
|
2007-12-17 Neal H. Walfield <neal@gnu.org>
* anonymous.c: Update BTREE_CLASS use to reflect API changes.
* as.c: Likewise.
* capalloc.c: Likewise.
* pager.h: Likewise.
* storage.c: Likewise.
viengoos/
2007-12-17 Neal H. Walfield <neal@gnu.org>
* memory.c: Update BTREE_CLASS use to reflect API changes.
|
|
* as.c: Include <pthread.h>. Remove dead code.
(free_spaces_lock): New variable.
(free_space_split): Assert that it is held.
(as_alloc): Make thread-safe.
(as_alloc_at): Likewise.
(as_free): Likewise.
(as_alloced_dump): Likewise.
* storage.c: Include <pthread.h> and <atomic.h>.
(free_count): Make a uatomic32_t, rather than an int. Update
users to access it using atomic operations.
(struct storage_desc): New field, lock.
(storage_descs_lock): New global variable.
(link): Assert that STORAGE_DESCS_LOCK is held.
(unlink): Likewise. Don't assert that E->NEXT is NULL, which is
valid.
(slab_space_reserve): Make an atomicptr_t, rather than a void *.
Update users to access it using atomic operations.
(check_slab_space_reserve): Rewrite function to be thread-safe.
(storage_desc_free): Assert that STORAGE_DESCS_LOCK is held.
(storage_alloc): Rewrite function to be thread-safe.
(storage_free): Likewise.
(storage_init): Take STORAGE_DESCS_LOCK. Initialize SDESC->LOCK.
* capalloc.c: Include <pthread.h>.
(struct cappage_desc): New field, lock.
(unlink): Don't assert E->NEXT.
(cappage_descs_lock): New variable.
(capalloc): Make thread safe.
(capfree): Likewise.
* pager.h: Include <pthread.h>.
(pager_fault_t): Note that PAGER->LOCK will be held.
(struct pager): New field, lock.
(pagers_lock): New declaration.
(pager_install): Note locking requirements.
(pager_relocate): Likewise.
(pager_deinstall): Likewise.
* pager.c (pagers_lock): New definition.
(pager_install): Add asserts.
(pager_relocate): Likewise.
(pager_deinstall): Likewise.
(pager_fault): Likewise. Make function thread-safe.
* anonymous.c (struct storage_desc): Add comment about locking.
(fault): Add assert.
(anonymous_pager_alloc): Take PAGERS_LOCK before calling
pager_install and drop it afterwards.
(anonymous_pager_destroy): Take PAGERS_LOCK before calling
pager_deinstall and drop it afterwards. Take ANON->PAGER.LOCK.
|
|
2007-11-22 Neal H. Walfield <neal@gnu.org>
* storage.h (struct storage): New struct.
(storage_alloc): Return a struct storage, not an addr. Update all
callers.
* storage.c (struct storage_desc): Remove field shadow. Add field
cap.
(shadow_setup): Save the cap.
(storage_alloc): Return a struct storage, not an addr.
(storage_free): Correctly free the shadow if not used. Update
STORAGE->CAP to reflect that the folio has been removed.
* capalloc.c (struct cappage_desc): Add field cap.
(capalloc): Stash CAP. When allocating a cappage, allocate a
shadow object.
(capfree): Really free CAPPAGE if there is another page available.
If freeing CAPPAGE, unlink DESC and update DESC->CAP to reflect
that the page has been deallocated, deallocate the shadow, and
deallocate CAPPAGE.
* exceptions.c (exception_thread): Print IP when a fault cannot be
resolved.
* mmap.c (mmap): Cast addr to a uintptr_t to elide warning.
ruth/
2007-11-22 Neal H. Walfield <neal@gnu.org>
* ruth.c (main): Update uses of stroage_alloc to its new
interface.
|
|
2007-11-19 Neal H. Walfield <neal@gnu.org>
* addr.h (ADDR_TO_PTR): Assert that the address corresponds to a
pointer, not the root of a mapped page. Update callers.
(PTR_TO_ADDR): Return an address corresponding to a pointer, not
the root of a mapped page. Update callers.
libhurd-mm/
2007-11-19 Neal H. Walfield <neal@gnu.org>
* as.c (__hurd_startup_data): Declare.
(free_space_desc_slab_alloc): Use ADDR_TO_PTR and PTR_TO_ADDR
correctly.
(free_space_desc_slab_dealloc): Likewise.
(allocate_object): Likewise.
(storage_alloc): Likewise.
(as_init): Likewise.
* capalloc.c (cappage_desc_slab_alloc): Likewise.
(cappage_desc_slab_dealloc): Likewise.
* storage.c (__hurd_startup_data): Declare.
(check_slab_space_reserve): Likewise.
(storage_desc_slab_dealloc): Likewise.
(shadow_setup): Likewise.
(storage_free): Likewise.
ruth/
2007-11-19 Neal H. Walfield <neal@gnu.org>
* ruth.c (main): Use ADDR_TO_PTR and PTR_TO_ADDR correctly.
|
|
* Makefile.am (includehurd_HEADERS): Remove vm.h. Add storage.h
and as.h.
(AM_CPPFLAGS): Rename from this...
(COMMON_CPPFLAGS): ... to this.
(libhurd_mm_a_SOURCES): Remove vm.h, vm.c, priv.h, store.c, map.c,
memory.c, pager.c, core.c, anonymous.c, anonymous.h,
physmem-user.h and physmem-user.c. Add capalloc.h, capalloc.c,
storage.h, storage.c, as.h and mmap.c.
* headers.m4: Don't link $(BUILDDIR)/include/hurd/vm.h to vm.h or
$(BUILDDIR)/include/hurd/anonymous.h to anonymous.h. Link
$(BUILDDIR)/include/hurd/as.h to as.h,
$(BUILDDIR)/include/hurd/storage.h to storage.h, and
$(BUILDDIR)/include/hurd/capalloc.h to libhurd-mm/capalloc.h.
* mm-init.c: Rewrite.
* mm.h: Likewise.
* as.c: Likewise.
* as.h: New file.
* capalloc.h: Likewise.
* capalloc.c: Likewise.
* mmap.c: Likewise.
* storage.h: Likewise.
* storage.c: Likewise.
* physmem-user.h: Remove file.
* physmem-user.c: Remove file.
|