Annotation of OSKit-Mach/ChangeLog, revision 1.1.1.1

1.1       root        1: 2007-01-21  Ralf Wildenhues  <[email protected]>
                      2: 
                      3:        * doc/mach.texi: Many typos fixed.
                      4: 
                      5: 2004-01-15  Alfred M. Szmidt  <[email protected]>
                      6: 
                      7:        * Makefile.in (%-undef: %.o): Match new output format from
                      8:        nm (binutils) 2.14.x.
                      9: 
                     10: 2003-03-05  Roland McGrath  <[email protected]>
                     11: 
                     12:        * Makefile.in (tool_prefix): Variable removed.
                     13:        (version): @VERSION@ -> @PACKAGE_VERSION@
                     14:        * version.c.in: Use @PACKAGE_NAME@ and @PACKAGE_VERSION@.
                     15: 
                     16:        * configure.in: Require 2.54 and use new form of AC_INIT.
                     17:        Add descriptions to all AC_DEFINE and AC_DEFINE_UNQUOTED.
                     18:        Punt AC_PROG_CC_LOCAL, just use vanilla AC_PROG_CC.
                     19:        AC_TRY_CPP -> AC_PREPROC_IFELSE for oskit version check.
                     20:        AC_LINK_FILES -> AC_CONFIG_LINKS.
                     21:        Use new form of AC_OUTPUT with AC_CONFIG_FILES.
                     22:        * acconfig.h, aclocal.m4: Files removed.
                     23:        * configure. config.h.in: Regenerated with version 2.57.
                     24:        * Makefile.in ($(srcdir)/config.h.in): Depend on configure.in
                     25:        instead of acconfig.h.
                     26: 
                     27: 2003-03-05  Roland McGrath  <[email protected]>
                     28: 
                     29:        * configure.in (HAVE_I8042): New check for oskit_dev_init_i8042.
                     30:        * oskit/ds_osenv.c (ds_osenv_init) [HAVE_I8042]: Call it.
                     31:        * config.h.in: Add #undef.
                     32:        * configure: Regenerated.
                     33: 
                     34: 2003-02-28  Roland McGrath  <[email protected]>
                     35: 
                     36:        * oskit/osenv_irq.c (console_irq, console_irq_handler): New variables.
                     37:        (irq_alloc, irq_free): Implement special kludge with console_irq.
                     38:        * oskit/ds_osenv.c (ds_osenv_init): Set console_irq before
                     39:        initializing the minimal interrupt-driven console.
                     40: 
                     41: 2002-11-20  Marcus Brinkmann  <[email protected]>
                     42: 
                     43:        * i386/i386/io_perm.c (io_perm_device_ops): New static variable.
                     44:        (i386_io_perm_create): Use the io_perm_device_ops for the device.
                     45:        (i386_io_perm_modify): Check that this is really an io_perm device.
                     46:        * iopb.h, iopb.c: Obsolete files removed.
                     47: 
                     48: 2002-11-12  Roland McGrath  <[email protected]>
                     49: 
                     50:        * oskit/ds_routines.c (dev_open_com): Revert last change.
                     51:        The hash table should not hold a reference.
                     52: 
                     53: 2002-11-09  Roland McGrath  <[email protected]>
                     54: 
                     55:        * Makefile.in (clib-routines.o): Add `-x none' before -lc.
                     56: 
                     57:        * oskit/ds_routines.c (ds_notify): Deallocate two refs, not one.
                     58:        (dev_open_com): Bump the ref_count on a new device to account for
                     59:        the reference held in the hash table as well as the one returned.
                     60: 
                     61:        * i386/i386/idt.c: Include "gdt.h" instead of <oskit/x86/base_gdt.h>
                     62:        and <oskit/x86/base_trap.h>.
                     63: 
                     64: 2002-11-09  Marcus Brinkmann  <[email protected]>
                     65: 
                     66:        * i386/i386/pcb.c (switch_context): Update the I/O permission
                     67:        bitmap from stack_handoff() here (not only in stack_handoff()).
                     68: 
                     69: 2002-11-05  Roland McGrath  <[email protected]>
                     70: 
                     71:        * oskit/pc/osenv_bell.c (direct_cons_bell): Use a private timer
                     72:        instead of calling `timeout'.  If a bell is already ringing,
                     73:        turn it off for an instant before setting the new one.
                     74: 
                     75: 2002-10-21  Roland McGrath  <[email protected]>
                     76: 
                     77:        * configure.in: Check for oskit/dev/stream.h.
                     78:        * configure, config.h.in: Regenerated.
                     79:        * oskit/ds_routines.c (dev_open_com): Query for an oskit_streamdev_t
                     80:        and open it.
                     81: 
                     82: 2002-10-03  Roland McGrath  <[email protected]>
                     83: 
                     84:        * i386/include/mach/i386/mach_i386.defs (i386_set_gdt, i386_get_gdt):
                     85:        New routines.
                     86:        * i386/i386/user_ldt.c (i386_set_gdt, i386_get_gdt): New functions.
                     87:        * i386/i386/gdt.h (USER_GDT, USER_GDT_SLOTS): New macros.
                     88:        * i386/i386/thread.h (struct i386_machine_state): New member user_gdt.
                     89:        * i386/i386/pcb.c (switch_ktss): Copy those slots into the GDT.
                     90: 
                     91:        * i386/i386/gdt.h (KERNEL_CS, KERNEL_DS, KERNEL_TSS, KERNEL_LDT):
                     92:        Values changed, new GDT layout not matching oskit base_gdt.h defaults.
                     93:        (BASE_KERNEL_CS, BASE_KERNEL_DS): New macros with to oskit's values.
                     94:        * oskit/x86/main.c (ktss): Variable moved to gdt.c.
                     95:        (main): Don't diddle the tss here.
                     96:        * i386/i386/gdt.c (gdt_init): Do it here instead.
                     97:        * oskit/x86/main.c (my_exit): Restore oskit's base_gdt.
                     98: 
                     99:        * oskit/x86/main.c (main): BASE_TSS -> KERNEL_TSS
                    100:        * i386/i386/mp_desc.c (mp_desc_load): Likewise.
                    101: 
                    102:        * i386/i386/gdt.h (USER_TSS): Macro removed (was unused).
                    103:        (KERNEL_GS): Macro removed (value was bogus!--fix SMP later).
                    104:        * i386/i386/i386asm.sym: Comment out KERNEL_GS.
                    105: 
                    106:        Remove magic %gs:0 pseudo-register support.
                    107:        * i386/i386/ldt.h (USER_GS): Macro removed.
                    108:        * i386/i386/pcb.c (pcb_init): Set gs to USER_DS, not USER_GS.
                    109:        (thread_setstatus): Likewise.
                    110:        * i386/i386/mp_desc.h (struct mp_desc_table): Remove member
                    111:        `user_thread_register'.
                    112:        * i386/i386/thread.h (struct i386_machine_state): Likewise.
                    113:        * i386/i386/mp_desc.c (mp_desc_init): Don't set up USER_GS in LDT.
                    114:        * i386/i386/ldt.c (ldt_init): Likewise.
                    115:        * i386/intel/pmap.c (pmap_bootstrap): Don't give users access to
                    116:        direct-mapped pages.
                    117:        * i386/i386/user_ldt.c (i386_set_ldt): Don't cap segment limits.
                    118: 
                    119: 2002-07-19  Roland McGrath  <[email protected]>
                    120: 
                    121:        * configure.in (force_install): New substituted variable,
                    122:        set to yes/no by --enable-force-install.
                    123:        * Makefile.in (force-install): New variable from configure.
                    124:        [$(force_install) = yes]: Make installed headers depend on a force
                    125:        target.
                    126:        * configure: Regenerated.
                    127: 
                    128: 2002-07-05  Roland McGrath  <[email protected]>
                    129: 
                    130:        * Makefile.in (kernel-%.o): Use -L$(OSKIT_LIBDIR)/.. switch.
                    131:        Reoprted by James Morrison <[email protected]>.
                    132: 
                    133: 2002-06-23  Roland McGrath  <[email protected]>
                    134: 
                    135:        * kern/sched_prim.c (wait_hash): Macro replaced with static inline
                    136:        function.  Use oskit_sreg_t instead of int.
                    137: 
                    138:        * ipc/mach_port.c (mach_port_insert_right): Type fiddle in argument
                    139:        passing.
                    140: 
                    141:        * bogus/mach_ipc_compat.h (MACH_IPC_COMPAT): Define to 0.
                    142: 
                    143:        * alpha/alpha/pmap.h (kvtophys): Remove decl (now a macro in oskit).
                    144: 
                    145:        * device/net_io.c (EXTRACT_LONG, EXTRACT_SHORT, bpf_do_filter): Use
                    146:        oskit_u32_t/s32/u16 in place of u_long/long/u_short.
                    147: 
                    148:        * i386/i386/mach_machine_routines.h: New file.
                    149:        * bogus/mach_machine_routines.h (MACH_MACHINE_ROUTINES): Define to 0.
                    150: 
                    151:        * alpha/alpha/cpu_number.h (cpu_number): Declare only if [NCPUS > 1].
                    152:        [! ASSEMBLER]: Include kern/cpu_number.h like i386 file does.
                    153: 
                    154:        * ipc/ipc_object.h: Uncomment prototypes in all decls.
                    155:        Include "ipc_types.h" for types they use.
                    156: 
                    157:        * ipc/ipc_port.h: Uncomment prototypes in all decls.
                    158: 
                    159:        * ipc/ipc_hash.c (ipc_hash_index_t): Move typedef to ...
                    160:        * ipc/ipc_hash.h: ... here.
                    161:        (ipc_hash_info): Fix return and argument types in decl.
                    162: 
                    163: 2002-06-17  Roland McGrath  <[email protected]>
                    164: 
                    165:        * device/if_hdr.h: Replace ancient UCB copyright terms with current
                    166:        approved UCB terms.
                    167:        * include/sys/reboot.h: Likewise.
                    168:        * include/device/disk_status.h: Likewise.
                    169:        * include/device/tape_status.h: Likewise.
                    170: 
                    171:        * device/net_io.c: Remove advertising clause from UCB copyright terms.
                    172:        * include/device/audio_status.h: Likewise.
                    173:        * include/device/bpf.h: Likewise.
                    174: 
                    175: 2002-06-14  Roland McGrath  <[email protected]>
                    176: 
                    177:        * oskit/ds_routines.c: Fix copyright: Utah -> CMU.
                    178:        I wrote this file and copied a little bit of CMU code, no Utah code.
                    179: 
                    180:        * oskit/ds_routines.c (ds_device_write): Fix typo:
                    181:        mach_msg_number_t -> mach_msg_type_number_t
                    182: 
                    183: 2002-06-05  Roland McGrath  <[email protected]>
                    184: 
                    185:        * ipc/ipc_hash.h: Include "ipc_types.h", "ipc_object.h" for types.
                    186:        [MACH_IPC_DEBUG]: Include <mach_debug/hash_info.h> for types.
                    187: 
                    188: 2002-06-02  Roland McGrath  <[email protected]>
                    189: 
                    190:        * oskit/ds_routines.c (DEV_PTR_HASH): uintptr_t -> natural_t
                    191: 
                    192:        * oskit/ds_routines.c (DEV_PTR_HASH): unsigned int -> uintptr_t
                    193:        (ds_device_write): unsigned int -> mach_msg_number_t
                    194: 
                    195:        * alpha/alpha/ast.h: Fix obsolescent #endif syntax.
                    196: 
                    197: 2002-06-01  Roland McGrath  <[email protected]>
                    198: 
                    199:        * ipc/ipc_hash.h (ipc_hash_local_delete): Uncomment prototype decls.
                    200: 
                    201:        * kern/mach_clock.c (clock_interrupt): Remove bogus debugging hack.
                    202: 
                    203: 2002-05-28  Roland McGrath  <[email protected]>
                    204: 
                    205:        * include/device/device.defs
                    206:        (xxx_device_set_status, xxx_device_get_status, xxx_device_set_filter):
                    207:        Replace these routines with skips.
                    208:        [MACH_KERNEL]: Remove simport <kern/compat_xxx_defs.h>.
                    209: 
                    210:        * kern/boot_script.c, kern/boot_script.h: Files updated from
                    211:        versions in hurd/boot (64 bit fixes).
                    212: 
                    213:        * alpha/alpha/alpha_cpu.S: Use "alphaasm.h" instead of "assym.s".
                    214:        * alpha/alpha/context.S: Likewise.
                    215:        * alpha/alpha/locore.S: Likewise.
                    216: 
                    217:        * Makefile.in (objs): New target.
                    218: 
                    219:        * alpha/alpha/alphaasm.sym: New file.
                    220:        * alpha/alpha/task.h: New file.
                    221:        * alpha/alpha/context.h (jmp_buf): Define as `struct jmp_buf' too.
                    222: 
                    223:        * kern/zalloc.h: Remove #include <machine/zalloc.h>.
                    224: 
                    225:        * alpha/alpha/prom_interface.h: Fix obsolescent #else/#endif syntax.
                    226:        * alpha/alpha/pmap.c: Likewise.
                    227:        * alpha/alpha/pmap.h: Likewise.
                    228:        * alpha/alpha/pcb.c: Likewise.
                    229:        * alpha/alpha/context.h: Likewise.
                    230:        * alpha/alpha/thread.h: Likewise.
                    231:        * alpha/include/mach/alpha/alpha_instruction.h: Likewise.
                    232:        * alpha/include/mach/alpha/vm_param.h: Likewise.
                    233:        * alpha/include/mach/alpha/vm_types.h: Likewise.
                    234:        * alpha/include/mach/alpha/boolean.h: Likewise.
                    235:        * alpha/include/mach/alpha/kern_return.h: Likewise.
                    236:        * alpha/include/mach/alpha/thread_status.h: Likewise.
                    237:        * alpha/include/mach/alpha/syscall_sw.h: Likewise.
                    238:        * alpha/include/mach/alpha/exception.h: Likewise.
                    239:        * alpha/alpha/alpha_copyin.S: Likewise.
                    240:        * alpha/alpha/machspl.h: Likewise.
                    241:        * alpha/alpha/trap.c: Likewise.
                    242:        * alpha/alpha/alpha_instruction.c: Likewise.
                    243:        * alpha/alpha/alpha_init.c: Likewise.
                    244:        * alpha/alpha/setjmp.h: Likewise.
                    245:        * alpha/alpha/vm_tuning.h: Likewise.
                    246: 
                    247:        * alpha/Makefrag: New file.
                    248:        * alpha/Files: New file.
                    249:        * alpha/Subdirs: New file.
                    250: 
                    251:        Alpha support files verbatim from CMU release MK83a.
                    252:        * alpha/include/mach/alpha/alpha_instruction.h: New file.
                    253:        * alpha/include/mach/alpha/asm.h: New file.
                    254:        * alpha/include/mach/alpha/boolean.h: New file.
                    255:        * alpha/include/mach/alpha/exception.h: New file.
                    256:        * alpha/include/mach/alpha/kern_return.h: New file.
                    257:        * alpha/include/mach/alpha/machine_types.defs: New file.
                    258:        * alpha/include/mach/alpha/syscall_sw.h: New file.
                    259:        * alpha/include/mach/alpha/thread_status.h: New file.
                    260:        * alpha/include/mach/alpha/vm_param.h: New file.
                    261:        * alpha/include/mach/alpha/vm_types.h: New file.
                    262:        * alpha/alpha/alpha_cache.S: New file.
                    263:        * alpha/alpha/alpha_copyin.S: New file.
                    264:        * alpha/alpha/alpha_cpu.S: New file.
                    265:        * alpha/alpha/alpha_cpu.h: New file.
                    266:        * alpha/alpha/alpha_init.c: New file.
                    267:        * alpha/alpha/alpha_instruction.c: New file.
                    268:        * alpha/alpha/alpha_lock.S: New file.
                    269:        * alpha/alpha/alpha_mem_ops.c: New file.
                    270:        * alpha/alpha/alpha_misc.c: New file.
                    271:        * alpha/alpha/alpha_scb.c: New file.
                    272:        * alpha/alpha/alpha_scb.h: New file.
                    273:        * alpha/alpha/alpha_startup.c: New file.
                    274:        * alpha/alpha/ast.h: New file.
                    275:        * alpha/alpha/ast_check.c: New file.
                    276:        * alpha/alpha/ast_types.h: New file.
                    277:        * alpha/alpha/autoconf.c: New file.
                    278:        * alpha/alpha/c_misc.c: New file.
                    279:        * alpha/alpha/clock.c: New file.
                    280:        * alpha/alpha/clock.h: New file.
                    281:        * alpha/alpha/context.S: New file.
                    282:        * alpha/alpha/context.h: New file.
                    283:        * alpha/alpha/cpu_number.h: New file.
                    284:        * alpha/alpha/frame.h: New file.
                    285:        * alpha/alpha/lock.h: New file.
                    286:        * alpha/alpha/locore.S: New file.
                    287:        * alpha/alpha/mach_param.h: New file.
                    288:        * alpha/alpha/machspl.h: New file.
                    289:        * alpha/alpha/parse_args.c: New file.
                    290:        * alpha/alpha/pcb.c: New file.
                    291:        * alpha/alpha/pmap.c: New file.
                    292:        * alpha/alpha/pmap.h: New file.
                    293:        * alpha/alpha/prom_interface.S: New file.
                    294:        * alpha/alpha/prom_interface.h: New file.
                    295:        * alpha/alpha/prom_routines.S: New file.
                    296:        * alpha/alpha/prom_routines.h: New file.
                    297:        * alpha/alpha/setjmp.h: New file.
                    298:        * alpha/alpha/start.S: New file.
                    299:        * alpha/alpha/supage.S: New file.
                    300:        * alpha/alpha/thread.h: New file.
                    301:        * alpha/alpha/time_stamp.h: New file.
                    302:        * alpha/alpha/trap.c: New file.
                    303:        * alpha/alpha/trap.h: New file.
                    304:        * alpha/alpha/vm_tuning.h: New file.
                    305:        * alpha/dec/ln_copy.c: New file.
                    306: 
                    307:        * configure.in (VERSION): Set to 1.90 for mainlining of OSKit-Mach.
                    308:        * configure: Regenerated.
                    309: 
                    310: 2002-05-22  Roland McGrath  <[email protected]>
                    311: 
                    312:        * oskit/x86/main.c (machine_idle): New function.
                    313:        * bogus/power_save.h (POWER_SAVE): Define to 1.
                    314: 
                    315:        * oskit/x86/main.c (iopb_init, iopb_destroy): Functions removed.
                    316:        (i386_io_port_add, i386_io_port_remove, i386_io_port_list): Likewise.
                    317: 
                    318: 2002-05-20  Roland McGrath  <[email protected]>
                    319: 
                    320:        * configure.in (systype): Grok alpha.
                    321:        * configure: Regenerated.
                    322:        * Makefile.in (all-archs): Add alpha.
                    323:        (oskit-dirs-alpha): New variable.
                    324: 
                    325: 2002-04-28  Roland McGrath  <[email protected]>
                    326: 
                    327:        * configure.in [$MAXCPUS > 1] (SMP_LIBS): Substitute this after
                    328:        checking for -loskit_smp.
                    329:        * configure: Regenerated.
                    330:        * Makefile.in (SMP_LIBS): New variable, substituted by configure.
                    331:        (OSKIT_LIBS): Use it in place of literal -loskit_smp.
                    332: 
                    333: 2002-04-21  Roland McGrath  <[email protected]>
                    334: 
                    335:        * i386/i386/mp_desc.c (mp_desc_load): Avoid newlines inside strings.
                    336: 
                    337: 2002-04-21  Roland McGrath  <[email protected]>
                    338: 
                    339:        * i386/intel/pmap.c (pmap_bootstrap): Set INTEL_PTE_USER in pte
                    340:        entries as well as pde entries.
                    341:        Reported by Jeroen Dekkers <[email protected]>.
                    342: 
                    343: 2002-04-07  Roland McGrath  <[email protected]>
                    344: 
                    345:        Provide a new special segment to user tasks so %gs:0 points to one
                    346:        writable word, a different word on each CPU, saved by thread switching.
                    347:        * i386/i386/ldt.h (USER_GS): New macro.
                    348:        * i386/i386/ldt.c (ldt_init): Set USER_GS to point at global variable
                    349:        `user_thread_register'.
                    350:        * i386/i386/mp_desc.h (struct mp_desc_table): New member
                    351:        `user_thread_register'.
                    352:        * i386/i386/mp_desc.c (mp_desc_init): Set USER_GS descriptor in LDT to
                    353:        point at that member.
                    354:        * i386/intel/pmap.c (pmap_bootstrap): Make direct-mapped pages
                    355:        accessible in user mode.
                    356:        * i386/i386/user_ldt.c (i386_set_ldt): Silently cap user segment
                    357:        limits to VM_MAX_ADDRESS.
                    358:        * i386/i386/thread.h (struct i386_machine_state): New member
                    359:        `user_thread_register'.
                    360:        * i386/i386/pcb.c (pcb_init, thread_setstatus): Set user threads' %gs
                    361:        register to USER_GS rather than USER_DS.
                    362:        (switch_ktss): Take new arg OLD_PCB.
                    363:        Don't do set_ldt at all if old and new match.
                    364:        Switch the per-CPU user thread variable into OLD_PCB and out of PCB.
                    365:        (stack_handoff, load_context, switch_context): Update callers.
                    366:        * i386/i386/user_ldt.c (i386_set_ldt): Likewise.
                    367: 
                    368: 2002-03-11  Marcus Brinkmann  <[email protected]>
                    369: 
                    370:        * i386/i386/machine_task.c (machine_task_module_init): Set
                    371:        ZONE_COLLECTABLE and ZONE_EXHAUSTIBLE flags for the iopb zone.
                    372:        Requested by Roland McGrath <[email protected]>.
                    373: 
                    374: 2002-02-27  Marcus Brinkmann  <[email protected]>
                    375: 
                    376:        * bogus/mach_machine_routines.h (MACH_MACHINE_ROUTINES): Set to 1.
                    377:        * i386/i386/io_perm.h: New file.
                    378:        * i386/i386/io_perm.c: New file.
                    379:        * i386/i386/machine_task.c: New file.
                    380:        * i386/Makefrag (i386-files): Add io_perm.c and machine_task.c.
                    381:        * i386/i386/mp_desc.h: Include `machine/tss.h' instead
                    382:        `oskit/x86/tss.h'.
                    383:        (struct mp_desc_table): Change type of ktss to struct task_tss.
                    384:        (mp_ktss): Likewise for array of pointers to the struct.
                    385:        * i386/i386/mp_desc.c: Include `machine/tss.h' and `machine/io_perm.h'.
                    386:        (mp_ktss): Change type to array of struct task_tss.
                    387:        (mp_desc_init): Cast pointer to x86_tss into pointer to task_tss,
                    388:        and use size of struct task_tss instead size of struct x86_tss.
                    389:        Initialize the task_tss structure.
                    390:        * i386/i386/pcb.c: Include `stddef.h' and `machine/tss.h'.
                    391:        (iopb_create, iopb_destroy): Prototypes removed.
                    392:        (curr_ktss): Cast pointer to base_tss to pointer to struct
                    393:        task_tss.
                    394:        (switch_ktss): Always use kernel TSS.
                    395:        (update_ktss_iopb): New function.
                    396:        (stack_handoff): Call update_ktss_iopb.
                    397:        (pcb_module_init): Do not call iopb_init.
                    398:        (pcb_terminate): Do not call iopb_destroy.
                    399:        (thread_setstatus): Remove local variable tss.
                    400:        (thread_getstatus): Rewrite i386_ISA_PORT_MAP_STATE case handler.
                    401:        * i386/i386/task.h: New file.
                    402:        * i386/i386/thread.h: Do not include `i386/iopb.h'.
                    403:        (struct i386_machine_state): Remove member io_tss.
                    404:        * i386/i386/tss.h: New file.
                    405:        * i386/include/mach/i386/mach_i386.defs: Do not include
                    406:        `mach/machine/mach_i386_types.h'.
                    407:        [KERNEL_SERVER]: Include `machine/io_perm.h'.  Define intran,
                    408:        outtran and destructor.
                    409:        (io_port_t): New type.
                    410:        (io_perm_t): Likewise.
                    411:        (i386_io_port_add): Interface removed.
                    412:        (i386_io_port_remove): Likewise.
                    413:        (i386_io_port_list): Likewise.
                    414:        (i386_io_perm_create): New interface.
                    415:        (i386_io_perm_modify): Likewise.
                    416:        * i386/include/mach/i386/mach_i386_types.h [MACH_KERNEL]: Include
                    417:        `i386/io_perm.h'.
                    418:        [!MACH_KERNEL]: Define types io_port_t and io_perm_t.
                    419:        * kern/task.c (task_init): Call machine_task_module_init.
                    420:        (task_create): Call machine_task_init.
                    421:        (task_deallocate): Call machine_task_terminate.
                    422:        (task_collect_scan): Call machine_task_collect.
                    423:        * task.h: Include `machine/task.h'.
                    424:        (struct task): Add member machine.
                    425:        * oskit/x86/main.c: Include `i386/io_perm.h' and `machine/tss.h'.
                    426:        (ktss): New static global variable that replaces base_tss at link
                    427:        time.
                    428:        (main): Rename base_tss to ktss and set it up to include an I/O
                    429:        permission bitmap.
                    430:        * oskit/ds_oskit.h [__i386__]: Include `machine/io_perm.h'.
                    431:        (struct device) [__i386__]: Add a structure with io_perm range
                    432:        to the com union.
                    433:        * oskit/ds_routines.c (dev_open_alloc): Remove static attribute.
                    434:        (setup_no_senders): Likewise.
                    435: 
                    436: 2002-02-28  Marcus Brinkmann <[email protected]>
                    437: 
                    438:        * oskit/ds_routines.c (device_deallocate): Allow DEVICE->com_device
                    439:        to be NULL for simple pseudo device handlers.
                    440: 
                    441: 2002-03-05  Roland McGrath  <[email protected]>
                    442: 
                    443:        * oskit/ds_request.h (ds_request_init, ds_asyncio_ready): Declare them.
                    444:        * oskit/ds_oskit.h (oskit_softint, kmsg_init, ds_netdev_open):
                    445:        Declare them.
                    446:        * oskit/kmsg.c (kmsg_init): Fix declaration.
                    447: 
                    448:        * oskit/ds_mem.c (ds_mem_map): If OFFSET and SIZE are both zero,
                    449:        map the whole thing.
                    450: 
                    451: 2002-03-04  Roland McGrath  <[email protected]>
                    452: 
                    453:        * oskit/ds_routines.c (ds_device_write): If the write_inband routine
                    454:        returns an error other than MIG_NO_REPLY, send an asynchronous reply
                    455:        and return MIG_NO_REPLY to prevent caller from destroying the message.
                    456: 
                    457: 2002-03-03  Michael Teichgraeber  <[email protected]>
                    458: 
                    459:        * include/device/device_error_reply.defs: Changed subsystem name
                    460:        to device_error_reply.
                    461:        * oskit/ds_asyncio.c: Include "device_reply.h", "device_error_reply.h".
                    462: 
                    463:        * oskit/ds_asyncio.c (new_request): Removed unused variable(s).
                    464:        (ds_asyncio_complete_write_inband_1): Likewise.
                    465:        (ds_asyncio_write_inband): Likewise.
                    466:        * oskit/ds_partition.c (ds_blkpart_get_status): Likewise.
                    467:        * oskit/ds_net.c (ds_netdev_open): Likewise.
                    468:        * oskit/ds_stream.c (ds_stream_read_inband): Likewise.
                    469: 
                    470: 2002-02-28  Roland McGrath  <[email protected]>
                    471: 
                    472:        * oskit/ds_osenv.c (ds_osenv_init): Pass missing argument to
                    473:        oskit_create_osenv_sleep.
                    474: 
                    475:        * oskit/ds_asyncio.c (listener_notify): Add missing return.
                    476: 
                    477:        * oskit/ds_net.c (ds_net_get_status): Remove unused variable.
                    478: 
                    479:        * oskit/ds_osenv.c: Include <oskit/dev/dev.h>,
                    480:        <oskit/dev/osenv_irq.h>,<oskit/dev/osenv_intr.h>,
                    481:        <oskit/dev/osenv_sleep.h>.
                    482: 
                    483:        * oskit/x86/main.c: Include <string.h>.
                    484:        * oskit/ds_block.c: Likewise.
                    485:        * oskit/osenv_irq.c: Likewise.
                    486:        * oskit/ds_mem.c: Likewise.
                    487:        * oskit/ds_net.c: Likewise.
                    488:        * oskit/ds_asyncio.c: Likewise.
                    489: 
                    490:        * oskit/osenv_log.c: Include <string.h>, <oskit/c/stdio.h>,
                    491:        <oskit/base_critical.h>.
                    492: 
                    493:        * oskit/osenv_mem.c: Include <string.h>.
                    494:        (pmap_startup): Remove unused variable.
                    495: 
                    496:        * ipc/ipc_entry.c: Terminate comment.
                    497:        * i386/i386/locore.S: Likewise.
                    498:        * ipc/fipc.c: Likewise.
                    499: 
                    500: 2002-02-18  Roland McGrath  <[email protected]>
                    501: 
                    502:        * i386/i386/mp_desc.c (mp_desc_load): Set %gs to KERNEL_GS, not zero.
                    503: 
                    504: 2001-12-12  Roland McGrath  <[email protected]>
                    505: 
                    506:        * oskit/ds_routines.c (ds_device_read): Remove old debugging crap.
                    507: 
                    508: 2001-12-10  Roland McGrath  <[email protected]>
                    509: 
                    510:        * oskit/ds_mem.c (ds_mem_read_inband, ds_mem_write_inband):
                    511:        Check RECNUM and COUNT so as not to be fooled by overflow.
                    512:        Apply offset to DEV->com.mem.pa before checking direct_mapped.
                    513:        Check that both ends of the range are direct_mapped.
                    514:        (ds_mem_map): Check OFFSET and SIZE so as not to be fooled by overflow.
                    515: 
                    516:        * oskit/ds_oskit.h (INVALREC): Disable panic definition.
                    517: 
                    518: 2001-12-10  Roland McGrath  <[email protected]>
                    519: 
                    520:        * oskit/ds_routines.c (special_mem_device): New argument MODE;
                    521:        use that instead of hardcoding D_READ.
                    522:        (ds_device_open): Changed callers.
                    523: 
                    524: 2001-11-23  Roland McGrath  <[email protected]>
                    525: 
                    526:        * oskit/ds_routines.c (device_deallocate): Do nothing if argument
                    527:        is DEVICE_NULL.
                    528: 
                    529: 2001-10-20  Roland McGrath  <[email protected]>
                    530: 
                    531:        * Merged from gnumach: -j oskit-fork-20011007 -j oskit-fork-20011019.
                    532:        CVS tags oskit-premerge-20011019 and oskit-postmerge-20011019 mark the
                    533:        oskit-branch state before and after this merge.
                    534: 
                    535: 2001-10-19  Roland McGrath  <[email protected]>
                    536: 
                    537:        * i386/i386/mp_desc.c (mp_desc_init): Use kvtolin on addresses in
                    538:        segment descriptors.
                    539: 
                    540: 2001-10-10  Roland McGrath  <[email protected]>
                    541: 
                    542:        * oskit/ds_osenv.c (ds_osenv_init): Don't call direct_cons_set_flags.
                    543:        * oskit/ds_routines.c (ds_device_open): Call it here instead.
                    544:        Motivated by Kevin Kreamer <[email protected]>.
                    545: 
                    546: 2001-10-07  Roland McGrath  <[email protected]>
                    547: 
                    548:        * Merged from gnumach: -j oskit-fork-20010405 -j oskit-fork-20011007.
                    549:        CVS tags oskit-premerge-20011007 and oskit-postmerge-20011007 mark the
                    550:        oskit-branch state before and after this merge.
                    551: 
                    552: 2001-10-07  Roland McGrath  <[email protected]>
                    553: 
                    554:        * oskit/osenv_softirq.c: New file,
                    555:        contributed by Daniel Wagner <[email protected]>
                    556:        * oskit/pc/osenv_timer.c (softclock_oskit): Call oskit_softint.
                    557:        * Makefile.in (osenv-overrides): Add osenv_softirq.
                    558: 
                    559: 2001-10-03  Roland McGrath  <[email protected]>
                    560: 
                    561:        * oskit/ds_routines.c (no_device_ops): New variable.
                    562:        * oskit/ds_oskit.h: Declare it.
                    563: 
                    564:        * oskit/ds_routines.c (ds_device_write_inband): Check for D_WRITE here.
                    565: 
                    566:        * configure.in: Check for mbchk, set MBCHK.
                    567:        * Makefile.in (MBCHK): New variable, substituted by configure.
                    568:        (check): Run mbchk on the kernel.
                    569: 
                    570:        * cpus.h: Moved to ...
                    571:        * bogus/cpus.h: ... here.
                    572:        * Makefile.in (clean): Avoid removing config.h.
                    573:        These problems reported by Gordon Matzigkeit <[email protected]>.
                    574: 
                    575: 2001-09-26  Roland McGrath  <[email protected]>
                    576: 
                    577:        * oskit/ds_mem.c (direct_mapped): Page 0 is not direct mapped.
                    578: 
                    579: 2001-08-20  Roland McGrath  <[email protected]>
                    580: 
                    581:        * kern/bootstrap.c (bootstrap_create): Doc fix, whitespace cleanup.
                    582: 
                    583: 2001-08-20  Roland McGrath  <[email protected]>
                    584: 
                    585:        * kern/bootstrap.c (bootstrap_create): Set ${kernel-command-line}
                    586:        rather than ${multiboot-cmdline}, to match Hurd's serverboot.
                    587: 
                    588: 2001-08-20  Roland McGrath  <[email protected]>
                    589: 
                    590:        * kern/bootstrap.c (boot_read, read_exec): Use phystokv to access
                    591:        module data addresses.
                    592:        (boot_script_exec_cmd): Return a value.
                    593:        (boot_script_task_create, boot_script_task_resume): Add \n to err msg.
                    594:        (user_bootstrap): Remove spurious & in thread_wakeup arg.
                    595:        These bugs all reported by Neal H Walfield <[email protected]>.
                    596: 
                    597: 2001-08-18  Roland McGrath  <[email protected]>
                    598: 
                    599:        * kern/bootstrap.c (bootstrap_create): Pass &BMODS[0] to
                    600:        bootstrap_exec_compat, not the module data address.
                    601: 
                    602: 2001-08-17  Roland McGrath  <[email protected]>
                    603: 
                    604:        * kern/bootstrap.c (boot_script_exec_cmd, user_bootstrap):
                    605:        Synchronize so boot_script_exec_cmd doesn't return until
                    606:        the thread running user_bootstrap has done its job.
                    607:        (bootstrap_create): Set boot script variable "multiboot-cmdline".
                    608: 
                    609:        * kern/bootstrap.c (boot_script_insert_task_port): New function.
                    610:        (boot_script_insert_task_port): Rewritten using task_insert_send_right.
                    611:        (bootstrap_create): Set up boot script variable values.
                    612: 
                    613:        * kern/bootstrap.c: Largely rewritten, using Hurd boot_script code.
                    614: 
                    615:        * Makefile.in ($(srcdir)/configure, $(srcdir)/config.h.in):
                    616:        Use $(srcdir) in deps.
                    617:        (Makefile, config.h, config.status): Likewise.
                    618: 
                    619:        * kern/strings.c, kern/strings.h: Files removed.
                    620:        * Makefile.in (kern-cfiles): Remove strings.c.
                    621:        (kern-hfiles): Remove strings.h.
                    622:        * kern/bootstrap.c: <kern/strings.h> -> <string.h>
                    623: 
                    624:        * Makefile.in (DEFINES): Add -DOSKIT_MACH=1.
                    625: 
                    626: 2001-08-16  Roland McGrath  <[email protected]>
                    627: 
                    628:        * Makefile.in (k%nel.o, kernel.o, oskit-kern%.o): Insert a
                    629:        -L$(OSKIT_LIBDIR)/.. switch before the oskit libraries.
                    630: 
                    631: 2001-06-02  Roland McGrath  <[email protected]>
                    632: 
                    633:        * i386/i386/locore.S (alltraps): Don't conditionalize pushl %gs
                    634:        on [MULTIPROCESSOR].  Reported by Jeroen Dekkers <[email protected]>.
                    635: 
                    636:        * i386/i386/locore.S (mach_call_call) [DEBUG]: Remove syscall_trace
                    637:        code.  Reported by Jeroen Dekkers <[email protected]>.
                    638: 
                    639: 2001-05-31  Roland McGrath  <[email protected]>
                    640: 
                    641:        * i386/i386/mp_desc.c (interrupt_stack, int_stack_top): Initialize
                    642:        these' first elements to &base_stack_start,&base_stack_end.
                    643:        (interrupt_stack_alloc): Remove counting loop with unused results.
                    644:        Problem found by Jeroen Dekkers <[email protected]>.
                    645: 
                    646: 2001-02-03  Roland McGrath  <[email protected]>
                    647: 
                    648:        * configure.in: Substitute LDFLAGS.
                    649:        * Makefile.in (LDFLAGS): Substitute configure value.
                    650: 
                    651:        * configure.in (OSKIT_LIBDIR): Don't override environment value.
                    652: 
                    653:        * Makefile.in (mach-headers): Remove boot.h, which is gone.
                    654:        (mach-exec-headers): Variable removed.
                    655:        (installed-headers): Don't use it.
                    656:        (mach-headers): Remove multiboot.h
                    657:        * i386/Makefrag (i386-installed-headers): Remove dead files.
                    658:        (installed-headers): Don't touch this.
                    659: 
                    660: 2001-01-11  Roland McGrath  <[email protected]>
                    661: 
                    662:        * oskit/ds_block.c (ds_blkio_get_status): Implement DEV_GET_RECORDS.
                    663: 
                    664: 2000-12-21  Roland McGrath  <[email protected]>
                    665: 
                    666:        * oskit/x86/main.c (CR4_PGE): #undef and define to 0x80,
                    667:        since the oskit's value is incorrect.
                    668: 
                    669: 2000-10-29  Roland McGrath  <[email protected]>
                    670: 
                    671:        Remove numerous dead header files.
                    672:        Suggested by Igor Khavkine <[email protected]>.
                    673:        * kern/elf-load.c: Dead file removed.
                    674:        * Makefile.in (kern-cfiles): Remove elf-load.c.
                    675:        (OSKIT_LIBS): Add -loskit_exec.
                    676:        * i386/i386/pcb.c: <mach/exec/exec.h> -> #include <oskit/exec/exec.h>
                    677:        * i386/i386/idt-gen.h: Dead file removed.
                    678:        * i386/i386at/idt.h: Dead file removed.
                    679:        * i386/include/mach/i386/exec/elf.h: Dead file removed.
                    680:        * i386/include/mach/i386/multiboot.h: Dead file removed.
                    681:        * include/mach/boot.h: Dead file removed.
                    682:        * include/mach/exec/a.out.h: Dead file removed.
                    683:        * include/mach/exec/elf.h: Dead file removed.
                    684:        * include/mach/exec/exec.h: Dead file removed.
                    685:        * include/mach/multiboot.h: Dead file removed.
                    686: 
                    687:        * Makefile.in (clib-routines): Add ffs, needed when not inlined.
                    688:        Reported by Igor Khavkine <[email protected]>.
                    689: 
                    690: 2000-10-27  Roland McGrath  <[email protected]>
                    691: 
                    692:        * oskit/x86/main.c (main): Don't #define master_cpu here.
                    693:        * kern/cpu_number.h [NCPUS == 1] (master_cpu): Define as a macro.
                    694:        Move variable decl to [NCPUS != 1].
                    695: 
                    696:        * oskit/smp-glue.c: New file.
                    697:        * Makefile.in (oskit-cfiles): Add it.
                    698: 
                    699:        * configure.in (MAXCPUS): Fix quoting of [] pattern in case statement.
                    700:        * configure: Regenerated.
                    701: 
                    702:        * i386/Makefrag (i386-files): Add back ast_check.c.
                    703:        * i386/i386/ast_check.c (cause_ast_check): Call interrupt_processor.
                    704: 
                    705:        * i386/i386/mp_desc.c (interrupt_stack_alloc): Don't set
                    706:        int_stack_high here.  Call init_alloc separately for each CPU.
                    707:        * oskit/osenv_mem.c (init_alloc): New function.
                    708: 
                    709:        * i386/i386/cswitch.S: Use EXT macro on interrupt_stack.
                    710: 
                    711:        * i386/i386/cpu_number.h [NCPUS > 1] (cpu_number, CPU_NUMBER):
                    712:        Define these loading the value from %gs:0.
                    713:        * i386/i386/locore.S (all_traps, all_intrs, return_to_iret,
                    714:        ast_from_interrupt, syscall) [MULTIPROCESSOR]: When restoring
                    715:        kernel segment registers, put KERNEL_GS in %gs.
                    716:        * i386/i386/gdt.h (KERNEL_GS): New macro.
                    717:        * i386/i386/i386asm.sym: Emit KERNEL_GS.
                    718:        * i386/i386/gdt.c (gdt_init): Set up KERNEL_GS segment to point to
                    719:        master_cpu.
                    720:        * i386/i386/mp_desc.h (struct mp_desc_table): New member `cpu_number'.
                    721:        * i386/i386/mp_desc.c (mp_desc_init): Set up KERNEL_GS segment to
                    722:        point to this CPU's cpu_number slot, and store MYCPU there.
                    723: 
                    724:        * oskit/ds_oskit.h (DEV_LOCK_INIT, DEV_LOCK, DEV_UNLOCK): New macros.
                    725: 
                    726:        * oskit/osenv_mem.c (smp_map_range): Add necessary cast.
                    727: 
                    728:        * Makefile.in (OSKIT_LIBS): Add -loskit_smp.
                    729: 
                    730:        * oskit/ds_routines.c (device_deallocate):
                    731:        dev_number_lock -> dev_hash_lock
                    732: 
                    733:        * oskit/x86/main.c: Include <kern/cpu_number.h> for master_cpu decl.
                    734:        * i386/i386/mp_desc.h: Include <oskit/x86/base_idt.h> for IDTSZ decl.
                    735:        Include <oskit/base_stack.h>.
                    736:        Declare mp_desc_load to return void.
                    737:        * i386/i386/mp_desc.c: Use struct x86_desc instead of i386_desc.
                    738:        (mp_desc_init): Replace ktss with base_tss.
                    739:        (interrupt_stack_alloc): base_stack -> base_stack_start
                    740: 
                    741: 2000-10-26  Roland McGrath  <[email protected]>
                    742: 
                    743:        * oskit/osenv_synch.c (osenv_intr_save_disable): New function.
                    744: 
                    745:        * i386/i386/mp_desc.h: Declare int_stack_high here.
                    746: 
                    747: 2000-10-09  Roland McGrath  <[email protected]>
                    748: 
                    749:        On the road to getting NCPUS > 1 to work in oskit-mach.
                    750:        * oskit/x86/main.c (int_stack_top, int_stack_bottom): Remove defns.
                    751:        (setup_machine_slot): New function, broken out of main.
                    752:        (main): Call it.
                    753:        Include <oskit/smp.h>
                    754:        (main) [NCPUS > 1]: Initialize oskit smp library and our mp_desc
                    755:        structures.
                    756:        * i386/i386/mp_desc.c: Use oskit includes.
                    757:        (interrupt_stack, int_stack_top, int_stack_high): Make unconditional.
                    758:        (eintstack, eintstack): Decls removed.
                    759:        (interrupt_stack_alloc): Use base_stack instead.
                    760:        (mp_ktss, mp_gdt): Let these go in bss.
                    761:        (mp_desc_init): Use memcpy instead of bcopy.
                    762:        (mp_desc_load): New function.
                    763:        * oskit/osenv_mem.c [NCPUS > 1] (smp_map_range): New function.
                    764: 
                    765: 2000-10-01  Roland McGrath  <[email protected]>
                    766: 
                    767:        * oskit/osenv_mem.c (free_for_oskit): Copy assert on FLAGS
                    768:        consistency from alloc_for_oskit.
                    769: 
                    770: 2000-09-17  Roland McGrath  <[email protected]>
                    771: 
                    772:        * oskit/x86/main.c (main): Set CR4_PGE bit here, after paging_enable.
                    773:        * i386/intel/pmap.c (pmap_bootstrap): Not here, since it's before
                    774:        paging is enabled, and that is verboten.  Still check the feature
                    775:        flag and initialize kernel_pte_global here.
                    776: 
                    777: 2000-03-20  Roland McGrath  <[email protected]>
                    778: 
                    779:        * Makefile.in (oskit-kern%.o): Pattern rule replaces oskit-kernel.o
                    780:        target rule.
                    781:        (kern%): Pattern rule replaces kernel target rule.
                    782:        (kernel-%.o): New pattern rule, like kernel.o rule.
                    783:        (init-%.c): New pattern rule.
                    784: 
                    785: 2000-02-07  Roland McGrath  <[email protected]>
                    786: 
                    787:        * oskit/osenv_mem.c (alloc_for_oskit): Add to lmm_wants_pages, rather
                    788:        than resetting it.
                    789:        (consider_lmm_collect): Separate the conditions, so we always check
                    790:        vm_page_unqueued_count against lmm_wants_pages first.  As another
                    791:        separate condition, if lmm_want_pages is nonzero, clear it and then
                    792:        thread_wakeup on it.  Check to move pages into the VM system is now
                    793:        a final independent conditional.
                    794: 
                    795: 2000-02-06  Roland McGrath  <[email protected]>
                    796: 
                    797:        * Drivers.macros: File removed; obsolete in this branch.
                    798: 
                    799:        * oskit/osenv_mem.c (consider_lmm_collect): Fix fencepost error in
                    800:        loop calling vm_page_grab.  After putting memory back into the LMM,
                    801:        wake up threads blocked on &lmm_wants_pages.
                    802:        (alloc_for_oskit): After waking from &lmm_wants_pages block, loop
                    803:        to retry LMM allocation.
                    804: 
                    805: 2000-02-05  Roland McGrath  <[email protected]>
                    806: 
                    807:        * version.c (version): Call it 1.2.91-OSKit now.
                    808:        * debian/changelog: Likewise.
                    809: 
                    810:        * Makefile.in (device-files): Remove obsolete files ds_routines.c and
                    811:        dev_forward.defs.
                    812:        (dist): Punt old rules and just run dpkg-buildpackage.
                    813:        * Makefile.in (oskit-cfiles): Add ds_routines.c here.
                    814: 
                    815:        * Makefile.in (config.h): Depend on stamp-configh.
                    816:        (stamp-configh): New target to run config.status for config.h update.
                    817: 
                    818:        * i386/Makefrag (install-headers, i386-install-headers,
                    819:        install-kernel, i386-install-kernel): Rules removed.
                    820: 
                    821:        * i386/i386/locore.S (dr6, dr0, dr1, dr2, dr3, dr_msk, dr_addr):
                    822:        Remove these obsolete entry points and variables.
                    823:        (null_idt, null_idtr, cpu_shutdown): These too.
                    824: 
                    825:        * oskit/osenv_irq.c: Don't #include <stdio.h>!
                    826: 
                    827: 2000-01-28  Roland McGrath  <[email protected]>
                    828: 
                    829:        * i386/i386/trap.c (user_page_fault_continue): Disable a debugging
                    830:        printf.
                    831: 
                    832: 2000-01-25  Roland McGrath  <[email protected]>
                    833: 
                    834:        * configure.in: Remove check for host_os.  It does not matter.
                    835:        * configure: Regenerated.
                    836: 
                    837: 1999-11-25  Roland McGrath  <[email protected]>
                    838: 
                    839:        Drastically revamp hardware support using the Flux OSKit.
                    840:        Numerous new and changed files, and many files and whole
                    841:        subdirectory trees removed.  All old device drivers are removed,
                    842:        replaced using the OSKit device driver libraries.
                    843:        All the changes on this page are a unified interdependent set
                    844:        of changes turning GNUmach into OSKit-Mach, but since there
                    845:        are so many changes I have put them in separate paragraphs
                    846:        roughly divided by topic.
                    847: 
                    848:        * oskit: New subdirectory of support code using OSKit interfaces,
                    849:        and providing OSKit bottom-end interfaces for using components in Mach.
                    850:        * oskit/ds_asyncio.c: New file.
                    851:        * oskit/ds_block.c: New file.
                    852:        * oskit/ds_bus.c: New file.
                    853:        * oskit/ds_mem.c: New file.
                    854:        * oskit/ds_net.c: New file.
                    855:        * oskit/ds_osenv.c: New file.
                    856:        * oskit/ds_oskit.h: New file.
                    857:        * oskit/ds_partition.c: New file.
                    858:        * oskit/ds_request.c: New file.
                    859:        * oskit/ds_request.h: New file.
                    860:        * oskit/ds_routines.c: New file.
                    861:        * oskit/ds_stream.c: New file.
                    862:        * oskit/osenv_irq.c: New file.
                    863:        * oskit/osenv_log.c: New file.
                    864:        * oskit/osenv_mem.c: New file.
                    865:        * oskit/osenv_sleep.c: New file.
                    866:        * oskit/osenv_synch.c: New file.
                    867:        * oskit/pc/osenv_bell.c: New file.
                    868:        * oskit/pc/osenv_timer.c: New file.
                    869:        * oskit/x86/main.c: New file.
                    870:        * oskit/kmsg.c: New file.  This is an oskit-based kernel logging
                    871:        device in the style of Linux's /proc/kmsg magical file.  It is the
                    872:        backend used for all logging output from oskit components.
                    873: 
                    874:        Front-end changes for device and miscellaneous support code changes:
                    875:        * device/dev_hdr.h: Rewritten.
                    876:        * device/dev_pager.c: Revamped to support only the new uniform
                    877:        oskit-based device_t interface, one flavor of pager.
                    878:        Commented out unused routines.
                    879:        * device/device_init.c (device_service_create): Don't call
                    880:        dev_lookup_init.
                    881:        * device/net_io.c (if_init_queues): Moved here from defunct subrs.c.
                    882:        (net_set_filter): Call net_kmsg_more before successful return, to
                    883:        make sure the very first packet buffer gets allocated.
                    884:        * kern/startup.c: Remove XPR cruft, panic_init, printf_init.
                    885:        * kern/syscall_sw.c: Add some missing headers.
                    886:        * kern/mach_clock.c: Deliver oskit clock ticks at splsoftclock.
                    887: 
                    888:        Miscellaneous cleanups & changes to use convenient OSKit facilities.
                    889:        * i386/i386/cswitch.S: Assembler macro nits.
                    890:        * i386/i386/fpu.c, i386/i386/fpu.h: Magic instruction macro nits.
                    891:        * i386/i386/fpe_linkage.c: Use OSKit structure and constant names.
                    892:        * i386/i386/i386sym.sym: Likewise.
                    893:        * i386/i386/idt-gen.h: Likewise.
                    894:        * i386/i386/idt.c: Likewise.
                    895:        * i386/i386/idt_inittab.S: Likewise.
                    896:        * i386/i386/gdt.c: Likewise.
                    897:        * i386/i386/gdt.h: Likewise.
                    898:        * i386/i386/ldt.c: Likewise.
                    899:        * i386/i386/ldt.h: Likewise.
                    900:        * i386/i386/user_ldt.h: Likewise.
                    901:        * i386/i386/user_ldt.c: Likewise.
                    902:        * i386/i386/locore.S: Likewise.
                    903:        * i386/i386/iopb.c: Likewise.
                    904:        * i386/i386/iopb.h: Likewise.
                    905:        * i386/i386/mp_desc.c: Likewise.
                    906:        * i386/i386/mp_desc.h: Likewise.
                    907:        * i386/i386/io_emulate.c: Likewise.
                    908:        * i386/i386/io_emulate.h: Likewise.
                    909:        * i386/i386/pcb.c: Likewise.
                    910:        * i386/i386/pit.c: Likewise.
                    911:        * i386/i386/pic.c: Likewise.
                    912:        * i386/i386/spl.S: Likewise.
                    913:        * i386/i386/thread.h: Likewise.
                    914:        * i386/i386at/int_init.c: Likewise.
                    915:        * i386/i386at/interrupt.S: Likewise.
                    916:        * i386/i386at/pic_isa.c: Likewise.
                    917:        * kern/kalloc.c: Likewise.
                    918:        * i386/intel/pmap.h: Likewise.
                    919:        * i386/i386/trap.c: Likewise.  Remove much cruft, TTD & KDB.
                    920:        Call oskit gdb_trap handler if enabled.
                    921:        * i386/i386/vm_param.h: Use <oskit/x86/base_vm.h> for defns.
                    922:        * i386/i386/hardclock.c: Clean up unused PS2 & LINUX_DEV cruft.
                    923:        * i386/include/mach/i386/vm_param.h: #undef PAGE_SHIFT in case of
                    924:        conflicting defn from the oskit.
                    925:        * kern/assert.h: Rewritten using <oskit/c/assert.h>.
                    926:        * kern/debug.h: Use <oskit/gdb.h>.
                    927:        * kern/machine.c: Likewise.
                    928:        * kern/bootstrap.c: Use oskit headers for multiboot and exec stuff.
                    929:        (boot_info): Fix type, not a pointer.
                    930:        (bootstrap_create): Fix uses.
                    931:        (get_compat_strings): Initialize to "UNKNOWN" in case nothing seen.
                    932:        (user_bootstrap): Increase buffer sizes for device/file name prompts.
                    933:        * vm/vm_object.c: Remove XPR cruft.
                    934: 
                    935:        Changes to the physical page pool code to share a pool of available
                    936:        memory kept in contiguous chunks with oskit code (drivers).
                    937:        The pageout daemon moves memory between the shared pool (the LMM)
                    938:        and the vm_page_queue_free list to keep some available for either
                    939:        use, but vm_page_grab can always steal a page directly from the LMM
                    940:        if the pageout daemon is not keeping the free list full enough.
                    941:        The interesting action here goes on in oskit/osenv_mem.c.
                    942:        * vm/vm_page.h (vm_page_queue_free_count, vm_page_unqueued_count):
                    943:        Declare new variables.
                    944:        (vm_page_free_count): Now a macro.
                    945:        * vm/vm_pageout.c (vm_pageout_scan): Call consider_lmm_collect.
                    946:        * vm/vm_resident.c: Remove XPR cruft.
                    947:        (vm_page_queue_free_count, vm_page_unqueued_count): New variables.
                    948:        (vm_page_free_count): Variable removed.
                    949:        (pmap_startup): Commented out.
                    950:        (vm_page_grab): When the queue is empty, call vm_page_grab_oskit_page.
                    951:        Also wakeup the pageout daemon whenever
                    952:        vm_page_queue_free_count < vm_page_unqueued_count.
                    953:        (vm_page_release): Use vm_page_queue_free_count for vm_page_free_count.
                    954:        (vm_page_module_init): Make the vm_page_zone collectable.
                    955: 
                    956:        * i386/intel/pmap.c: Use oskit types, macros, and variables that apply.
                    957:        (INVALIDATE_TLB): Macro replaced with inline function.
                    958:        Attempt to use INVLPG instruction if available.
                    959:        (kernel_pte_global): New variable.
                    960:        (pmap_bootstrap): Set it if processor supports INTEL_PTE_GLOBAL
                    961:        bit, and set PGE flag in %cr4 to enable using it.  Use it for
                    962:        page table entries in the kernel portion of address space.
                    963:        (pmap_create): Use pmap_page_table_page_alloc to get a
                    964:        direct-mapped physical page for the page directory.
                    965:        (pmap_destroy): Deallocate accordingly.
                    966:        (pmap_enter): Zero-fill new page table pages.
                    967:        Use kernel_pte_global if allocating in the kernel_pmap.
                    968: 
                    969:        * ipc/mach_port.c (mach_port_insert_right): IO_VALID -> IP_VALID.
                    970:        * kern/ipc_tt.c (mach_ports_register): Add a cast.
                    971: 
                    972:        Associated configure/build changes for reorganizations.
                    973:        * configure.in: Generate config.h file instead of -D switches.
                    974:        (--enable-kdb, --enable-kmsg): Options removed.
                    975:        (--enable-smp): New argument, sets MAXCPUS, defines NCPUS.
                    976:        (--enable-fpe): New argument, defines FPE.
                    977:        Add check for a sufficiently new installed oskit version.
                    978:        (OSKIT_LIBDIR): New variable, substituted.
                    979:        Comment out AC_CONFIG_SUBDIRS call.
                    980:        * configure: Regenerated.
                    981:        * acconfig.h, config.h.in: New files, used by autoheader and configure.
                    982:        * cpus.h: New file, uses configure-generated config.h for values.
                    983:        * include/device/device_error_reply.defs: New file.
                    984:        * device/device_error_reply.cli: New file.  Well-typed error replies.
                    985:        * version.c (version): Changed to "GNUmach 1.2.90-OSKit".
                    986:        * Makefile.in, i386/Makefrag: Substantially revamped for many added
                    987:        and removed modules, new linking rules to use oskit libraries.
                    988:        * i386/Files, i386/Subdirs: Updated.
                    989: 
                    990:        Removed all old device drivers, hardware support code, and
                    991:        miscellaneous things that can be replaced by using OSKit libraries.
                    992:        Also removed much cruft that was already unused in GNUmach.
                    993:        Removed unused "XPR" kernel logging facility.
                    994:        * chips, ddb, linux, scsi, util: Whole directory trees all removed.
                    995:        * device/blkio.c: Obsolete file removed.
                    996:        * device/buf.h: Likewise.
                    997:        * device/chario.c: Likewise.
                    998:        * device/cirbuf.c: Likewise.
                    999:        * device/cirbuf.h: Likewise.
                   1000:        * device/conf.h: Likewise.
                   1001:        * device/cons.c: Likewise.
                   1002:        * device/cons.h: Likewise.
                   1003:        * device/dev_forward.defs: Likewise.
                   1004:        * device/dev_lookup.c: Likewise.
                   1005:        * device/dev_name.c: Likewise.
                   1006:        * device/dk_label.c: Likewise.
                   1007:        * device/ds_routines.c: Likewise.
                   1008:        * device/errno.h: Likewise.
                   1009:        * device/io_req.h: Likewise.
                   1010:        * device/kmsg.c: Likewise.
                   1011:        * device/kmsg.h: Likewise.
                   1012:        * device/param.h: Likewise.
                   1013:        * device/subrs.c: Likewise.
                   1014:        * device/tty.h: Likewise.
                   1015:        * i386/Makefile.in: Likewise.
                   1016:        * i386/README-Drivers: Likewise.
                   1017:        * i386/configure: Likewise.
                   1018:        * i386/configure.in: Likewise.
                   1019:        * i386/i386/_setjmp.S: Likewise.
                   1020:        * i386/i386/db_disasm.c: Likewise.
                   1021:        * i386/i386/db_interface.c: Likewise.
                   1022:        * i386/i386/db_machdep.h: Likewise.
                   1023:        * i386/i386/db_trace.c: Likewise.
                   1024:        * i386/i386/debug.h: Likewise.
                   1025:        * i386/i386/debug_i386.c: Likewise.
                   1026:        * i386/i386/debug_trace.S: Likewise.
                   1027:        * i386/i386/fpe.b: Likewise.
                   1028:        * i386/i386/fpe.b_elf: Likewise.
                   1029:        * i386/i386/io_map.c: Likewise.
                   1030:        * i386/i386/ktss.c: Likewise.
                   1031:        * i386/i386/ktss.h: Likewise.
                   1032:        * i386/i386/kttd_interface.c: Likewise.
                   1033:        * i386/i386/kttd_machdep.h: Likewise.
                   1034:        * i386/i386/loose_ends.c: Likewise.
                   1035:        * i386/i386/pic.h: Likewise.
                   1036:        * i386/i386/pit.h: Likewise.
                   1037:        * i386/i386/proc_reg.h: Likewise.
                   1038:        * i386/i386/seg.c: Likewise.
                   1039:        * i386/i386/seg.h: Likewise.
                   1040:        * i386/i386/setjmp.h: Likewise.
                   1041:        * i386/i386/timer.h: Likewise.
                   1042:        * i386/i386/tss.h: Likewise.
                   1043:        * i386/i386/xpr.h: Likewise.
                   1044:        * i386/i386at/asm_startup.h: Likewise.
                   1045:        * i386/i386at/autoconf.c: Likewise.
                   1046:        * i386/i386at/blit.c: Likewise.
                   1047:        * i386/i386at/blitreg.h: Likewise.
                   1048:        * i386/i386at/blituser.h: Likewise.
                   1049:        * i386/i386at/blitvar.h: Likewise.
                   1050:        * i386/i386at/boothdr.S: Likewise.
                   1051:        * i386/i386at/com.c: Likewise.
                   1052:        * i386/i386at/comreg.h: Likewise.
                   1053:        * i386/i386at/conf.c: Likewise.
                   1054:        * i386/i386at/cons_conf.c: Likewise.
                   1055:        * i386/i386at/cram.h: Likewise.
                   1056:        * i386/i386at/dev_hdr.h: Likewise.
                   1057:        * i386/i386at/device_emul.h: Likewise.
                   1058:        * i386/i386at/disk.h: Likewise.
                   1059:        * i386/i386at/ds8390.h: Likewise.
                   1060:        * i386/i386at/eisa.h: Likewise.
                   1061:        * i386/i386at/fd.c: Likewise.
                   1062:        * i386/i386at/fdreg.h: Likewise.
                   1063:        * i386/i386at/i386at_ds_routines.c: Likewise.
                   1064:        * i386/i386at/i8250.h: Likewise.
                   1065:        * i386/i386at/i82586.h: Likewise.
                   1066:        * i386/i386at/if_3c501.c: Likewise.
                   1067:        * i386/i386at/if_3c501.h: Likewise.
                   1068:        * i386/i386at/if_3c503.h: Likewise.
                   1069:        * i386/i386at/if_de6c.c: Likewise.
                   1070:        * i386/i386at/if_de6c.h: Likewise.
                   1071:        * i386/i386at/if_de6s.S: Likewise.
                   1072:        * i386/i386at/if_ne.c: Likewise.
                   1073:        * i386/i386at/if_nereg.h: Likewise.
                   1074:        * i386/i386at/if_ns8390.c: Likewise.
                   1075:        * i386/i386at/if_ns8390.h: Likewise.
                   1076:        * i386/i386at/if_par.c: Likewise.
                   1077:        * i386/i386at/if_par.h: Likewise.
                   1078:        * i386/i386at/if_pc586.c: Likewise.
                   1079:        * i386/i386at/if_pc586.h: Likewise.
                   1080:        * i386/i386at/if_wd8003.h: Likewise.
                   1081:        * i386/i386at/immc.c: Likewise.
                   1082:        * i386/i386at/iopl.c: Likewise.
                   1083:        * i386/i386at/kd.c: Likewise.
                   1084:        * i386/i386at/kd.h: Likewise.
                   1085:        * i386/i386at/kd_event.c: Likewise.
                   1086:        * i386/i386at/kd_mouse.c: Likewise.
                   1087:        * i386/i386at/kd_queue.c: Likewise.
                   1088:        * i386/i386at/kd_queue.h: Likewise.
                   1089:        * i386/i386at/kdasm.S: Likewise.
                   1090:        * i386/i386at/kdsoft.h: Likewise.
                   1091:        * i386/i386at/lpr.c: Likewise.
                   1092:        * i386/i386at/lprreg.h: Likewise.
                   1093:        * i386/i386at/model_dep.c: Likewise.
                   1094:        * i386/i386at/nfd.c: Likewise.
                   1095:        * i386/i386at/nfdreg.h: Likewise.
                   1096:        * i386/i386at/nhd.c: Likewise.
                   1097:        * i386/i386at/nhdreg.h: Likewise.
                   1098:        * i386/i386at/phys_mem_grab_page.c: Likewise.
                   1099:        * i386/i386at/rtc.c: Likewise.
                   1100:        * i386/i386at/rtc.h: Likewise.
                   1101:        * kern/debug.c: Likewise.
                   1102:        * kern/printf.c: Likewise.
                   1103:        * kern/xpr.c: Likewise.
                   1104:        * kern/xpr.h: Likewise.
                   1105: 
                   1106:        * debian/control, debian/rules: First crack at setting things up to
                   1107:        build an oskit-mach package instead of gnumach.
                   1108: 
                   1109: Older changes in ChangeLog.1
                   1110: 
                   1111: Local variables:
                   1112: mode: change-log
                   1113: fill-column: 75
                   1114: End:

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.