Sun Mar 14 18:53:01 1999 Thomas Bushnell, BSG * device/ds_routines.c (ds_read_done): When touching memory to mark it dirty, make sure we say "volatile" so the compiler doesn't optimize it out. Tue Jan 26 21:36:10 1999 Thomas Bushnell, BSG * kern/exception.c (exception_no_server): Correctly comment out the suspend code. (This should have happened on 17 April 1997, but apparently I did it backwards.) 1998-10-28 Roland McGrath * include/mach/multiboot.h: Contents were doubled. 1998-10-24 Roland McGrath * Makefile.in (mach_machine): Don't depend on config.status, since it is always newer than the symlink target. * i386/Makefrag ($(systype)/device-drivers.h): Depend on $(systype)/driverlist, and have no commands. * configure.in (--enable-kdb): Fix help text; handle --disable-kdb. Remove BUILD_CC checks and lex/yacc checks (which were for mig). (installed_clib): Remove these checks. (LD, NM, MIG): Use AC_CHECK_TOOL for these. * Makefile.in (all, clean, mostlyclean, install, dist, %_interface.h rule, all *mig* rules): Remove all commands, deps, and rules related to mig, which is now in a separate distribution. * Makefile.in (before-compile): Add mach/machine. (mach/machine, mach_machine): New rules to make symlink so #include works. * Makefile.in (NM): New variable, substituted by configure. (check-clib-routines): Use $(NM) instead of literal "nm". Fix awk script to grok __ defns and weak defns of desired symbols. (clib-routines.o): Use $(CC) -r -nostartfiles -nostdlib -static instead of $(LD) -r. Use -lc instead of $(installed-clib). (installed-clib): Variable removed. * i386/Makefrag: Use -include for linux-flags, so no warning. * device/chario.c: Add forward decl for ttstart. * i386/i386/db_trace.c: Use explicit int in decl. * device/ds_routines.c (device_write_trap, device_writev_trap, ds_trap_write_done): Cast arg to zfree. * kern/ipc_tt.c (mach_ports_lookup): Remove unnecessary cast. 1998-10-04 Roland McGrath * include/mach/message.h: Use __typeof instead of typeof. 1998-09-06 Roland McGrath * kern/time_out.h: Include for time_value_t defn. 1998-07-19 Roland McGrath * mig: Subdirectory removed, now in separate dist. Fri Apr 24 14:24:15 1998 Thomas Bushnell, n/BSG * i386/i386/pcb.c (thread_setstatus): Set STATE before validating segment registers. Reported by UCHIYAMA Fasushi (uch@nop.or.jp). Fri Apr 24 13:19:40 1998 Thomas Bushnell n/BSG * kern/debug.c (panic): Increase "seconds" in delay to 1000; machines are faster now. * i386/i386at/gpl/linux/linux_kmem.c: Increase MEM_CHUNKS to 7. Wed Aug 20 16:05:19 1997 Thomas Bushnell, n/BSG * kern/thread.h (struct thread): New member `creation_time'. * include/mach/thread_info.h: New member `creation_time'. * kern/thread.c (thread_create): Set creation time stamp. (thread_info) [THREAD_BASIC_INFO]: Fill in new creation time field. Carefully preserve compatibility with old callers. * kern/task.h (struct task): New member `creation_time'. * include/mach/task_info.h: New member `creation_time'. * kern/task.c (task_create): Set creation time stamp. (task_info) [TASK_BASIC_INFO]: Fill in new creation time field. Carefully preserve compatibility with old callers. * kern/mach_clock.c (record_time_stamp): New function. * kern/time_out.h (record_time_stamp): Add prototype. Sun Aug 3 18:25:38 1997 Shantanu Goel * i386/i386/thread.h (struct pcb): Added new field `data' used by Linux driver emulation. * i386/i386at/gpl/linux/include/linux/blk.h (end_request): Revamped Mach specific code. Don't use `errors' field in request. Don't call driver's request function. * i386/i386at/gpl/linux/include/linux/fs.h (struct buffer_head): Deleted old Mach-specific definition. Use original Linux defintion. * i386/i386at/gpl/linux/linux_block.c: Rewritten extensively. (collect_buffer_pages): Deleted. (alloc_buffer, free_buffer): Rewritten to use Mach page allocator. (getblk, __brelse): Use Mach kernel allocator. (check_for_error): Deleted. (ll_rw_block): Allocate request structure on stack. (rdwr_partial, rdwr_full, do_rdwr) New routines. (block_read, block_write): Rewritten to use new routine do_rdwr. (find_name): New routine. (read_bsd_label, read_vtoc): New routines. (init_partition): New routine. (device_open): Rewritten for modularity. Allocate Linux block variables on the stack. (check_limit): New routine. (device_read, device_write): Rewritten extensively. Map user pages into kernel buffer before passing to driver. This is in preparation for general Linux block driver support. Allocate Linux block variables on the stack. * i386/i386at/gpl/linux/linux_kmem.c: (collect_buffer_pages): Deleted. Fri Aug 1 16:15:33 1997 Thomas Bushnell, n/BSG * kern/mach_clock.c (clock_interrupt): Test correct macro to see if PC sampling is configured: MACH_PCSAMPLE, not MACH_SAMPLE. * i386/i386/locore.S (discover_x86_cpu_type): Comment out routine for now. * i386/i386at/model_dep.c (c_boot_entry): Comment out use of discover_x86_cpu_type for now. * i386/include/mach/i386/eflags.h (EFL_AC, EFL_ID): New bits. * i386/i386/locore.S (discover_x86_cpu_type): Use correct opcode for right shift. Use ENTRY macro correctly. Mon Jul 28 17:01:19 1997 Thomas Bushnell, n/BSG * COPYING: New file. * Makefile.in (topfiles): Add COPYING. Mon Jul 21 14:20:39 1997 Thomas Bushnell, n/BSG * kern/mach4.srv: Include so the value of MACH_PCSAMPLE is made available for mach4.defs. Thu Jul 10 13:51:20 1997 Thomas Bushnell, n/BSG * Makefile.in (install): Use `ln -sf' instead of `-ln -s'. Suggested by Marcus G. Daniels (marcus@cathcart.sysc.pdx.edu). Thu Jun 26 13:48:31 1997 Thomas Bushnell, n/BSG * i386/i386/locore.S (discover_x86_cpu_type): New function. * i386/i386at/model_dep.c (c_boot_entry): Fill in cpu type in MACHINE_SLOT using new function. * include/mach/machine.h (CPU_TYPE_I486, CPU_TYPE_PENTIUM, CPU_TYPE_PENTIUMPRO, CPU_TYPE_POWERPC): New CPU types. These conform to current OSF Mach values, but note that some of the various subtypes are different. Mon Jun 16 12:14:17 1997 Thomas Bushnell, n/BSG * i386/i386/loose_ends.c (ovbcopy): Delete function. Suggested by Matthew Wilcox (willy@odie.barnet.ac.uk.) Thu Jun 12 18:08:29 1997 Thomas Bushnell, n/BSG Version 1.1.3 released. * version.c (version): Update to 1.1.3. Wed Jun 11 20:16:47 1997 Thomas Bushnell, n/BSG * i386/Drivers.in: Add el3. How did this escape notice? * i386/device-drivers.h.in: Add CONFIG_EL3. Tue Jun 10 13:33:37 1997 Thomas Bushnell, n/BSG Version 1.1.2 released. * Makefile.in (install): Install cross-migcom as `migcom', not as `mig'. * i386/Makefrag (objfiles += $(device_drivers)): Sort $(device_drivers) before adding to objfiles in order to remove duplicates. Mon Jun 9 22:14:09 1997 Thomas Bushnell, n/BSG * i386/Drivers.in: Fix typos apt.o -> atp.o; 3c403.o -> 3c503.o. * Drivers.macros (AC_DRIVER): Test the class selected flag correctly. Mon May 26 14:33:19 1997 Thomas Bushnell, n/BSG * version.c (version): Update to version 1.1.2. Fri May 23 10:08:48 1997 Thomas Bushnell, n/BSG * kern/thread.c (thread_info): Set flags word correctly; TH_FLAGS_SWAPPED and TH_FLAGS_IDLE are not exclusive. * Makefile.in (topfiles): Add aclocal.m4. Reported by Marcus G. Daniels (marcus@cathcart.sysc.pdx.edu). Mon May 12 11:25:38 1997 Thomas Bushnell, n/BSG Version 1.1.1 released. * version.c (version): Update to version 1.1.1. * bogus/mach_kdb.h: Make sure MACH_KDB is always defined, to zero if necessary. Bug report from Marcus Daniels (marcus@cathcart.sysc.pdx.edu). Fri May 9 13:06:25 1997 Thomas Bushnell, n/BSG * i386/Files: Fix typo for _setjmp.S. Reflect 53c7,8xx.c -> 53c78xx.c change. Wed May 7 15:32:08 1997 Thomas Bushnell, n/BSG * version.c (version): Update to version 1.1. * NEWS: New file. * Makefile.in (topfiles): Add NEWS. Mon May 5 11:34:01 1997 Thomas Bushnell, n/BSG * Makefile.in (enable_kdb): Use findstring instead of filter. Reported by Marcus Daniels (marcus@cathcart.sysc.pdx.edu). Fri May 2 12:43:46 1997 Thomas Bushnell, n/BSG * Makefile.in (enable_kdb): New variable. (clib-routines): If enable_kdb, then add strstr. * i386/i386/_setjmp.S: New file, from UK22 libmach. * i386/Files: Add i386/i386/_setjmp.S. * i386/Makefrag (objfiles): Add _setjmp.o if enable_kdb. 1997-04-30 Marcus G. Daniels * Makefile.in (clib-routines): Add htons not because it is necessary, but because libc5 systems will bring it in. (check-clib-routines): Tolerate extra weak symbols. Wed Apr 30 14:12:12 1997 Thomas Bushnell, n/BSG * Makefile.in: Delete duplicate rule for cross-mig. Mon Apr 28 12:09:53 1997 Thomas Bushnell, n/BSG * Makefile.in (check): New target. Reported by xtest@postman.epa.go.jp. * i386/Drivers.in (ncr53c7xx): Change file name to 53c78xx.o. * i386/i386at/gpl/linux/scsi/53c7,8xx.c: Moved to ... * i386/i386at/gpl/linux/scsi/53c78xx.c: ... here. * i386/Makefrag (linux-scsi-files): Change file name here too. Reported by xtest@postman.epa.go.jp. Wed Apr 23 14:35:44 1997 Miles Bader * ipc/ipc_entry.c [MACH_KDB]: Add include of . Wed Apr 23 13:21:23 1997 Thomas Bushnell, n/BSG * configure.in (BUILD_CC): Use AC_CHECK_PROGS, not AC_CHECK_PROG, since we are checking multiple names. * configure.in (kdb): New --enable option. * Makefile.in (DEFINES): Add @DEFS@. * bogus/mach_kdb.h: Make this file zero length; we get MACH_KDB from configure now. * Makefile.in (clean, distclean, mostlyclean, maintainter-clean): New targets. (all-archs-configures): New variable. (MIG): Change to ./local-mig. (./local-mig): Change to build this instead of ./mig (check-clib-routines): Use nm -g in case there are local symbols. Suggested by Matthew Wilcox (willy@odie.barnet.ac.uk). Fri Apr 18 15:25:10 1997 Thomas Bushnell, n/BSG * configure.in: Add AC_PREREQ for version 2.12. * i386/Drivers.in: Likewise. Wed Apr 16 16:55:36 1997 Marcus G. Daniels * configure.in: Replace AC_PROG_CC with AC_PROG_CC_LOCAL. If cross compiling do Lex/Yacc checks with BUILD_CC. Check CC and BUILD_CC for libraries having the needed support, and substitute discovery in installed_clib. * aclocal.m4: New file. These replacement macros are to handle the case where there is a cross compiler but no supporting files. * Makefile.in (installed-clib): Don't hardwire a Hurd libcrt.a. (cross_linkable): Only define cross-migcom variable when it will be possible to build it. (all, install): Use $(cross-migcom). (install): Install cross-migcom only if was to be built. (mkinstalldirs): Add $(bindir), $(includedir)/mach/exec (cross-lexxer.o lexxer.o): lexxer.o needs cpu.h. (./cross-migcom): Prevent dependency generation for cross-* MiG files unless they can actually be built. Thu Apr 17 15:55:40 1997 Thomas Bushnell, n/BSG * kern/exception.c (exception_no_server): Comment out the suspend code; it's useful for special case debugging, but causes problems in general. Wed Apr 16 12:52:25 1997 Thomas Bushnell, n/BSG * Makefile.in (cross-lexxer.o lexxer.o): Add pump-priming dependency on cpu.h. Reported by Marcus G. Daniels (marcus@cathcart.sysc.pdx.edu). * configure.in: Fail if configure target is not for GNU os. * i386/Drivers.in (com): Delete option. It's required by kd_mouse.c. * i386/Makefrag (i386at-files): Add com.c. (driver-files): Delete variable. * i386/bogus/com.h: Revert change of March 10. * i386/device-drivers.h.in (CONFIG_MACH_COM): Delete option. Bug report from Marcus G. Daniels (marcus@cathcart.sysc.pdx.edu). * Makefile.in (./cross-mig): New rule. (mkinstalldirs): Add $(libexecdir). * configure.in: Recognize i686. Reported by Marcus G. Daniels (marcus@cathcart.sysc.pdx.edu). Mon Apr 14 11:50:45 1997 Thomas Bushnell, n/BSG * Released version 1.0. * kern/exception.c (exception_no_server): Try and suspend the failing thread before killing the task. Then a debugger can be used. * i386/Makefrag: Add rebuilding rules for configure subscript. * i386/Makefrag: Fix up copyright notice. * i386/Drivers.in: Likewise. * Makefile.in: Likewise. * Drivers.macros: Likewise. * configure.in: Likewise. * include/sys/time.h: New file, from include/mach/sa/sys/time.h. * include/sys/reboot.h: New file, from include/mach/sa/sys/reboot.h. * include/sys/ioctl.h: New file, from include/mach/sa/sys/ioctl.h. * include/alloca.h: New file, from include/mach/sa/alloca.h. * Makefile.in (other-sys-headers): Add time.h, ioctl.h, and reboot.h. (other-mach-headers): New variable. (mach-exec-headers): New variable. (other-headers): New variable. (installed-headers): Add mach-exec-headers. (dist): Distribute other-mach-headers, other-sys-headers, mach-exec-headers, and other-headers. (device-files): Add device.srv. * Makefile.in (check-clib-routines): Use more efficient rule. Fri Apr 11 15:18:09 1997 Thomas Bushnell, n/BSG * Makefile.in (dist): Repair rule. (other-sys-headers): New variable. (dist): Install $(other-sys-headers). (INCLUDES): Remove -I$(srcdir)/include/mach/sa. (rules for mig-related .d files): Include MiG-specific -I flags. (mach-headers): Add inline.h. * include/sys/types.h: New file, from include/mach/sa/sys/types.h. Mon Mar 24 16:23:21 1997 Thomas Bushnell, n/BSG * version.c (version): Make that 1.0. Whee. Fri Mar 21 15:50:09 1997 Thomas Bushnell, n/BSG * i386/i386at/gpl/linux/scsi/aha1740.c (aha1740_test_port): Try and turn on PORTADDR_ENH before checking it. * vm/vm_object.c (vm_object_cached_max): Increase to 200. Thu Mar 20 12:33:06 1997 Thomas Bushnell, n/BSG * Makefile.in (dist): New target. Reorganized some vars describing source. * i386/Subdirs: New file. * i386/Files: New file. * version.c (version): Push back to 0.1. * Makefile.in (cross_compiling, bindir, libexecdir): New variable. * Makefile.in (install): Depend on cross-mig and cross-migcom; install them. New rules added to build mig, migcom, cross-mig, and cross-migcom. * configure.in (AC_PROG_LEX, AC_PROG_YACC): New tests. (BUILD_CC): New test to set these. * Makefile.in (%.h %_user.c): Depend on $(MIG) too. (%_interface.h %_server.c): Likewise. (MIG): Don't use @MIG@; hard code it to the one we build. (BUILD_CC, BUILD_CFLAGS, MIGCOM, LEX, YACC, LEXLIB): New variables. Wed Mar 19 16:47:28 1997 Thomas Bushnell, n/BSG * i386/i386at/kd.c (BROKEN_KEYBOARD_RESET): Turn off this so that we attempt the keyboard resets. * i386/i386/locore.S (cpu_shutdown): Attempt to provide a more `robust' null_idtr. Mon Mar 17 13:47:14 1997 Thomas Bushnell, n/BSG * i386/i386at/gpl/linux/scsi/hosts.c (scsi_init): Don't print out gratuitious obnoxiousness. * i386/i386at/gpl/linux/scsi/scsi.c (scsi_dev_init): Likewise. * i386/i386at/gpl/linux/block/triton.c (ide_init_triton): Likewise. (init_triton_dma): Likewise. * i386/i386at/gpl/linux/pci/pci.c (pci_init): Likewise. * i386/i386at/gpl/linux/pci/bios32.c (check_pcibios): Likewise. (pcibios_init): Likewise. * i386/i386at/gpl/linux/block/genhd.c (add_partition): Likewise. * i386/i386at/gpl/linux/net/8390.c (ei_debug): Make default value zero. Wed Mar 12 14:50:46 1997 Thomas Bushnell, n/BSG * i386/i386at/com.c (comprobe): Turn off noisiness. * i386/i386at/gpl/linux/linux_block.c (check_disk_change): Don't print out gratuitous obnoxiousness. (device_open): Likewise. * kern/bootstrap.c (copy_bootstrap): Likewise. (user_bootstrap): Likewise. * i386/i386at/gpl/linux/block/genhd.c (msdos_partition): Likewise. (osf_partition): Likewise. (sun_partition): Likewise. (check_partition): Likewise. * i386/i386/pit.c (findspeed): Likewise. * vm/vm_resident.c (vm_page_bootstrap): Likewise. Mon Mar 10 15:04:47 1997 Thomas Bushnell, n/BSG * i386/i386at/gpl/linux/linux_init.c (calibrate_delay): Don't print out gratuitous obnoxiousness. * i386/i386at/gpl/linux/linux_init.c (linux_init): Only call linux_net_emulation_init if CONFIG_INET. Include . * i386/i386at/i386at_ds_routines.c: Include . Don't mention linux_net_emulation_ops unless CONFIG_INET. * device/ds_routines.c (io_done_thread_continue): [i386] Conditionalize free_skbuffs also on CONFIG_INET. Include . * i386/Drivers.in, i386/device-drivers.h.in, i386/driverlist.in: New files. * i386/Makefrag: Include i386/driverlist; don't include all device drivers in kernel image; instead use list from driverlist. * configure.in: Configure in $systype subdir too. * i386/i386at/gpl/linux/include/linux/autoconf.h: Damage severly to conform to device-drivers.h model. * i386/bogus/com.h: Include . Only turn on NCOM if CONFIG_MACH_COM is present. Mon Mar 3 16:26:58 1997 Thomas Bushnell, n/BSG * include/mach/message.h (__mach_msg, __mach_msg_trap): Add decls. Tue Feb 25 15:42:23 1997 Thomas Bushnell, n/BSG * i386/Makefrag (INCLUDES): Find `include' directory in new location. * Makefile (INCLUDES): Find `include' directory in new location. (%.symc): Find gensym.awk in new location. * Reorganized directories into new layout and unified mach4 and mach4-i386 into a single tree. Older changes in ChangeLog.00 (for i386 directory) and ChangeLog.0 (for all other files).