summaryrefslogtreecommitdiff
path: root/viengoos/cap.h
AgeCommit message (Collapse)Author
2009-01-16Conditionalize use of l4 functions on USE_L4.Neal H. Walfield
/ 2009-01-16 Neal H. Walfield <neal@gnu.org> * Makefile.am (L4_SUBDIRS): New variable. Set to l4 directories if USE_L4 is true, otherwise leave empty. (SUBDIRS): Remove libl4 and laden. Replace with $(USE_L4). Rearrange order. benchmarks/ 2009-01-16 Neal H. Walfield <neal@gnu.org> * activity-distribution.c (main): Use vg_thread_id_t and hurd_myself, not l4_thread_id_t and l4_myself. [USE_L4]: Only l4_sleep in this case. * cache.c (helper_fork): Use hurd_myself, not l4_myself. (main) [USE_L4]: Only call _L4_kdb in this case. * shared-memory-distribution.c (main): Use vg_thread_id_t and hurd_myself, not l4_thread_id_t and l4_myself. hieronymus/ 2009-01-16 Neal H. Walfield <neal@gnu.org> * hieronymus.c (main): Use uint64_t, not l4_uint64_t. (main) [USE_L4]: Don't sleep in this case. hurd/ 2009-01-16 Neal H. Walfield <neal@gnu.org> * lock.h (ss_mutex_trace_add) [! USE_L4]: Set SS_LOCK_TRACE[I].TID to zero. * thread.h (hurd_myself) [USE_L4]: Return l4_myself. * trace.h (trace_buffer_add) [! USE_L4 && ! RM_INTERN]: Use hurd_myself, not l4_myself. [! USE_L4 && RM_INTERN]: Don't print a tid. libc-parts/ 2009-01-16 Neal H. Walfield <neal@gnu.org> * _exit.c (_exit): Use sched_yield, not l4_yield. * backtrace.c [USE_L4]: Only include <l4.h> in this case. [! RM_INTERN]: Include <hurd/thread.h>. (backtrace_print) [! USE_L4 && ! RM_INTERN]: Use hurd_myself to get the caller's tid. [! USE_L4 && RM_INTERN]: Don't print a tid. * ia32-cmain.c [! USE_L4]: Don't include <l4/globals.h>, <l4/init.h>, <l4/stubs.h>, or <l4/stubs-init.h>. (cmain) [! USE_L4]: Don't call l4_init or l4_init_stubs. * loader.c: Don't include <l4.h>. Include <bits/wordsize.h> and <endian.h>. (loader_elf_load): Use __WORDSIZE, __BYTE_ORDER, __LITTLE_ENDIAN and __BIG_ENDIAN instead of their L4 names. * panic.c: Include <viengoos/thread.h>. [! RM_INTERN]: Include <hurd/thread.h>. (panic_) [! USE_L4 && ! RM_INTERN]: Use hurd_myself, not l4_myself. [! USE_L4 && RM_INTERN]: Don't print a tid. (panic_): Call sched_yield, not l4_yield. * process-spawn.c (process_spawn) [! USE_L4]: Don't pass utcb and kip information. Change sp from a l4_word_to to a uintptr_t. * profile.c [! USE_L4]: Don't include <l4.h>. (now) [__gnu_hurd_viengoos__ && ! USE_L4]: Just return 0. (struct profile_block): Change tid to a vg_thread_id_t. (MYSELF) [__gnu_hurd_viengoos__ && ! USE_L4]: Just return 0. * s_printf.c (io_buffer_flush) [! USE_L4]: Abort. libhurd-mm/ 2009-01-16 Neal H. Walfield <neal@gnu.org> * anonymous.h: Don't include <l4/thread.h>. Include <viengoos/thread.h>. (struct anonymous_pager): Change fill_thread's type to vg_thread_id_t. * anonymous.c (fault): Use hurd_myself and vg_niltid, not l4_myself and l4_nilthread. * as-build.c: Don't include <l4.h>. * as.h: Include <hurd/thread.h>. Don't include <l4/types.h>. (as_lock): Change as_rwlock_owner's type to vg_thread_id_t. Use hurd_myself, not l4_myself. (as_lock_readonly): Likewise. (as_unlock): Likewise. * as.c [! USE_L4]: Don't include <l4/types.h> or <l4/kip.h>. Include <bits/wordsize.h>. (DATA_ADDR_MAX): Define for 64-bit virtual address spaces. (as_rwlock_owner): Change type to vg_thread_id_t. (as_alloc_slow) [USE_L4]: Only check for conflicts with the kip and utcb in this case. (as_init) [USE_L4]: Only reserve the kip and utcb in this case. * exceptions.c [USE_L4]: Only include <l4/thread.h> in this case. (l4_utcb_state_save) [! USE_L4]: Make a no-op. (l4_utcb_state_restore) [! USE_L4]: Likewise. (hurd_activation_handler_normal): Use hurd_myself, not l4_myself. * map.c: Don't include <l4.h>. (map_fault): Use VG_WRITE, not L4_FPAGE_WRITABLE. * storage.c (storage_check_reserve_internal): Change as_rwlock_owner's type to vg_thread_id_t. libpthread/ 2009-01-16 Neal H. Walfield <neal@gnu.org> * sysdeps/viengoos/pt-spin.c [USE_L4]: Only include <l4.h> in this case. (_pthread_spin_lock): Only implement exponential back off if a sleep function is available. * sysdeps/viengoos/pt-stack-alloc.c: Don't include <l4.h>. * sysdeps/viengoos/pt-sysdep.c (sched_yield) [! USE_L4]: Just return. (init_routine) [USE_L4]: Abort. * sysdeps/viengoos/pt-sysdep.h [USE_L4]: Only include <l4.h> in this case. (_pthread_self) [! USE_L4]: Abort. * sysdeps/viengoos/pt-thread-alloc.c (__pthread_thread_alloc): Use hurd_myself, not l4_myself. [! USE_L4]: Abort. * sysdeps/viengoos/pt-thread-start.c (__pthread_thread_start): Use hurd_myself, not l4_myself. use uintptr_t, not l4_word_t. * sysdeps/viengoos/sig-sysdep.h (SIGNAL_DISPATCH_ENTRY) [! USE_L4]: Abort. (SIGNAL_DISPATCH_EXIT) [! USE_L4]: Likewise. libviengoos/ 2009-01-16 Neal H. Walfield <neal@gnu.org> * viengoos/thread.h (VG_READ): Define. (VG_WRITE): Define. (VG_EXECUTE): Likewise. (VG_ACTIVATION_FAULT_INFO_PRINTF): Use them. ruth/ 2009-01-16 Neal H. Walfield <neal@gnu.org> * ruth.c [USE_L4]: Only include <l4.h> in this case. (main) [! USE_L4]: Don't print resource manager's thread id. (main): Use uintptr_t, not l4_word_t. Use hurd_myself, not l4_myself. Use sched_yield, not l4_yield. Improve synchronization for object_reply_on_destruction test in case sched_yield is a no-op. viengoos/ 2009-01-16 Neal H. Walfield <neal@gnu.org> * cap.h: Don't include <l4.h>. * mutex.h [USE_L4]: Only include <l4/thread.h> in this case. (ss_mutex_t) [! USE_L4]: Define to be an int. (ss_mutex_lock) [! USE_L4]: Make a no-op. (ss_mutex_unlock) [! USE_L4]: Likewise. (ss_mutex_trylock) [! USE_L4]: Likewise. * object.h [USE_L4]: Only include <l4.h> in this case. (object_desc_unmap) [! USE_L4]: Make a no-op. (object_desc_flush) [! USE_L4]: Likewise. * thread.h: Don't include <l4.h>. (struct thread): Make tid a vg_thread_id_t, not an l4_thread_id_t. (thread_lookup): Make threadid a vg_thread_id_t, not an l4_thread_id_t.
2008-12-18Add vg_ prefix to the (hopefully) remaining viengoos symbols.Neal H. Walfield
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-17Add a "vg_" to public viengoos identifiers.Neal H. Walfield
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-17Move viengoos header files to libviengoos.Neal H. Walfield
/ 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-202008-02-20 Neal H. Walfield <neal@gnu.org>neal
* cap.h (cap_to_object): New declaration. (cap_to_object_soft): Likewise. * cap.c (cap_to_object_internal): New function. (cap_to_object): Implement in terms of it. (cap_to_object_soft): New function.
2008-01-24hurd/neal
2008-01-24 Neal H. Walfield <neal@gnu.org> * cap.h (cap_copy): Rename ADDRESS_SPACE argument to TARGET_ADDRESS_SPACE. Take additional argument SOURCE_ADDRESS_SPACE. Update users. (cap_copy_x): Likewise. (cap_copy): Likewise. (object_slot_copy_out): Rename ADDRESS_SPACE argument to OBJECT_ADDRESS_SPACE. Take additional argument TARGET_ADDRESS_SPACE. Update users. (object_slot_copy_out): Rename ADDRESS_SPACE argument to OBJECT_ADDRESS_SPACE. Take additional argument SOURCE_ADDRESS_SPACE. Update users. libhurd-mm/ 2008-01-24 Neal H. Walfield <neal@gnu.org> * as.h (as_slot_ensure_full): New declaration. (as_insert): Take additional parameters SOURCE_AS and TARGET_AS. * as.c (as_slot_ensure_full): Remove declaration. (as_slot_ensure): Update use of as_slot_ensure full to be consistent with the new API. (as_alloc_slow): Update use of rm_cap_copy to be consistent with new API. viengoos/ 2008-01-24 Neal H. Walfield <neal@gnu.org> * as.h (as_insert): Rename argument AS_ROOT_ADDR to TARGET_AS. Take additional argument SOURCE_AS. Update users. * as.c (as_build_internal): Update use of cap_copy_x to be consistent with new API. (as_insert): Take additional argument ENTRY_AS. Update use of cap_copy to be consistent with new API. * cap.h (cap_set): Update use of cap_copy to be consistent with new API. * thread.c (thread_exregs): Update use of cap_copy and cap_copy_x to be consistent with new API. * as.h (as_slot_ensure_full): New declaration. ruth/ 2008-01-24 Neal H. Walfield <neal@gnu.org> * ruth.c (main): Update use of rm_cap_read to be consistent with new API.
2008-01-24hurd/neal
2008-01-24 Neal H. Walfield <neal@gnu.org> * cap.h (cap_copy): Take additional argument ADDRESS_SPACE. Update users. (cap_read): Likewise. (object_slot_copy_out): Likewise. (object_slot_copy_in): Likewise. (object_slot_read): Likewise. (cap_copy_x): Likewise. (cap_copy): Likewise. viengoos/ 2008-01-24 Neal H. Walfield <neal@gnu.org> * server.c (SLOT_): Take additional argument root. Use it rather than THREAD->ASPACE. Update users. (SLOT): Likewise. (CAP_): Likewise. (CAP): Likewise. (ROOT): New macro. (server_loop): Update cap_read, object_slot_copy_out, object_slot_copy_in, object_slot_read, cap_copy_x, and cap_copy method implementations to new API. * as.h (as_insert): Take additional argument AS_ROOT_ADDR. Update users. * as.c (as_build_internal): Take additional argument AS_ROOT_ADDR. Pass it to cap_copy_x. (as_slot_ensure_full): Take additional argument AS_ROOT_ADDR. Pass it to as_build_internal. (as_insert): Likewise. * thread.c (thread_exregs): Update use of cap_copy to conform with new API. * cap.h (cap_set): Likewise. libhurd-mm/ 2008-01-24 Neal H. Walfield <neal@gnu.org> * as.c (as_slot_ensure): Update use of as_slot_ensure_full to be consistent with new API. (as_alloc_slow): Update use of rm_cap_copy to be consistent with new API. (as_init): Likewise. (as_walk): Likewise. ruth/ 2008-01-24 Neal H. Walfield <neal@gnu.org> * ruth.c (main): Update use of rm_cap_read to be consistent with new API.
2007-12-182007-12-18 Neal H. Walfield <neal@gnu.org>neal
* ager.c: Include "activity.h". * as.c: Include "rm.h". * cap.h: Don't include "rm.h". * loader.c: Include "cap.h" and "thread.h". * loader.h: Don't include "activity.h" or "thread.h". (struct activity): Add forward declaration. (struct thread): Likewise. * thread.h: Don't include "cap.h". * viengoos.c: Include <hurd/thread.h>. * as.c (as_insert): Add assert. * cap-lookup.c (lookup): Improve assert.
2007-12-10viengoos/neal
2007-12-10 Neal H. Walfield <neal@gnu.org> 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 <neal@gnu.org> * activity.h (RM_activity_create): Don't define. (activity_create): Remove method. ruth/ 2007-12-10 Neal H. Walfield <neal@gnu.org> * ruth.c (main): Don't call rm_activity_create.
2007-11-162007-11-16 Neal H. Walfield <neal@gnu.org>neal
* viengoos/Makefile.am: New file based on ../wortel/Makefile.am. * viengoos/headers.m4: New file. * viengoos/config.m4: New file based on ../wortel/config.m4. * viengoos/viengoos.h: New file. * viengoos/viengoos.c: New file. * viengoos/activity.h: Likewise. * viengoos/activity.c: Likewise. * viengoos/as.h: Likewise. * viengoos/as.c: Likewise. * viengoos/cap-lookup.c: Likewise. * viengoos/cap.h: Likewise. * viengoos/cap.c: Likewise. * viengoos/thread.h: New file. * viengoos/thread.c: New file. * viengoos/object.h: New file. * viengoos/object.c: New file. * viengoos/rm.h: New file. * viengoos/server.c: New file. * viengoos/server.h: New file. * viengoos/zalloc.h: Copied from ../physmem. * viengoos/zalloc.c: Copied from ../physmem. Don't include "output.h". Include <hurd/stddef.h>. Change uses of min_page_size to PAGESIZE. * viengoos/memory.h: New file. * viengoos/memory.c: New file. * viengoos/sigma0.c: Copy from ../wortel. * viengoos/sigma0.h: Copy from ../wortel. Don't include "shutdown.h". Include <hurd/stddef.h>. * viengoos/bits.h: Likewise. * viengoos/panic.c: New file. * viengoos/debug.c: Likewise. * viengoos/debug.h: Likewise. * viengoos/boot-modules.h: Likewise. * viengoos/boot-modules.c: Likewise. * viengoos/elf.h: Copied from ../wortel. * viengoos/loader.c: New file based on ../wortel/loader.c. * viengoos/loader.h: New file. * viengoos/multiboot.h: Copied from Grub. * viengoos/mmap.c: New file based on ../physmem/mmap.c. * viengoos/malloc-wrap.c: New file based on ../physmem/malloc-wrap.c. * viengoos/malloc.c: Version 2.8.3 of Doug Lea's malloc.c. * viengoos/malloc.h: Version 2.8.3 of Doug Lea's malloc.h. * viengoos/ia32-cmain.c: New file based on ../wortel/ia32-cmain.c. * viengoos/ia32-crt0.S: Copied from ../wortel. (STACK_SIZE): Use a 16 page stack. * viengoos/ia32-output.c: Copied from ../wortel. * viengoos/ia32-shutdown.c: Likewise. * viengoos/output.h: New file based on ../wortel/output.h. Include <stdarg.h>. (cprintf): New definition. (output_debug): Don't define. (debug): Don't define. * viengoos/output.c: New file based on ../wortel/output.c. Don't include <stdlib.h>. (vprintf): New function. (printf): Implement in terms of vprintf. * viengoos/output-none.c: Copied from ../wortel. * viengoos/output-serial.c: Likewise. * viengoos/output-stdio.c: New file. * viengoos/output-vga.c: Copied from ../wortel. * viengoos/shutdown.h: New file based on ../wortel/shutdown.h. Don't include "output.h". (panic): Don't define. (shutdown): Rename from this... (shutdown_machine): ... to this. * viengoos/shutdown.c: New file based on ../wortel/shutdown.c. (reset) [_L4_TEST_ENVIRONMENT]: Call abort. (halt) [_L4_TEST_ENVIRONMENT]: Call abort. (shutdown): Rename from this... (shutdown_machine): ... to this. * viengoos/t-environment.h: New file based on ../libl4/tests/environment.h. Protect from multiple inclusion. Include <hurd/stddef.h>. Include <string.h>. Include <l4/stubs.h>. (program_name): New declaration. (check_nr): Don't assume that val1 and val2 are _L4_word_t, use typeof instead. (main): Call output_init. * viengoos/t-as.c: New file.