summaryrefslogtreecommitdiff
path: root/ipc/ipc_space.c
AgeCommit message (Collapse)Author
2022-11-30Update ipc/ directory to use mach_port_name_tFlavio Cruz
Make it explicit where we use port names versus actual ports. For the 64 bit kernel, port names and ports are of different size so this corrects the syscall arguments and internal structs to have the right size. This patch also uncovered several issues we need to solve to make GNUMach work well on 64 bits. First, the mach_msg call will receive 4 byte port names while the kernel "thinks" they are 8 bytes, which will be a problem. Also, when we send a message, the kernel translates the port names into port pointers in the message copied from user space. This also won't work on 64 bits. In this patch, I added several TODOs to fix the issues later. Message-Id: <Y4cCzNmc6vC4bjsX@viriathus>
2015-05-22ipc: drop size parameter from `ipc_space_create'Justus Winter
* ipc/ipc_space.c (ipc_space_create): Drop size parameter. * ipc/ipc_space.h (ipc_space_create): Adopt declaration, fix comment. * kern/ipc_tt.c (ipc_task_init): Adopt accordingly.
2015-05-20ipc: replace the IPC table with a radix treeJustus Winter
Currently, the port names are mapped to an IPC object (e.g. a port) using a table. This, however, requires large chunks of continuous memory, and leads to scalability problems as virtual kernel memory is a scarce resource. To avoid excessive overhead, non-contiguous port names are spilled into a splay tree. Replace the IPC table with a radix tree. As the radix tree is able to store non-contiguous names with reasonable overhead, we can drop the splay tree as well. * ipc/ipc_entry.c (ipc_entry_tree_collision): Remove function. (ipc_entry_cache): New variable. (ipc_entry_lookup): Replace with a radix tree lookup. (ipc_entry_get): The free list handling is changed a little. Adopt accordingly. (ipc_entry_free_name): New function. (ipc_entry_alloc): Adopt accordingly. (ipc_entry_alloc_name): Likewise. (ipc_entry_dealloc): Likewise. (ipc_entry_grow_table): Remove function. * ipc/ipc_entry.h (struct ipc_entry): Update comment, add field for name and free list, remove unused fields. (ipc_entry_cache, ie_alloc, ie_free): New declarations. (struct ipc_tree_entry): Remove. Also remove any related declarations. (ipc_entry_grow_table): Remove declaration. * ipc/ipc_init.c (ipc_bootstrap): Adopt initialization. * ipc/ipc_kmsg.c (ipc_kmsg_copyout_header): Use `ipc_entry_alloc' instead of re-coding it. Adopt free list handling. (ipc_kmsg_copyout_object): Adopt free list handling, store the name. * ipc/ipc_object.c (ipc_object_copyout): Likewise. (ipc_object_copyout_multiname): Likewise. * ipc/ipc_space.c (ipc_space_create): Initialize radix tree and free list. Drop table and splay tree initialization. (ipc_space_destroy): Free ipc entries and radix tree, remove table and splay tree cleanup. * ipc/ipc_space.h (struct ipc_space): Add radix tree, free list, and size. Remove all fields related to the table and splay tree. * ddb/db_print.c (db_port_iterate): Adopt iteration. (db_lookup_port): Adopt lookup. * include/mach_debug/ipc_info.h: Remove unused parts of the debug interface. * include/mach_debug/mach_debug.defs: Likewise. * include/mach_debug/mach_debug_types.defs: Likewise. * ipc/mach_debug.c: Likewise. * ipc/ipc_right.c (ipc_right_reverse): Adopt lookup, store name. (ipc_right_check): Adopt removal. (ipc_right_destroy): Likewise. (ipc_right_dealloc): Likewise. (ipc_right_delta): Likewise. (ipc_right_copyin): Adopt insertion, adopt removal. (ipc_right_copyin_two): Adopt removal. (ipc_right_copyout): Adopt insertion, adopt removal. (ipc_right_rename): Likewise, also update comment. * ipc/mach_port.c (mach_port_names): Adopt iteration. (mach_port_get_set_status): Likewise. * ipc/port.h: Update comment. * ipc/ipc_hash.c: Delete file. * ipc/ipc_hash.h: Likewise. * ipc/ipc_splay.c: Likewise. * ipc/ipc_splay.h: Likewise. * Makefrag.am (libkernel_a_SOURCES): Remove these files.
2015-05-20ipc: replace reverse hash table with a radix treeJustus Winter
Currently, there is a hash table mapping (space, object) tuples to `ipc_entry' objects. This hash table is intertwined with the IPC tables. There is one hash table per IPC space, but it is only for the entries in the IPC table. This hash table is called `local' in the source. All IPC entries being spilled into the splay tree are instead mapped by a global hash table. Replace the local (i.e. per IPC space) reverse hash table with a radix tree. * ipc/ipc_entry.c (ipc_entry_grow_table): Adjust accordingly. * ipc/ipc_entry.h (struct ipc_entry): Adjust comment. * ipc/ipc_hash.c: Adjust comment explaining the local lookup table. (IPC_LOCAL_HASH_INVARIANT): New macro. (ipc_hash_local_lookup): Use the new `ipc_reverse_lookup' function. (ipc_hash_local_insert): Use the new `ipc_reverse_insert' function. (ipc_hash_local_delete): Use the new `ipc_reverse_remove' function. * ipc/ipc_space.c (ipc_space_create): Initialize radix tree. (ipc_space_destroy): Free radix tree. * ipc/ipc_space.h (struct ipc_space): Add radix tree. (ipc_reverse_insert): New function. (ipc_reverse_remove): Likewise. (ipc_reverse_remove_all): Likewise. (ipc_reverse_lookup): Likewise. * ipc/ipc_right.c (ipc_right_clean): Update comment.
2011-12-17Adjust the kernel to use the slab allocatorRichard Braun
* device/dev_lookup.c: Replace zalloc header, types and function calls with their slab counterparts. * device/dev_pager.c: Likewise. * device/ds_routines.c: Likewise. * device/io_req.h: Likewise. * device/net_io.c: Likewise. * i386/i386/fpu.c: Likewise. * i386/i386/io_perm.c: Likewise. * i386/i386/machine_task.c: Likewise. * i386/i386/pcb.c: Likewise. * i386/i386/task.h: Likewise. * i386/intel/pmap.c: Likewise. * i386/intel/pmap.h: Remove #include <kernel/zalloc.h>. * include/mach_debug/mach_debug.defs (host_zone_info): Replace routine declaration with skip directive. (host_slab_info): New routine declaration. * include/mach_debug/mach_debug_types.defs (zone_name_t) (zone_name_array_t, zone_info_t, zone_info_array_t): Remove types. (cache_info_t, cache_info_array_t): New types. * include/mach_debug/mach_debug_types.h: Replace #include <mach_debug/zone_info.h> with <mach_debug/slab_info.h>. * ipc/ipc_entry.c: Replace zalloc header, types and function calls with their slab counterparts. * ipc/ipc_entry.h: Likewise. * ipc/ipc_init.c: Likewise. * ipc/ipc_marequest.c: Likewise. * ipc/ipc_object.c: Likewise. * ipc/ipc_object.h: Likewise. * ipc/ipc_space.c: Likewise. * ipc/ipc_space.h: Likewise. * ipc/ipc_table.c (kalloc_map): Remove extern declaration. * kern/act.c: Replace zalloc header, types and function calls with their slab counterparts. * kern/kalloc.h: Add #include <vm/vm_types.h>. (MINSIZE): Remove definition. (kalloc_map): Add extern declaration. (kget): Remove prototype. * kern/mach_clock.c: Adjust comment. * kern/processor.c: Replace zalloc header, types and function calls with their slab counterparts. * kern/startup.c: Remove #include <kernel/zalloc.h>. * kern/task.c: Replace zalloc header, types and function calls with their slab counterparts. * kern/thread.c: Likewise. * vm/memory_object_proxy.c: Likewise. * vm/vm_external.c: Likewise. * vm/vm_fault.c: Likewise. * vm/vm_init.c: Likewise. * vm/vm_map.c: Likewise. * vm/vm_object.c: Likewise. * vm/vm_page.h: Remove #include <kernel/zalloc.h>. * vm/vm_pageout.c: Replace zalloc header, types and function calls with their slab counterparts. * vm/vm_resident.c: Likewise. (zdata, zdata_size): Remove declarations. (vm_page_bootstrap): Don't steal memory for the zone system.
2009-06-182006-12-03 Thomas Schwinge <tschwinge@gnu.org>Thomas Schwinge
[patch #5017 --- ``Remove obsolete IPC interfaces.''] * DEVELOPMENT: Document the removal. * configfrag.ac (MACH_IPC_COMPAT): Don't define. 2006-12-03 Leonardo Lopes Pereira <leonardolopespereira@gmail.com> [patch #5017 --- ``Remove obsolete IPC interfaces.''] * kern/act.c [MIGRATING_THREADS]: Don't include <mach_ipc_compat.h>. * kern/act.h: Likewise. * i386/include/mach/i386/machine_types.defs: Adapt all users of MACH_IPC_COMPAT as if it were always defined to `0'. * include/mach/mach.defs: Likewise. * include/mach/mach_param.h: Likewise. * include/mach/mach_traps.h: Likewise. * include/mach/message.h: Likewise. * include/mach/mig_errors.h: Likewise. * include/mach/notify.h: Likewise. * include/mach/port.h: Likewise. * include/mach/std_types.defs: Likewise. * include/mach/syscall_sw.h: Likewise. * include/mach/task_special_ports.h: Likewise. * include/mach/thread_special_ports.h: Likewise. * ipc/ipc_kmsg.c: Likewise. * ipc/ipc_kmsg.h: Likewise. * ipc/ipc_marequest.c: Likewise. * ipc/ipc_notify.c: Likewise. * ipc/ipc_notify.h: Likewise. * ipc/ipc_object.c: Likewise. * ipc/ipc_object.h: Likewise. * ipc/ipc_port.c: Likewise. * ipc/ipc_port.h: Likewise. * ipc/ipc_right.c: Likewise. * ipc/ipc_right.h: Likewise. * ipc/ipc_space.c: Likewise. * ipc/ipc_space.h: Likewise. * ipc/mach_debug.c: Likewise. * ipc/mach_msg.c: Likewise * ipc/mach_msg.h: Likewise. * ipc/mach_port.c: Likewise. * kern/act.c: Likewise. * kern/act.h: Likewise. * kern/ipc_host.c: Likewise. * kern/ipc_tt.c: Likewise. * kern/syscall_sw.c: Likewise. * kern/thread.h: Likewise.
2009-06-182006-11-05 Barry deFreese <bddebian@comcast.net>Samuel Thibault
memcpy/memset cleanup. * include/string.h: New file. * include/mach/mig_support.h: Include `string.h'. [MACH_KERNEL] (bcopy): Remove extern declaration. [MACH_KERNEL] (memcpy): Remove macro. * device/cirbuf.c: Include `string.h'. (q_to_b, b_to_q): Replace bcopy() with memcpy() and bzero() with memset(), clean memcpy() and memset() invocation. * device/cons.c (cnputc): Likewise. * device/dev_pager.c (device_pager_data_request_done): Likewise. * device/ds_routines.c (device_write_get, ds_read_done): Likewise. * device/kmsg.c: Likewise. * device/net_io.c (net_filter, net_set_filter, net_getstat): Likewise. * i386/i386/fpu.c (fpu_set_state, fpu_get_state) fp_load) (fp_state_alloc): Likewise. * i386/i386/iopb.c (io_tss_init, i386_io_port_list): Likewise. * i386/i386/mp_desc.c (mp_desc_init): Likewise. * i386/i386/pcb.c (pcb_init, thread_setstatus) (thread_getstatus): Likewise. * i386/i386/phys.c (pmap_zero_page, pmap_copy_page, copy_to_phys) (copy_from_phys): Likewise. * i386/i386/trap.c (v86_assist): Likewise. * i386/i386/user_ldt.c (i386_set_ldt, i386_get_ldt): Likewise. * i386/i386at/immc.c (immc_cnputc): Likewise. * i386/i386at/kd_event.c (X_kdb_enter_init, X_kdb_exit_init): Likewise. * i386/intel/pmap.c (pmap_init, pmap_page_table_page_alloc) (pmap_create): Likewise. * ipc/ipc_entry.c (ipc_entry_grow_table): Likewise. * ipc/ipc_kmsg.c (ipc_kmsg_get_from_kernel) (ipc_kmsg_put_to_kernel): Likewise. * ipc/ipc_object.c (ipc_object_alloc, ipc_object_alloc_name): Likewise. * ipc/ipc_port.c (ipc_port_dngrow): Likewise. * ipc/ipc_space.c: Likewise. * ipc/mach_debug.c (mach_port_space_info) (mach_port_space_info): Likewise. * kern/act.c (act_create): Likewise. * kern/boot_script.c: Likewise. * kern/bootstrap.c: Likewise. * kern/eventcount.c (evc_init): Likewise. * kern/host.c (host_info, host_processor_sets): Likewise. * kern/lock.c (lock_init): Likewise. * kern/lock_mon.c (lock_info_clear): Likewise. * kern/mach_clock.c (mapable_time_init): Likewise. * kern/pc_sample.c (get_sampled_pcs): Likewise. * kern/processor.c (processor_set_things): Likewise. * kern/syscall_emulation.c (task_set_emulation_vector_internal) (task_get_emulation_vector, xxx_task_get_emulation_vector): Likewise. * kern/task.c (task_threads): Likewise. * kern/xpr.c (xprbootstrap): Likewise. * kern/zalloc.c (host_zone_info): Likewise. * vm/vm_debug.c (mach_vm_object_pages): Likewise. * vm/vm_kern.c (projected_buffer_allocate, copyinmap) (copyoutmap): Likewise. * vm/vm_object.c (vm_object_bootstrap): Likewise. * vm/vm_resident.c (vm_page_grab_contiguous_pages): Likewise.
2009-06-182006-10-15 Thomas Schwinge <tschwinge@gnu.org>Thomas Schwinge
[task #5956 --- ``Automake'ify GNU Mach's code base''] * kern/bootstrap.c: Don't include `bootstrap_symbols.h'. * ddb/db_command.c: Don't include `cpus.h'. * ddb/db_mp.c: Likewise. * i386/i386/ast_check.c: Likewise. * i386/i386/cswitch.S: Likewise. * i386/i386/db_interface.c: Likewise. * i386/i386/fpu.c: Likewise. * i386/i386/fpu.h: Likewise. * i386/i386/i386asm.sym: Likewise. * i386/i386/locore.S: Likewise. * i386/i386/mp_desc.c: Likewise. * i386/i386/mp_desc.h: Likewise. * i386/i386/pcb.c: Likewise. * i386/i386/trap.c: Likewise. * i386/intel/pmap.c: Likewise. * include/mach/machine.h: Likewise. * ipc/ipc_kmsg.c: Likewise. * ipc/ipc_kmsg.h: Likewise. * kern/ast.c: Likewise. * kern/ast.h: Likewise. * kern/cpu_number.h: Likewise. * kern/debug.c: Likewise. * kern/eventcount.c: Likewise. * kern/host.c: Likewise. * kern/ipc_sched.c: Likewise. * kern/lock.c: Likewise. * kern/lock.h: Likewise. * kern/lock_mon.c: Likewise. * kern/mach_clock.c: Likewise. * kern/mach_factor.c: Likewise. * kern/machine.c: Likewise. * kern/priority.c: Likewise. * kern/processor.c: Likewise. * kern/processor.h: Likewise. * kern/sched.h: Likewise. * kern/sched_prim.c: Likewise. * kern/startup.c: Likewise. * kern/syscall_subr.c: Likewise. * kern/thread.c: Likewise. * kern/timer.c: Likewise. * kern/timer.h: Likewise. * vm/vm_resident.c: Likewise. * kern/sched_prim.c: Don't include `fast_tas.h'. * kern/task.c: Likewise. * kern/task.h: Likewise. * kern/sched_prim.c: Don't include `hw_footprint.h'. * kern/thread.c: Likewise. * kern/thread.h: Likewise. * kern/counters.c: Don't include `mach_counters.h'. * kern/counters.h: Likewise. * ddb/db_ext_symtab.c: Don't include `mach_debug.h'. * i386/i386/pcb.c: Likewise. * kern/ipc_kobject.c: Likewise. * kern/thread.c: Likewise. * kern/zalloc.c: Likewise. * kern/ast.c: Don't include `mach_fixpri.h'. * kern/processor.c: Likewise. * kern/processor.h: Likewise. * kern/sched.h: Likewise. * kern/sched_prim.c: Likewise. * kern/syscall_subr.c: Likewise. * kern/thread.c: Likewise. * kern/thread.h: Likewise. * kern/host.c: Don't include `mach_host.h'. * kern/ipc_sched.c: Likewise. * kern/machine.c: Likewise. * kern/processor.c: Likewise. * kern/processor.h: Likewise. * kern/sched_prim.c: Likewise. * kern/startup.c: Likewise. * kern/task.c: Likewise. * kern/thread.c: Likewise. * kern/thread.h: Likewise. * include/mach/mach.defs: Don't include `mach_ipc_compat.h'. * include/mach/mach_param.h: Likewise. * include/mach/mach_traps.h: Likewise. * include/mach/message.h: Likewise. * include/mach/mig_errors.h: Likewise. * include/mach/notify.h: Likewise. * include/mach/port.h: Likewise. * include/mach/std_types.defs: Likewise. * include/mach/task_special_ports.h: Likewise. * include/mach/thread_special_ports.h: Likewise. * ipc/ipc_kmsg.c: Likewise. * ipc/ipc_kmsg.h: Likewise. * ipc/ipc_marequest.c: Likewise. * ipc/ipc_notify.c: Likewise. * ipc/ipc_notify.h: Likewise. * ipc/ipc_object.c: Likewise. * ipc/ipc_object.h: Likewise. * ipc/ipc_port.c: Likewise. * ipc/ipc_port.h: Likewise. * ipc/ipc_right.c: Likewise. * ipc/ipc_right.h: Likewise. * ipc/ipc_space.c: Likewise. * ipc/ipc_space.h: Likewise. * ipc/mach_debug.c: Likewise. * ipc/mach_msg.c: Likewise. * ipc/mach_msg.h: Likewise. * ipc/mach_port.c: Likewise. * kern/ipc_tt.c: Likewise. * kern/syscall_sw.c: Likewise. * kern/thread.h: Likewise. * include/mach_debug/mach_debug.defs: Don't include `mach_ipc_debug.h'. * ipc/ipc_hash.c: Likewise. * ipc/ipc_hash.h: Likewise. * ipc/ipc_marequest.c: Likewise. * ipc/ipc_marequest.h: Likewise. * kern/ipc_kobject.c: Don't include `mach_ipc_test.h'. * ddb/db_access.c: Don't include `mach_kdb.h'. * ddb/db_aout.c: Likewise. * ddb/db_break.c: Likewise. * ddb/db_command.c: Likewise. * ddb/db_command.h: Likewise. * ddb/db_cond.c: Likewise. * ddb/db_examine.c: Likewise. * ddb/db_expr.c: Likewise. * ddb/db_ext_symtab.c: Likewise. * ddb/db_input.c: Likewise. * ddb/db_lex.c: Likewise. * ddb/db_macro.c: Likewise. * ddb/db_mp.c: Likewise. * ddb/db_output.c: Likewise. * ddb/db_print.c: Likewise. * ddb/db_run.c: Likewise. * ddb/db_sym.c: Likewise. * ddb/db_task_thread.c: Likewise. * ddb/db_trap.c: Likewise. * ddb/db_variables.c: Likewise. * ddb/db_watch.c: Likewise. * ddb/db_watch.h: Likewise. * ddb/db_write_cmd.c: Likewise. * i386/i386/db_disasm.c: Likewise. * i386/i386/db_interface.c: Likewise. * i386/i386/db_trace.c: Likewise. * i386/i386/i386asm.sym: Likewise. * i386/i386/locore.S: Likewise. * i386/i386/trap.c: Likewise. * i386/i386at/kd.c: Likewise. * i386/i386at/model_dep.c: Likewise. * include/mach_debug/mach_debug.defs: Likewise. * ipc/ipc_kmsg.c: Likewise. * ipc/ipc_object.c: Likewise. * ipc/ipc_port.c: Likewise. * ipc/ipc_pset.c: Likewise. * kern/bootstrap.c: Likewise. * kern/debug.c: Likewise. * kern/exception.c: Likewise. * kern/lock.c: Likewise. * kern/xpr.c: Likewise. * vm/vm_fault.c: Likewise. * vm/vm_map.c: Likewise. * vm/vm_object.c: Likewise. * vm/vm_resident.c: Likewise. * kern/lock.h: Don't include `mach_ldebug.h'. * kern/lock_mon.c: Don't include `mach_lock_mon.h'. * kern/ipc_kobject.c: Don't include `mach_machine_routines.h'. * kern/lock_mon.c: Don't include `mach_mp_debug.h'. * vm/memory_object.c: Don't include `mach_pagemap.h'. * vm/vm_fault.c: Likewise. * vm/vm_object.c: Likewise. * vm/vm_object.h: Likewise. * vm/vm_pageout.c: Likewise. * i386/i386/trap.c: Don't include `mach_pcsample.h'. * kern/mach4.srv: Likewise. * kern/mach_clock.c: Likewise. * kern/pc_sample.c: Likewise. * kern/task.c: Likewise. * kern/thread.c: Likewise. * vm/vm_fault.c: Likewise. * device/net_io.c: Don't include `mach_ttd.h'. * i386/i386/kttd_interface.c: Likewise. * i386/i386/locore.S: Likewise. * i386/i386/trap.c: Likewise. * i386/i386at/autoconf.c: Likewise. * include/mach_debug/mach_debug.defs: Don't include `mach_vm_debug.h'. * vm/vm_debug.c: Likewise. * vm/vm_page.h: Likewise. * vm/vm_resident.c: Likewise. * kern/sched_prim.c: Don't include `power_save.h'. * kern/sched.h: Don't include `simple_clock.h'. * kern/sched_prim.c: Likewise. * kern/thread.c: Likewise. * kern/mach_clock.c: Don't include `stat_time.h'. * i386/i386/i386asm.sym: Likewise. * i386/i386/locore.S: Likewise. * kern/sched.h: Likewise. * kern/timer.c: Likewise. * kern/timer.h: Likewise. * kern/startup.c: Don't include `xpr_debug.h'. * kern/xpr.h: Likewise. * i386/i386at/autoconf.c: Don't include `com.h'. * i386/i386at/com.c: Likewise. * i386/i386at/conf.c: Likewise. * i386/i386at/cons_conf.c: Likewise. * i386/i386/fpe_linkage.c: Don't include `fpe.h'. * i386/i386/fpu.c: Likewise. * i386/i386/fpu.h: Likewise. * i386/i386/trap.c: Likewise. * i386/i386at/autoconf.c: Don't include `lpr.h'. * i386/i386at/conf.c: Likewise. * i386/i386at/lpr.c: Likewise. * i386/i386/cswitch.S: Don't include `platforms.h'. * i386/i386/fpu.c: Likewise. * i386/i386/gdt.c: Likewise. * i386/i386/hardclock.c: Likewise. * i386/i386/i386asm.sym: Likewise. * i386/i386/io_emulate.c: Likewise. * i386/i386/locore.S: Likewise. * i386/i386/pic.c: Likewise. * i386/i386/pic.h: Likewise. * i386/i386/pit.c: Likewise. * i386/i386/pit.h: Likewise. * i386/i386/seg.h: Likewise. * i386/i386at/model_dep.c: Likewise. * i386/i386at/com.c: Don't include `rc.h' * i386/i386at/cons_conf.c: Likewise. * i386/i386at/pic_isa.c: Likewise. * device/ds_routines.c: Don't include <i386/linux/device-drivers.h>. * i386/i386at/i386at_ds_routines.c: Likewise. * i386/linux/dev/include/linux/autoconf.h: Likewise. * linux/dev/arch/i386/kernel/setup.c: Likewise. * linux/dev/init/main.c: Likewise. * linux/pcmcia-cs/glue/pcmcia_glue.h: Likewise. * linux/pcmcia-cs/glue/wireless_glue.h: Likewise. * kern/lock_mon.c: Don't include <time_stamp.h>. * device/cons.c: Include <device/cons.h> instead of <cons.h>. * i386/i386at/com.c: Likewise. * i386/i386at/kd.c: Likewise. * i386/i386at/cons_conf.c: Likewise. * i386/i386at/i386at_ds_routines.c: Include <device/device.server.h> instead of "device_interface.h". * device/chario.c: Include <device/device_reply.user.h> instead of "device_reply.h". * device/ds_routines.c: Likewise. * linux/dev/glue/block.c: Likewise. * linux/dev/glue/net.c: Likewise. * linux/pcmcia-cs/glue/ds.c: Likewise. * device/cons.c: Include <device/kmsg.h> instead of <kmsg.h>. * device/kmsg.c: Likewise. * i386/i386/cswitch.S: Include <i386/cpu_number.h> instead of "cpu_number.h". * i386/i386/locore.S: Likewise. * i386/intel/pmap.c: Likewise. * ipc/ipc_kmsg.h: Likewise. * i386/i386/i386asm.sym: Include <i386/gdt.h> instead of "gdt.h". * i386/i386/idt.c: Likewise. * i386/i386at/int_init.c: Likewise. * i386/i386/cswitch.S: Include <i386/i386asm.h> instead of "i386asm.h". * i386/i386/locore.S: Likewise. * i386/i386at/boothdr.S: Likewise. * i386/i386at/interrupt.S: Likewise. * i386/i386at/idt.h: Include <i386/idt-gen.h> instead of "idt-gen.h". * i386/i386at/interrupt.S: Include <i386/ipl.h> instead of "ipl.h". * i386/i386/i386asm.sym: Include <i386/ldt.h> instead of "ldt.h". * i386/i386/locore.S: Likewise. * i386/i386/i386asm.sym: Include <i386/mp_desc.h> instead of "mp_desc.h". * i386/i386at/interrupt.S: Include <i386/pic.h> instead of "pic.h". * i386/i386/cswitch.S: Include <i386/proc_reg.h> instead of "proc_reg.h". * i386/i386/locore.S: Likewise. * i386/i386at/model_dep.c: Likewise. * i386/i386/i386asm.sym: Include <i386/seg.h> instead of "seg.h". * i386/i386/idt.c: Likewise. * i386/i386/locore.S: Likewise. * i386/i386/locore.S: Include <i386/trap.h> instead of "trap.h". * i386/i386/i386asm.sym: Include <i386/tss.h> instead of "tss.h". * i386/i386/i386asm.sym: Include <i386/vm_param.h> instead of "vm_param.h". * i386/i386/idt.c: Likewise. * i386/i386at/kd.c: Likewise. * i386/i386at/model_dep.c: Likewise. * i386/intel/pmap.c: Likewise. * i386/i386/i386asm.sym: Include <i386at/idt.h> instead of "idt.h". * i386/i386/idt.c: Likewise. * i386/i386at/int_init.c: Likewise. * ipc/ipc_target.c: Include <kern/sched_prim.h> instead of "sched_prim.h". * vm/memory_object.c: Include <vm/memory_object_default.user.h> instead of "memory_object_default.h". * vm/vm_object.c: Likewise. * vm/vm_pageout.c: Likewise. * vm/memory_object.c: Include <vm/memory_object_user.user.h> instead of "memory_object_user.h". * vm/vm_fault.c: Likewise. * vm/vm_object.c: Likewise. * vm/vm_pageout.c: Likewise.
2009-06-182006-03-20 Thomas Schwinge <tschwinge@gnu.org>Thomas Schwinge
* DEVELOPMENT: Document the NORMA removal. 2006-03-20 Leonardo Lopes Pereira <leonardolopespereira@gmail.com> Remove unused and unsupported code. Consult the file `DEVELOPMENT' for details. [patch #4982] * bogus/norma_device.h: Remove file. * bogus/norma_ether.h: Likewise. * bogus/norma_ipc.h: Likewise. * bogus/norma_task.h: Likewise. * bogus/norma_vm.h: Likewise. * include/mach/mach_norma.defs: Likewise. * include/mach/norma_task.defs: Likewise. * include/mach/norma_special_ports.h: Likewise. * Makefile.in (bogus-files): Remove `norma_device.h', `norma_ether.h', `norma_ipc.h', `norma_task.h' and `norma_vm.h'. (mach-headers): Remove `mach_norma.defs', `norma_task.defs' and `norma_special_ports.h'. * device/ds_routines.c: Don't include <norma_device.h> anymore and adopt all users of NORMA_DEVICE as if it were always defined to `0'. * device/net_io.c: Likewise for <norma_ether.h>, NORMA_ETHER. * kern/machine.c: Likewise. * ddb/db_command.c: Likevise for <norma_ipc.h>, NORMA_IPC. * ipc/ipc_init.c: Likewise. * ipc/ipc_kmsg.c: Likewise. * ipc/ipc_kmsg.h: Likewise. * ipc/ipc_mqueue.c: Likewise. * ipc/ipc_notify.c: Likewise. * ipc/ipc_port.c: Likewise. * ipc/ipc_port.h: Likewise. * ipc/ipc_space.c: Likewise. * ipc/ipc_space.h: Likewise. * ipc/mach_msg.c: Likewise. * kern/ast.c: Likewise. * kern/debug.c: Likewise. * kern/exception.c: Likewise. * kern/startup.c: Likewise. * vm/memory_object.c: Likewise. * vm/vm_map.c: Likewise. * kern/ipc_kobject.c: Likewise for <norma_task.h>, NORMA_TASK. * kern/task.c: Likewise. * kern/task.h: Likewise. * ddb/db_command.c: Likewise for <norma_vm.h>, NORMA_VM. * device/dev_pager.c: Likewise. * include/mach/mach_types.defs: Likewise. * include/mach/mach_types.h: Likewise. * include/mach/memory_object_default.defs: Likewise. * include/mach/memory_object.defs: Likewise. * ipc/ipc_kmsg.c: Likewise. * kern/ipc_kobject.c: Likewise. * kern/ipc_mig.c: Likewise. * kern/startup.c: Likewise. * vm/memory_object.c: Likewise. * vm/vm_object.c: Likewise. * vm/vm_object.h: Likewise. * vm/vm_pageout.c: Likewise.
2001-04-052001-04-04 Roland McGrath <roland@frob.com>Roland McGrath
* ddb/db_access.h: Fix obsolescent #else/#endif syntax. * ddb/db_aout.c: Likewise. * ddb/db_break.c: Likewise. * ddb/db_break.h: Likewise. * ddb/db_command.c: Likewise. * ddb/db_command.h: Likewise. * ddb/db_cond.c: Likewise. * ddb/db_examine.c: Likewise. * ddb/db_expr.c: Likewise. * ddb/db_ext_symtab.c: Likewise. * ddb/db_input.c: Likewise. * ddb/db_lex.c: Likewise. * ddb/db_macro.c: Likewise. * ddb/db_mp.c: Likewise. * ddb/db_output.c: Likewise. * ddb/db_print.c: Likewise. * ddb/db_run.c: Likewise. * ddb/db_sym.c: Likewise. * ddb/db_task_thread.c: Likewise. * ddb/db_task_thread.h: Likewise. * ddb/db_trap.c: Likewise. * ddb/db_variables.c: Likewise. * ddb/db_watch.c: Likewise. * ddb/db_watch.h: Likewise. * ddb/db_write_cmd.c: Likewise. * device/dev_pager.c: Likewise. * device/device_port.h: Likewise. * device/device_types_kernel.h: Likewise. * device/ds_routines.h: Likewise. * device/errno.h: Likewise. * device/if_ether.h: Likewise. * device/if_hdr.h: Likewise. * device/io_req.h: Likewise. * device/net_io.c: Likewise. * device/net_io.h: Likewise. * i386/i386/ast_check.c: Likewise. * i386/i386/cswitch.S: Likewise. * i386/i386/db_disasm.c: Likewise. * i386/i386/db_interface.c: Likewise. * i386/i386/db_trace.c: Likewise. * i386/i386/debug.h: Likewise. * i386/i386/debug_i386.c: Likewise. * i386/i386/debug_trace.S: Likewise. * i386/i386/eflags.h: Likewise. * i386/i386/gdt.h: Likewise. * i386/i386/hardclock.c: Likewise. * i386/i386/idt-gen.h: Likewise. * i386/i386/ipl.h: Likewise. * i386/i386/ktss.h: Likewise. * i386/i386/kttd_interface.c: Likewise. * i386/i386/ldt.h: Likewise. * i386/i386/lock.h: Likewise. * i386/i386/locore.S: Likewise. * i386/i386/mp_desc.h: Likewise. * i386/i386/pic.c: Likewise. * i386/i386/pic.h: Likewise. * i386/i386/pio.h: Likewise. * i386/i386/pit.h: Likewise. * i386/i386/seg.h: Likewise. * i386/i386/thread.h: Likewise. * i386/i386/trap.c: Likewise. * i386/i386/trap.h: Likewise. * i386/i386/vm_param.h: Likewise. * i386/i386/vm_tuning.h: Likewise. * i386/i386at/autoconf.c: Likewise. * i386/i386at/blit.c: Likewise. * i386/i386at/conf.c: Likewise. * i386/i386at/fd.c: Likewise. * i386/i386at/idt.h: Likewise. * i386/i386at/immc.c: Likewise. * i386/i386at/kd.c: Likewise. * i386/i386at/kd_event.c: Likewise. * i386/i386at/kd_mouse.c: Likewise. * i386/i386at/model_dep.c: Likewise. * i386/i386at/rtc.c: Likewise. * i386/include/mach/i386/asm.h: Likewise. * i386/include/mach/i386/eflags.h: Likewise. * i386/include/mach/i386/mach_i386.defs: Likewise. * i386/include/mach/i386/multiboot.h: Likewise. * i386/include/mach/i386/trap.h: Likewise. * i386/include/mach/i386/vm_types.h: Likewise. * i386/include/mach/sa/stdarg.h: Likewise. * i386/intel/pmap.c: Likewise. * i386/intel/pmap.h: Likewise. * include/alloca.h: Likewise. * include/device/device_types.defs: Likewise. * include/device/device_types.h: Likewise. * include/device/disk_status.h: Likewise. * include/device/net_status.h: Likewise. * include/mach/mach.defs: Likewise. * include/mach/memory_object.defs: Likewise. * include/mach/std_types.defs: Likewise. * include/mach_debug/hash_info.h: Likewise. * include/mach_debug/ipc_info.h: Likewise. * include/mach_debug/mach_debug.defs: Likewise. * include/mach_debug/mach_debug_types.defs: Likewise. * include/mach_debug/mach_debug_types.h: Likewise. * include/mach_debug/vm_info.h: Likewise. * include/mach_debug/zone_info.h: Likewise. * include/sys/ioctl.h: Likewise. * include/sys/time.h: Likewise. * ipc/ipc_entry.h: Likewise. * ipc/ipc_hash.h: Likewise. * ipc/ipc_init.c: Likewise. * ipc/ipc_kmsg.c: Likewise. * ipc/ipc_kmsg.h: Likewise. * ipc/ipc_marequest.c: Likewise. * ipc/ipc_marequest.h: Likewise. * ipc/ipc_mqueue.c: Likewise. * ipc/ipc_mqueue.h: Likewise. * ipc/ipc_notify.c: Likewise. * ipc/ipc_notify.h: Likewise. * ipc/ipc_object.c: Likewise. * ipc/ipc_object.h: Likewise. * ipc/ipc_port.c: Likewise. * ipc/ipc_port.h: Likewise. * ipc/ipc_pset.c: Likewise. * ipc/ipc_pset.h: Likewise. * ipc/ipc_right.c: Likewise. * ipc/ipc_right.h: Likewise. * ipc/ipc_space.c: Likewise. * ipc/ipc_space.h: Likewise. * ipc/mach_debug.c: Likewise. * ipc/mach_msg.c: Likewise. * ipc/mach_msg.h: Likewise. * ipc/mach_port.c: Likewise. * kern/act.c: Likewise. * kern/assert.h: Likewise. * kern/ast.c: Likewise. * kern/ast.h: Likewise. * kern/bootstrap.c: Likewise. * kern/counters.c: Likewise. * kern/counters.h: Likewise. * kern/debug.h: Likewise. * kern/exception.c: Likewise. * kern/host.h: Likewise. * kern/ipc_host.c: Likewise. * kern/ipc_host.h: Likewise. * kern/ipc_kobject.c: Likewise. * kern/ipc_mig.c: Likewise. * kern/ipc_tt.c: Likewise. * kern/ipc_tt.h: Likewise. * kern/kalloc.h: Likewise. * kern/lock_mon.c: Likewise. * kern/mach_clock.c: Likewise. * kern/mach_factor.c: Likewise. * kern/mach_param.h: Likewise. * kern/machine.c: Likewise. * kern/processor.c: Likewise. * kern/profile.c: Likewise. * kern/queue.h: Likewise. * kern/sched.h: Likewise. * kern/startup.c: Likewise. * kern/syscall_emulation.h: Likewise. * kern/syscall_subr.c: Likewise. * kern/syscall_subr.h: Likewise. * kern/syscall_sw.c: Likewise. * kern/syscall_sw.h: Likewise. * kern/task.h: Likewise. * kern/thread_swap.h: Likewise. * kern/time_out.h: Likewise. * kern/time_stamp.c: Likewise. * kern/time_stamp.h: Likewise. * kern/timer.c: Likewise. * kern/timer.h: Likewise. * kern/xpr.c: Likewise. * kern/xpr.h: Likewise. * kern/zalloc.c: Likewise. * kern/zalloc.h: Likewise. * linux/dev/drivers/block/ide.c: Likewise. * linux/dev/include/linux/blk.h: Likewise. * linux/src/include/linux/cdrom.h: Likewise. * linux/src/include/linux/md.h: Likewise. * util/cpu.h: Likewise. * vm/memory_object.c: Likewise. * vm/memory_object.h: Likewise. * vm/pmap.h: Likewise. * vm/vm_debug.c: Likewise. * vm/vm_external.h: Likewise. * vm/vm_fault.c: Likewise. * vm/vm_fault.h: Likewise. * vm/vm_kern.h: Likewise. * vm/vm_map.c: Likewise. * vm/vm_map.h: Likewise. * vm/vm_object.h: Likewise. * vm/vm_pageout.c: Likewise. * vm/vm_pageout.h: Likewise. * vm/vm_user.h: Likewise.
1997-02-25Initial sourceThomas Bushnell