    
    
    
==========================================================================
   ***** MK Version MK31  (rwd) *****
    
    
New features:
--- --------

Debugger has watchpoints.  Breakpoints are map specific.  New software
reference bit code which is currently turned off by default.

Bug fixes:
--- -----

Yes

[I386]	All references to AT386 in makefiles have been duplicated to I386.

Special notes:
------- -----

This merge was done with /afs/cs/project/mach/mach3/tools/bin/m3merge.
mkmerge is dead.  long live m3merge.

******** CUT HERE ******** summary of log messages ******** CUT HERE ********
[ ./conf/version.edit ]
31
[ ./Makefile ]
Don't make clean include area.
[90/10/24            rwd]
[ ./kernel/boot_ufs/boot_printf.c ]
Modified boot_gets to allocate arrays from heap, not stack.
[90/10/23            rpd]
[ ./kernel/boot_ufs/file_io.c ]
Modified open_file to allocate arrays from heap, not stack.
[90/10/23            rpd]
[ ./kernel/boot_ufs/load.c ]
Modified boot_load_program and read_emulator_symbols
to allocate arrays from heap, not stack.
[90/10/23            rpd]
[ ./MERGE_HISTORY ]
Created
[ ./kernel/conf/Makefile.template ]
[ ./kernel/conf/files ]
Added ddb/db_watch.c.
[90/10/16            rpd]
[ ./kernel/ddb/db_break.c ]
Added map field to breakpoints.
Added map argument to db_set_breakpoint, db_delete_breakpoint,
db_find_breakpoint.  Added db_find_breakpoint_here.
[90/10/18            rpd]
[ ./kernel/ddb/db_break.h ]
Added map field to breakpoints.
[90/10/18            rpd]
[ ./kernel/ddb/db_command.c ]
Changed db_fncall to print the result unsigned.
[90/10/19            rpd]

Added CS_MORE to db_watchpoint_cmd.
[90/10/17            rpd]
Added watchpoint commands: watch, dwatch, show watches.
[90/10/16            rpd]
[ ./kernel/ddb/db_print.c ]
Changed db_show_regs to print unsigned.
[90/10/19            rpd]
Generalized the watchpoint support.
[90/10/16            rwd]
[ ./kernel/ddb/db_run.c ]
Changed db_find_breakpoint to db_find_breakpoint_here.
[90/10/18            rpd]

Fixed db_set_single_step to pass regs to branch_taken.
Added watchpoint argument to db_restart_at_pc.
[90/10/17            rpd]
Generalized the watchpoint support.
[90/10/16            rwd]
Added watchpoint support.
[90/10/16            rpd]
[ ./kernel/ddb/db_sym.c ]
Changed db_printsym to print unsigned.
[90/10/19            rpd]
[ ./kernel/ddb/db_trap.c ]
From rpd.
[90/10/19  17:03:17  rwd]

Generalized the watchpoint support.
[90/10/16            rwd]
Added watchpoint support.
[90/10/16            rpd]
[ ./kernel/ddb/db_watch.c ]
Made db_watchpoint_cmd parse a size argument.
[90/10/17            rpd]
Generalized the watchpoint support.
[90/10/16            rwd]
Created.
[90/10/16            rpd]
[ ./kernel/ddb/db_watch.h ]
Generalized the watchpoint support.
[90/10/16            rwd]
Created.
[90/10/16            rpd]
[ ./kernel/ddb/db_write_cmd.c ]
Changed db_write_cmd to print unsigned.
[90/10/19            rpd]
[ ./kernel/device/ds_routines.c ]
Let ds_device_write proceed w/o a valid reply port.  This is used
by the unix server ether_output routine.
[90/10/22            rwd]
Fixed ds_write_done to use ds_device_write_inband_reply
when appropriate.
[90/10/18            rpd]
Check for invalid reply ports.
[90/10/17            rwd]
[ ./kernel/i386/db_interface.c ]
Added watchpoint support.
[90/10/18            rpd]

Created.
[90/07/25            dbg]
[ ./kernel/i386/db_machdep.h ]
Added watchpoint support.
[90/10/18            rpd]
[ ./kernel/i386/trap.c ]
Added watchpoint support.
[90/10/18            rpd]
[ ./kernel/i386/trap.h ]
Added watchpoint support.
[90/10/18            rpd]
[ ./kernel/kern/debug.c ]
Change sun3 debugger invocation.
[90/10/17            rwd]
[ ./kernel/kern/printf.c ]
Purged uprintf.
[90/10/21            rpd]
[ ./kernel/kern/task.c ]
From OSF: Add thread_block() to loop that forcibly terminates
threads in task_terminate() to fix livelock.  Also hold
reference to thread when calling thread_force_terminate().
[90/10/19            rpd]
[ ./kernel/kern/thread.c ]
Added host_stack_usage and processor_set_stack_usage.
[90/10/22            rpd]

Removed pausing code in stack_alloc/stack_free.
It was broken and it isn't needed.
Added code to check how much stack is actually used.
[90/10/21            rpd]
[ ./kernel/mach_debug/mach_debug.defs ]
Added processor_set_stack_usage.
[90/10/22            rpd]
[ ./kernel/mach_debug/mach_debug_types.defs ]
Updated vm_info_region_t size.
[90/10/17            rpd]
[ ./kernel/mips/PMAX/devio.h ]
Changed uprintf to printf.
[90/10/21            rpd]
[ ./kernel/mips/db_interface.c ]
Support for watchpoints.
[90/10/16            rpd]
[ ./kernel/mips/db_machdep.h ]
Generalized the watchpoint support.
[90/10/16            rwd]
Added watchpoint support.
[90/10/16  21:09:42  rpd]
[ ./kernel/mips/pmap.c ]
Fixed the OSF pmap_protect fixes.
[90/10/21            rpd]
[ ./kernel/mips/trap.c ]
Removed static from getreg_val.
[90/10/17            rpd]
Generalized the watchpoint support.
[90/10/16            rwd]
Added watchpoint support.
[90/10/16            rpd]
[ ./kernel/sun3/db_interface.c ]
Added watchpoint support.
[90/10/16            rwd]
[ ./kernel/sun3/db_machdep.h ]
Added watchpoint support.
[90/10/16            rwd]
[ ./kernel/sun3/pmap.c ]
Change asm instructions to Debugger().
[90/10/17            rwd]
Added hardware_reference_bits runtime switch.
[90/10/13            rpd]
[ ./kernel/sun3/softint.c ]
Always enable softints when a softcall request is done.
[90/10/17            rwd]
[ ./kernel/sun3/trap.c ]
Fixed the map argument to db_find_watchpoint.
Made the faultaddr argument to pagefault a vm_offset_t.
[90/10/18            rpd]
Added watchpoint support.
[90/10/16            rwd]
[ ./kernel/sun3/trap.h ]
Added watchpoint support.
[90/10/16            rwd]
[ ./kernel/sundev/sd.c ]
Changed uprintf to printf.
[90/10/21            rpd]
Remove excess debugging code.
[90/10/21            rwd]
[ ./kernel/sundev/st.c ]
Changed uprintf to printf.
[90/10/21            rpd]
[ ./kernel/vax/db_interface.c ]
Added watchpoint support.
[90/10/18            rpd]
[ ./kernel/vax/db_machdep.h ]
Added watchpoint support.
[90/10/18            rpd]
[ ./kernel/vax/trap.c ]
Added watchpoint support.
[90/10/18            rpd]
[ ./kernel/vax/trap.h ]
Added watchpoint support.
[90/10/18            rpd]
[ ./kernel/vm/memory_object.c ]
Clean and not flush pages to lock request get moved to the
inactive queue.
[90/10/24            rwd]
[ ./kernel/vm/vm_fault.c ]
Turn software_reference_bits off by default.
[90/10/25            rwd]

Extended software_reference_bits to vm_fault_page.
[90/10/24            rpd]
Fixed vm_fault_page to clear the modify bit on zero-filled pages.
[90/10/23            rpd]
Added watchpoint debugger support.
[90/10/16            rpd]
Added software_reference_bits runtime switch.
[90/10/13            rpd]
Added watchpoint debugger support.
[90/10/16            rpd]
Added software_reference_bits runtime switch.
[90/10/13            rpd]
[ ./kernel/vm/vm_map.c ]
Fixed bug in vm_map_enter that was introduced in 2.13.
[90/10/21            rpd]
[ ./kernel/vm/vm_page.h ]
Removed the max_mapping field of pages.
[90/10/22            rpd]
[ ./kernel/vm/vm_resident.c ]
Made vm_page_alloc_deactivate_behind TRUE.
[90/10/24            rwd]

Removed the max_mapping field of pages.
[90/10/22            rpd]
[ ./user/libmach/Makefile ]
Add I386 fields.
[90/10/24            rwd]
    
    
    
==========================================================================
   ***** MK Version MK32  (rpd) *****
    
    
New features:
--- --------

I added a ddb command to search memory for a value:
	search [/bhl] addr value [mask] [,count]

Randy added cthread_fork_{prepare,child,parent}.

I added a patchable boolean, zone_check, that causes
zfree to check the consistency of zone free lists.

I changed the IPC reference-counting functions/macros
to make it easier to debug reference-count problems.

[SUN3]	  Picked up ie and xy drivers from NCSC.

[I386]	  Picked up various goodies from Bob.
The pc586 driver works now on both 386 and 486.
The first 640K of memory is available now.
The kernel tells DOS to warm boot upon reboot.
The debugger prints five arguments to functions in traces.


Bug fixes:
--- -----

I picked up dlb's vm_object_deallocate fix for a nasty race.

I fixed vm_page_deactivate to not deactivate busy pages.
(It can find busy pages on the active list when software_reference_bits
is enabled.)  Now vm_page_deactivate requires that the page's
object is locked.

I ripped out vm_region_old_behavior.  Now vm_region() has the same
semantics as in Mach 2.5.

I fixed memory_object_terminate in the device pager
to return a value.

I fixed crt0.o so that it is usable by non-standalone programs.

I fixed the assert macro so that it doesn't try to drop into ddb
when already in ddb.

I unified untimeout and untimeout_try, and fixed the related MP bugs.

[PMAX]	  Fixed jmp_buf to have the standard size.


Organizational changes:
-------------- -------

Randy fixed the Makefiles for STUMP.  This means you must use
the alpha/beta make and cpp on non-386 machines.

Randy added spin_lock_t and associated changes to cthreads.


Special notes:
------- -----

The ddb search command might fail in interesting ways if it doesn't
find the searched-for value.  This is because ddb doesn't always
recover from touching bad memory.  The optional count argument
limits the search.

The cthread_fork_* functions aren't tested.



[ ./conf/version.edit ]
32
[ ./user/libmach/Makefile ]
Added start_float.s, for the Sun-3.
[90/11/01            rpd]
Added exit.c.
[90/10/30            rpd]
[ ./include/Makeconf ]
Added REG_EXP.
[90/10/29            rwd]
[ ./include/Makefile ]
Added machine/cthreads.h include file from libthreads.
[90/11/01            rwd]
Added REG_EXP.
[90/10/29            rwd]
[ ./kernel/Makeconf ]
SUN->SUN3.
[90/10/31            rwd]
Added REG_EXP.
[90/10/29            rwd]

Change MACHINE to TARGET_MACHINE.
[90/10/29            rwd]
[ ./kernel/Makefile ]
SUN->SUN3.
[90/10/31            rwd]
Change MACHINE to TARGET_MACHINE.
[90/10/29            rwd]
[ ./kernel/conf/MASTER.sun3 ]
Added BWS.
[90/10/26  17:01:06  rwd]
[ ./kernel/conf/Makefile.template ]
Added REG_EXP.
[90/10/29            rwd]
[ ./kernel/conf/buildconf.sun3 ]
First use for 3.0
[90/10/26            rwd]
[ ./kernel/ddb/db_break.c ]
Initialize db_breakpoints_inserted to TRUE.
[90/11/04            rpd]
[ ./kernel/ddb/db_watch.c ]
Initialize db_watchpoints_inserted to TRUE.
[90/11/04            rpd]
[ ./kernel/device/dev_pager.c ]
Fixed memory_object_terminate to return KERN_SUCCESS.
[90/10/29            rpd]
[ ./kernel/i386/bcopy.s ]
Introduce bcopy16.  For 16bit copies to bus memory
[90/11/02            rvb]
[ ./kernel/i386/db_trace.c ]
If we can not guess the number of args to a function, use 5 vs 0.
[90/11/02            rvb]
[ ./kernel/i386/i386_init.c ]
Start first_addr at 0x1000 and define first available page 
after the kernel's end as first_avail.
Flush EXL.
[90/09/05            rvb]
[ ./kernel/i386/pmap.c ]
Replace (va < vm_first_phys || va > vm_last_phys) with test
using valid page.  Otherwise, video buffer memory is treated as
valid memory and setting dirty bits leads to disasterous results.
[90/11/05            rvb]

Define pmap_valid_page: [0x1000..cnvmem * 1024) and
			[first_avail..)
as useable memory
[90/09/05            rvb]
[ ./kernel/i386/start.s ]
Since we steal pages after esym for page tables, use first_avail
to record the last page +1 that we stole.
Tell bios to warm boot on reboot.
[90/09/05            rvb]
[ ./kernel/i386at/i82586.h ]
Document error bits in Xmt and Rcv.
[90/10/08            rvb]
[ ./kernel/i386at/if_pc586.c ]
Convert for pure kernel
[90/11/02            rvb]

Init scb and reset as per spec.  Use bcopy16 vs pc586copy as per spec.
Accumulate counters at hwrst.  Add counters everywhere.
Editing and style and consistency cleanup.
Flush NOP's: this required major mods to hwrst and everything it
called -- testing OK is not correct if the command is not COMPLETE.
Lot's of code clean up in xmt, rcv, reqfd.
Flush pc_softc_t "address" and pc586ehcpy.
Handle loopback of our ownbroadcast.
The rcv and xmt loops have been rewriten not copy sram
to the t_packet buffer.  This yields a teriffic thruput
improvement.
Add Notes and sram map.
[90/09/28            rvb]
[ ./kernel/i386at/if_pc586.h ]
Create 18 TBD's so that we can copy up a chain of
mbuf's.
[90/10/03            rvb]
[ ./kernel/ipc/ipc_kmsg.c ]
Changed ip_reference to ipc_port_reference.
Changed ip_release to ipc_port_release.
Use new io_reference and io_release.
Use new ip_reference and ip_release.
[90/10/29            rpd]
[ ./kernel/ipc/ipc_mqueue.c ]
Use new io_reference and io_release.
Use new ip_reference and ip_release.
[90/10/29            rpd]
[ ./kernel/ipc/ipc_object.c ]
Removed ipc_object_reference_macro, ipc_object_release_macro.
Use new io_reference and io_release.
Use new ip_reference and ip_release.
[90/10/29            rpd]
[ ./kernel/ipc/ipc_object.h ]
Removed ipc_object_reference_macro, ipc_object_release_macro.
Created new io_reference, io_release macros.
[90/10/29            rpd]
[ ./kernel/ipc/ipc_port.c ]
Changed ip_release to ipc_port_release.
Use new ip_reference and ip_release.
[90/10/29            rpd]
[ ./kernel/ipc/ipc_port.h ]
Added ipc_port_reference, ipc_port_release.
[90/10/29            rpd]
[ ./kernel/ipc/ipc_pset.c ]
Use new ips_reference and ips_release.
[90/10/29            rpd]
[ ./kernel/ipc/ipc_pset.h ]
Added ipc_pset_reference, ipc_pset_release.
[90/10/29            rpd]
[ ./kernel/ipc/ipc_right.c ]
Changed io_release to ipc_object_release.
Changed ip_release to ipc_port_release.
Use new ip_reference and ip_release.
[90/10/29            rpd]
[ ./kernel/ipc/ipc_space.c ]
Use new ip_reference and ip_release.
[90/10/29            rpd]
[ ./kernel/ipc/mach_msg.c ]
Removed ipc_object_release_macro.
Changed ip_reference to ipc_port_reference.
Changed ip_release to ipc_port_release.
Changed io_release to ipc_object_release.
Use new io_reference and io_release.
Use new ip_reference and ip_release.
[90/10/29            rpd]
[ ./kernel/kern/assert.h ]
Changed assert to use Assert instead of Debugger.
[90/11/04            rpd]
[ ./kernel/kern/debug.c ]
Added Assert.
[90/11/04            rpd]
[ ./kernel/kern/ipc_mig.c ]
Changed ip_reference to ipc_port_reference.
Changed ip_release to ipc_port_release.
Removed ipc_object_release_macro.
Use new ip_reference and ip_release.
[90/10/29            rpd]
[ ./kernel/kern/ipc_tt.c ]
Changed ip_reference to ipc_port_reference.
Use new ip_reference and ip_release.
[90/10/29            rpd]
[ ./kernel/kern/lock.h ]
Added simple_lock_taken.
[90/11/04            rpd]
[ ./kernel/kern/mach_clock.c ]
Unified untimeout and untimeout_try.
[90/10/29            rpd]
[ ./kernel/kern/syscall_subr.c ]
Restored missing multiprocessor untimeout failure code.
[90/10/29            rpd]
[ ./kernel/kern/thread.c ]
Unified untimeout and untimeout_try.
[90/10/29            rpd]
[ ./kernel/kern/time_out.h ]
Changed untimeout to return boolean.
[90/10/29            rpd]
[ ./kernel/kern/zalloc.c ]
Added zone_check option to zfree.
[90/10/29            rpd]
[ ./kernel/mips/PMAX/pm_tty.c ]
Fixed untimeout usage.
[90/10/29            rpd]
[ ./kernel/src/mig/Makefile ]
SUN->SUN3.
[90/10/31            rwd]
Change MACHINE to TARGET_MACHINE.
[90/10/29            rwd]
[ ./kernel/sun/conf.c ]
Added ie and xy from NCSC.
[90/10/26            rwd]
[ ./kernel/sundev/mbvar.h ]
Change from NCSC for xydriver.
[90/10/26            rwd]

Altered for MACH_KERNEL.
[88/03/22            dbg]
[ ./kernel/sundev/xy.c ]
change to use kalloc, kfree instead of sun_kmem_alloc, sun_kmem_free
from NCSC.
[90/10/26            rwd]
[ ./kernel/sundev/xy_conf.c ]
3.0 changes from NCSC.
[90/10/26            rwd]
[ ./kernel/sunif/if_ie.c ]
Changes for 3.0 from NCSC.
[90/10/26            rwd]
[ ./kernel/sunif/if_iereg.h ]
Changes for 3.0 from NCSC.
[90/10/26            rwd]
[ ./kernel/sunif/if_ievar.h ]
Changes for 3.0 from NCSC.
[90/10/26            rwd]
[ ./kernel/sunif/if_mie.h ]
First Checkin.
[90/10/26            rwd]
[ ./kernel/sunif/if_obie.h ]
First checkin.
[90/10/26            rwd]
[ ./kernel/sunif/if_tie.h ]
First Checkin.
[90/10/26            rwd]
[ ./kernel/vm/vm_map.c ]
Removed vm_region_old_behavior.
[90/11/02            rpd]
[ ./kernel/vm/vm_object.h ]
Added vm_object_lock_taken.
[90/11/04            rpd]
[ ./kernel/vm/vm_pageout.c ]
Modified vm_pageout_scan for new vm_page_deactivate protocol.
[90/11/04            rpd]
[ ./kernel/vm/vm_resident.c ]
Changed vm_page_deactivate to remove busy pages from the page queues.
Now it requires that the page's object be locked.
[90/11/04            rpd]
[ ./user/libmach/Makefile ]
SUN->SUN3.
[90/10/31            rwd]
Change MACHINE to TARGET_MACHINE.
[90/10/29            rwd]
[ ./user/libmach/exit.c ]
Created.
[90/10/30            rpd]
[ ./user/libmach/i386/crt0.c ]
Removed the definition of exit.
[90/10/30            rpd]
[ ./user/libmach/mips/crt0.cv ]
Removed the definition of exit.
[90/10/30            rpd]
[ ./user/libmach/mips/crt0.ss ]
Removed the definition of exit.
[90/10/30            rpd]
[ ./user/libmach/setjmp.h ]
Changed the mips jmp_buf definition to the normal size.
[90/10/30            rpd]
[ ./user/libmach/sun3/crt0.s ]
Restored call to _exit if exit returns.
Restored call to start_float.
[90/11/01            rpd]
Call exit instead of task_terminate.
[90/10/30            rpd]
[ ./user/libmach/sun3/start_float.s ]
Created.
[90/11/01            rpd]
[ ./user/libmach/vax/crt0.cc ]
Removed the definition of exit.
[90/10/30            rpd]
[ ./user/threads/Makefile ]
Change MACHINE to TARGET_MACHINE.
[90/10/29            rwd]
[ ./user/threads/cprocs.c ]
Added cproc_fork_{prepare,parent,child}.
[90/11/02            rwd]

Fix for positive stack growth.
[90/11/01            rwd]

Add spin_lock_t.
[90/10/31            rwd]
[ ./user/threads/cthread_internals.h ]
Added spin_lock_t.
[90/10/31            rwd]
[ ./user/threads/cthreads.c ]
Added cthread_fork_{prepare,parent,child}.
[90/11/02            rwd]

Add spin_lock_t.
[90/10/31            rwd]
[ ./user/threads/cthreads.h ]
Include machine/cthreads.h.  Added spin_lock_t.
[90/10/31            rwd]
[ ./user/threads/i386/cthreads.h ]
Created.
[90/11/01            rwd]
[ ./user/threads/malloc.c ]
Added malloc_fork* code.
[90/11/02            rwd]

Add spin_lock_t.
[90/10/31            rwd]
[ ./user/threads/mips/cthreads.h ]
Created.
[90/11/01            rwd]
[ ./user/threads/stack.c ]
Fixed addr_range_check for new vm_region semantics.
[90/11/02            rpd]
[ ./user/threads/sun3/cthreads.h ]
Created.
[90/11/01            rwd]
[ ./user/threads/sync.c ]
Fix casting.  Use new macros.
[90/10/31            rwd]
[ ./user/threads/vax/cthreads.h ]
Created.
[90/11/01            rwd]
[ ./kernel/conf/version.variant ]
Changed XMK to MK.
[ ./user/threads/stack.c ]
Added cproc_stack_base.  Add stack_fork_child().
[90/11/01            rwd]
[ ./kernel/vm/vm_object.c ]
From dlb@osf.org:
If pager initialization is in progress (object->pager_created &&
!object->pager_initialized), then vm_object_deallocate must wait
for it to complete before terminating the object.  Because anything
can happen in the interim, it must recheck its decision to terminate
after the wait completes.
[ ./kernel/ddb/db_command.c ]
Added search.
[90/11/06            rpd]
[ ./kernel/ddb/db_examine.c ]
Added db_search_cmd, db_search.
[90/11/06            rpd]
    
    
    
==========================================================================
   ***** MK Version MK33  (jsb) *****
    
    
New features:
--- --------

[I386]	  Added cnp ethernet driver for i386ipsc2 (Intel Hypercube).

Bug fixes:
--- -----

[I386]	  Fixed changes in MK32 which prevented STD+NORMA+iPSC2 from building.
    
    
    
==========================================================================
   ***** MK Version MK34  (jsb) *****
    
    
New features:
--- --------

Added i860 build support (for the hypercube). Details follow.
The i860 and i860ipsc2 source directories will be added in a future merge.

Added support to conf/Makefile.template for cross-compilation.
I borrowed the not-otherwise-used KCC technology so that $(KCC)
is used to build kernel files (and thus would be the cross
compiler), whereas $(CC) is used to build things like genassym
which run on the host (in this case, a i386). I fixed a couple
cases in Makefile.template that didn't conform to this convention:
vers.o is now compiled with $(KCC), and genassym is now compiled
with $(CC). I also added work-arounds for the fact that we don't
have a cross-ranlib or a cross-size.

[I860]	  Added conf/MASTER.i860{,.local}, conf/{Makefile,files}.i860,
	  and added i860 support to config, mach/machine.h, and
	  sys/varargs.h.
    
    
    
==========================================================================
   ***** MK Version MK35  (rvb) *****
    
    
This is an I386 architecture release only.  It has been tested
on an AT as well as the hypercube.

No New features:
--- --------

Except possibly that the if_pc586.c is not timing dependent
any more.

The big deal about this release is that all the files in the 
i386at directory and the files in Mach2.5 I386q are identical --
that is all improvements in the mainline have been merged to
the 3.0 code and vice versa.  NOTE:  the 3.0 com driver has 
not been tested cause I did not have any hardware.  Also I
have lpr and if_par drivers that I did not even install for
the same reason.  (I needed to install com.c for the mouse
support code.)

ALSO, this release has the Prime copyrights changed to something
less threatening, courtesy of Prime Computer Inc.

Bug fix:
The panic that rfr reported with the ram_to_ptr is no longer
possible.



    
    
    
==========================================================================
   ***** MK Version MK36  (jsb) *****
    
    
New features:
--- --------

Merged in i860 support for iPSC Intel hypercube.

Merged i860 and i386 pmap.{c,h} into new intel directory.

Merged i860 and i386 ipsc support into new ipsc directory.

Added ATSYS variable which can be used to override use of @sys
in OBJECTDIR when cross-compiling.

Changed ipsc2 references to ipsc386 or simply ipsc, as appropriate.

Removed libmig.a workaround from conf/Makefile.template since the same
thing can be acheived entirely within conf/Makefile.{machine}.
    
    
    
==========================================================================
   ***** MK Version MK37  (af) *****
    
    
New features:
--- --------

This merge brings freedom to PMAXen, there is now only one single file
left in the kernel with a MIPSco Copyright on it: mips/softfp.s which
is optional.  No DEC Copyright in sight, we only loose support for the
2D/3D boxes [actually only the 2D, I have never seen a 3D].

The entire mips/PMAX subdir is new, the only pieces I recovered are
the code Joe wrote for the terminal emulator and the in-kernel ether 
driver that Bob & I wrote/rewrote/rewrote....  Everything else is new.
The various drivers are in various stages of "maturity": the ether is 
rock-solid, the screen&serial line is quite robust.

The SCSI driver is the one likely to need most fixes and additions.
Among the missing features are:
	- true SCSI-2 support and adherence to the standard
	- disconnect/reconnect capability when more than one
	  drive is on the bus
In the PMAX case then there are still various misteries to be solved,
one most annoying: if you do not tell the prom to "init" before rebooting
it will get locked up in bus-error interrupts at the first synchronous
data transfer.  Beats me why.  It also seems to me it is much slower than it
needs to, but I won't measure it until I understand it.

Added BSD/OSF labels to kernel.

New cute font, and related tools.

New 16 sec bootstrap: shows that you do not need two levels of boots
to be flexible.  With this one you can boot any file on disk, follow
symlinks, even cross-device links (but of a very weird type..) and
all fits in 15 sectors.  Mostly C code.

Added new header file for TAPE devices.  Not that it really works yet,
but we'll get around that too.

Enabled mapped ether by default.

Added missing code to make the pmap pcache work.

Changed pmap_reference_bits array encoding, saves a cycle in tlb_umiss
as suggested by dbg.


Bug fixes:
--- -----

MP-Bug fix from DLB to thread_suspend/resume.

[i386]
Fixed syscall_sw.h to be palatable to the GNU preproc.

[PMAX]	
Fixed rpd's register leak.  Added optional code to locore to zero temporary
registers out of a syscall.
Fix from Larry Allen: kernel thread were started with interrupts disabled.
Fixed off-by-one in syscall emulation table size: Ultrix code does use
syscall 257 too.
Fixed memory sizing routine for 3max to clear memory: this way we won't
get those misterious "dropped because of previous paging-errors".
Various minor spot clean for new 3max proms.




Organizational changes:
-------------- -------

[PMAX]
The new 16 sector bootstrap is built make-ing in kernel/mips/boot.
Be careful with this: with Berkeley labels you cannot anymore just
dd any file in there: it now knows about partitioning.  See the
Makefile for more info.


Special notes:
------- -----

Booted on pmax(unnamed), 3max(testarossa), vax(nova), sun3(rocky)
and i386(intel2)

***************************************************
The following files have been Defuncted:

[ ./kernel/mips/symbols.raw ]
[ ./kernel/mips/PMAX/ascreg.h ]
[ ./kernel/mips/PMAX/cfb.c ]
[ ./kernel/mips/PMAX/cfbreg.h ]
[ ./kernel/mips/PMAX/dc7085cons.h ]
[ ./kernel/mips/PMAX/dc_hdw.c ]
[ ./kernel/mips/PMAX/dc_modem.c ]
[ ./kernel/mips/PMAX/dc_tty.c ]
[ ./kernel/mips/PMAX/devio.h ]
[ ./kernel/mips/PMAX/ga.c ]
[ ./kernel/mips/PMAX/ga.h ]
[ ./kernel/mips/PMAX/gq.c ]
[ ./kernel/mips/PMAX/gq.h ]
[ ./kernel/mips/PMAX/gx.c ]
[ ./kernel/mips/PMAX/gx.h ]
[ ./kernel/mips/PMAX/fudge.h ]
[ ./kernel/mips/PMAX/pm.h ]
[ ./kernel/mips/PMAX/pm_graphics.c ]
[ ./kernel/mips/PMAX/pm_hdw.h ]
[ ./kernel/mips/PMAX/pm_lk201.c ]
[ ./kernel/mips/PMAX/pm_lk201.h ]
[ ./kernel/mips/PMAX/pm_ms.c ]
[ ./kernel/mips/PMAX/pm_ms.h ]
[ ./kernel/mips/PMAX/pm_switch.c ]
[ ./kernel/mips/PMAX/pm_switch.h ]
[ ./kernel/mips/PMAX/pm_tty.c ]
[ ./kernel/mips/PMAX/pmax.c ]
[ ./kernel/mips/PMAX/pmevent.h ]
[ ./kernel/mips/PMAX/pmioctl.h ]
[ ./kernel/mips/PMAX/qfont.c ]
[ ./kernel/mips/PMAX/rzdisk.h ]
[ ./kernel/mips/PMAX/scsi_asc.c ]
[ ./kernel/mips/PMAX/scsi_data.c ]
[ ./kernel/mips/PMAX/scsi_debug.h ]
[ ./kernel/mips/PMAX/scsi_sii.c ]
[ ./kernel/mips/PMAX/scsireg.h ]
[ ./kernel/mips/PMAX/siireg.h ]
[ ./kernel/mips/PMAX/stamp.h ]
[ ./kernel/mips/PMAX/super.c ]
[ ./kernel/mips/PMAX/scsivar.h ]

The following files are new

[ ./kernel/mips/PMAX/boot/Makefile ]
[ ./kernel/mips/PMAX/boot/asm_misc.h ]
[ ./kernel/mips/PMAX/boot/asm_misc.s ]
[ ./kernel/mips/PMAX/boot/c_misc.c ]
[ ./kernel/mips/PMAX/boot/dev.h ]
[ ./kernel/mips/PMAX/boot/dir.h ]
[ ./kernel/mips/PMAX/boot/disk_inode.h ]
[ ./kernel/mips/PMAX/boot/fs.h ]
[ ./kernel/mips/PMAX/boot/label.b ]
[ ./kernel/mips/PMAX/boot/mkboot.c ]
[ ./kernel/mips/PMAX/boot/primary_boot.c ]
[ ./kernel/mips/PMAX/boot/start.s ]
[ ./kernel/mips/PMAX/boot/test.c ]
[ ./kernel/mips/PMAX/boot/ufs.c ]
[ ./kernel/mips/PMAX/boot/ufs.h ]
[ ./kernel/mips/PMAX/bt459.c ]
[ ./kernel/mips/PMAX/bt459.h ]
[ ./kernel/mips/PMAX/bt478.c ]
[ ./kernel/mips/PMAX/bt478.h ]
[ ./kernel/mips/PMAX/build_font.c ]
[ ./kernel/mips/PMAX/cfb_hdw.c ]
[ ./kernel/mips/PMAX/cfb_misc.c ]
[ ./kernel/mips/PMAX/dc503.c ]
[ ./kernel/mips/PMAX/dc503.h ]
[ ./kernel/mips/PMAX/dz_7085.h ]
[ ./kernel/mips/PMAX/dz_defs.h ]
[ ./kernel/mips/PMAX/dz_hdw.c ]
[ ./kernel/mips/PMAX/dz_tty.c ]
[ ./kernel/mips/PMAX/ga_hdw.c ]
[ ./kernel/mips/PMAX/gq_hdw.c ]
[ ./kernel/mips/PMAX/gx_misc.c ]
[ ./kernel/mips/PMAX/kernel_font.c ]
[ ./kernel/mips/PMAX/kernel_font.data ]
[ ./kernel/mips/PMAX/kn01.c ]
[ ./kernel/mips/PMAX/kn01.h ]
[ ./kernel/mips/PMAX/kn02.c ]
[ ./kernel/mips/PMAX/kn02.h ]
[ ./kernel/mips/PMAX/lk201.c ]
[ ./kernel/mips/PMAX/lk201.h ]
[ ./kernel/mips/PMAX/mapped_scsi.c ]
[ ./kernel/mips/PMAX/mapped_scsi.h ]
[ ./kernel/mips/PMAX/mouse.c ]
[ ./kernel/mips/PMAX/pm_defs.h ]
[ ./kernel/mips/PMAX/pm_hdw.c ]
[ ./kernel/mips/PMAX/pm_misc.c ]
[ ./kernel/mips/PMAX/pmad_aa.h ]
[ ./kernel/mips/PMAX/pmag_ba.h ]
[ ./kernel/mips/PMAX/pmaz_aa.h ]
[ ./kernel/mips/PMAX/rz.c ]
[ ./kernel/mips/PMAX/rz.h ]
[ ./kernel/mips/PMAX/rz_disk.c ]
[ ./kernel/mips/PMAX/rz_labels.h ]
[ ./kernel/mips/PMAX/rz_tape.c ]
[ ./kernel/mips/PMAX/screen.c ]
[ ./kernel/mips/PMAX/screen.h ]
[ ./kernel/mips/PMAX/screen_defs.h ]
[ ./kernel/mips/PMAX/screen_switch.c ]
[ ./kernel/mips/PMAX/screen_switch.h ]
[ ./kernel/mips/PMAX/scsi.c ]
[ ./kernel/mips/PMAX/scsi.h ]
[ ./kernel/mips/PMAX/scsi2.h ]
[ ./kernel/mips/PMAX/scsi_53C94.h ]
[ ./kernel/mips/PMAX/scsi_53C94_hdw.c ]
[ ./kernel/mips/PMAX/scsi_7061.h ]
[ ./kernel/mips/PMAX/scsi_7061_hdw.c ]
[ ./kernel/mips/PMAX/scsi_alldevs.c ]
[ ./kernel/mips/PMAX/scsi_comm.c ]
[ ./kernel/mips/PMAX/scsi_cpu.c ]
[ ./kernel/mips/PMAX/scsi_defs.h ]
[ ./kernel/mips/PMAX/scsi_disk.c ]
[ ./kernel/mips/PMAX/scsi_jukebox.c ]
[ ./kernel/mips/PMAX/scsi_optical.c ]
[ ./kernel/mips/PMAX/scsi_printer.c ]
[ ./kernel/mips/PMAX/scsi_rom.c ]
[ ./kernel/mips/PMAX/scsi_scanner.c ]
[ ./kernel/mips/PMAX/scsi_tape.c ]
[ ./kernel/mips/PMAX/scsi_worm.c ]

The following files have been modified:

[ ./Directories/ALL ]
[ ./Directories/mips ]
[ ./include/Makefile ]
[ ./kernel/conf/MASTER.mips ]
[ ./kernel/conf/files.mips ]
[ ./kernel/device/param.h ]
[ ./kernel/device/tape_status.h ]
[ ./kernel/device/tty_status.h ]
[ ./kernel/kern/syscall_emulation.c ]
[ ./kernel/kern/thread.c ]
[ ./kernel/mach/i386/syscall_sw.h ]
[ ./kernel/mips/PMAX/if_se.c ]
[ ./kernel/mips/PMAX/if_se.h ]
[ ./kernel/mips/PMAX/if_se_mapped.c ]
[ ./kernel/mips/PMAX/mc_clock.c ]
[ ./kernel/mips/PMAX/mips_box.c ]
[ ./kernel/mips/PMAX/mips_box.h ]
[ ./kernel/mips/PMAX/model_dep.c ]
[ ./kernel/mips/PMAX/tc.c ]
[ ./kernel/mips/PMAX/tc.h ]
[ ./kernel/mips/autoconf.c ]
[ ./kernel/mips/busses.c ]
[ ./kernel/mips/busses.h ]
[ ./kernel/mips/coff.h ]
[ ./kernel/mips/conf.c ]
[ ./kernel/mips/context.s ]
[ ./kernel/mips/db_interface.c ]
[ ./kernel/mips/db_mips_sym.c ]
[ ./kernel/mips/exec.c ]
[ ./kernel/mips/locore.s ]
[ ./kernel/mips/mips_init.c ]
[ ./kernel/mips/mips_misc.c ]
[ ./kernel/mips/pcb.c ]
[ ./kernel/mips/pmap.c ]
[ ./kernel/mips/prom_interface.h ]
[ ./kernel/mips/start.s ]
[ ./kernel/mips/tlb.s ]
[ ./kernel/mips/trap.c ]
[ ./user/libmach/Makefile ]

    
    
    
==========================================================================
   ***** MK Version MK38  (jsb) *****
    
    
New features:
--- --------

Replaced uses of @sys in Makefiles and Makeconf with $(atsys).
atsys is set to ATSYS if defined, @sys if not.

[MACH_CLPORT]	Support for complex inter-node messages.

[MACH_CLBOOT]	Support for transparent inter-node device access.

[iPSC]		New dcm interface for MACH_CLPORT support.

[iPSC]		Finished merge of i860 and i386 console driver (usm.c).
    
    
    
==========================================================================
   ***** MK Version MK39  (jeffreyh) *****
    
    
New features:
--- --------

Zone gc code has been picked up from OSF/1. All zones in the system
are now collected. zchange now takes an extra argument for
collectable. This is so you could turn collection off for a zone.


[I386]   The 386 is now buildable using the gcc-cpp from MtXinu.
         Several additions to the code for __STDC__ have been made.
         Due to this work mig no longer generates prototypes for ansi C
         and C++ in the generated header files. This is because the
     	 prototypes in the headers were for the the client side only.
         Kernel files that were including these headers would fail
         to compile as the types and number of arguments to the
	 functions was wrong. If prototypes are wanted for mig
	 headers, mig must be made to generate both client and server
  	 header files with apropriate prototypes.


Bug fixes:
--- -----

[PMAX]	 scsi disk fixes from af

A few others


******** CUT HERE ******** summary of log messages ******** CUT HERE ********
[ ./conf/version.edit ]
39
[ ./kernel/boot_ufs/def_pager_setup.c ]
Added init for  default_partition_lock
[90/12/11            jeffreyh]
[ ./kernel/i386/asm.h ]
changes for __STDC__
[90/12/06            jeffreyh]
[ ./kernel/i386/cswitch.s ]
Changes for __STDC__

Changes for __STDC__
[90/12/07  15:45:37  jeffreyh]
[ ./kernel/i386/interrupt.s ]
Changes for __STDC__
[90/12/07  15:43:38  jeffreyh]
[ ./kernel/i386/locore.s ]
Changes for __STDC__
[90/12/07  15:43:29  jeffreyh]
[ ./kernel/i386/pio.h ]
changes for __STDC__
[90/12/07            jeffreyh]
[ ./kernel/i386/spl.s ]
Changes for __STDC__
[90/12/07            jeffreyh]
[ ./kernel/i386/start.s ]
Changes for __STDC__
[90/12/07  15:43:21  jeffreyh]
[ ./kernel/i386at/blit.c ]
Changes for __STDC__
[90/12/07            jeffreyh]
[ ./kernel/i386at/if_pc586.c ]
Changes for __STDC__
[90/12/07            jeffreyh]
[ ./kernel/ipc/ipc_init.c ]
Changes to zchange to account for new collectable field. Made all
ipc zones collectable.
[90/12/11            jeffreyh]
[ ./kernel/ipc/ipc_marequest.c ]
Change zchange to match new number of arguments. Made zone collectable. 
[90/12/11            jeffreyh]
[ ./kernel/kern/zalloc.c ]
[90/12/19  10:36:55  jeffreyh]
[ ./kernel/kern/zalloc.h ]
Merged in changes done by jvs@osf from OSF/1 
[90/12/10            jeffreyh]
[ ./kernel/mips/PMAX/rz.c ]
Do not use minphys(), we do not need to trim requests.
[90/12/11            af]
[ ./kernel/mips/PMAX/rz_disk.c ]
Bug in strategy routine: for xfers larger than
max_dma was not setting the io_count right at
the end of the transfer.  Now new fsck works.
[90/12/10  17:26:47  af]
[ ./kernel/mips/locore.s ]
Fixed gimmeabreak() to let you sstep out of it.
Long overdue, but I had this habit of putting a breakpoint
where I wanted to stop anyways.
[90/12/13            af]
[ ./kernel/mips/PMAX/scsi_7061_hdw.c ]
More hacks to understand rz55, and now hitachis boot.
There is still one problem for hitachis at large,
will fix in the next merge.
[90/12/19  15:17:48  af]
[ ./kernel/src/mig/header.c ]
Commented out code for prototype generation. This is a temporary solution
to the longer term problem of the need 
for the generation of both a client and a server header file 
that have correct prototypes for strict ansi c and c++. The
prototypes generated before anly were for the client and broke kernel
files that included them if compiled under standard gcc
[90/12/07            jeffreyh]
[ ./kernel/vm/vm_external.c ]
Change zchange to accept new argument. Made zones collectable.
[90/12/11            jeffreyh]
    
    
    
==========================================================================
   ***** MK Version MK40  (rpd) *****
    
    
New features:
--- --------

Kernel stack discarding and related optimizations.
Currently a thread's kernel stack is discarded
when it is created, when it is suspended,
when it waits in a message receive, and when
it waits for a reply to an exception_raise upcall.

Threads without kernel stacks are "swapped".
All runnable threads have kernel stacks.

The vax and sun3 don't discard kernel stacks.
In fact, they don't even unwire kernel stacks.
MI code uses a KEEP_STACKS conditional (temporary,
I hope) to support unconverted architectures.

The i386 discards kernel stacks, but the implementation
is suboptimal.  locore still saves user state on the
kernel stack, so stack_switch() must copy user state
to and from the kernel stack.

[I386]	  I picked up Bob's v86 support.
The IO permission bit implementation is suboptimal.
It copies the IO permission bits into the kernel's TSS
at every context-switch to a thread with bits set.

I added a ddb command, continue-with-count (c/c).
It continues, counting instructions, until a breakpoint is hit.
On the pmax, loads and stores are also counted.

I added a debugging call, host_virtual_physical_table_info,
to return information about the VP hash table.
The hash_info program in the USER tree uses it.

I enabled software reference bits (again) and
disabled TLB reference bits on the pmax (again).

Bug fixes:
--- -----

I revised the way the network code allocates message buffers.
It should drop fewer packets now.  This improves network
performance significantly on some machines.

I changed the zone package to make zones non-collectable by default.
The only collectable zones now are the large kalloc zones.

Numerous minor fixes, including stuff from Sandro & Bob...


[ ./conf/version.edit ]
40
[ ./include/Makefile ]
Added mach_debug/hash_info.h.
[91/01/04            rpd]
[ ./kernel/conf/MASTER ]
Removed FAST_CSW (tag fast_csw).
[90/12/08            rpd]
Removed MACH_IPC_GENNOS (tag ipc_gennos).
[90/11/08            rpd]
[ ./kernel/conf/MASTER.mips ]
Disabled ref_bits.  Again.
[91/01/04            rpd]
[ ./kernel/conf/files ]
Removed ./mach/exc_user.c.
[90/12/26            rpd]
Removed FAST_CSW.
[90/12/08            rpd]
Removed MACH_IPC_GENNOS.
[90/11/08            rpd]
[ ./kernel/ddb/db_break.c ]
Added db_map_equal, db_map_current, db_map_addr.
[90/11/10            rpd]
[ ./kernel/ddb/db_run.c ]
Fixed bug in db_restart_at_pc.
[90/12/07            rpd]
Added STEP_COUNT and count option to db_continue_cmd.
Changed db_stop_at_pc to return (modified) is_breakpoint.
Fixed db_stop_at_pc to print newlines in the right places.
[90/11/27            rpd]
[ ./kernel/ddb/db_trap.c ]
Changed db_stop_at_pc's arguments.
Print db_inst_count, db_load_count, db_store_count.
[90/11/27            rpd]
[ ./kernel/ddb/db_watch.c ]
Use db_map_equal, db_map_current, db_map_addr.
[90/11/10            rpd]
[ ./kernel/device/dev_master.h ]
Added continuation argument to thread_block.
[90/12/08            rpd]
[ ./kernel/device/ds_routines.c ]
Added continuation argument to thread_block.
[90/12/08            rpd]
[ ./kernel/device/net_io.c ]
Replaced NET_KMSG_GET, NET_KMSG_FREE
with net_kmsg_get, net_kmsg_put, net_kmsg_collect.
Increased net_kmsg_ilist_min to 4.
[91/01/05            rpd]
Fixed net_rcv_msg_thread to round message sizes up to an int multiple.
[90/12/07            rpd]

Fixed net_rcv_msg_thread to not set vm_privilege.
[90/11/29            rpd]
[ ./kernel/device/net_io.h ]
Replaced NET_KMSG_GET, NET_KMSG_FREE
with net_kmsg_get, net_kmsg_put, net_kmsg_collect.
[91/01/05            rpd]
[ ./kernel/device/subrs.c ]
Added continuation argument to thread_block.
[90/12/08            rpd]
[ ./kernel/i386/cswitch.s ]
Minor cleanup.
[90/12/31            rpd]
Added switch_task_context, switch_thread_context.
[90/12/12            rpd]

Reorganized the pcb.
[90/12/11            rpd]
[ ./kernel/i386/db_machdep.h ]
Added dummy inst_load/inst_store macros.
[90/12/11            rpd]
[ ./kernel/i386/db_trace.c ]
Reorganized the pcb.
[90/12/11            rpd]
[ ./kernel/i386/fpu.c ]
Split i386_machine_state off of i386_kernel_state.
[90/12/31            rpd]
Reorganized the pcb.
[90/12/11            rpd]
[ ./kernel/i386/genassym.c ]
Reorganized the pcb.
[90/12/11            rpd]
[ ./kernel/i386/init.c ]
Initialize the new pcb zone in machine_init.
[90/12/11            rpd]
[ ./kernel/i386/locore.s ]
Replaced thread_bootstrap_user, thread_bootstrap_kernel
with thread_exception_return, thread_syscall_return.
Updated mach_trap_table indexing for new layout.
[90/12/17            rpd]

Renamed thread_bootstrap to thread_bootstrap_user.
Added thread_bootstrap_kernel.
[90/12/14            rpd]

Reorganized the pcb.
Added copyinmsg, copyoutmsg synonyms for copyin, copyout.
[90/12/11            rpd]
[ ./kernel/i386/pcb.c ]
Removed pcb_synch.  Added pcb_collect.
[91/01/03            rpd]

Split i386_machine_state off of i386_kernel_state.
Set k_stack_top correctly for V8086 threads.
[90/12/31            rpd]
Added stack_switch.  Moved stack_alloc_try, stack_alloc,
stack_free, stack_statistics to kern/thread.c.
[90/12/14            rpd]

Reorganized the pcb.
Added stack_attach, stack_alloc, stack_alloc_try,
stack_free, stack_statistics.
[90/12/11            rpd]
[ ./kernel/i386/read_fault.c ]
Changed VM_WAIT to VM_PAGE_WAIT.
[90/12/11            rpd]
[ ./kernel/i386/thread.h ]
Added i386_machine_state.
[91/01/03  22:05:01  rpd]

Reorganized the pcb.
[90/12/11            rpd]
[ ./kernel/i386/trap.c ]
Only need csw_needed in AST exit path.
[90/12/27            rpd]

Replaced thread_doexception with new exception interface.
[90/12/21            rpd]
Added continuation argument to thread_block.
[90/12/08            rpd]
[ ./kernel/i386at/if_3c501.c ]
Changed NET_KMSG_GET, NET_KMSG_FREE to net_kmsg_get, net_kmsg_put.
[91/01/05            rpd]
[ ./kernel/i386at/if_pc586.c ]
Changed NET_KMSG_GET, NET_KMSG_FREE to net_kmsg_get, net_kmsg_put.
[91/01/05            rpd]
[ ./kernel/i386at/if_wd8003.c ]
Changed NET_KMSG_GET, NET_KMSG_FREE to net_kmsg_get, net_kmsg_put.
[91/01/05            rpd]
[ ./kernel/i386ipsc/if_cnp.c ]
Changed NET_KMSG_GET, NET_KMSG_FREE to net_kmsg_get, net_kmsg_put.
[91/01/05            rpd]
[ ./kernel/intel/pmap.c ]
Changed pmap_collect to ignore the kernel pmap.
[91/01/03            rpd]
[ ./kernel/ipc/ipc_entry.c ]
Removed MACH_IPC_GENNOS.
[90/11/08            rpd]
[ ./kernel/ipc/ipc_entry.h ]
Removed MACH_IPC_GENNOS, IE_BITS_UNUSEDC, IE_BITS_UNUSEDG.
[90/11/08            rpd]
[ ./kernel/ipc/ipc_hash.c ]
Changed ipc_info_bucket_t to hash_info_bucket_t.
[91/01/02            rpd]
[ ./kernel/ipc/ipc_hash.h ]
Changed ipc_info_bucket_t to hash_info_bucket_t.
[91/01/02            rpd]
[ ./kernel/ipc/ipc_init.c ]
Changed zchange calls to make the IPC zones non-collectable.
[90/12/29            rpd]
[ ./kernel/ipc/ipc_kmsg.c ]
Added ipc_kmsg_free.
[91/01/05            rpd]
Optimized ipc_kmsg_copyout_object for send rights.
[90/12/21            rpd]
Changed to use new copyinmsg/copyoutmsg operations.
Changed ipc_kmsg_get to check that the size is multiple of four.
[90/12/05            rpd]
Removed MACH_IPC_GENNOS.
[90/11/08            rpd]
[ ./kernel/ipc/ipc_kmsg.h ]
Added ipc_kmsg_free.  Generalized the notion of special message sizes.
[91/01/05            rpd]
Added declarations of ipc_kmsg_copyout_object, ipc_kmsg_copyout_body.
[90/12/21            rpd]
[ ./kernel/ipc/ipc_marequest.c ]
Changed ipc_info_bucket_t to hash_info_bucket_t.
[91/01/02            rpd]

Changed zchange calls to make the IPC zones non-collectable.
[90/12/29            rpd]
[ ./kernel/ipc/ipc_marequest.h ]
Changed ipc_info_bucket_t to hash_info_bucket_t.
[91/01/02            rpd]
[ ./kernel/ipc/ipc_mqueue.c ]
Changed continuation argument to (void (*)()).
[90/12/18            rpd]
Reorganized ipc_mqueue_receive.
[90/11/22            rpd]

Minor cleanup.
[90/11/11            rpd]
[ ./kernel/ipc/ipc_mqueue.h ]
Changed continuation argument and IMQ_NULL_CONTINUE to (void (*)()).
[90/12/18            rpd]
Reorganized ipc_mqueue_receive.
[90/11/22            rpd]
[ ./kernel/ipc/ipc_space.c ]
Removed MACH_IPC_GENNOS.
[90/11/08            rpd]
[ ./kernel/ipc/mach_debug.c ]
Changed ipc_info_bucket_t to hash_info_bucket_t.
[91/01/02            rpd]
Removed MACH_IPC_GENNOS.
[90/11/08            rpd]
[ ./kernel/ipc/mach_msg.c ]
Added KEEP_STACKS support.
[91/01/07            rpd]
Changed to use thread_syscall_return.
Added msg_receive_continue.
[90/12/18            rpd]
Added mach_msg_continue, mach_msg_receive_continue.
Changes to support kernel stack discarding/hand-off.
[90/12/09  17:29:04  rpd]

Removed MACH_IPC_GENNOS.
[90/11/08            rpd]
[ ./kernel/ipc/mach_msg.h ]
Created.
[90/11/22            rpd]
[ ./kernel/ipc/port.h ]
Removed MACH_IPC_GENNOS.
[90/11/08            rpd]
[ ./kernel/kern/exception.c ]
Added KEEP_STACKS support.
[91/01/08  14:11:40  rpd]

Replaced thread_doexception with new, optimized exception path.
[90/12/22            rpd]
[ ./kernel/kern/ipc_mig.c ]
Don't need mach_msg_rpc_from_kernel.
[90/12/26            rpd]
Updated ipc_mqueue_receive calls.
[90/11/21            rpd]
Removed MACH_IPC_GENNOS.
[90/11/09            rpd]
[ ./kernel/kern/ipc_sched.c ]
Added KEEP_STACKS support.
[91/01/06            rpd]
Added ipc_thread_switch_hits, ipc_thread_switch_misses counters.
[91/01/03  22:07:15  rpd]

Modified ipc_thread_switch to deal with pending timeouts.
[90/12/20            rpd]
Removed ipc_thread_go_and_block.
Added ipc_thread_switch.
[90/12/08            rpd]
[ ./kernel/kern/ipc_sched.h ]
Removed ipc_thread_go_and_block.
Added ipc_thread_switch.
Added continuation argument to ipc_thread_block.
[90/12/08            rpd]
[ ./kernel/kern/ipc_tt.c ]
Added retrieve_task_self_fast, retrieve_thread_self_fast.
[90/12/27            rpd]
[ ./kernel/kern/ipc_tt.h ]
Added retrieve_task_self_fast, retrieve_thread_self_fast.
[90/12/27            rpd]
[ ./kernel/kern/mach_clock.c ]
Added continuation argument to thread_block.
[90/12/08            rpd]
[ ./kernel/kern/machine.c ]
Added continuation argument to thread_block.
[90/12/08            rpd]
[ ./kernel/kern/sched_prim.c ]
Added KEEP_STACKS support.
[91/01/06            rpd]
Added thread_continue_calls counter.
[91/01/03  22:07:43  rpd]

Added continuation argument to thread_run.
[90/12/11            rpd]
Added continuation argument to thread_block/thread_continue.
Removed FAST_CSW conditionals.
[90/12/08            rpd]

Removed thread_swap_tick.
[90/11/11            rpd]
[ ./kernel/kern/startup.c ]
Swapin the startup thread and idle threads.
[90/11/20            rpd]

Removed swapout_thread.
[90/11/11            rpd]
[ ./kernel/kern/syscall_subr.c ]
Added continuation argument to thread_run.
[90/12/11            rpd]
Added continuation argument to thread_block.
[90/12/08            rpd]
[ ./kernel/kern/syscall_sw.c ]
Changed to use MACH_TRAP_STACK appropriately.
[90/12/27  21:20:57  rpd]
[ ./kernel/kern/syscall_sw.h ]
Added mach_trap_stack, MACH_TRAP_STACK.
[90/12/18            rpd]
[ ./kernel/kern/task.c ]
Added consider_task_collect, task_collect_scan.
[91/01/03            rpd]
Added continuation argument to thread_block.
[90/12/08            rpd]
[ ./kernel/kern/thread.c ]
Added KEEP_STACKS support.
[91/01/06            rpd]
Added consider_thread_collect, thread_collect_scan.
[91/01/03            rpd]

Added locking to the stack package.  Added stack_collect.
[90/12/31            rpd]
Changed thread_dowait to discard the stacks of suspended threads.
[90/12/22            rpd]
Added continuation argument to thread_block.
[90/12/08            rpd]

Changed thread_create to make new threads be swapped.
Changed kernel_thread to swapin the threads.
[90/11/20            rpd]

Removed stack_free/stack_alloc/etc.
[90/11/12            rpd]

Changed thread_create to let pcb_init handle all pcb initialization.
[90/11/11            rpd]
[ ./kernel/kern/thread.h ]
Added saved-state fields for exceptions.
[90/12/23            rpd]
Added swap_func.
[90/11/20            rpd]
[ ./kernel/kern/thread_swap.c ]
Added continuation argument to thread_block.
[90/12/08            rpd]

Removed swapout_thread, swapout_threads,
swapout_scan, thread_swapout.
[90/11/11            rpd]
[ ./kernel/kern/zalloc.c ]
Added zalloc_wasted_space.
[91/01/06            rpd]
Removed COLLECT_ZONE_GARBAGE.
[91/01/03            rpd]

Changed zinit to make zones by default *not* collectable.
[90/12/29            rpd]
Added consider_zone_gc.
[90/11/11            rpd]
[ ./kernel/kern/zalloc.h ]
Removed COLLECT_ZONE_GARBAGE.  Added consider_zone_gc.
[91/01/03            rpd]
[ ./kernel/mach/mips/asm.h ]
Changed EF prefix to MSS.
[90/12/30            rpd]
[ ./kernel/mach/mips/vm_param.h ]
Reduced kernel stack size to one page.
[90/11/12            rpd]
[ ./kernel/mach_debug/hash_info.h ]
Created.
[91/01/02            rpd]
[ ./kernel/mach_debug/ipc_info.h ]
Moved ipc_info_bucket_t to mach_debug/hash_info.h.
[91/01/02            rpd]
[ ./kernel/mach_debug/mach_debug.defs ]
Added host_virtual_physical_table_info.
[91/01/02            rpd]
[ ./kernel/mach_debug/mach_debug_types.h ]
Added <mach_debug/hash_info.h>.
[91/01/02            rpd]
[ ./kernel/mips/PMAX/if_se.c ]
Changed NET_KMSG_GET, NET_KMSG_FREE to net_kmsg_get, net_kmsg_put.
[91/01/05            rpd]
[ ./kernel/mips/PMAX/mouse.c ]
Mouse events are now accounted for by the screen saver.
[91/01/04  15:35:30  af]
[ ./kernel/mips/PMAX/screen.c ]
Added compress_mouse_events, by default FALSE.
[91/01/08  14:14:03  rpd]
[ ./kernel/mips/PMAX/scsi_53C94_hdw.c ]
Added continuation argument to thread_block.
[90/12/27            rpd]
[ ./kernel/mips/PMAX/scsi_7061_hdw.c ]
Catched hitachi's problem: spurious interrupt _before_
dmain/out even got started.
[90/12/29            af]
Added continuation argument to thread_block.
[90/12/27            rpd]
[ ./kernel/mips/autoconf.c ]
Added pcb_zone.
[90/12/09  17:34:12  rpd]
[ ./kernel/mips/context.h ]
Removed TLB_SAFE_KSTACK, TLB_SAFE_KSTACK1.
[90/12/08            rpd]
[ ./kernel/mips/context.s ]
Added mips_stack_base.
[91/01/02            rpd]

Split mips_machine_state off of mips_kernel_state.
Moved stack_switch to mips/pcb.c.
[90/12/30            rpd]
Removed load_context_ipc, save_context.
Added switch_task_context, switch_thread_context.
[90/12/08            rpd]

Added stack_switch, load_context_ipc.
[90/11/29            rpd]

Changed save_context/load_context for pcb reorganization.
Removed stack wiring code from load_context.
Disabled pmap_pcache code.
[90/11/12            rpd]
[ ./kernel/mips/db_interface.c ]
Changed kdb_trap to return TRUE if it actually enters kdb.
[90/12/23            rpd]
Fixed to use kdbsplhigh/kdbsplx.
[90/11/26            rpd]
[ ./kernel/mips/db_machdep.h ]
Added inst_load, inst_store.
[90/11/27            rpd]
[ ./kernel/mips/db_trace.c ]
Quit tracing after hitting a zero pc.
[90/12/31            rpd]
Changed for new pcb organization.
[90/11/12            rpd]
[ ./kernel/mips/genassym.c ]
Added mips_stack_base.
[91/01/02            rpd]

Changed to consistent MKS_, MSS_, MEL_, MMS_ prefixes.
Split mips_machine_state off of mips_kernel_state.
[90/12/30            rpd]
Added PCB_SIZE.
[90/11/12            rpd]
[ ./kernel/mips/locore.s ]
Fixed gimmeabreak to allow the user to single-step out of it.
[91/01/06            rpd]
Added mips_stack_base.
[91/01/02            rpd]

Split mips_machine_state off of mips_kernel_state.
[90/12/30            rpd]
Moved thread_exception_return to mips/trap.c.
[90/12/23            rpd]

Replaced thread_bootstrap_user, thread_bootstrap_kernel
with thread_exception_return, thread_syscall_return.
Updated native syscall processing for new mach_trap_table layout.
[90/12/18            rpd]
Changed the exception frame/pcb layout.
[90/11/19            rpd]
[ ./kernel/mips/mips_copyin.s ]
Added copyinmsg, copyoutmsg.
Fixed copyin to check correctly for user space violations.
[90/12/05            rpd]
[ ./kernel/mips/mips_cpu.s ]
Updated for new symbolic field names.
[91/01/03  22:10:08  rpd]

Replaced thread_doexception with exception.
[90/12/27  21:22:32  rpd]

Added kdbsplhigh and kdbsplx.
[90/11/26            rpd]

Changed disable_fpa for new pcb organization.
[90/11/12            rpd]
[ ./kernel/mips/mips_init.c ]
Changed for pcb reorganization.
[90/11/12            rpd]
[ ./kernel/mips/mips_instruction.c ]
Added isa_load, isa_store.
[90/11/27            rpd]
[ ./kernel/mips/pcb.c ]
Removed pcb_synch.  Added pcb_collect.
[91/01/03            rpd]

Added mips_stack_base.
[91/01/02            rpd]

Split mips_machine_state off of mips_kernel_state.
Moved stack_switch here from mips/context.s.
[90/12/30            rpd]
Eliminated thread_bootstrap_user, thread_bootstrap_kernel.
[90/12/19            rpd]
Added pcb_alloc/pcb_free.  Use vm_page_grab/vm_page_free
for kernel stacks.  Reorganized the pcb layout.
Removed thread_private.
[90/11/11            rpd]
[ ./kernel/mips/thread.h ]
Added mips_stack_base.
[91/01/02            rpd]
Split mips_machine_state off of mips_kernel_state.
Changed mips_exception_state to mips_exception_link.
[90/12/30            rpd]
Added definition of MACHINE_STACK.
[90/12/14            rpd]
Added mips_exception_state, USER_LINK.
[90/11/13            rpd]

Changed pcb to include both mips_kernel_state and mips_saved_state.
[90/11/11            rpd]
[ ./kernel/mips/tlb.s ]
Removed tlb_probe_and_wire.
[90/11/12            rpd]
[ ./kernel/mips/trap.c ]
Added a couple counters to tlb_miss.
[91/01/08  14:15:03  rpd]

Disabled pcache code.
[90/12/29            rpd]
Replaced thread_doexception with new exception interface.
Moved thread_exception_return here from mips/locore.s.
It must install single-step breakpoints in the user.
Added thread_kdb_return.
[90/12/23            rpd]
Added continuation argument to thread_block.
[90/12/08            rpd]

Added support for copymsgin, copymsgout.
[90/12/05            rpd]

Changed for new pcb organization.
[90/11/12            rpd]
[ ./kernel/sun3/db_machdep.h ]
Added dummy inst_load/inst_store macros.
[91/01/06            rpd]
[ ./kernel/sun3/locore.s ]
Added copyinmsg, copyoutmsg aliases.
Updated for new mach_trap_table layout.
[91/01/06            rpd]
[ ./kernel/sun3/pcb.c ]
Added KEEP_STACKS support.
[91/01/06            rpd]

Added empty frame on thread start for tracing.
[89/05/25            rwd]

Converted for MACH kernel.
[88/11/03            dbg]
[ ./kernel/sun3/thread.h ]
Added KEEP_STACKS support.
[91/01/06            rpd]
[ ./kernel/sun3/trap.c ]
Added KEEP_STACKS support.
[91/01/07            rpd]
Added continuation argument to thread_block.
[90/12/08            rpd]
[ ./kernel/sundev/cgtwo.c ]
Added continuation argument to thread_block.
[90/12/08            rpd]
[ ./kernel/sundev/mb.c ]
Added continuation argument to thread_block.
[90/12/08            rpd]

Modified for MACH_KERNEL.
[89/03/22            dbg]
[ ./kernel/sundev/sd.c ]
Added continuation argument to thread_block.
[90/12/08            rpd]
[ ./kernel/sundev/st.c ]
Added continuation argument to thread_block.
[90/12/08            rpd]
[ ./kernel/sundev/xy.c ]
Added continuation argument to thread_block.
[90/12/08            rpd]
[ ./kernel/sundev/zs_async.c ]
Added continuation argument to thread_block.
[90/12/08            rpd]
[ ./kernel/sunif/if_ie.c ]
Changed NET_KMSG_GET, NET_KMSG_FREE to net_kmsg_get, net_kmsg_put.
[91/01/05            rpd]
[ ./kernel/sunif/if_le.c ]
Changed NET_KMSG_GET, NET_KMSG_FREE to net_kmsg_get, net_kmsg_put.
[91/01/05            rpd]
[ ./kernel/vax/db_machdep.h ]
Added dummy inst_load/inst_store macros.
[91/01/06            rpd]
[ ./kernel/vax/inline/langpats.c ]
Added copyinmsg, copyoutmsg.
[91/01/06            rpd]
[ ./kernel/mach_debug/mach_debug_types.defs ]
Changed ipc_info_bucket_t to hash_info_bucket_t.
[91/01/02            rpd]
[ ./kernel/mips/PMAX/dz_hdw.c ]
Modified dz_param never to use 7bits per char.
Now we can use the serial lines even in non-raw mode,
which means we can login, for instance.
[90/12/31            af]
[ ./kernel/mips/softfp.s ]
Replaced thread_doexception with new exception interface.
[90/12/23            rpd]
[ ./kernel/vax/locore.s ]
Updated for new mach_trap_table layout.
[91/01/06            rpd]
[ ./kernel/vax/model_dep.c ]
Added continuation argument to thread_block.
[90/12/08            rpd]
[ ./kernel/vax/mscp.c ]
Added continuation argument to thread_block.
[90/12/08            rpd]

Changes for MACH_KERNEL.
[88/08/29            dbg]

Compile the error printing code if (NTMSCP > 0) as well as if NET_UDA.
Directly include <vax/mscp_umd.h>, as the Berkeley version
won't work (and must be left intact if NET_UDA is not true).
[88/08/29            mwyoung]

Corrected include file references.
[88/08/22            mwyoung]
[ ./kernel/vax/pcb.c ]
Added KEEP_STACKS support.
[91/01/06            rpd]
[ ./kernel/vax/thread.h ]
Added KEEP_STACKS support.
[91/01/06            rpd]
[ ./kernel/vax/trap.c ]
Added KEEP_STACKS support.
[91/01/07            rpd]
Added continuation argument to thread_block.
[90/12/08            rpd]
[ ./kernel/vaxif/if_ni.c ]
Changed NET_KMSG_GET, NET_KMSG_FREE to net_kmsg_get, net_kmsg_put.
[91/01/05            rpd]
[ ./kernel/vaxif/if_uba.c ]
Changed NET_KMSG_GET, NET_KMSG_FREE to net_kmsg_get, net_kmsg_put.
[91/01/05            rpd]
[ ./kernel/vaxuba/qd.c ]
Added continuation argument to thread_block.
[90/12/08            rpd]
[ ./kernel/vaxuba/uba.c ]
Added continuation argument to thread_block.
[90/12/08            rpd]
[ ./kernel/vaxuba/uda_umd.c ]
Added continuation argument to thread_block.
[90/12/08            rpd]
[ ./kernel/vm/memory_object.c ]
Added continuation argument to thread_block.
[90/12/08            rpd]
[ ./kernel/vm/vm_debug.c ]
Added host_virtual_physical_table_info.
[91/01/02            rpd]
[ ./kernel/vm/vm_external.c ]
Changed zchange calls to make the zones non-collectable.
[90/12/29            rpd]
[ ./kernel/vm/vm_fault.c ]
Turned software_reference_bits on.
[90/12/29            rpd]
Added continuation argument to thread_block.
[90/12/08            rpd]

Changed VM_WAIT to VM_PAGE_WAIT.
[90/11/13            rpd]
[ ./kernel/vm/vm_kern.c ]
Changed VM_WAIT to VM_PAGE_WAIT.
[90/11/13            rpd]
[ ./kernel/vm/vm_map.c ]
Added continuation argument to thread_block.
[90/12/08            rpd]
[ ./kernel/vm/vm_object.c ]
Added continuation argument to thread_block.
[90/12/08            rpd]

Fixed vm_object_terminate to give vm_pageout_page busy pages.
[90/11/22            rpd]

Changed VM_WAIT to VM_PAGE_WAIT.
[90/11/13            rpd]
[ ./kernel/vm/vm_page.h ]
Changed to singly-linked VP bucket chains.
[91/01/03            rpd]
Changed vm_wait/VM_WAIT to vm_page_wait/VM_PAGE_WAIT.
[90/11/13            rpd]
[ ./kernel/vm/vm_pageout.c ]
Added net_kmsg_collect.
[91/01/05            rpd]
Added consider_task_collect, consider_thread_collect.
[91/01/03            rpd]

Added stack_collect.
[90/12/31            rpd]
Added continuation argument to thread_block.
[90/12/08            rpd]

Ensure that vm_page_free_target is at least five pages
larger than vm_page_free_min, to avoid vm_page_wait deadlock.
[90/11/19            rpd]

Replaced swapout_threads with consider_zone_gc.
[90/11/11            rpd]
[ ./kernel/vm/vm_resident.c ]
Changed to singly-linked VP bucket chains.
[91/01/03            rpd]

Removed count field from VP buckets.
Added vm_page_info.
[91/01/02            rpd]
Added vm_page_grab, vm_page_release.
Changed vm_wait/VM_WAIT to vm_page_wait/VM_PAGE_WAIT.
[90/12/09  17:41:15  rpd]
[ ./user/threads/i386/csw.s ]
Don't use Times - horta doesn't like it for some reason.
[91/01/06            rpd]
[ ./kernel/conf/MASTER.i386 ]
Switch wd8003 -> ns8390
[91/01/04  12:13:52  rvb]
[ ./kernel/conf/files.i386 ]
Switch wd8003 -> ns8390
[91/01/04  12:14:06  rvb]
[ ./kernel/ddb/db_command.c ]
Forward reference for db_fncall();
[91/01/04  12:35:17  rvb]

Add call as a synonym for ! and match for next
[91/01/04  12:14:48  rvb]
[ ./kernel/i386/hardclock.c ]
EFL_VM => user_mode
[90/12/21  10:50:54  rvb]
[ ./kernel/i386/interrupt.s ]
Need special interrupt_return
[90/12/21  14:36:12  rvb]
[ ./kernel/i386/locore.s ]
interrupt_returns must check for EFL_VM.
[90/12/21  14:37:44  rvb]

Add trapv86 for VM thread.
[90/12/19  17:00:56  rvb]
[ ./kernel/i386/pit.c ]
Flush dead EXL code.
[90/11/27  11:38:08  rvb]
[ ./kernel/i386/trap.c ]
Add v86_hdw_assist().
[91/01/04  09:54:24  rvb]

Basically add trapv86()
[90/12/20  10:21:01  rvb]
[ ./kernel/i386/tss.h ]
Add bit_map
[90/12/20  10:21:17  rvb]
[ ./kernel/i386at/blitvar.h ]
Trim $ header
[90/11/27  11:44:11  rvb]
[ ./kernel/i386at/conf.c ]
Support for get/set status on hd and fd.
Also fd has 64 minor devices per unit.
Switch wd8003 -> ns8390
[91/01/04  12:17:15  rvb]
[ ./kernel/i386at/disk.h ]
Add V_ABS to log absolute address for 3.0 get/set stat version
of V_RDABS AND V_WRABS
[91/01/04  12:18:16  rvb]
[ ./kernel/i386at/hd.c ]
Allow ioctl's
[90/12/19            rvb]
[ ./kernel/i386at/if_3c503.h ]
Etherlink II device specific info.
[91/01/04  12:19:07  rvb]
[ ./kernel/i386at/if_ns8390.c ]
A few bug fixes.
[91/01/08  16:41:04  rvb]

Make this a generic driver for ns8390 from wd8003 because
we now will also support etherlink ii.
[91/01/04  12:25:21  rvb]
[ ./kernel/i386at/if_ns8390.h ]
Restrict to defines for the 8390 only.
[91/01/04  12:25:57  rvb]
[ ./kernel/i386at/if_wd8003.h ]
Flush generic NS8390 defines to an NS8390 header file.
[91/01/04  12:20:35  rvb]
[ ./kernel/i386at/kd_mouse.c ]
Trim $ Header
[90/11/27  11:44:31  rvb]
[ ./kernel/i386at/m765knl.c ]
Add some 3.0 get/set stat stuff.
[91/01/04  12:21:06  rvb]
[ ./kernel/i386at/pic_isa.c ]
Initially, do not allow clock interrupts
[91/01/04  12:21:54  rvb]
[ ./kernel/mach/i386/thread_status.h ]
Two new flavors (from 2.5):
  #define i386_FLOAT_STATE	2
	Hacked in not presently used, but someday...
 #define i386_ISA_PORT_MAP_STATE	3
	Used 
[90/12/20  10:23:34  rvb]
[ ./kernel/i386at/if_ns8390.c ]
Changed NET_KMSG_GET to net_kmsg_get.
[91/01/08            rpd]
[ ./kernel/i386at/if_wd8003.c ]
Purged.
[ ./include/Makefile ]
Added i386/fp_reg.h.
[91/01/08            rpd]
[ ./include/Makefile ]
Added i386at/disk.h.
[ ./kernel/mach_debug/Makefile ]
Purged.
[ ./kernel/i386at/if_ns8390.c ]
Fixed typo in ns8390probe.
[91/01/09            rpd]
[ ./kernel/mips/PMAX/boot/primary_boot.c ]
For new proms, zero envp because it is bogus.  This lets
me boot 2.5 on 3maxen again.
[91/01/09  16:33:38  af]
[ ./kernel/i386/pit.c ]
Fixed clkstart to reset clock interrupt priority, etc.
[91/01/09            rpd]

Flush dead EXL code.
[90/11/27  11:38:08  rvb]
[ ./kernel/mips/PMAX/mips_box.c ]
Defined pmax_memcheck() and related default implementation.
[91/01/03  02:10:32  af]
[ ./kernel/mips/PMAX/mips_box.h ]
Now define mipsbox_memory_check() to cope with bus lockup
caused by pmax SII chip.
[91/01/02            af]
[ ./kernel/mips/PMAX/kn01.c ]
Added kn01_memcheck().
[91/01/03  02:09:21  af]
[ ./kernel/mips/PMAX/model_dep.c ]
Set pmax_memcheck() for pmaxen.
[91/01/03  02:12:58  af]
[ ./kernel/mips/trap.c ]
Check mipsbox_memory_check return value.
[91/01/09            rpd]
[ ./kernel/i386/db_trace.c ]
Fixed stack tracing for threads without kernel stacks.
[91/01/09            rpd]
[ ./kernel/i386at/autoconf.c ]
Converted from wd8003 to ns8390.
[91/01/08            rpd]
[ ./kernel/mips/db_trace.c ]
Fixed stack tracing for threads without kernel stacks.
[91/01/09            rpd]
[ ./kernel/i386/cswitch.s ]
Renamed to Load_context and Switch_task_context.
Removed ktss munging.
[91/01/09            rpd]
[ ./kernel/i386/genassym.c ]
Removed user_regs, k_stack_top.
[91/01/09            rpd]
[ ./kernel/i386/init.c ]
Added ktss zone.
[91/01/09            rpd]
[ ./kernel/i386/locore.s ]
Removed k_user_regs.
[91/01/09            rpd]
[ ./kernel/i386/pcb.c ]
Revised the pcb yet again.
Picked up i386_ISA_PORT_MAP_STATE flavors.
Added load_context, switch_task_context cover functions.
[91/01/09            rpd]
[ ./kernel/i386/thread.h ]
Added dummy switch_thread_context macro.
Added ktss to i386_machine_state.
Removed user_regs, k_stack_top.
[91/01/09            rpd]
[ ./kernel/i386/trap.c ]
Fixed a merge bug.
[91/01/09            rpd]
    
    
    
==========================================================================
   ***** MK Version MK41  (mrt) *****
    
    
Added the new Mach copyright and disclaimer to all the machine 
independent files and the i386 and mips files. At this point
we are allowd to distribute freely all the files needed for 
the i386 and mips platforms.

Changed personal copyrights to author notices and added author
notices to the files in the devices, ddb and mips directories.
I would encourage people to put author notices on any files
that they created or will create. Please do not put personal
copyrights on files as it casts doubt over the rights of
Carnegie Mellon to distribute the files. 

Since we will now be distributing these sources without requiring
any licenses, please be very careful about adding any files with
copyright notices that do not include a permission to distribute
clause like the CMU one. If for some reason it is necessary to
include a copyrighted file, be sure to tell me,so that I can exclude 
it from the ftp distribution.

There was no change to code in this release.
    
    
    
==========================================================================
   ***** MK Version MK42  (mrt) *****
    
    
Bug fixes:
--- -----

[I386]	Picked up Rich Draves intel/pmap.c fix to keep the i386 version
	from hanging
	Picked up a number of i386 changes from Bob

[PMAX]	Picked up the scsi driver fix from Sandro and lots of other
	mips specfic files.

Organizational changes:
-------------- -------
All the libmach, theads and man sections now have the new Mach
permissive copyright

I upgraded the libmach i386 bcopy routine to reno in order to
get a BSD permissive copyright.


******** CUT HERE ******** summary of log messages ******** CUT HERE ********
[ ./conf/version.edit ]
42

Changes from Rich
[ ./kernel/intel/pmap.c ]
Fixed pmap_expand to use vm_page_grab/VM_PAGE_WAIT.
[91/01/12            rpd]
[ ./kernel/ipc/ipc_right.c ]
Fixed bug in ipc_right_copyin_check, following rchen's report.
[91/01/26            rpd]
******************************************************************
Copyright changes
[ ./kernel/conf/copyright ]
New Mach copyright
[ ./kernel/man/* ]
Changed to new Mach copyright
[91/02/12  18:10:12  mrt]
[ ./user/libmach/* ]
Added new Mach copyright
[91/02/13  12:45:25  mrt]
[ ./user/threads/* ]
Added new Mach copyright
[91/02/13  12:40:50  mrt]
[ ./kernel/sys/ioctl.h ]
Changed to new Mach copyright
[ ./kernel/i386/ntoh.s ]
Changed to new Mach copyright
******************************************************************
Mips changes from Sandro
[ ./kernel/mips/PMAX/cfb_hdw.c ]
In interrupt routine, drop priority as now required.
[91/02/12  12:44:36  af]
[ ./kernel/mips/PMAX/dz_hdw.c ]
In interrupt routine, drop priority as now required.
[91/02/12  12:45:12  af]
Modified dz_param never to use 7bits per char.
Now we can use the serial lines even in non-raw mode,
which means we can login, for instance.
[90/12/31            af]
[ ./kernel/mips/PMAX/ga_hdw.c ]
In interrupt routine, drop priority as now required.
[91/02/12  12:43:54  af]
[ ./kernel/mips/PMAX/gq_hdw.c ]
In interrupt routine, drop priority as now required.
[91/02/12  12:44:15  af]
[ ./kernel/mips/PMAX/if_se.c ]
In interrupt routine, drop priority as now required.
Added (optional) loopback of packets sent to ourselves,
this way can run multiple POEs and have them talk to each other.
Same flag lets you run with external hardware loopback terminator
ignoring no-carrier errors.
Fixed bug with multiple ether boards.
Fixed bug with loopback path shifting data incorrectly.
[91/02/12  12:53:29  af]
[ ./kernel/mips/PMAX/if_se_mapped.c ]
In interrupt routine, drop priority as now required.
Also sanity check for spurious interrupts anyways.
[91/02/12  12:41:46  af]
[ ./kernel/mips/PMAX/kn01.c ]
In interrupt routines, drop priority as now required.
[91/02/12  12:54:42  af]
Added kn01_memcheck().
[91/01/03  02:09:21  af]
[ ./kernel/mips/PMAX/kn02.c ]
Pass along the spllevel to interrupt routines.
[91/02/12  12:40:09  af]
[ ./kernel/mips/PMAX/mapped_scsi.c ]
In interrupt routines, drop priority as now required.
Also, sanity check against spurious interrupts.
[91/02/12  13:17:21  af]
[ ./kernel/mips/PMAX/mc_clock.c ]
Factored out delay() function, and made it box-indep.
Added accurate_config_delay() which calls delay()'s
configuration code.  Modified ackrtclock() to
invoke it on first call.
Tell the user what the CPU clock speed loks like, 
distinguish between DS3100 and DS2100 based on clock speed.
[91/02/12  13:03:16  af]
[ ./kernel/mips/PMAX/mc_clock.h ]
New values for delay() function.
[91/02/12  13:04:04  af]
[ ./kernel/mips/PMAX/mips_box.c ]
In clock interrupt routine, drop priority as now required.
[91/02/12  12:59:26  af]
Defined pmax_memcheck() and related default implementation.
[91/01/03  02:10:32  af]
[ ./kernel/mips/PMAX/mips_box.h ]
Fix macros so that interrupt routines can drop priority as now required.
[91/02/12  12:56:04  af]
[ ./kernel/mips/PMAX/mouse.c ]
Sanity check so that we will never loose synch if the serial line
drops characters.
[91/02/12  12:57:21  af]
Mouse events are now accounted for by the screenm saver.
[91/01/04  15:35:30  af]
[ ./kernel/mips/PMAX/pm_hdw.c ]
In interrupt routine, drop priority as now required.
[91/02/12  12:42:39  af]
[ ./kernel/mips/PMAX/rz_disk.c ]
Added (optional and disabled) code for checksumming.
[91/02/12  12:58:27  af]
Bug in strategy routine: for xfers larger than
max_dma was not setting the io_count right at
the end of the transfer.  Now new fsck works.
[90/12/10  17:26:47  af]
[ ./kernel/mips/PMAX/scsi_53C94_hdw.c ]
In interrupt routine, drop priority as now required.
Also, sanity check for spurious interrupts.
Some more debugging tools.
[91/02/12  12:46:38  af]
[ ./kernel/mips/autoconf.c ]
New values for new delay() function.
[91/02/12  12:29:29  af]
[ ./kernel/mips/db_interface.c ]
Added flag not to invoke vm_fault(), used in crashed kernels.
[91/02/12  12:15:09  af]
[ ./kernel/mips/mips_cpu.s ]
Fixed a number of problems in the FPA emulation code.
Added delay() and its autotime function, this way we
can distinguish between DS3100 and DS2100.
[91/02/12  12:37:13  af]
[ ./kernel/mips/mips_instruction.c ]
Added branch_delay() for FPA emulation.
[91/02/12  12:23:19  af]
[ ./kernel/mips/pmap.c ]
Fixed pmap_attribute() to loop through all phys pages while
flushing the cache.  If this gets used heavily for large
ranges it will be wise to just flush the whole cache in
one shot, or keep perhaps track of which 'cache pages'
need flushing and which do not.
[91/02/12  12:33:25  af]
[ ./kernel/mips/pmap.h ]
Made sure PTETOPHYS() does not get optimized away.
[91/01/10            af]
[ ./kernel/mips/softfp.s ]
The FPA csr is now passed as third argument.
[91/02/12  12:21:21  af]
[ ./kernel/device/net_io.c ]
Added garbage collection of dead filters.
[91/02/12  12:11:10  af]
[ ./kernel/mips/PMAX/scsi_7061_hdw.c ]
In interrupt routine, drop priority as now required.
[91/02/12  13:18:18  af]
[ ./kernel/mips/db_trace.c ]
Split trace function from ddb interface.  Added (optional)
code to walk through a user-mode, optimized CThread program
like the U*x server.  Should make it MI someday.
[91/02/12  12:18:59  af]
[ ./kernel/mips/locore.s ]
Reversed the meaning of the booleans in the ref_bits array.
[91/02/12  12:24:39  af]
[ ./kernel/mips/trap.c ]
Pass along the spl level to interrupt routines, which are now
invoked with interrupts DISABLED so that they can defend 
themselves from unwarranted multiple invocations.  It is
now the routine's responsibility to lower the spl at the indicated
priority level as soon as the interrupt cause has been cleared.
[91/02/12  12:28:43  af]
Activated mipsbox_memory_check() macro.
[91/01/03  02:08:14  af]
*************************************************************
Changes from Bob
[ ./kernel/ddb/db_input.c ]
Add input line editing.
[90/11/11            dbg]
[ ./kernel/i386/trap.c ]
rfr's latest changes to v86 assist
[91/01/28  15:25:30  rvb]
[ ./kernel/i386at/com.c ]
Merge of dbg's latest working com.c onto the old com.c
with the new autoconf and other major changes.
[91/01/28  15:26:13  rvb]
[ ./kernel/i386at/conf.c ]
Allow com driver and distinguish EtherLinkII from wd8003
[91/01/28  15:27:02  rvb]
[ ./kernel/i386at/fd.c ]
This file is the logical contatenation of the previous c765.c,
m765knl.c and m765drv.c, in that order.  
[91/01/15            rvb]
[ ./kernel/i386at/fdreg.h ]
New, Improved, compatible with new fd.c
[91/01/28  15:33:58  rvb]
[ ./kernel/i386at/if_ns8390.c ]
Distinguish EtherLinkII vs WD8003 on open.  Get packet
size right for statistics.  Fix 3.0 buf that sometimes
reported packets too large.
[91/01/28  15:31:22  rvb]
[ ./kernel/i386at/if_pc586.c ]
You must check RBD_SW_EOF for rbd chain termination, a link of 0xffff
does not work.  Also we've just seen a status of 0xffff in rcv() with
a bad fd_p->link_offset; we'll now reset.
[91/01/17            rvb]
[ ./kernel/i386at/kd.c ]
Merge cleanup.
[91/01/28  17:14:11  rvb]
Drop priority around display routines in kdstart, so that
scrolling or clearing the screen doesn't block other interrupts
(e.g. com driver).
[91/01/28  15:29:45  rvb]
[ ./kernel/i386at/kdasm.s ]
Follow dbg's lead.
[91/01/15            rvb]

    
    
    
==========================================================================
   ***** MK Version MK43  (rpd) *****
    
    
New features:
--- --------

I revised the AST interface.  Now there is a machine-independent function,
ast_taken, which handles ASTs.  Also the idle thread will process
network ASTs.

I changed the network code to use ASTs to run packets through the packet
filters and send IPC messages.  The network thread only runs when
more message buffers must be allocated.  The network code now keeps
two queues of packets, for low and high priority packets.  If it runs
out of free buffers, it will recycle packets in the low-priority queue.
The network drivers currently mark broadcast packets as low priority.
These changes greatly reduce the number of dropped high-priority packets
and the amount of memory consumed by packet buffers.

More paths through the kernel use explicit continuations now.
I changed the scheduling state machine so that swapped threads
can live on the run queues.  Now the kernel uses explicit continuations for
	threads blocked in (user) message receive
	threads blocked in exceptions
	threads blocked in (user) page faults
	kernel threads (including the idle thread) blocking for more work
	preemptive scheduling
	thread_switch and friends
These cases account for >99% of all context-switches.

I changed the interface to machine-dependent context-switch functions.
The two main functions now are stack_handoff and switch_context.
These functions are also responsible for changing address spaces.
switch_context returns the previously running thread (instead of
calling thread_continue, like the old interface).  stack_handoff
accounts for >99% of all context-switches.

I changed how the IPC system caches message buffers.
Now it uses a per-processor cache, instead of a per-thread cache.
The per-processor cache uses less memory and has a better hit rate.

[PMAX,I386]	I pulled floating-point state out of the pcbs.
Now space for FP registers is only allocated for threads
which actually use FP.

[PMAX]	  I changed how the mips code handles the FP registers,
to remove FP overhead from the context-switch path.


Bug fixes:
--- -----

I fixed a bug ipc_entry_grow_table, which causes a panic when the default
pager tries to grow its table and there aren't enough free pages.
Now ipc_entry_grow_table uses a new function, kmem_realloc,
to grow large tables.  I also reorganized the kmem_alloc interface,
so that those functions have real return codes now.  kmem_alloc
allocates a new object and kmem_alloc_wired uses the kernel-object.
Both functions do not zero the new memory.

I fixed a page leak.  Copy-on-write faults left the original page
off the paging queues.  Related changes to vm_page_deactivate
and how vm_object_terminate and the pageout daemon interact.

I fixed the ioctl definitions for Ansi C.

I changed the default value of db_maxoff to 4K.

I fixed ddb to catch exceptions that occur in ddb commands.
Typos in arguments to "show foo" are no longer fatal.

I fixed the default pager's initialization of pager structures.

I fixed memory_object_data_provided to only return success
when it consumes its copy object, so erroneous data-provided's
don't crash the kernel.

I fixed vm_fault_page to give vm_pageout_page busy pages.

I fixed kmem_alloc and friends to not hold object locks across pmap_enter.

Fix for vm_map_entry_delete's use of vm_object_page_remove from dlb.

Fix for vm_map_fork/VM_INHERIT_COPY of wired entries from dlb.

Fix for boot_printf from sumitomo.

Fix for read_emulator_symbols (to not panic if there is no emulator) from jsb.

[SUN3]	  I fixed the pmap module to initialize new pmaps correctly.

[SUN3]	  I fixed locore to not leave thread->recover set across system calls.

[PMAX]	  I picked up a couple more spl/interrupt-race fixes from af.

[PMAX]	  I fixed switch_context and call_continuation
so stack traces in ddb terminate correctly.

[I386]	  I fixed several floating-point bugs.
Now multiple threads can use FP without stepping on each other.

[I386]	  Fixed kdb_trap to disable interrupts and skip permanent breakpoints.

[I386]	  I fixed switch_context and call_continuation
so stack traces in ddb terminate correctly.


Organizational changes:
-------------- -------

device/tape_status.h is exported to the release directory now.

I changed the definition of REG_EXP, to make it .* on all platforms.
If you have an old make, you may need to override this definition
with REG_EXP=\* on your make command line.  I also fixed the
Makeconf created in the build directory to define REG_EXP,
so builds initiated in the build directory work.

Special notes:
------- -----

I only tested briefly on the Vax and Sun 3.


******** CUT HERE ******** summary of log messages ******** CUT HERE ********
[ ./conf/version.edit ]
43
[ ./include/Makefile ]
Added export of tape_status.h
[91/02/21            af]
[ ./kernel/boot_ufs/boot_printf.c ]
Should initialize the "count" before a device_read_inband().
Bug found by laverne@sumitomo.com.
[91/03/13  15:03:15  af]
[ ./kernel/Makeconf ]
Define REG_EXP as .* on all platforms.
[91/03/14            rpd]
[ ./kernel/Makefile ]
Added REG_EXP to the Makeconf created in the build directory.
[91/03/14            rpd]
[ ./kernel/boot_ufs/default_pager.c ]
Updated for new kmem_alloc interface.
Fixed memory_object_create to zero the new pager structure.
[91/03/03            rpd]
Removed thread_swappable.
[91/01/18            rpd]
[ ./kernel/boot_ufs/load.c ]
Fixed read_emulator_symbols to not panic if there is no emulator.
[91/03/13            rpd]
[ ./kernel/conf/MASTER ]
Added MACH_COUNTERS (tag count).
[91/02/24            rpd]
[ ./kernel/conf/Makefile.i386 ]
Nullify the VOLATILE macro.
[91/03/13            rpd]
[ ./kernel/conf/Makefile.template ]
Moved VOLATILE from LINTOPTS to ALLOPTS.
[91/03/13            rpd]
[ ./kernel/conf/files ]
Added MACH_COUNTERS and kern/counters.c.
[91/02/24            rpd]
[ ./kernel/ddb/db_aout.c ]
Updated for new kmem_alloc interface.
[91/03/03            rpd]
[ ./kernel/ddb/db_command.c ]
Added db_recover.
[91/01/13            rpd]
[ ./kernel/ddb/db_sym.c ]
Changed the default db_maxoff to 4K.
[91/03/10            rpd]
[ ./kernel/device/device_init.c ]
Changed net_rcv_msg_thread to net_thread.
[91/02/13            rpd]
[ ./kernel/device/device_types.defs ]
Added filter_t.
[91/02/12            rpd]
[ ./kernel/device/ds_routines.c ]
Updated for new kmem_alloc interface.
[91/03/03            rpd]
Added io_done_thread_continue.
[91/02/13            rpd]
Removed thread_swappable.
[91/01/18            rpd]
[ ./kernel/device/net_io.c ]
Added net_thread, net_thread_continue.
[91/02/13            rpd]
Split net_rcv_msg_queue into high and low priority queues.
Cap the total number of buffers allocated.
[91/01/14            rpd]

Added net_rcv_msg_queue_size, net_rcv_msg_queue_max.
[91/01/12            rpd]
[ ./kernel/device/net_io.h ]
Added net_packet.
[91/01/14            rpd]
[ ./kernel/device/subrs.c ]
Updated for new kmem_alloc interface.
[91/03/03            rpd]
[ ./kernel/device/tape_status.h ]
Fixed ioctl definitions for ANSI C.
[91/02/20            rpd]
[ ./kernel/i386/cswitch.s ]
Renamed Switch_task_context to Switch_context.
[91/02/17            rpd]
Added active_stacks.
[91/01/29            rpd]
[ ./kernel/i386/db_interface.c ]
Fixed kdb_trap to skip over permanent breakpoints.
[91/03/15            rpd]

Changed kdb_trap to use db_recover.
[91/01/14            rpd]

Fixed kdb_trap to disable interrupts.
[91/01/12            rpd]
[ ./kernel/i386/fpu.c ]
Pulled i386_fpsave_state out of i386_machine_state.
Picked up fixes from dbg.
[91/02/18            rpd]
[ ./kernel/i386/genassym.c ]
Removed k_ipl.
[91/03/01            rpd]
Added TH_SWAP_FUNC.
[91/02/24            rpd]

Added PCB_SIZE.
[91/02/01            rpd]
[ ./kernel/i386/init.c ]
Moved ktss_zone, pcb_zone initialization to pcb_module_init.
[91/02/18            rpd]
[ ./kernel/i386/io_map.c ]
Updated for new kmem_alloc interface.
[91/03/03            rpd]
[ ./kernel/i386/locore.s ]
Changed call_continuation to not change spl.
[91/02/17            rpd]
Added call_continuation.
Changed the AST interface.
[91/01/18            rpd]
[ ./kernel/i386/pcb.c ]
Pulled i386_fpsave_state out of i386_machine_state.
Added pcb_module_init.
[91/02/18            rpd]

Replaced stack_switch with stack_handoff and
switch_task_context with switch_context.
[91/02/18            rpd]
Added active_stacks.
[91/01/29            rpd]
[ ./kernel/i386/phys.c ]
Added resume, continuation arguments to vm_fault.
[91/02/05            rpd]
[ ./kernel/i386/read_fault.c ]
Added resume, continuation arguments to vm_fault_page.
Added continuation argument to VM_PAGE_WAIT.
[91/02/05            rpd]
[ ./kernel/i386/thread.h ]
Removed k_ipl from i386_kernel_state.
[91/03/01            rpd]

Pulled i386_fpsave_state out of i386_machine_state.
[91/02/18            rpd]

Renamed unused field in i386_saved_state to cr2.
Removed switch_thread_context.
[91/02/05            rpd]
[ ./kernel/i386/trap.c ]
Added resume, continuation arguments to vm_fault.
Added user_page_fault_continue.
[91/02/05            rpd]
Removed astintr.
[91/01/22  15:53:33  rpd]
[ ./kernel/i386at/blit.c ]
Updated for new kmem_alloc interface.
[91/03/03            rpd]
[ ./kernel/i386at/blituser.h ]
Fixed ioctl definitions for ANSI C.
[91/02/20            rpd]
[ ./kernel/i386at/disk.h ]
Fixed ioctl definitions for ANSI C.
[91/02/20            rpd]
[ ./kernel/i386at/if_3c501.c ]
Changed net_filter to net_packet.
[91/01/15            rpd]
[ ./kernel/i386at/if_ns8390.c ]
Changed net_filter to net_packet.
[91/01/15            rpd]
[ ./kernel/i386at/if_pc586.c ]
Updated for new kmem_alloc interface.
[91/03/03            rpd]
Changed net_filter to net_packet.
[91/01/15            rpd]
[ ./kernel/i386at/kd.h ]
Fixed ioctl definitions for ANSI C.
[91/02/20            rpd]
[ ./kernel/i386at/rtc.h ]
Fixed ioctl definitions for ANSI C.
[91/02/20            rpd]
[ ./kernel/i386ipsc/if_cnp.c ]
Changed net_filter to net_packet.
[91/01/15            rpd]
[ ./kernel/i386ipsc/sd.c ]
Updated for new kmem_alloc interface.
[91/03/03            rpd]
[ ./kernel/intel/pmap.c ]
Removed some incorrect (?) assertions.
[91/03/13  14:18:51  rpd]

Updated for new kmem_alloc interface.
[91/03/03            rpd]
Added continuation argument to VM_PAGE_WAIT.
[91/02/05            rpd]
[ ./kernel/ipc/ipc_entry.c ]
Fixed ipc_entry_grow_table to use it_entries_realloc.
[91/03/05            rpd]
[ ./kernel/ipc/ipc_kmsg.c ]
Replaced ith_saved with ipc_kmsg_cache.
[91/02/16            rpd]
[ ./kernel/ipc/ipc_kmsg.h ]
Replaced ith_saved with ipc_kmsg_cache.
[91/02/16            rpd]
[ ./kernel/ipc/ipc_mqueue.c ]
Renamed ipc_thread_{go,will_wait,will_wait_with_timeout}
to thread_{go,will_wait,will_wait_with_timeout}.
Replaced ipc_thread_block with thread_block.
[91/02/17            rpd]
[ ./kernel/ipc/ipc_port.c ]
Renamed ipc_thread_go to thread_go.
[91/02/17            rpd]
[ ./kernel/ipc/ipc_space.c ]
Added is_growing.
[91/03/07  16:38:42  rpd]
[ ./kernel/ipc/ipc_space.h ]
Added is_growing.
[91/03/04            rpd]
[ ./kernel/ipc/ipc_table.c ]
Added ipc_table_realloc and ipc_table_reallocable.
[91/03/04            rpd]
[ ./kernel/ipc/ipc_table.h ]
Added ipc_table_realloc.
[91/03/04            rpd]
[ ./kernel/ipc/mach_msg.c ]
Replaced ipc_thread_switch with thread_handoff.
Replaced ith_saved with ikm_cache.
[91/02/16            rpd]
Made null mach_msg_trap measurement easier.
[91/01/29            rpd]
[ ./kernel/kern/ast.c ]
Cleanup.
[91/02/13            rpd]
Changed the AST interface.
[91/01/17            rpd]
[ ./kernel/kern/ast.h ]
Fixed dummy aston, astoff definitions.
[91/02/12            rpd]
Revised the AST interface, adding AST_NETWORK.
Added volatile attribute to need_ast.
[91/01/18            rpd]
[ ./kernel/kern/debug.c ]
In panic, only call halt_cpu when not calling Debugger.
[91/03/12            rpd]
[ ./kernel/kern/exception.c ]
Fixed assertion typo.
[91/03/08            rpd]
Replaced ipc_thread_switch with thread_handoff.
Replaced ith_saved with ikm_cache.
[91/02/16            rpd]
[ ./kernel/kern/ipc_kobject.c ]
Replaced ith_saved with ikm_cache.
[91/02/16            rpd]
[ ./kernel/kern/ipc_sched.c ]
Rewrote ipc_thread_switch as thread_handoff,
with new stack_handoff replacing stack_switch.
Renamed ipc_thread_{go,will_wait,will_wait_with_timeout}
to thread_{go,will_wait,will_wait_with_timeout}.
[91/02/17            rpd]
Removed ipc_thread_switch_hits.
[91/01/28            rpd]
Allow swapped threads on the run queues.
[91/01/17            rpd]
[ ./kernel/kern/ipc_sched.h ]
Replaced ipc_thread_switch with thread_handoff.
Renamed ipc_thread_{go,will_wait,will_wait_with_timeout}
to thread_{go,will_wait,will_wait_with_timeout}.
Removed ipc_thread_block.
[91/02/17            rpd]
[ ./kernel/kern/ipc_tt.c ]
Removed ith_saved.
[91/02/16            rpd]
[ ./kernel/kern/kalloc.c ]
Updated for new kmem_alloc interface.
[91/03/03            rpd]
[ ./kernel/kern/mach_clock.c ]
Updated for new kmem_alloc interface.
[91/03/03            rpd]
Use counter macros to track thread and stack usage.
[91/03/01  17:43:15  rpd]
[ ./kernel/kern/machine.c ]
Added action_thread_continue.
[91/01/22            rpd]
[ ./kernel/kern/sched_prim.c ]
Added idle_thread_continue, sched_thread_continue.
[91/01/20            rpd]

Allow swapped threads on the run queues.
Added thread_invoke, thread_select.
Reorganized thread_block, thread_run.
Changed the AST interface; idle_thread checks for ASTs now.
[91/01/17            rpd]
[ ./kernel/kern/sched_prim.h ]
Added declarations of new functions.
[91/02/24            rpd]
[ ./kernel/kern/server_loop.c ]
Updated for new kmem_alloc interface.
[91/03/03            rpd]
[ ./kernel/kern/startup.c ]
Updated for new kmem_alloc interface.
[91/03/03            rpd]
Removed thread_swappable.
[91/01/18            rpd]
[ ./kernel/kern/syscall_subr.c ]
Renamed ipc_thread_will_wait_with_timeout
to thread_will_wait_with_timeout.
[91/02/17            rpd]
Added swtch_continue, swtch_pri_continue, thread_switch_continue.
[91/01/17            rpd]
[ ./kernel/kern/syscall_sw.c ]
Changed swtch, swtch_pri, and thread_switch to MACH_TRAP_STACK.
[91/01/17            rpd]
[ ./kernel/kern/task.c ]
Can't use thread_dowait on the current thread now.
[91/01/20            rpd]
[ ./kernel/kern/thread.c ]
Fixed the initialization of stack_lock_data.
[91/03/11            rpd]
Updated for new kmem_alloc interface.
[91/03/03            rpd]
Removed ith_saved.
[91/02/16            rpd]

Added stack_alloc_max.
[91/02/10            rpd]
Added active_stacks.
[91/01/28            rpd]
Can't use thread_dowait on the current thread now.
Added reaper_thread_continue.
Added stack_free_reserved.
[91/01/20            rpd]

Removed thread_swappable.
Allow swapped threads on the run queues.
Changed the AST interface.
[91/01/17            rpd]
[ ./kernel/kern/thread.h ]
Removed ith_saved.
[91/02/16            rpd]

Added save-state fields for page faults.
[91/02/05            rpd]
Added NCPUS to active_threads declaration.
Added active_stacks.
[91/01/28            rpd]
Added swap_privilege.
[91/01/18            rpd]
[ ./kernel/kern/thread_swap.c ]
Removed thread_swapout.
[91/02/24            rpd]
Added swapin_thread_continue.
Simplified the state machine.  Now it uses only
TH_SW_IN, TH_SW_OUT, TH_SW_COMING_IN.
[91/01/20            rpd]

Simplified thread_swapin.
[91/01/17            rpd]
[ ./kernel/kern/thread_swap.h ]
Removed thread_swappable, swapout_thread, etc.
Removed unnecessary swap states.
[91/01/18            rpd]
[ ./kernel/kern/xpr.c ]
Updated for new kmem_alloc interface.
[91/03/03            rpd]
[ ./kernel/kern/zalloc.c ]
Updated for new kmem_alloc interface.
[91/03/03            rpd]
Added continuation argument to thread_block.
[91/02/16            rpd]
[ ./kernel/mips/PMAX/if_se.c ]
Changed net_filter to net_packet.
[91/01/15            rpd]
[ ./kernel/mips/PMAX/if_se_mapped.c ]
Picked up a further spl fix from Sandro.
[91/03/09            rpd]
Updated for new kmem_alloc interface.
[91/03/03            rpd]
Removed thread_swappable.
[91/01/18            rpd]
[ ./kernel/mips/PMAX/lk201.h ]
Fixed ioctl definitions for ANSI C.
[91/02/20            rpd]
[ ./kernel/mips/PMAX/mapped_scsi.c ]
Updated for new kmem_alloc interface.
[91/03/03            rpd]
Removed thread_swappable.
[91/01/18            rpd]
[ ./kernel/mips/PMAX/screen.c ]
Fixed ioctl definitions for ANSI C.
[91/02/20            rpd]
[ ./kernel/mips/PMAX/screen.h ]
Fixed ioctl definitions for ANSI C.
[91/02/20            rpd]
[ ./kernel/mips/PMAX/scsi_7061_hdw.c ]
Picked up a further spl fix from Sandro.
[91/03/09            rpd]
[ ./kernel/mips/ast.h ]
Removed EXC_AST.
[91/01/22  15:59:10  rpd]
[ ./kernel/mips/autoconf.c ]
Replaced pcb_zone initialization with pcb_module_init.
[91/02/17            rpd]
[ ./kernel/mips/context.s ]
Replaced stack_switch with stack_handoff
and switch_{task,thread}_context with Switch_context.
[91/02/17            rpd]
Moved stack_switch here again.
Added active_stacks.
[91/01/28            rpd]
[ ./kernel/mips/db_interface.c ]
Added resume, continuation arguments to vm_fault.
[91/02/04            rpd]
Changed kdb_trap to use db_recover.
[91/01/13            rpd]

Removed db_nofault.
db_error might return now.
[91/01/13            rpd]
[ ./kernel/mips/db_mips_sym.c ]
Updated for new kmem_alloc interface.
[91/03/03            rpd]
[ ./kernel/mips/db_trace.c ]
Fixed db_trace_cproc to handle wired cthreads.
Fixed db_cproc_state.
[91/03/10            rpd]
Fixed tracing of swapped threads.
Removed unnecessary uses of db_get_value.
[91/03/01  17:49:16  rpd]
[ ./kernel/mips/genassym.c ]
Removed MKS_SR.
[91/03/01            rpd]

Added mips_float_state definitions.
[91/02/18            rpd]

Added PCB_SIZE.
[91/02/01            rpd]
Removed pcache support.
[91/01/10            rpd]
[ ./kernel/mips/locore.s ]
Pulled mips_float_state out of mips_machine_state.
[91/02/18            rpd]

Changed call_continuation to not change spl.
[91/02/17            rpd]
Changed TRAP_cu to disable fpa use for the old fpa owner.
[91/01/29            rpd]
Added call_continuation.
Changed the AST interface.
[91/01/18            rpd]
[ ./kernel/mips/mips_cpu.s ]
Pulled mips_float_state out of mips_machine_state.
[91/02/18            rpd]
[ ./kernel/mips/pcb.c ]
Pulled mips_float_state, mips_sstep_state out of mips_machine_state.
Added pcb_module_init.
[91/02/18            rpd]
Added continuation argument to VM_PAGE_WAIT.
Added stack_alloc_max.
[91/02/05            rpd]
Moved stack_switch to mips/context.s.
Added active_stacks.
[91/01/28            rpd]
Added stack_free_reserved.
[91/01/20            rpd]
[ ./kernel/mips/pmap.c ]
Updated for new kmem_alloc interface.
[91/03/03            rpd]
Removed pcache support.
[91/01/10            rpd]
[ ./kernel/mips/pmap.h ]
Removed pcache support.
[91/01/10            rpd]
[ ./kernel/mips/thread.h ]
Removed sr from mips_kernel_state.
[91/03/01            rpd]

Broke mips_float_state, mips_sstep_state out of mips_machine_state.
[91/02/17            rpd]
[ ./kernel/mips/trap.c ]
Added mips_sstep_state.
[91/02/18            rpd]
Added resume, continuation arguments to vm_fault.
Added user_page_fault_continue.
[91/02/04            rpd]
Removed EXC_AST.
[91/01/22  16:01:04  rpd]
[ ./kernel/sun/cons.c ]
Fixed ioctl definitions for ANSI C.
[91/02/20            rpd]
[ ./kernel/sun/dkio.h ]
Fixed ioctl definitions for ANSI C.
[91/02/20            rpd]
[ ./kernel/sun/fbio.h ]
Fixed ioctl definitions for ANSI C.
[91/02/20            rpd]
[ ./kernel/sun3/autoconf.c ]
Updated for new kmem_alloc interface.
[91/03/03            rpd]
[ ./kernel/sun3/db_interface.c ]
Replaced db_nofault with db_recover.
[91/03/14            rpd]
[ ./kernel/sun3/db_trace.c ]
Replaced db_jmpbuf with db_recover.
[91/03/14            rpd]
[ ./kernel/sun3/locore.s ]
Clear thread->recover in the syscall path.
[91/03/15            rpd]
[ ./kernel/sun3/model_dep.c ]
Updated for new kmem_alloc interface.
[91/03/03            rpd]
[ ./kernel/sun3/pcb.c ]
Added continuation argument to stack_attach.
[91/03/14            rpd]
[ ./kernel/sun3/pmap.c ]
bzero pmap after getting it from zalloc.
[91/03/15            rwd]

Updated for new kmem_alloc interface.
[91/03/03            rpd]
[ ./kernel/sun3/trap.c ]
Hacked for AST interface changes.
[91/03/15            rpd]

Added resume, continuation arguments to vm_fault.
[91/03/13            rpd]

Updated for new kmem_alloc interface.
[91/03/03            rpd]
[ ./kernel/sundev/cgfour.c ]
Updated for new kmem_alloc interface.
[91/03/03            rpd]
[ ./kernel/sundev/cgtwo.c ]
Updated for new kmem_alloc interface.
[91/03/03            rpd]
[ ./kernel/sundev/fpareg.h ]
Fixed ioctl definitions for ANSI C.
[91/02/20            rpd]
[ ./kernel/sundev/kbio.h ]
Fixed ioctl definitions for ANSI C.
[91/02/20            rpd]
[ ./kernel/sundev/si.c ]
Replaced vm_map_find with vm_map_enter.
[91/03/14            rpd]
[ ./kernel/sundev/vuid_event.h ]
Fixed ioctl definitions for ANSI C.
[91/02/20            rpd]
[ ./kernel/sundev/xy.c ]
Removed non-MACH code.
[91/03/04            rpd]
[ ./kernel/sunif/if_ie.c ]
Updated for new kmem_alloc interface.
Removed non-MACH code.
[91/03/03            rpd]
Changed net_filter to net_packet.
[91/01/15            rpd]
[ ./kernel/sunif/if_le.c ]
Replaced vm_map_find with vm_map_enter.
[91/03/14            rpd]

Updated for new kmem_alloc interface.
Removed non-MACH code.
[91/03/03            rpd]
Changed net_filter to net_packet.
[91/01/15            rpd]
[ ./kernel/sys/ioctl.h ]
Fixed the definitions for ANSI C.
[91/02/20            rpd]
[ ./kernel/vax/ast.h ]
Updated for the new AST interface.
[91/03/13            rpd]
[ ./kernel/vax/autoconf.c ]
Updated for new kmem_alloc interface.
[91/03/03            rpd]
[ ./kernel/vax/biconf.c ]
Updated for new kmem_alloc interface.
[91/03/03            rpd]
[ ./kernel/vax/db_interface.c ]
Replaced db_nofault with db_recover.
[91/03/14            rpd]
[ ./kernel/vax/pcb.c ]
Added continuation argument to stack_attach.
[91/03/14            rpd]
[ ./kernel/vax/pmap.c ]
Updated for new kmem_alloc interface.
[91/03/03            rpd]
[ ./kernel/vax/trap.c ]
Hacked for AST interface changes.
[91/03/15            rpd]

Added resume, continuation arguments to vm_fault.
[91/03/13            rpd]
[ ./kernel/vaxif/if_ni.c ]
Updated for new kmem_alloc interface.
[91/03/03            rpd]
Changed net_filter to net_packet.
[91/01/15            rpd]
[ ./kernel/vaxif/if_uba.c ]
Changed net_filter to net_packet.
[91/01/15            rpd]
[ ./kernel/vaxuba/qd.c ]
Updated for new kmem_alloc interface.
[91/03/03            rpd]
[ ./kernel/vaxuba/qdioctl.h ]
Fixed ioctl definitions for ANSI C.
[91/02/20            rpd]
[ ./kernel/vaxuba/qv.c ]
Updated for new kmem_alloc interface.
Removed non-MACH, non-CMUCS, non-CMU code.
[91/03/03            rpd]
[ ./kernel/vaxuba/qvioctl.h ]
Fixed ioctl definitions for ANSI C.
[91/02/20            rpd]
[ ./kernel/vm/memory_object.c ]
Removed the old version of memory_object_data_provided.
[91/03/11            rpd]
Fixed memory_object_data_provided to return success
iff it consumes the copy object.
[91/02/10            rpd]
[ ./kernel/vm/vm_fault.c ]
Fixed vm_fault_page to give vm_pageout_page busy pages.
[91/03/11            rpd]
Added vm_fault_init, vm_fault_state_t.
[91/02/16            rpd]

Added resume, continuation arguments to vm_fault, vm_fault_page.
Added continuation argument to VM_PAGE_WAIT.
Added vm_fault_continue.
[91/02/05            rpd]
[ ./kernel/vm/vm_fault.h ]
Added vm_fault_init.
[91/02/16            rpd]
[ ./kernel/vm/vm_init.c ]
Added vm_fault_init.
[91/02/16            rpd]
[ ./kernel/vm/vm_kern.c ]
Fixed kmem_alloc_pages and kmem_remap_pages
to not hold locks across pmap_enter.
[91/03/11            rpd]
Added kmem_realloc.  Changed kmem_alloc, kmem_alloc_wired, and
kmem_alloc_pageable to return error codes.  Changed kmem_alloc
to not use the kernel object and to not zero memory.
Changed kmem_alloc_wired to use the kernel object.
[91/03/07  16:49:52  rpd]

Added resume, continuation arguments to vm_fault_page.
Added continuation argument to VM_PAGE_WAIT.
[91/02/05            rpd]
[ ./kernel/vm/vm_kern.h ]
Added kmem_realloc.  Changed kmem_alloc and friends
to return a kern_return_t.
[91/03/03            rpd]
[ ./kernel/vm/vm_map.c ]
Fixed vm_map_pmap_enter to activate loose pages after PMAP_ENTER.
[91/03/11            rpd]
Removed vm_map_find.
[91/03/03            rpd]
Fixed vm_map_entry_delete's use of vm_object_page_remove,
following dlb's report.
[91/01/26            rpd]
Picked up dlb's fix for vm_map_fork/VM_INHERIT_COPY of wired entries.
[91/01/12            rpd]
[ ./kernel/vm/vm_map.h ]
Removed vm_map_find.  Added vm_map_find_entry.
[91/03/03            rpd]
[ ./kernel/vm/vm_object.c ]
Changed vm_object_deactivate_pages and vm_object_terminate to
check for busy pages.  Changed how vm_object_terminate
interacts with the pageout daemon.
[91/03/12            rpd]
Fixed vm_object_page_remove to be smart about small regions.
[91/03/05            rpd]
Added resume, continuation arguments to vm_fault_page.
Added continuation argument to VM_PAGE_WAIT.
[91/02/05            rpd]
[ ./kernel/vm/vm_page.h ]
Added continuation argument to VM_PAGE_WAIT, vm_page_wait.
[91/02/05            rpd]
[ ./kernel/vm/vm_pageout.c ]
Modified vm_pageout_scan for further vm_page_deactivate changes.
Also changed it to ignore pages in dead objects.
[91/03/11            rpd]
Added vm_pageout_continue.
[91/01/20            rpd]
[ ./kernel/vm/vm_resident.c ]
Reverted to the previous version of vm_page_deactivate,
which doesn't look at the busy bit.  Changed vm_page_alloc
to not deactivate busy pages.
[91/03/11            rpd]

Fixed simple-locking typo.
[91/03/09            rpd]
Added continuation argument to vm_page_wait.
[91/02/05            rpd]
[ ./kernel/vm/vm_user.c ]
Removed temporary extra stats.
[91/02/10            rpd]
[ ./kernel/kern/counters.c ]
Created.
[91/03/13            rpd]
[ ./kernel/kern/counters.h ]
Created.
[91/03/13            rpd]
    
    
    
==========================================================================
   ***** MK Version MK44  (dbg) *****
    
    
New features:
--- --------

The kernel now runs on at least two multiprocessors: the Sequent (i386),
and R2D2 (Vax 8200).  The machine-independent portions of the kernel
should now be OK for multiprocessor work.

CPU_SUBTYPE_SYMMETRY is now defined.

[I386]	We now support the Sequent Symmetry i386 multiprocessor.  To build
	for the Sequent, specify "CONFIG=STD+SQT+32".  The config program
	now assumes that "MACHINE sqt" is a Symmetry: it uses the conf/*.i386
	files, not the (non-existent) conf/*.sqt files.

[VAX]	The Vax kernel can now be built with GCC: add '+gcc' to the
	configuration name.  However, getting a proper GCC for the VAX
	was difficult, since the GCC in the .gnu-comp collection does not
	talk correctly to CMU Make.
	
	To get the proper GCC compiler, you must set up your environment
	as follows:

 setpath -i0 /afs/cs/project/mach-7/release/vax_mach/latest;
 setenv GCC_EXEC_PREFIX /afs/cs/project/mach-7/release/vax_mach/latest/lib/gcc-
	(because GCC doesn't really look down LPATH for the compiler pieces).

	And the VAX assembler code is still built with the BSD assembler,
	because there are too many bugs in GAS.

	The VAX now uses Rich Draves' stack switching code.  This leaves only
	the SUN3 (soon to be decommissioned?) and the i860 defining
	KEEP_STACKS.

	(vm/vm_object.c tripped over a VAX GCC bug; I had to partially
	 rewrite one routine as a result.  vm_object_enter should be further
	 rewritten anyway to separate the internal and external cases, since
	 they have very little in common.)

Bug fixes:
--- -----

Network packets sent to multiple filters all have the correct packet size
(thanks, DPJ).

The control ports for all CPUs are now created when the system is started,
not when the CPU is started.  The old method gave the outside world no way
to talk to a CPU that hadn't been started yet.  The ports also remain when
the CPU is shut down.  (WARNING - the shutdown code doesn't work yet - it
will crash the system).

Volatile declarations have been added where needed.

Choose_pset_thread and its callers (thread_select) have been rewritten
to avoid confusing a pset with its runq (buggy C code).


[I386]	The floating-point code has been rewritten to always save the FPU
	state in memory on context switch.  It's slower, but there were
	two problems with the old method:
	1:	It's unknown what happens when the i386 switches
		mappings while the i387 has a store instruction
		(e.g. fbstp) in progress.  Where does the data go?
	2:	On a multiprocessor, we'd need interprocessor interrupts
		to fetch a thread's FP state from the CPU it last ran on.

	Exiting an interrupt routine correctly leaves processor interrupts
	disabled until the IRET instruction.
	
	The PMAP bug that would occasionally cause the machine to reboot
	has been fixed.  We now switch to the kernel's page directory
	at PMAP_DEACTIVATE, instead of leaving a dangling reference to
	a task page directory that may be about to vanish.

	The cthreads library now uses locking instructions to unlock locks.
	I'm not sure this is necessary for the Sequent, but it may be on
	other machines, depending on hwo they implement locking.

[VAX]	The ugly 'br' and 'cvec' global register variables have been moved
	to memory to accommodate GCC.
	
	The disassembler now correctly displays instructions using indexing.


Organizational changes:
-------------- -------

kern/lock.h now imports <machine/lock.h> when building for multiprocessors
(NCPUS > 1).  This is the place to put machine-specific definitions of
a simple_lock (e.g. for the HPPA), or GCC inline-assembler definitions of
simple_lock and simple_unlock.  The files exist for the VAX and I386.



[I386]	Files in the i386 directory are common to the various i386 machines:
	the PC-AT compatibles (i386at),
	the Intel Hypercube (i386ipsc),
	and the Sequent (sqt*).
	
	Code that differs from machine to machine has been moved to the
	machine-specific directories as much as possible.  This includes
	the assembly code to get bootup parameters (*/asm_startup.h),
	the C initialization and shutdown code (*/model_dep.c), and
	interrupt and SPL handling (*/interrupt.s, */spl.s).
	
	The i386 directory does contain code that is shared by the i386at
	and i386ipsc implementations.  This is interrupt-handling and timer
	code that runs on the Intel interrupt handler (8259) and timer (8254)
	chips that both of these machines use.  If (when?) I merge in support
	for the Corollary, it will also use these routines.

	Locore.s and friends are now built with normal Make rules.

	The 'makeboot' program is needed to fix the executable file for
	the Sequent, which uses a special magic number for kernel boot
	files.

[VAX]	Locore.s and friends are now built with normal Make rules.
	The initialization code in vax_init.c has been rewritten in assembler
	(vax_init.s).  It runs in physical mode, and tripped over GCC, which
	doesn't agree with PCC about what constructs generate PC-relative
	addresses (which would give physical addresses in this context) and
	which generate absolute addresses (which always give virtual addresses).

	The awk script for vaxfloat.sa has disappeared.  The file is now
	vaxfloat.s, and uses C preprocessor macros.

	When building with GCC, the inline program is no longer used.
	Various VAX header files now use the GCC inline assembler macros
	instead.  There is a global inline-substition file, vax/gcc_asm.h,
	which is included in every kernel file through some GCC tricks.


Special notes:
------- -----

The system should now be built and tested in the following configurations:

PMAX:	STD+ANY	(decstations)

I386:	STD+WS	(PC-compatible i386 boxes)
	STD+SQT+32	the Symmetry
	STD+NORMA+iPSC	the Intel Hypercube (NOT TESTED FOR THIS RELEASE)

VAX:	STD+VAX6bb+gcc	(microvaxen)
	STD+16+fixpri+VAX6bb+BI+de+gcc (R2D2)

SUN3:	STD+SWS

i860:	???



******** CUT HERE ******** summary of log messages ******** CUT HERE ********
[ ./conf/version.edit ]
44
[ ./kernel/conf/copyright ]
Change 'Carnegie' to 'Carnegie Mellon'.
[ ./kernel/conf/MASTER.i386 ]
Remove '-fno-function-cse' from compilation options - i386 never
used the 'inline' program.
[91/04/30            dbg]

Add Sequent.  Remove options files for CPU types.
Sequent includes SYS rules to make mach.boot from mach_kernel.
[91/04/26  14:25:14  dbg]
[ ./kernel/conf/MASTER.vax ]
Add definitions for gcc.
[91/03/21            dbg]
[ ./kernel/conf/Makefile.i386 ]
Add rules to build makeboot for the Sequent.
WARNING - CPATH is hardwired to /usr/include, and
the build line probably won't work if shadowing.
This will all be fixed if makeboot is used for all kernels.
[91/04/25            dbg]

Don't build locore with special rules.
[91/03/21            dbg]
[ ./kernel/conf/Makefile.vax ]
Build locore.o with normal Make rules.
Add rules for building kernel with GCC;
the configuration will select which rules to use.
Remove awk rule for building vaxfloat.s.
[91/04/23            dbg]
[ ./kernel/conf/files ]
Remove individual 'VOLATILE' switches, since 'VOLATILE' is
defined in the master Makefile.template.
[91/04/30            dbg]

Added 'VOLATILE' for kern/{machine,syscall_subr,thread}.c.
[91/03/21            dbg]
[ ./kernel/conf/files.i386 ]
Rearrange files to add Sequent and put model-dependent files in
model-dependent directories.  Build cswitch.s, locore.s, start.s
as standard files.
[91/04/26  14:28:46  dbg]
[ ./kernel/conf/files.vax ]
Build locore.s with normal rules; put first.
Build vaxfloat.s directly.
[91/04/23            dbg]

Change vax_init.c to vax_init.s.
[91/04/11            dbg]

Added FORCE_VOLATILE for gcc.
[91/03/21            dbg]
[ ./kernel/conf/newvers.sh ]
Added one more sed clause to deal with the "'s in the new 
copyright.
[91/05/07            mrt]
[ ./kernel/emul/vaxarith.s ]
Adapt for ANSI C preprocessor.
[91/04/23            dbg]
[ ./kernel/emul/vaxashp.s ]
Adapt for ANSI C preprocessor.
[91/04/23            dbg]
[ ./kernel/emul/vaxconvrt.s ]
Adapt for ANSI C preprocessor.
[91/04/23            dbg]
[ ./kernel/emul/vaxcvtlp.s ]
Adapt for ANSI C preprocessor.
[91/04/23            dbg]
[ ./kernel/emul/vaxcvtpl.s ]
Adapt for ANSI C preprocessor.
[91/04/23            dbg]
[ ./kernel/emul/vaxdeciml.s ]
Adapt for ANSI C preprocessor.
[91/04/23            dbg]
[ ./kernel/emul/vaxeditpc.s ]
Adapt for ANSI C preprocessor.
[91/04/23            dbg]
[ ./kernel/emul/vaxemul.h ]
Changed #define to .set for ANSI preprocessor - '$' isn't an
identifier character in ANSI C.
[91/04/23            dbg]
[ ./kernel/emul/vaxemulat.s ]
Adapt for ANSI C preprocessor.
[91/04/23            dbg]
[ ./kernel/emul/vaxexception.s ]
Adapt for ANSI C preprocessor.
[91/04/23            dbg]

Changes for MACH_KERNEL:
. Don't call _grow.
[89/05/02            dbg]
[ ./kernel/emul/vaxfloat.s ]
Adapt for ANSI C preprocessor.
Fixed set_op_types macro to eliminate awk script, and
moved file to emul/vaxfloat.s.
[91/04/25            dbg]
[ ./kernel/emul/vaxhandlr.s ]
Adapt for ANSI C preprocessor.
[91/04/23            dbg]
[ ./kernel/emul/vaxregdef.h ]
Changed #define to .set for ANSI preprocessor - '$' isn't an
identifier character in ANSI C.
[91/04/23            dbg]
[ ./kernel/emul/vaxstring.s ]
Adapt for ANSI C preprocessor.
[91/04/23            dbg]
[ ./kernel/i386/ast_check.c ]
Copied for i386.
[91/03/21            dbg]
[ ./kernel/i386/ast_types.h ]
Copied for i386.
[91/03/21            dbg]
[ ./kernel/i386/cpu_number.h ]
Created.
[91/03/21            dbg]
[ ./kernel/i386/cswitch.s ]
Put parentheses around substituted immediate expressions, so
that they will pass through the GNU preprocessor.

Handle multiple CPUs.  Save floating-point state when saving
context or switching stacks.  Add switch_to_shutdown_context to
handle CPU shutdown.
[91/03/21            dbg]
[ ./kernel/i386/fpu.c ]
Simplify.  Always store FP state on context switch.
1:	It's unknown what happens when the i386 switches
	mappings while the i387 has a store instruction
	(e.g. fbstp) in progress.  Where does the data go?
2:	On a multiprocessor, we'd need interprocessor interrupts
	to fetch a thread's FP state from the CPU it last ran on.
[91/04/26  14:34:04  dbg]
[ ./kernel/i386/gdt.c ]
Collapsed GDT again.
[91/04/26  14:34:34  dbg]
[ ./kernel/i386/genassym.c ]
Add definitions for multiprocessors and for Sequent Symmetry.
Change '#define' to '.set' to help fool GCC preprocessor.
[91/04/26  14:35:03  dbg]
[ ./kernel/i386/hardclock.c ]
Include sqt/intctl.h if building for Sequent.
[91/03/21            dbg]
[ ./kernel/i386/idt.s ]
Put parentheses around substituted immediate expressions, so
that they will pass through the GNU preprocessor.
[91/04/26  14:35:28  dbg]
[ ./kernel/i386/interrupt.s ]
Put parentheses around substituted immediate expressions, so
that they will pass through the GNU preprocessor.

Use cputypes.h.  Call version of set_spl that leaves interrupts
disabled (IF clear) until iret.
[91/04/26  14:35:53  dbg]
[ ./kernel/i386/iopb.c ]
Created.
[91/03/21            dbg]
[ ./kernel/i386/iopb.h ]
Created.
[91/03/21            dbg]
[ ./kernel/i386/lock.h ]
Created.
[91/03/21            dbg]
[ ./kernel/i386/locore.s ]
Put parentheses around substituted immediate expressions, so
that they will pass through the GNU preprocessor.

Handle multiple CPUS.
[91/04/26  14:36:46  dbg]
[ ./kernel/i386/mp_desc.c ]
Created.
[91/03/21            dbg]
[ ./kernel/i386/mp_desc.h ]
Created.
[91/03/21            dbg]
[ ./kernel/i386/pcb.c ]
Use iopb_tss_t for IO permission bitmap.
[91/03/21            dbg]
[ ./kernel/i386/phys.c ]
More cleanup.
[91/03/21            dbg]
[ ./kernel/i386/pic.c ]
Use cputypes.h for CPU names.
[91/04/26  14:37:37  dbg]
[ ./kernel/i386/pic.h ]
Use cputypes.h to get CPU names.
[91/03/21            dbg]
[ ./kernel/i386/proc_reg.h ]
Created.
[91/03/21            dbg]
[ ./kernel/i386/seg.h ]
Added USER_TSS for TSS that holds IO permission bitmap.
Removed space for descriptors 8..38.
Added real_descriptor, real_gate, sel_idx.
[91/04/26  14:38:07  dbg]
[ ./kernel/i386/setroot.c ]
Include cputypes.h to get CPU names.
[91/03/21            dbg]
[ ./kernel/i386/spl.s ]
Put parentheses around substituted immediate expressions, so
that they will pass through the GNU preprocessor.

Add set_spl_noi to reset PIC masks but leave interrupts disabled
(IF clear).
[91/04/26  14:38:31  dbg]
[ ./kernel/i386/start.s ]
Put parentheses around substituted immediate expressions, so
that they will pass through the GNU preprocessor.

Moved model-specific code to machine-dependent directories.
Added startup code for multiple CPUs.
[91/04/26  14:38:55  dbg]
[ ./kernel/i386/thread.h ]
Change ktss to iopb_tss in pcb.
[91/04/26  14:39:10  dbg]
[ ./kernel/i386/trap.c ]
Correct calls to FPU error routines.
[91/04/26  14:39:33  dbg]
[ ./kernel/i386/tss.h ]
Protect against multiple includes.
[91/04/26  14:39:49  dbg]
[ ./kernel/i386at/asm_startup.h ]
Created (from old i386/start.s).
[91/04/26  14:40:03  dbg]
[ ./kernel/i386at/kd.c ]
Create and destroy io_port sets to map IO ports into user
threads.
[91/04/26  14:40:17  dbg]
[ ./kernel/i386at/model_dep.c ]
Initialization for i386 AT bus machines only.
Combine code that was in i386/init.c and i386/i386_init.c.
[91/04/26  14:40:43  dbg]
[ ./kernel/i386ipsc/asm_startup.h ]
Created (from old i386/start.s).
[91/04/26  14:40:58  dbg]
[ ./kernel/i386ipsc/model_dep.c ]
Initialization for iPSC only.
Add code that was in i386/init.c.
Add pmap_valid_page.
[91/04/26  14:41:16  dbg]
[ ./kernel/intel/pmap.c ]
Add volatile declarations where needed.
Move pmap_valid_page to model_dependent file.
[91/04/26  14:41:31  dbg]
[ ./kernel/intel/pmap.h ]
Add volatile declarations.  Load CR3 when switching to kernel
pmap in PMAP_ACTIVATE_USER.  Fix PMAP_ACTIVATE_KERNEL.
[91/04/26  14:41:54  dbg]
[ ./kernel/kern/ast.c ]
Add volatile declarations where needed.
[91/04/18            dbg]

Add missing argument to ast_on in assign/shutdown case.
[91/03/21            dbg]
[ ./kernel/kern/lock.h ]
When actually using the locks (on multiprocessors), import the
machine-dependent simple_lock routines from machine/lock.h.
[91/04/26  14:42:23  dbg]
[ ./kernel/kern/machine.c ]
Add volatile declarations.

Preserve the control port for a processor when shutting
it down.
[91/04/26  14:42:42  dbg]
[ ./kernel/kern/processor.c ]
Changed pset_sys_init to give each processor a control port,
even when it is not running.  Without a control port, there is
no way to start an inactive processor.
[91/04/26  14:42:59  dbg]
[ ./kernel/kern/queue.c ]
Compile queue routines on vax.
[91/03/26            dbg]
[ ./kernel/kern/sched_prim.c ]
Distinguish processor sets from run queues in choose_pset_thread!
Remove (long dead) 'someday' code.
[91/04/26  14:43:26  dbg]
[ ./kernel/kern/syscall_subr.c ]
Add volatile declarations.
Removed history for non-existent routines.
[91/04/26  14:43:58  dbg]
[ ./kernel/kern/thread.c ]
Add volatile declarations.
[91/04/26  14:44:13  dbg]
[ ./kernel/mach/machine.h ]
Add CPU_SUBTYPE_SYMMETRY.
[91/04/26  14:44:44  dbg]
[ ./kernel/sqt/SGSmem.h ]
Added, from Sequent SYMMETRY sources.
[91/04/26  14:45:32  dbg]
[ ./kernel/sqt/SGSproc.h ]
Added, from Sequent SYMMETRY sources.
[91/04/26  14:45:57  dbg]
[ ./kernel/sqt/_boot.s ]
Created.
[91/04/26  14:46:24  dbg]
[ ./kernel/sqt/asm_macros.h ]
Created from Sequent file.
[91/04/26  14:46:43  dbg]
[ ./kernel/sqt/asm_startup.h ]
Created.
[91/04/26  14:47:07  dbg]
[ ./kernel/sqt/autoconf.c ]
Adapted for pure Mach kernel.  No conditionals.  Removed ns32000
and KXX support.
[91/04/26  14:47:41  dbg]
[ ./kernel/sqt/bdp.h ]
Added from Sequent SYMMETRY sources.
[91/04/26  14:48:02  dbg]
[ ./kernel/sqt/bic.h ]
Added from Sequent SYMMETRY sources.
[91/04/26  14:48:22  dbg]
[ ./kernel/sqt/buscycles.h ]
Added, from Sequent SYMMETRY sources.
[91/04/26  14:48:45  dbg]
[ ./kernel/sqt/cfg.h ]
Added, from Sequent SYMMETRY sources.
[91/04/26  14:49:10  dbg]
[ ./kernel/sqt/chiptypes.h ]
Added, from Sequent SYMMETRY sources.
[91/04/26  14:49:30  dbg]
[ ./kernel/sqt/clkarb.h ]
Added, from Sequent SYMMETRY sources.
[91/04/26  14:49:49  dbg]
[ ./kernel/sqt/clock.c ]
Adapted from Sequent Symmetry sources.
[91/04/26  14:50:24  dbg]
[ ./kernel/sqt/clock.h ]
Added, from Sequent SYMMETRY sources.
[91/02/26            dbg]
[ ./kernel/sqt/consio.c ]
Adapted from Sequent SYMMETRY sources.
[91/04/26  14:51:09  dbg]
[ ./kernel/sqt/engine.h ]
Adapted from Sequent SYMMETRY sources.
[91/04/26  14:51:36  dbg]
[ ./kernel/sqt/hwparam.h ]
Added, from Sequent SYMMETRY sources.
[91/04/26  14:51:55  dbg]
[ ./kernel/sqt/intctl.h ]
Converted for pure kernel and GCC.
[91/04/26  14:52:18  dbg]
[ ./kernel/sqt/interrupt.s ]
Put parentheses around substituted immediate expressions, so
that they will pass through the GNU preprocessor.
[91/01/31            dbg]

Converted (interrupt handlers only) for pure kernel.
Use Mach Kernel interrupt sequence, not Dynix.
[90/05/02            dbg]
[ ./kernel/sqt/ioconf.h ]
Adapted for pure Mach kernel.
[91/04/26  14:53:25  dbg]
[ ./kernel/sqt/macros.h ]
Created.
[91/04/26  14:53:43  dbg]
[ ./kernel/sqt/memory.c ]
Adapted for pure Mach kernel.
[91/04/26  14:54:06  dbg]
[ ./kernel/sqt/misc.s ]
Converted for pure kernel.
[90/05/02            dbg]
[ ./kernel/sqt/model_dep.c ]
Each CPU calls mp_desc_init on its own.
[91/02/13            dbg]

Add pmap_valid_page.
[91/01/17            dbg]

Altered for pure kernel.
Created from pieces of sqt/machdep.c and sqt/startup.c.
[90/10/03            dbg]
[ ./kernel/sqt/mutex.h ]
Adapted for pure kernel.  Removed gate code, since Symmetry
doesn't use it.  Re-implemented Dynix semaphores.
[90/09/24            dbg]
[ ./kernel/sqt/mutex.s ]
Use entire word for lock to match lock primitives.
[91/02/05            dbg]

Put parentheses around substituted immediate expressions, so
that they will pass through the GNU preprocessor.
[91/01/31            dbg]

Adapted for pure kernel.
[90/09/24            dbg]
[ ./kernel/sqt/sema.c ]
Created.
[91/04/26  14:56:44  dbg]
[ ./kernel/sqt/setconf.c ]
Adapted for pure Mach kernel.
[90/10/09            dbg]
[ ./kernel/sqt/slic.c ]
Adapted for pure Mach kernel.
[90/10/03            dbg]
[ ./kernel/sqt/slic.h ]
Added volatile declarations.
[90/11/13            dbg]

Adapted for pure Mach kernel.  I386 SGS processors only.
[90/10/02            dbg]
[ ./kernel/sqt/slicreg.h ]
Added, from Sequent SYMMETRY sources.
[91/02/26            dbg]
[ ./kernel/sqt/spl.s ]
Fix SPL levels to match reality.
[91/02/14            dbg]

Put parentheses around substituted immediate expressions, so
that they will pass through the GNU preprocessor.
[91/01/31            dbg]

Adapted for pure Mach kernel.
[90/10/02            dbg]
[ ./kernel/sqt/sqtasm.h ]
Changes for pure kernel.
[90/05/02            dbg]
[ ./kernel/sqt/sqtparam.h ]
Adapted from Sequent SYMMETRY sources.
[91/04/26  15:00:13  dbg]
[ ./kernel/sqt/stubs.c ]
Created.
[91/04/26  15:00:31  dbg]
[ ./kernel/sqt/trap.h ]
Added, from Sequent SYMMETRY sources.
[91/02/26            dbg]
[ ./kernel/sqt/vm_defs.h ]
Make KVTOPHYS use kvtophys to avoid locking kernel pmap.
[91/02/14            dbg]

Move cpu-local mappings (slic, leds, elapsed-time counter) to
level 1 page just below FPA.
[90/12/17            dbg]

Rewrote for pure Mach kernel.  Kernel is no longer mapped 1-1
with physical memory.
[90/09/27            dbg]
[ ./kernel/sqtconf/conf.c ]
Created.
[90/10/04            dbg]
[ ./kernel/sqtconf/conf_co.c ]
Adapted for pure Mach kernel.
[91/04/26  15:02:33  dbg]
[ ./kernel/sqtconf/conf_if_se.c ]
Adapted for pure Mach kernel.
[90/10/05            dbg]
[ ./kernel/sqtconf/conf_led.c ]
Adapted for pure Mach kernel.
[90/10/03            dbg]
[ ./kernel/sqtconf/conf_sd.c ]
Adapted for pure Mach kernel.
[90/10/04            dbg]
[ ./kernel/sqtconf/conf_vec.c ]
Added, from Sequent SYMMETRY sources.
[91/02/26            dbg]
[ ./kernel/sqtconf/conf_zd.c ]
Adapted for pure Mach kernel.
[90/10/05            dbg]
[ ./kernel/sqtconf/sqt_io_conf.c ]
Adapted for pure Mach kernel.
[90/10/03            dbg]
[ ./kernel/sqtconf/sqtparam.c ]
Adapted for pure Mach kernel.
[90/10/03            dbg]
[ ./kernel/sqtmbad/ioconf.h ]
Added, from Sequent SYMMETRY sources.
[91/02/26            dbg]
[ ./kernel/sqtsec/co.c ]
Added cn routines for kernel debugger input.
[90/11/16            dbg]

Adapted for pure kernel.
[90/09/24            dbg]
[ ./kernel/sqtsec/co.h ]
Added volatile declarations.
[91/03/25            dbg]

Added output buffer since Mach kernel circular buffers are not
within SCED-addressable space (lowest 4 Meg).
[90/12/18            dbg]

Adapted for pure kernel.
[90/09/24            dbg]
[ ./kernel/sqtsec/if_se.c ]
Changed net_filter to net_packet.

MACH_KERNEL conversion.
Added volatile declarations.
[91/03/22            dbg]
[ ./kernel/sqtsec/if_se.h ]
MACH_KERNEL conversion.
[90/10/05            dbg]
[ ./kernel/sqtsec/ioconf.h ]
Added, from Sequent SYMMETRY sources.
[91/02/26            dbg]
[ ./kernel/sqtsec/scsi.h ]
Added, from Sequent SYMMETRY sources.
[91/02/26            dbg]
[ ./kernel/sqtsec/sd.c ]
Added volatile declarations.
[91/03/25            dbg]

Adapted for pure kernel.  No conditionals.
[90/09/24            dbg]
[ ./kernel/sqtsec/sd.h ]
Adapted for pure Mach kernel.
[90/10/04            dbg]
[ ./kernel/sqtsec/sec.c ]
Added volatile declarations.  Distribute interrupts to any CPU.
[91/03/25            dbg]

Adapted for pure kernel.
[90/09/24            dbg]
[ ./kernel/sqtsec/sec.h ]
Added volatile declarations.
[90/11/13            dbg]

Adapted for pure Mach kernel.
[90/10/04            dbg]
[ ./kernel/sqtsec/sec_ctl.h ]
Added, from Sequent SYMMETRY sources.
[91/02/26            dbg]
[ ./kernel/sqtzdc/ioconf.h ]
Added, from Sequent SYMMETRY sources.
[91/02/26            dbg]
[ ./kernel/sqtzdc/zd.c ]
Changes for new kmem_alloc interface.

Adapted for pure Mach kernel.
[91/03/22            dbg]
[ ./kernel/sqtzdc/zdbad.h ]
Adapted for pure Mach kernel.
[90/10/04            dbg]
[ ./kernel/sqtzdc/zdc.h ]
Adapted for pure Mach kernel.
[90/10/04            dbg]
[ ./kernel/sqtzdc/zdinit.c ]
Added volatile declarations.
Allowed interrupts on any CPU.
[91/03/25            dbg]

Adapted for pure Mach kernel.
[90/10/04            dbg]
[ ./kernel/src/config/config.y ]
'MACHINE sqt' defines machine as "SQT" but leaves machinename as
"i386".  We only support the Sequent SYMMETRY, which shares code
with the ATbus-based i386 configurations.
[91/03/21            dbg]
[ ./kernel/src/config/mkioconf.c ]
Fix sqt_ioconf to allow wildcards in sec devices and change
location of ioconf.h.
[91/03/21            dbg]
[ ./kernel/src/makeboot/Makefile ]
Created.
[90/10/01            dbg]
[ ./kernel/src/makeboot/build_boot.c ]
Created.
[91/02/26            dbg]
[ ./kernel/src/makeboot/loader_info.h ]
Version for build_boot.  Removed function declarations and format.
Added sym_offset, sym_size, str_size.
[90/11/20            dbg]
[ ./kernel/vax/asm.h ]
Convert for ANSI C.
[91/04/23            dbg]
[ ./kernel/vax/ast.h ]
Import mtpr and AST register definitions from mtpr.h.
[91/03/21            dbg]
[ ./kernel/vax/ast_check.c ]
Changed to new copyright.
[91/04/25            dbg]
[ ./kernel/vax/ast_types.h ]
Changed to new copyright.
[91/04/25            dbg]
[ ./kernel/vax/autoconf.c ]
Move br and cvec (Unibus probe variables) to memory.
[91/03/26            dbg]

Remove 'static' from csralloc (gcc fix).
Zero the Unibus allocation map.
[91/03/21            dbg]
[ ./kernel/vax/bi_node.h ]
Changed to new copyright.
[91/04/25            dbg]
[ ./kernel/vax/biconf.c ]
Include vax/machparam.h for SPL definitions.
[91/03/21            dbg]
[ ./kernel/vax/cca.h ]
Changed to new copyright.
[91/04/26  15:13:40  dbg]
[ ./kernel/vax/clock.c ]
Include vax/machparam.h for SPL definitions.
[91/03/21            dbg]
[ ./kernel/vax/conf.c ]
Changed to new copyright.
[91/04/25            dbg]
[ ./kernel/vax/cons.c ]
Fix CTRL macro for standard C.
Ensure that vax_maygetc always restores SPL.
[91/04/19            dbg]

Include vax/machparam.h for SPL definitions.
[91/03/21            dbg]
[ ./kernel/vax/cpmbx.h ]
Changed to new copyright.
[91/04/26  15:14:22  dbg]
[ ./kernel/vax/cpu_data.c ]
Changed to new copyright.
[91/04/25            dbg]
[ ./kernel/vax/cpu_data.h ]
Remove cast from SYSTYPE to use in assembler code.
[91/04/12            dbg]
[ ./kernel/vax/cpu_number.h ]
Added inline assembler definition for GCC.
[91/03/21            dbg]
[ ./kernel/vax/db_disasm.c ]
Re-fetch base register from operand specifier after finding
index register.
[91/04/25            dbg]
[ ./kernel/vax/db_interface.c ]
Pass regs structure directly to kdb_trap.
[91/03/21            dbg]
[ ./kernel/vax/db_machdep.h ]
Changed to new copyright.
[91/04/25            dbg]
[ ./kernel/vax/db_trace.c ]
Add stack_switching support.
[91/03/06            dbg]
[ ./kernel/vax/dfloat.s ]
Fix for ANSI C preprocessor.
[91/04/23            dbg]
[ ./kernel/vax/gcc_asm.h ]
Take this file seriously.
[91/03/26            dbg]
[ ./kernel/vax/genassym.c ]
Changes for kernel stack switching.
Undefine 'volatile'.
[91/03/21            dbg]
[ ./kernel/vax/ka6200.c ]
Include vax/machparam.h for SPL definitions.
[91/03/21            dbg]

Mangled for MACH_KERNEL.
[88/11/16            dbg]
[ ./kernel/vax/ka6200.h ]
Changed to new copyright.
[91/04/25            dbg]
[ ./kernel/vax/ka650.c ]
Add forward declarations (gcc fix).
[91/03/21            dbg]
[ ./kernel/vax/ka650.h ]
Changed to new copyright.
[91/04/26  15:16:17  dbg]
[ ./kernel/vax/ka820.c ]
Ignore BI-error machine checks while configuring system (they
may arise from BI bus resets).
[91/04/19            dbg]
[ ./kernel/vax/ka820.h ]
Changed to new copyright.
[91/04/26  15:16:49  dbg]
[ ./kernel/vax/ka8600.c ]
Fix inline assembler code for GNU C.
[91/04/25            dbg]
[ ./kernel/vax/lock.h ]
Created.
[91/03/21            dbg]
[ ./kernel/vax/locore.s ]
Include rpb, scb, ubvec, ubglue explicitly.
[91/04/23            dbg]

Move initialization code to vax_init.s.
[91/04/11            dbg]

Move br and cvec to memory.
[91/03/26            dbg]

Stack switching support.
[91/03/21            dbg]
[ ./kernel/vax/machparam.h ]
Add inline definitions for GCC.
[91/03/21            dbg]
[ ./kernel/vax/model_dep.c ]
Add memory and CPU configuration declarations that had
been in vax_init.c.  Call pmap_bootstrap here.
[91/04/11            dbg]

Add volatile declarations where needed.
[91/03/28            dbg]

Call pcb_module_init.
Include vax/machparam.h for SPL definitions.
[91/03/21            dbg]
[ ./kernel/vax/mscp.c ]
Make Chris Torek's mscp definitions (mscp_umd) standard.
Eliminate NET_UDA conditional.
[91/04/26            dbg]

Include vax/machparam.h for SPL definitions.
[91/03/21            dbg]
[ ./kernel/vax/mscp.h ]
Replaced with free version from Berkeley Tahoe release.
[91/04/26            dbg]
[ ./kernel/vax/mscpvar.h ]
Use new copyright.
[91/04/26            dbg]
[ ./kernel/vax/mtpr.h ]
Add inline assembler definitions for GCC.
[91/02/19            dbg]
[ ./kernel/vax/pcb.c ]
Support for stack switching.
[91/03/21            dbg]
[ ./kernel/vax/phys.s ]
Fix for ANSI C preprocessor.
[91/04/23            dbg]

Save and restore page table entries, rather than
using interrupt protection.
[89/07/09            mwyoung]
[ ./kernel/vax/pmap.c ]
Move page-table initialization code to vax_init.s (in
assembler).  GCC and PCC disagree on whether various C
constructs generate PC-relative addresses (physical) or absolute
addresses (virtual).
[91/04/11            dbg]

Add volatile declarations.
[91/03/28            dbg]

Fix pmap_map to not set bits in cpus_active.  Master_cpu is not
set yet.

Include vax/machparam.h for SPL definitions.
[91/03/21            dbg]
[ ./kernel/vax/pmap.h ]
Add volatile declarations.
[91/03/28            dbg]

Changes for discarding kernel stacks.  VAX hardware PCB is gone.
[91/03/21            dbg]
[ ./kernel/vax/scb.s ]
Adapt for ANSI C.
[91/04/23            dbg]
[ ./kernel/vax/setroot.c ]
Move root_name string out of text segment (for standard C).
[91/04/16            dbg]
[ ./kernel/vax/stubs.c ]
Added a real routine: strlen.
[91/03/26            dbg]
[ ./kernel/vax/thread.h ]
Support stack switching.
Add inline assembler definition for current_thread and
load_context.
[91/03/21            dbg]
[ ./kernel/vax/trap.c ]
Add stack switching support.
Add user_page_fault_continue.
[91/03/21            dbg]
[ ./kernel/vax/vax_init.s ]
Created.
[91/04/11            dbg]
[ ./kernel/vax/watch_chip.c ]
Include vax/machparam.h for SPL definitions.
[91/03/21            dbg]
[ ./kernel/vax/watch_chip.h ]
Added volatile declarations.
[91/03/28            dbg]
[ ./kernel/vaxif/if_de.c ]
Added volatile declarations.  Moved br and cvec to memory.
[91/03/26            dbg]

Include vax/machparam.h for SPL definitions.
[91/03/20            dbg]
[ ./kernel/vaxif/if_dereg.h ]
Added volatile declarations.
[91/03/26            dbg]
[ ./kernel/vaxif/if_ni.c ]
Added inline definitions for insqti, remqhi.
[91/03/27            dbg]

Include vax/machparam.h for SPL definitions.
[91/03/20            dbg]
[ ./kernel/vaxif/if_nireg.h ]
Added volatile declarations.
[91/03/27            dbg]
[ ./kernel/vaxif/if_qe.c ]
Add volatile declarations.  Moved br/cvec to memory.
[91/03/26            dbg]

Include vax/machparam.h for SPL definitions.
[91/03/20            dbg]
[ ./kernel/vaxif/if_qereg.h ]
Added volatile declarations.
[91/03/26            dbg]
[ ./kernel/vaxuba/dz.c ]
Move br and cvec to memory.
[91/03/26            dbg]
[ ./kernel/vaxuba/qd.c ]
Remove stale or lint-full code (mostly in #if !MACH)
[91/04/19            dbg]

Move br and cvec to memory.
[91/03/26            dbg]

Include vax/machparam.h for SPL definitions.
[91/03/20            dbg]
[ ./kernel/vaxuba/qdreg.h ]
Added volatile declarations.
[91/04/19            dbg]
[ ./kernel/vaxuba/qduser.h ]
Added volatile declarations.
[91/04/19            dbg]
[ ./kernel/vaxuba/qv.c ]
Move br and cvec to memory.
[91/03/26            dbg]

Include vax/machparam.h for SPL definitions.
[91/03/20            dbg]
[ ./kernel/vaxuba/qvreg.h ]
Added volatile declarations.
[91/04/19            dbg]
[ ./kernel/vaxuba/rk.c ]
Move br and cvec to memory.
[91/03/26            dbg]
[ ./kernel/vaxuba/uba.c ]
Include vax/machparam.h for SPL definitions.
[91/03/20            dbg]
[ ./kernel/vaxuba/ubareg.h ]
Added volatile declarations.
[91/03/26            dbg]
[ ./kernel/vaxuba/uda_umd.c ]
Use free MSCP definition from Berkeley Tahoe release.
[91/04/26            dbg]

Add volatile declarations.
[91/04/16            dbg]

Move br and cvec to memory.
[91/03/26            dbg]

Include vax/machparam.h for SPL definitions.
Use todr() function to get pseudo time-of-day register.
[91/03/20            dbg]
[ ./kernel/vaxuba/udareg_umd.h ]
Add volatile declarations.
[91/04/16            dbg]
[ ./kernel/vm/vm_object.c ]
Rearrange initialization code in vm_object_enter to clearly
separate 'internal' case (and to avoid a vax GCC bug).
[91/04/17            dbg]
[ ./user/Makeconf ]
Define MKREL to simplify paths.
[91/03/20            dbg]
[ ./user/threads/i386/csw.s ]
Unlock lock with a locked instruction (xchg).
[91/03/20            dbg]
[ ./user/threads/i386/cthread_inline.awk ]
Unlock lock with a locked instruction (xchg).
[91/03/20            dbg]
[ ./user/threads/i386/lock.s ]
Unlock lock with a locked instruction (xchg).
[91/03/20            dbg]
[ ./kernel/emul/vaxfloat.awk ]
Defunct
[ ./kernel/emul/vaxfloat.sa ]
Defunct
[ ./kernel/i386/i386_init.c ]
Defunct
[ ./kernel/i386/init.c ]
Defunct
[ ./kernel/vax/mscp_umd.h ]
Defunct
[ ./kernel/vax/vax_init.c ]
Defunct
[ ./Directories/ALL ]
Add Sequent directories.  Fix copyright.
[91/05/08            dbg]
[ ./Directories/sqt ]
Created.
[91/05/08            dbg]
[ ./kernel/device/net_io.c ]
Don't forget to copy the packet size when duplicating a packet
for multiple filters in net_filter().
[91/05/09            dpj]
    
    
    
==========================================================================
   ***** MK Version MK45  (af) *****
    
    

Mostly fixes and extensions for PMAX (scsi driver & co).
CMU&CMUCS Cleanup rerun.

New features:
--- --------

[PMAX]
SCSI driver much improved: does disconnect/reconnect, handles more device
types (tk50 and Exabyte tapes, CD-ROMS, many more disks including the HP 1Gb),
does automatic bad-block replacement, handles powering on/off devices
gracefully (3max only), watchdog to guard against bus lockups (hitachi),
many configuration options, extremely pipelined copy operations (esp
fast are WRITEs on 3max) and double-buffering which makes it much faster
than .. competitors :-)

Added new copy routine that speeds up aligned copy operations, used
by the SCSI driver and the pmap module.

Made modem control code optional, so that 3max can use serial lines without
contortions.

You can use the mouse with emacs with the console terminal emulator.


Bug fixes:
--- -----

[PMAX]
Fixed multibyte commands to the keyboard, and the mouse lazyness.

Fixed re-enabling of interrupts on exception returns to kernel.

Fixed dispatching of interrupts to only handle one interrupt at a time,
to make sure we do not handle the same interrupt twice or worse yet
reenter an interrupt handling routine.  Old code kept, disabled.

Organizational changes:
-------------- -------

Got rid once and forall of the "CMU" and "CMUCS" conditionals.

Special notes:
------- -----

Built for:

PMAX:	STD+ANY						check

I386:	STD+WS	(PC-compatible i386 boxes)		check
	STD+SQT+32	the Symmetry			check
	STD+NORMA+iPSC	the Intel Hypercube		check

VAX:	STD+VAX6bb					check
	STD+VAX6bb+gcc	(microvaxen)			check
	STD+16+fixpri+VAX6bb+BI+de+gcc (R2D2)		check

SUN3:	STD+SWS 					check


Tested on PMAX only, there where no major MI changes.

******** CUT HERE ******** summary of log messages ******** CUT HERE ********
[ ./conf/version.edit ]
45
[ ./kernel/conf/MASTER ]
Rid of the "CMU" conditional once and forall.
[91/05/12  15:43:10  af]
[ ./kernel/conf/MASTER.local ]
Rid of the "CMU" conditional once and forall.
[91/05/12  15:43:59  af]
[ ./kernel/conf/MASTER.mips ]
Define explicitly how many scsi busses we config, which is
two for PMAX: the SII and the ASC.
[91/05/12  15:45:34  af]
[ ./kernel/conf/files.mips ]
Added bad-block replacent code for scsi driver.
[91/05/12  15:44:37  af]
[ ./kernel/device/blkio.c ]
Do not trim io_count to DEV_BSIZE, we know how to cope
and this is used for tapes also [which might be block
devices or not, depends].
[91/05/12  15:48:48  af]
[ ./kernel/device/device_types.h ]
Added D_READ_ONLY.
[91/05/12  15:47:28  af]
[ ./kernel/device/disk_status.h ]
Created, starting from Reno's disklabel.h (copyright included).
[91/05/03            af]
[ ./kernel/device/io_req.h ]
Added IO_INTERNAL, for use when an io_request packet is used
just for synchronization purposes.
[91/03/11            af]
[ ./kernel/device/tape_status.h ]
Modified tape_status structure to hold more info
either way.  Added flags field to hold special
behavioural properties such as rewind-on-close.
[91/05/12            af]
[ ./kernel/i386at/if_3c501.c ]
Made code under CMUCS standard.
[91/05/12  15:50:59  af]
[ ./kernel/i386at/if_ns8390.c ]
Made code under CMUCS standard.
[91/05/12  15:50:35  af]
[ ./kernel/i386at/if_pc586.c ]
Made code under CMUCS standard.
[91/05/12  15:50:10  af]
[ ./kernel/inline/inline.h ]
Made code under CMU standard.
[91/05/12  15:52:19  af]
[ ./kernel/inline/main.c ]
Made code under CMU standard.
[91/05/12  15:52:01  af]
[ ./kernel/mach/mips/asm.h ]
Added author note.
[91/05/12  15:55:29  af]
[ ./kernel/mach/mips/boolean.h ]
Added author note.
[91/05/12  15:55:14  af]
[ ./kernel/mach/mips/exception.h ]
Added author note.
[91/05/12  15:54:58  af]
[ ./kernel/mach/mips/mips_instruction.h ]
Added author note.
[91/05/12  15:54:42  af]
[ ./kernel/mach/mips/syscall_sw.h ]
Added author note.
[91/05/12  15:54:25  af]
[ ./kernel/mach/mips/thread_status.h ]
Added author note.
[91/05/12  15:54:03  af]
[ ./kernel/mips/PMAX/compat_30.h ]
Created.
[91/05/12  16:02:24  af]
[ ./kernel/mips/PMAX/dz_hdw.c ]
Made use of modem control code optional: patch dz_uses_modem_control
if you need it, or call dz_set_modem_control().
[91/05/12  16:06:26  af]
[ ./kernel/mips/PMAX/dz_tty.c ]
Added dz_input(), factoring some code out of dz_rint().
Now one can fake input easily, which I use for the
terminal emulator to generate escape sequence when
the mouse is clicked [non-X11 mode].
[91/04/09            af]
[ ./kernel/mips/PMAX/kn01.c ]
It turns out one has to wait for all writes to complete before
reading back from the SII scsi buffer.  Odd size transfers would
sometimes clobber the next-byte-up into 0xff, now we do it right.
[91/05/12  16:06:58  af]
[ ./kernel/mips/PMAX/lk201.c ]
Added proper spl() protection around multibyte commands.
[91/05/12  16:07:16  af]
[ ./kernel/mips/PMAX/mouse.c ]
Generate escape sequences for mouse cursor motion, same as
xterm.  Needs some more trim work.
[91/05/12  16:08:19  af]
[ ./kernel/mips/PMAX/rz.c ]
Use a longer timeout on opens (exabytes are so slooooow to
get ready).  If we are still rewinding the tape make open
fail.  Start watchdog on first open, for those adapters
that need it.  Ask for sense data when unit does not
come online quickly enough. On close, invoke anything
target-specific that needs to.
[91/05/12  16:04:29  af]
[ ./kernel/mips/PMAX/rz.h ]
Redefined naive macro names to avoid conflicts.
[91/05/12  16:08:55  af]
[ ./kernel/mips/PMAX/rz_disk.c ]
Revision 2.6.1.2  91/04/05  13:08:43  af
Fixed a type declaration, now an HBA with unlimited DMA
capability sez so by setting the max_dma_size to -1.

Revision 2.6.1.1  91/03/29  17:03:03  af
Use long forms of read/write commands on disks bigger than 1Gb,
which we automatically recognize from the read_capacity.
Allocate io_req_t records properly.
Check for transactions that aborted due to scsi bus resets.
Issue a request_sense on bad transactions, log soft errors
and only make fail bad errors.
[91/05/12  16:03:45  af]
[ ./kernel/mips/PMAX/rz_disk_bbr.c ]
Created.
[91/04/30            af]
[ ./kernel/mips/PMAX/rz_labels.h ]
Moved BSD/OSF1 stuff elsewhere, and the copyright that goes with
it.
[91/05/03            af]
[ ./kernel/mips/PMAX/scsi.c ]
Added flags to control use of disconnect-reconnect mode.
Added device-specific close routine (for tapes).
Wait for start_unit to complete properly and tell the user
what we are waiting for.
[91/05/12  16:21:16  af]
[ ./kernel/mips/PMAX/scsi2.h ]
Added read_defect_data.
[91/05/12  16:02:41  af]
[ ./kernel/mips/PMAX/scsi_53C94.h ]
Added asc_rfb register define, unused actually.
Use DMA for of nop for dma count loading.
Define macro to tell if command is a selection.
Move bus phase definitions in HBA-indep file.
[91/05/12  16:12:47  af]
[ ./kernel/mips/PMAX/scsi_53C94_hdw.c ]
Added support for dynamically powering on/off devices.
Added faster, extremely pipelined WRITEs.  And some more.

Added disconnect-reconnect capability.
Also: avoid thread_block()ing, cleaned up and compacted scripts,
added much more debugging support including nice traces and stats,
support disks larger than 1Gb, schedule scsi bus properly by
queueing up request from multiple targets in FIFO order,
do request_sense on bad status, uncovered some more misteries,
made the no_synchronous option work by negotiating a zero value
for the sync offset. Pretty close to a full rewrite.
[91/05/12  16:15:14  af]
[ ./kernel/mips/PMAX/scsi_7061.h ]
Moved bus phase defs in HBA-indep file.
[91/05/12  16:15:42  af]
[ ./kernel/mips/PMAX/scsi_7061_hdw.c ]
Removed restriction on max read/write xfers, with noticeable
performance benefits.
Handle odd-byte-boundary conditions, unified dma_out routine,
removed useless counters but kept a watchout on sii_wait,
Added functions to copy data more carefully between main
memory and the sii buffer, added back (sigh) sii_err_phase_mismatch
to cope with bogus no-init-to-prom problem [I know it just screws
the fifo, but how can I clean it ?].

Fixed one more race in sii_dosynch().

Added disconnect-reconnect capability.  Tapes work.
Also:  added watchdog() to cope with hitachi disk problems,
rid of thread_block()ing and do proper scsi bus allocation
among multiple targets in FIFO order, fixed the way we do
the synch negotiation, made no_synch option work for real,
added debug and tracing and stats, added understanding of
scsi bus resets, added support for >1Gb disks, rid of a
lot of crap in the generic error handler, guard fiercely
against re-entering the interrupt routine, watched many
incredible races happen, do command chaining in select phase
which saves an interrupt, generally try to do as much work
as possible on each interrupt to minimize their number,
get status properly and do request_sense if bad, 
checked we understand RZ56, WrenV, Hitachi, HP, TK50, Exabyte,
[91/05/12  16:17:47  af]
[ ./kernel/mips/PMAX/scsi_alldevs.c ]
Redone the request_sense command, split out function
that checks the sense data.
Rid of some embarassing crap use of identify messages.
Redone the scsi_error() routine.
[91/05/12  16:23:25  af]
[ ./kernel/mips/PMAX/scsi_defs.h ]
Made counters unsigned, added copy_count for use by HBAs
that do unlimited DMA via double buffering.  Made explicit
two padding bytes, and let them be HBA-specific (e.g. used
for odd-byte-boundary conditions on some).
Made max_dma_data unsigned, a value of -1 means unlimited.
Removed unsed residue field.

Defined tape-specific information fields to target structure.
Added tape-specific flags and flag for targets that require
the long form of various scsi commands.
Added disconnected-state information to target structure.
Added watchdog field to adapter structure.
[91/05/12  16:24:10  af]
[ ./kernel/mips/PMAX/scsi_disk.c ]
Enabled some group-1 commands needed on big disks.
Wrote all those that were missing, kept disabled until
we find a use for them (via ioctls, I am afraid).
[91/05/12  16:24:35  af]
[ ./kernel/mips/PMAX/scsi_rom.c ]
Removed unused code, added sccdrom_name().
[91/05/12  16:18:49  af]
[ ./kernel/mips/PMAX/scsi_worm.c ]
Added our name function.
[91/05/12  16:19:38  af]
[ ./kernel/mips/locore.s ]
On exception return make sure interrupts are enabled,
higher level code should only play with spls().
Added kdb_go, but does not fly yet.
[91/05/12  15:59:20  af]
[ ./kernel/mips/mips_copyin.s ]
Added aligned_block_copy
[91/05/12  16:00:40  af]
[ ./kernel/mips/mips_cpu.s ]
splsoftclock() and splnet() were swapped, oops.
Removed misleading unused spl aliases.
[91/05/12  15:58:50  af]
[ ./kernel/mips/mips_misc.c ]
Found why the dprintf hung on 3max&new proms: clock interrupts.
[91/05/12  16:00:12  af]
[ ./kernel/mips/pmap.c ]
Use the faster page copy routine.
Added a counter of in-use ptepages.
[91/05/12  15:58:13  af]
[ ./kernel/mips/trap.c ]
Removed optimization in interrupt() that would handle more
than one interrupt at a time.  See comments in interrupt()
for the reasons, and to decide wether you can still use this
optim or not, by default it is now disabled.
[91/05/12  15:57:19  af]
[ ./kernel/mon/sunromvec.h ]
Removed CMU conditionals.
[91/05/12  16:27:07  af]
[ ./kernel/sun3/interreg.h ]
Rid of the "CMU" conditional once and forall.
[91/05/12  16:29:19  af]
[ ./kernel/sun3/machparam.h ]
Removed conditionals for MACH_KERNEL only version.
Added ptob, btop.
[88/11/29            dbg]
[ ./kernel/sun3/reg.h ]
Removed CMU conditionals.
[91/05/12  16:29:38  af]
[ ./kernel/sun3/scb.s ]
Removed CMU conditionals.
[91/05/12  16:29:30  af]
[ ./kernel/sunif/ether_addr.h ]
Removed CMU conditionals.
[91/05/12  16:30:42  af]
[ ./kernel/sys/syslog.h ]
Removed CMU conditionals.
[91/05/12  16:31:12  af]
[ ./kernel/vax/cons.c ]
Removed CMU conditionals.
[91/05/12  16:32:23  af]
[ ./kernel/vax/inline/inline_machdep.c ]
Removed CMU conditionals.
[91/05/12  16:34:57  af]
[ ./kernel/vax/inline/libcpats.c ]
Removed CMU conditionals.
[91/05/12  16:35:40  af]
[ ./kernel/vax/inline/machpats.c ]
Removed CMU conditionals.
[91/05/12  16:35:55  af]
[ ./kernel/vax/nexus.h ]
Removed CMU conditionals.
[91/05/12  16:32:08  af]
[ ./kernel/vax/pte.h ]
Removed CMU conditionals.
[91/05/12  16:31:56  af]
[ ./kernel/vaxif/if_de.c ]
Rid of the "CMU" conditional once and forall.
[91/05/12  16:37:25  af]
[ ./kernel/vaxif/if_qe.c ]
Rid of the "CMU" conditional once and forall.
[91/05/12  16:36:55  af]
[ ./kernel/vaxif/if_qereg.h ]
Rid of the "CMU" conditional once and forall.
[91/05/12  16:37:10  af]
[ ./kernel/vaxmba/hpreg.h ]
Rid of the "CMU" conditional once and forall.
Fixed copyright notice.
[91/05/12  16:40:24  af]
[ ./kernel/vaxmba/mbareg.h ]
Rid of the "CMU" conditional once and forall.
Fixed copyright notice.
[91/05/12  16:39:22  af]
[ ./kernel/vaxuba/dzreg.h ]
Rid of the "CMU" conditional once and forall.
Fixed copyright notice.
[91/05/12  16:45:04  af]
[ ./kernel/vaxuba/pdma.h ]
Rid of the "CMU" conditional once and forall.
Fixed copyright notice.
[91/05/12  16:44:15  af]
[ ./kernel/vaxuba/qd.c ]
Rid of the "CMU" conditional once and forall.
[91/05/12  16:43:09  af]
[ ./kernel/vaxuba/rk.c ]
Rid of the "CMU" conditional once and forall.
[91/05/12  16:41:34  af]
[ ./kernel/vaxuba/rkreg.h ]
Rid of the "CMU" conditional once and forall.
Fixed copyright notice.
[91/05/12  16:42:54  af]
[ ./kernel/vaxuba/uda_umd.c ]
Rid of the "CMU" conditional once and forall.
[91/05/12  16:41:19  af]
[ ./kernel/mips/PMAX/screen.c ]
Generate escape seqs on mouse clicks if X not running.
[ ./kernel/mips/PMAX/scsi.h ]
Define bus phases here.  More defines for return data from
various commands that are now actually used.

Added def of max addressable block for short read/write.
Added missing sense key values (they were on the back of
the page, oops).  Added extended sense data defs.
Added mode sense defs.
[ ./kernel/mips/PMAX/rz_tape.c ]
Do not say we failed to bspfile when the target really was
only busy.
Retrieve from mode_sense speed, density and writeprotect info.
Deal with targets that are busy, note when we get confused due
to a scsi bus reset.  Set speed and density if user asks to.
Generally, made it work properly [it passes Rudy's tests].
Tapes really work now.
[ ./kernel/mips/PMAX/mapped_scsi.c ]
Check for spurious interrupts before disabling them.
[ ./kernel/mips/PMAX/scsi_tape.c ]
Cleaned up mode_select, vendor unique data can be passed
in if necessary.  Density and speed are taken from target 
structure.  Added rewind command and all th eothers that
were missing (but what we do not use is disabled).
    
    
    
==========================================================================
   ***** MK Version MK46  (mrt) *****
    
    
New features:
--- --------
none

Bug fixes:
--- -----

Corrected all the Mach free copyright messages to have "AS IS" and
Carnegie Mellon instead of just Carnegie.

[VAX]	 Put the restrictive copyrights back on the few files that
	erroneously gotton the free copyright.

Special notes:
------- -----

In the future, be very careful that you get the correct style of copyright
on to any files you add to the mk tree. For license-free c files you can use 
conf/copyright, or use /afs/cs/mach/src/copyright/{c,shell,roff}. If you pick
one up from there add a Mach Operating System line to the beginning.

If a file contains a restrictive BSD copyright or any restrictive manafacturer's
copyright, use the old Mach licensed one.

Built for all 8 configurations. Compared the .o files to be sure  nothing
had changed. 

******** CUT HERE ******** summary of log messages ******** CUT HERE ********
 
All the files except the sqt, sun* and most vax* files changed.
    
    
    
==========================================================================
   ***** MK Version MK47  (rpd) *****
    
    
Bug fixes:
--- -----

I fixed a pageout deadlock which crept in with default_pager_object_create.
It turns out to be quite difficult to have the default pager handle
"external" objects in addition to "internal" objects.
Now the default pager is multi-threaded and separate threads handle
"internal" and "external" objects.  boot_ufs/ code picked up some locking.

I changed pagein to use fictitious pages for busy/absent pages.
Real pages get allocated when the pager calls data-provided or
data-unavailable.  To prevent the default pager from using all the pages,
pagein of "internal" objects still allocates real pages.
The association between physical pages and page structures changes
dynamically, so this won't hamper page "stealing" on the data-provided path.

I changed the pageout daemon pretty significantly, to remove some
deadlocks and to make it behave better under heavy paging loads.
Now vm_page_inactive_target is calculated dynamically and pages
trickle from the active list to the inactive list, instead of getting
dumped in big bursts.  The code also dynamically adjusts
vm_pageout_burst_wait, the amount of time it pauses per dirty page,
so it isn't as important that this number be tuned right.

I changed the pmap interface.  pmap_bootstrap, pmap_valid_page,
pmap_map, and pmap_update are out.  pmap_init changed.  pmap_startup,
pmap_steal_memory, and pmap_free_pages (or possibly pmap_virtual_space
and pmap_next_page instead of pmap_startup and pmap_steal_memory) are
in.  The pmap_startup/pmap_steal_memory system has two main advantages
over the old system.  First, machine-independent code doesn't assume
quasi-contiguous physical memory.  Second, machine-dependent code can
implement pmap_steal_memory to allocate memory more efficiently than
vanilla kernel VM (for example, using no/fewer TLB entries, not backed
by page structures).  The zone package gets 420K from
pmap_steal_memory.

I fixed a deadlock problem in kmem_alloc.  It can't hold a kernel map
locked while allocating memory.

I fixed vm_page_deactivate as suggested by rfr,
to clear the reference bit on inactive/referenced pages.

I changed the stack-privilege algorithm, which reserves kernel stacks
for important kernel threads like the idle threads, pageout deamon, etc.
The old method had a bug that could result in stack_alloc_try panics.

I fixed kernel stack allocation so that non-page-sized stacks work.
All current architectures use page-sized stacks by default.

I beefed-up the simple-lock debugging code.  Now it keeps track
of which locks are held and who took the locks.  check_simple_locks()
should be used in code which may block, to check that no simple locks
are held.

I changed the timeout/timer code to use a fixed-size array of timers
instead of a zone, because it allocates timers from interrupt handlers.
Only device drivers use this code.  I changed all machine-independent
uses of timers to use "private" timers.  In particular, priority depression
timeouts use another timer in the thread structure.  If possible, this
timer should be merged with the previous per-thread timer.
I didn't fix the long-standing races in the timeout code.

I fixed host_set_time to update the mapped time value.
I changed the mapped time value to include a check field,
so readers can get a consistent value without locking.

I picked up a processor_doaction fix from dlb.

I made some minor changes to the xpr code so that recorded xpr activity
can survive across a reboot and be examined.

I cleaned up the semantics of the syscall forms of kernel RPCs,
so that they better mimic the RPC forms.  If the syscall can't
handle request, it returns MACH_SEND_INTERRUPTED.  This is a
backwards compatible change, because current user stubs check
for any non-success return.  They should be changed to check
for send-interrupted specifically.  This will not be compatible
with older kernels, but it will fix a bug.  (For example,
the current ipc_test binaries in the release area report a problem
because they are linked with syscall forms that don't have quite
the right semantics.  The corresponding change in libmach for
the user stubs fixes ipc_test.)

[PMAX]	  I simplified the handling to tlb misses.
This made the user tlb-miss handler faster.  It fixed a bug;
now VM exceptions always have the correct address.

[PMAX]	  I removed spls in the pmap module.

[PMAX]	  I put a nop after splhigh so that it can be stepped through.

[SUN3]	  I converted the remaining uses of vm_map_find to vm_map_enter.

[SUN3]	  I removed a debugging panic in the user breakpoint path.

[SUN3]	  I fixed the fpa conditionals in genassym.


Special notes:
------- -----

Tested on rpd, waldo, rocky, nova, r2d2, boris.


[ ./conf/version.edit ]
47
[ ./kernel/boot_ufs/default_pager.c ]
Don't give privileges to threads handling external objects.
[91/04/06            rpd]
Enhanced to use multiple threads, for performance and to avoid
a deadlock caused by default_pager_object_create.
Added locking to partitions.
Added locking to pager_port_hashtable.
Changed pager_port_hash to something reasonable.
[91/04/03            rpd]
[ ./kernel/boot_ufs/file_io.c ]
Changed block_map to avoid blocking operations
while holding an exclusive lock.
[91/04/06            rpd]
Added locking in block_map.
[91/04/03            rpd]
[ ./kernel/boot_ufs/file_io.h ]
Added f_lock.
[91/04/03            rpd]
[ ./kernel/conf/MASTER.mips ]
Removed the COMPACTED (tag "mod_bits") option.
[91/03/19            rpd]
[ ./kernel/conf/MASTER.mips.local ]
Removed mod_bits.
[91/03/19            rpd]
[ ./kernel/conf/files.mips ]
Removed the compacted option.
[91/03/19            rpd]
[ ./kernel/ddb/db_trap.c ]
Protect against faults in db_print_loc_and_inst.
[91/05/14            rpd]
[ ./kernel/device/dev_lookup.c ]
Fixed device_deallocate to always unlock the reference count.
[91/04/03            rpd]
[ ./kernel/device/dev_pager.c ]
Added proper locking for vm_page_insert.
[91/04/21            rpd]
Changed vm_page_init.
[91/03/24            rpd]
[ ./kernel/device/ds_routines.c ]
Added vm/memory_object.h.
[91/03/22            rpd]
[ ./kernel/i386/phys.c ]
Added vm_page_fictitious_addr assertions.
[91/04/10            rpd]
[ ./kernel/i386/read_fault.c ]
Picked up software_reference_bits-related changes from vm_fault.
[91/04/06            rpd]
Added VM_FAULT_FICTITIOUS_SHORTAGE.
[91/03/29            rpd]
[ ./kernel/i386at/kd.c ]
Fixed kdopen to call ttychars with the tty unlocked.
[91/03/31            rpd]
[ ./kernel/i386at/model_dep.c ]
Changed pmap_bootstrap arguments.
Moved pmap_free_pages and pmap_next_page here.
[91/05/15            rpd]
[ ./kernel/i386ipsc/model_dep.c ]
Changed pmap_bootstrap arguments.
Moved pmap_free_pages and pmap_next_page here.
[91/05/15            rpd]
[ ./kernel/i860/phys.c ]
Added vm_page_fictitious_addr assertions.
[91/05/15            rpd]
[ ./kernel/i860ipsc/i860_init.c ]
Moved pmap_valid_page, pmap_free_pages, pmap_next_page here.
[91/05/17            rpd]

Changed pmap_bootstrap arguments.
[91/03/25            rpd]
[ ./kernel/intel/pmap.c ]
Moved pmap_free_pages, pmap_next_page to a model-dependent file.
[91/05/15            rpd]

Make sure hole_start and hole_end are page-aligned.
[91/05/01            rpd]

Removed pmap_update.
[91/04/12            rpd]

Added inuse_ptepages_count.
Added vm_page_fictitious_addr assertions.
[91/04/10            rpd]
Added check_simple_locks to pmap_expand.
[91/03/31            rpd]
Changed vm_page_init to vm_page_insert.
Added pmap_free_pages, pmap_next_page, pmap_virtual_space.
[91/03/25            rpd]
[ ./kernel/kern/bootstrap.c ]
Added argument to kernel_thread.
[91/04/03            rpd]
[ ./kernel/kern/ipc_kobject.c ]
Added check_simple_locks.
[91/04/01            rpd]
[ ./kernel/kern/ipc_sched.c ]
Updated thread_handoff to check stack_privilege.
[91/03/30            rpd]
[ ./kernel/kern/kalloc.h ]
Added kalloc_init.
[91/03/22            rpd]
[ ./kernel/kern/lock.c ]
Added simple_locks_info, to keep track of which locks are held.
[91/05/02            rpd]
Added check_simple_locks.
[91/03/31            rpd]
[ ./kernel/kern/lock.h ]
Added check_simple_locks.
[91/03/31            rpd]
[ ./kernel/kern/mach_clock.c ]
Fixed timeout/untimeout to use a fixed-size array of timers
instead of a zone.
[91/03/31            rpd]
Fixed host_set_time to update the mapped time value.
Changed the mapped time value to include a check field.
[91/03/19            rpd]
[ ./kernel/kern/machine.c ]
Picked up processor_doaction fix from dlb.
[91/04/08            rpd]
[ ./kernel/kern/sched_prim.c ]
Added check_simple_locks to thread_block and thread_run.
[91/05/02            rpd]
Changed recompute_priorities to use a private timer.
Changed thread_timeout_setup to initialize depress_timer.
[91/03/31            rpd]

Updated thread_invoke to check stack_privilege.
[91/03/30            rpd]
[ ./kernel/kern/sched_prim.h ]
Added recompute_priorities.
[91/03/31            rpd]
[ ./kernel/kern/server_loop.c ]
Made max_size an argument to the loop.
Changed from kmem_alloc_wired to kalloc.
[91/04/04            rpd]
[ ./kernel/kern/startup.c ]
Added argument to kernel_thread.
[91/04/03            rpd]
[ ./kernel/kern/syscall_emulation.c ]
Fixed eml_task_deallocate to always unlock.
[91/05/02            rpd]
[ ./kernel/kern/syscall_subr.c ]
Changed to use thread->depress_timer.
[91/03/31            rpd]
[ ./kernel/kern/syscall_subr.h ]
Added thread_depress_timeout.
[91/03/31            rpd]
[ ./kernel/kern/thread.c ]
Fixed stack_alloc to use kmem_alloc_aligned.
[91/05/14            rpd]
Added argument to kernel_thread.
[91/04/03            rpd]

Changed thread_deallocate to reset timer and depress_timer.
[91/03/31            rpd]

Replaced stack_free_reserved and swap_privilege with stack_privilege.
[91/03/30            rpd]
[ ./kernel/kern/thread.h ]
Added depress_timer.
[91/03/31            rpd]

Replaced swap_privilege with stack_privilege.
[91/03/30            rpd]
[ ./kernel/kern/xpr.c ]
Added xprenable and other minor changes so that the xpr buffer
may be examined after a spontaneous reboot.
[91/05/03            rpd]
Fixed the initialization check in xpr.
Fixed xpr_dump.
[91/04/02            rpd]
[ ./kernel/kern/zalloc.c ]
Added check_simple_locks.
Moved ADD_TO_ZONE, REMOVE_FROM_ZONE here.
Moved extraneous zone GC declarations here.
[91/03/31            rpd]

Minor cleanup in zget_space.
[91/03/28            rpd]
Changed to use zdata to initialize zalloc_next_space.
[91/03/22            rpd]
[ ./kernel/kern/zalloc.h ]
Removed ZALLOC, ZGET, ZFREE.
Moved ADD_TO_ZONE, REMOVE_FROM_ZONE to kern/zalloc.c.
Moved extraneous zone GC declarations to kern/zalloc.c.
[91/03/31            rpd]
Added zdata, zdata_size.
[91/03/22            rpd]
[ ./kernel/mach/memory_object.h ]
Removed memory_manager_default.
[91/03/22            rpd]
[ ./kernel/mach/time_value.h ]
Added mapped_time_value_t.
[91/03/21            rpd]
[ ./kernel/mips/PMAX/screen.c ]
Picked up mouse-movement bug fix for screen_motion_event from Sandro.
Also changed compress_mouse_events to TRUE.
[91/04/08            rpd]
[ ./kernel/mips/locore.s ]
Picked up Sandro's interrupt-enable fix for TRAP_exception_exit.
[91/04/04            rpd]
Removed tlb_umiss_cause.
[91/03/21            rpd]
[ ./kernel/mips/mips_cpu.s ]
Put a nop between splhigh and kdbsplhigh.
[91/03/26            rpd]
[ ./kernel/mips/mips_init.c ]
Removed zalloc_physical.
Removed arguments to pmap_bootstrap.
[91/03/22            rpd]
[ ./kernel/mips/parse_args.c ]
Replaced zalloc_physical with zdata_size.
[91/03/24            rpd]
[ ./kernel/mips/pcb.c ]
Replaced stack_free_reserved and swap_privilege with stack_privilege.
[91/03/30            rpd]
[ ./kernel/mips/pmap.c ]
Removed pmap_update.
[91/04/12            rpd]

Added inuse_ptepages_count.
Added vm_page_fictitious_addr assertions.
[91/04/10            rpd]
Commented out pmap_lock.
[91/04/01            rpd]

Added check_simple_locks to get_free_ptepage.
[91/03/31            rpd]
Removed pmap_valid_page, arguments to pmap_bootstrap, pmap_init.
Added pmap_free_pages, pmap_steal_memory, pmap_startup.
[91/03/24            rpd]
Removed spl/splx calls.
Made compacted modify bits the default.
Fixed return_modify_bit.
[91/03/19            rpd]
[ ./kernel/mips/pmap.h ]
Removed pmap_update.
[91/04/12            rpd]
Added MACHINE_PAGES.
[91/03/23            rpd]
[ ./kernel/mips/trap.c ]
Fixed double-miss handling in tlb_miss.  Now it maps an
invalid entry into the tlb instead of going to trap.
[91/04/04            rpd]
[ ./kernel/mips/vm_tuning.h ]
Removed VM_PAGEOUT_BURST_WAIT.
[91/04/07            rpd]
[ ./kernel/sqt/model_dep.c ]
Changed pmap_bootstrap arguments.
Moved pmap_free_pages and pmap_next_page here.
[91/05/15            rpd]
[ ./kernel/sun3/model_dep.c ]
Changed arguments to vm_page_create.
[91/05/16            rpd]
[ ./kernel/sun3/pmap.c ]
Replaced pmap_valid_page with pmap_free_pages, pmap_next_page,
and pmap_virtual_space.  Changed the arguments to pmap_init.
[91/05/15            rpd]

Removed pmap_update.
Added vm_page_fictitious_addr assertions.
[91/04/12            rpd]
[ ./kernel/sun3/sun_init.c ]
Added avail_remaining, avail_next, hole_start, hole_end.
[91/05/15            rpd]
[ ./kernel/sun3/trap.c ]
Removed debugging code in dotrace.
[91/04/08            rpd]
[ ./kernel/sunif/if_ie.c ]
Replaced vm_map_find with vm_map_enter.
[91/04/08            rpd]
[ ./kernel/vax/pmap.c ]
Replaced pmap_valid_page with pmap_free_pages, pmap_next_page,
and pmap_virtual_space.  Changed the arguments to pmap_init.
Removed ZALLOC, ZFREE.
[91/05/15            rpd]

Removed pmap_update.
[91/04/12            rpd]

Added vm_page_fictitious_addr assertions.
[91/04/10            rpd]
[ ./kernel/vm/memory_object.c ]
Fixed memory_object_lock_page to handle fictitious pages.
[91/04/06            rpd]
Changed memory_object_data_provided, etc,
to allow for fictitious pages.
[91/03/29            rpd]
Added vm/memory_object.h.
[91/03/22            rpd]
[ ./kernel/vm/memory_object.h ]
Created.
[91/03/22            rpd]
[ ./kernel/vm/pmap.h ]
Removed pmap_update.
[91/04/12            rpd]
Removed pmap_bootstrap, pmap_map, pmap_valid_page.
Added pmap_startup, pmap_steal_memory, pmap_free_pages,
pmap_virtual_space, pmap_next_page.
[91/03/22            rpd]
[ ./kernel/vm/vm_fault.c ]
Added proper locking for vm_page_insert.
[91/04/21            rpd]
Changed vm_fault_page to use fictitious pages.
Increased vm_object_absent_max to 50.
[91/03/29            rpd]
[ ./kernel/vm/vm_fault.h ]
Added VM_FAULT_FICTITIOUS_SHORTAGE.
[91/03/29            rpd]
[ ./kernel/vm/vm_init.c ]
Replaced vm_page_startup with vm_page_bootstrap.
[91/04/10            rpd]
[ ./kernel/vm/vm_kern.c ]
Added kmem_alloc_aligned.
[91/05/02            rpd]
Added VM_FAULT_FICTITIOUS_SHORTAGE.
Revised vm_map_find_entry to allow coalescing of entries.
Fixed deadlock problem in kmem_alloc.
[91/03/29            rpd]
Fixed kmem_init to not create a zero-size entry.
[91/03/25            rpd]
[ ./kernel/vm/vm_kern.h ]
Added kmem_alloc_aligned.
[91/05/02            rpd]
[ ./kernel/vm/vm_map.c ]
Restored mask argument to vm_map_find_entry.
[91/05/02            rpd]
Removed ZALLOC and ZFREE.
[91/03/31            rpd]

Revised vm_map_find_entry to allow coalescing of entries.
[91/03/28            rpd]
Removed map_data.  Moved kentry_data here.
[91/03/22            rpd]
[ ./kernel/vm/vm_map.h ]
Added kentry_data and friends, for vm_map_init.
[91/03/22            rpd]
[ ./kernel/vm/vm_object.c ]
Changed vm_object_deactivate_pages to call vm_page_deactivate
on inactivate pages, because that is no longer a no-op.
[91/04/20            rpd]

Fixed vm_object_pmap_protect, vm_object_pmap_remove,
vm_object_page_remove, vm_object_copy_call, vm_object_copy_delayed
to check for fictitious pages.
[91/04/10            rpd]
Fixed vm_object_terminate to allow for busy/absent pages.
[91/04/02            rpd]

Added VM_FAULT_FICTITIOUS_SHORTAGE.
[91/03/29            rpd]
Added vm/memory_object.h.
[91/03/22            rpd]
[ ./kernel/vm/vm_page.h ]
Removed vm_page_fictitious_zone.
[91/05/16            rpd]

Added vm_page_fictitious_addr.
Removed VM_PAGE_TO_PHYS.
[91/04/10            rpd]

Changed vm_page_free_wanted to unsigned int.
[91/04/05            rpd]
Added vm_page_grab_fictitious, etc.
[91/03/29            rpd]
Removed VM_PAGE_DEBUG and associated variables,
leaving a dummy VM_PAGE_CHECK definition.
Added vm_page_attach.
[91/03/22            rpd]
[ ./kernel/vm/vm_pageout.c ]
Fixed vm_pageout_continue to always call vm_pageout_scan.
Revamped vm_pageout_scan.  Now it recalculates vm_page_inactive_target,
gradually moves pages from the active list to the inactive list,
looks at vm_page_free_wanted, handles absent and fictitious pages,
and blocks with a continuation (vm_pageout_scan_continue), which
uses vm_page_laundry_count to adjust vm_pageout_burst_wait.
[91/04/06            rpd]

Changed vm_page_free_wanted to unsigned int.
[91/04/05            rpd]
Added vm_page_grab_fictitious.
[91/03/29            rpd]
Changed vm_page_init.
[91/03/24            rpd]
[ ./kernel/vm/vm_resident.c ]
Renamed vm_page_fictitious_zone to vm_page_zone.
[91/05/16            rpd]

Moved deactivate-behind code from vm_page_alloc to vm_page_insert.
[91/04/21            rpd]

Fixed vm_page_deactivate as suggested by rfr,
to clear the reference bit on inactive/referenced pages.
[91/04/20            rpd]

Added vm_page_fictitious_addr.
[91/04/10            rpd]

Restored vm_page_laundry_count.
[91/04/07            rpd]

Changed vm_page_release to use thread_wakeup_one.
[91/04/05            rpd]
Added vm_page_grab_fictitious, etc.
[91/03/29            rpd]
Added vm_page_bootstrap, pmap_startup, pmap_steal_memory.
[91/03/25            rpd]
[ ./kernel/sun3/genassym.c ]
Fixed fpa conditionals.
[91/05/20            rpd]
[ ./kernel/kern/ipc_mig.c ]
Cleaned up the semantics of the syscall forms of kernel RPCs.
[91/05/20            rpd]
[ ./kernel/sqt/model_dep.c ]
Fixed avail_remaining, avail_next initialization.
    
    
    
==========================================================================
   ***** MK Version MK48  (jsb) *****
    
    
New features:
--- --------

This merge mostly contains NORMA work, including
	Whizzy fast internode IPC,
	Rough cut at VM support for fast internode IPC, and
	Beginnings of internode task creation.

Added task_get_emulation_vector; previously, it was impossible to obtain
this information, making task migration impossible.
For symmetry, added task_set_emulation_vector.
Task_set_emulation is now a call to task_set_emulation_vector.

Added a gets function in kern/printf.c (derived from boot_gets).

Bug fixes:
--- -----

[i386]	  Defined SPLVM, SPLX as null (vs. splvm, splx) in uniprocessor case.

Organizational changes:
-------------- -------

Added MACH_CLTASK conditional.

Added a kernel/norma/ directory for norma-specific files. I'll be moving
more things into this directory in subsequent releases.

Added mach/mach_norma.defs, for NORMA specific kernel functions.

Added mach/norma_task.defs, for task creation upcalls.

[i386]	  Moved i386/read_fault.c to intel/read_fault.c so that i860
	  can use it as well.

[i386]	  Added spldcm to i386/spl.s.

Log messages:
--- --------

[ ./conf/version.edit ]
48
[ ./kernel/intel/read_fault.c ]
First checkin as intel/read_fault.c.
[ ./kernel/i386/read_fault.c ]
Moved to intel/read_fault.c.
[ ./kernel/i386ipsc/dcm.c ]
Defuncted.
[ ./Directories/ALL ]
Added ./kernel/norma.
[91/06/06  16:14:56  jsb]
[ ./Directories/MI ]
Added ./kernel/norma.
[91/06/06  16:15:11  jsb]
[ ./kernel/conf/MASTER ]
Added MACH_CLTASK, under NORMA.
[91/05/13  16:46:15  jsb]
[ ./kernel/conf/Makefile.template ]
Added rules for mach_norma.defs, norma_task.defs.
[91/05/13  16:47:34  jsb]
[ ./kernel/conf/files ]
More MACH_CLxxx files.
[91/06/06  16:16:55  jsb]
[ ./kernel/conf/files.i386 ]
Moved read_fault.c from i386 to intel.
Split i386ipsc/dcm.c into dcm_{input,output}.c.
[91/06/06  16:18:09  jsb]
[ ./kernel/ddb/db_command.c ]
NORMA support: prompt includes node number, e.g., db4>.
[91/05/25  10:47:35  jsb]
[ ./kernel/ddb/db_run.c ]
Removed redundant newlines and tabs.
Added delta to instruction count printf.
[91/05/25  10:55:01  jsb]
[ ./kernel/device/device_init.c ]
MACH_CLPORT: master_device_port initialization change.
[91/05/13  16:51:18  jsb]
[ ./kernel/i386/spl.s ]
Added spldcm for i386ipsc.
[91/05/13  16:53:38  jsb]
[ ./kernel/i386/trap.c ]
i386_read_fault is now intel_read_fault.
[91/05/13  16:56:39  jsb]
[ ./kernel/i386ipsc/asm_startup.h ]
Added support for Paul's new bootstrapper.
[91/05/13  16:58:04  jsb]
[ ./kernel/i386ipsc/autoconf.c ]
Added implementation and call to ask_root_device.
[91/05/13  16:59:05  jsb]
[ ./kernel/i386ipsc/dcm.h ]
First checkin.
[91/05/14  13:24:02  jsb]
[ ./kernel/i386ipsc/dcm_input.c ]
First checkin.
[91/05/14  13:27:06  jsb]
[ ./kernel/i386ipsc/dcm_output.c ]
First checkin.
[91/05/14  13:27:30  jsb]
[ ./kernel/i386ipsc/dcm_route.s ]
Support for new dcm code.
[91/05/13  17:01:17  jsb]
[ ./kernel/i386ipsc/if_cnp.c ]
Use cnppoll (instead of cnptimeout) to check for packets.
[91/05/13  17:06:14  jsb]
[ ./kernel/i386ipsc/led.c ]
Added led_idle, led_active.
[91/05/13  17:07:21  jsb]
[ ./kernel/i386ipsc/model_dep.c ]
Changes for new bootstrapper; see asm_startup.h.
[91/05/13  17:08:15  jsb]
[ ./kernel/i386ipsc/pic_ipsc.c ]
Hang cnppoll off of hardclock (since cnp doesn't get interrupts).
[91/05/13  17:09:57  jsb]
[ ./kernel/i386ipsc/sd.h ]
From Don Cameron: changed NDRIVES from 1 to 4.
[91/05/13  17:10:29  jsb]
[ ./kernel/intel/pmap.c ]
Defined SPLVM, SPLX as null (vs. splvm, splx) in uniprocessor case.
[91/05/13  17:12:34  jsb]
[ ./kernel/ipc/ipc_cldefs.h ]
Fixed copyright.
[91/05/24  13:16:39  jsb]

First checkin.
[91/05/14  13:28:14  jsb]
[ ./kernel/ipc/ipc_clinput.c ]
Fixed copyright.
[91/05/24  13:18:23  jsb]

First checkin.
[91/05/14  13:29:10  jsb]
[ ./kernel/ipc/ipc_clkobject.c ]
First checkin.
[91/05/24  13:10:00  jsb]
[ ./kernel/ipc/ipc_cloutput.c ]
Fixed copyright.
[91/05/24  13:19:37  jsb]

First checkin.
[91/05/14  13:30:09  jsb]
[ ./kernel/ipc/ipc_clpacket.h ]
Almost obsoleted...
[91/05/13  17:14:22  jsb]
[ ./kernel/ipc/ipc_clport.c ]
Added norma_get_special_port, norma_set_special_port.
[91/05/25  10:28:14  jsb]

Much code moved to other ipc_clxxx files.
[91/05/13  17:16:24  jsb]
[ ./kernel/ipc/ipc_clvm.c ]
First checkin.
[91/05/24  13:12:39  jsb]
[ ./kernel/ipc/ipc_init.c ]
Added call to ipc_clport_init.
[91/05/13  17:17:10  jsb]
[ ./kernel/ipc/ipc_kmsg.c ]
More MACH_CLPORT stuff. Cleanup will follow.
[91/06/06  16:00:08  jsb]
[ ./kernel/ipc/ipc_mqueue.c ]
Added call to ip_unlock after calling ipc_clport_send.
Added support for clport handoff.
[91/06/06  16:05:12  jsb]
[ ./kernel/ipc/mach_msg.c ]
A little more MACH_CLPORT support.
[91/05/13  17:22:08  jsb]
[ ./kernel/ipsc/dcmcom.c ]
Removed bogus include.
[91/05/14  11:31:41  jsb]

Total rewrite.
[91/05/13  17:27:30  jsb]
[ ./kernel/ipsc/dcmcom.h ]
Total rewrite.
[91/05/13  17:26:25  jsb]
[ ./kernel/ipsc/dev_forward_name.c ]
Add entries to compensate for ux's generation of names like sd0i
when it should be generating names like sd1a.
(This is a stopgap, not a real fix.)
[91/05/13  17:29:24  jsb]
[ ./kernel/ipsc/usm.c ]
Ignore this line.
[91/05/13  17:33:29  jsb]
[ ./kernel/kern/ast.c ]
Added AST_CLPORT.
[91/05/13  17:34:31  jsb]
[ ./kernel/kern/ast.h ]
Added AST_CLPORT.
[91/05/13  17:35:08  jsb]
[ ./kernel/kern/bootstrap.c ]
Allow slaves to act as masters (for now).
[91/05/13  17:36:17  jsb]
[ ./kernel/kern/ipc_host.c ]
Redid host port initialization under MACH_CLPORT.
[91/05/13  17:37:21  jsb]
[ ./kernel/kern/ipc_kobject.c ]
Added MACH_CLTASK support.
[91/05/14  09:05:48  jsb]
[ ./kernel/kern/ipc_mig.c ]
MACH_CLTASK: We still need mach_msg_rpc_from_kernel.
[91/05/14  09:13:45  jsb]
[ ./kernel/kern/ipc_tt.c ]
MACH_CLTASK support.
[91/05/14  09:17:09  jsb]
[ ./kernel/kern/printf.c ]
Added gets (derived from boot_gets).
[91/05/14  09:18:50  jsb]
[ ./kernel/kern/startup.c ]
Changed MACH_CLPORT specific startup.
[91/05/14  09:19:55  jsb]
[ ./kernel/kern/syscall_emulation.c ]
Added task_get_emulation_vector, task_set_emulation_vector.
Task_set_emulation is now a call to task_set_emulation_vector.
[91/05/24  18:30:16  jsb]
[ ./kernel/kern/syscall_emulation.h ]
Added emulation_vector_t for new get/set emulation vector calls.
[91/05/24  17:47:38  jsb]
[ ./kernel/kern/task.c ]
MACH_CLTASK: support for remote task_create.
[91/05/25  11:46:21  jsb]
[ ./kernel/mach/mach.defs ]
Added task_get_emulation_vector, task_set_emulation_vector.
[91/05/24  18:26:01  jsb]
[ ./kernel/mach/mach_norma.defs ]
First checkin.
[91/05/25  10:37:22  jsb]
[ ./kernel/mach/mach_types.defs ]
Added emulation_vector_t for new get/set emulation vector calls.
[91/05/24  17:45:33  jsb]
[ ./kernel/mach/mach_types.h ]
Added emulation_vector_t for new get/set emulation vector calls.
[91/05/24  17:46:31  jsb]
[ ./kernel/mach/norma_task.defs ]
First checkin.
[91/05/25  10:37:56  jsb]
[ ./kernel/norma/kern_task.c ]
First checkin.
[91/05/25  11:47:39  jsb]
[ ./kernel/vm/vm_map.c ]
MACH_CLPORT support (first cut):
Work with page lists instead of copy objects.
Make coalescing more useful.
[91/05/14  09:34:41  jsb]
[ ./kernel/vm/vm_resident.c ]
MACH_CLPORT: added vm_page_replace.
[91/05/14  09:40:19  jsb]
[ ./kernel/norma/clport_ether.c ]
First checkin.
[91/06/06  17:52:24  jsb]
[ ./kernel/norma/ipc_wait.c ]
First checkin.
[91/06/06  17:51:41  jsb]
    
    
    
==========================================================================
   ***** MK Version MK49  (jsb) *****
    
    
New features:
--- --------

First cut at NORMA vm support. Uses mythical xmm technology.

[I860]	  Merged in i860 code from March, when I MK43ified what Intel
	  had at the time. The next merge will have the most recent Intel
	  code, plus friendlier licensing language.

[I860]	  Wrote an (unoptimized) internode ipc driver for the i860,
	  based on Intel code for old internode ipc protocol.

Bug fixes:
--- -----

Updated ddb man page. Added documentation for continue/c, match, search,
and watchpoints. I've not actually explained what a watchpoint is;
maybe Rich can do that (since he added them in the first place).

[I860]	  Better trap handling code, adopted from Intel's NX OS.

[I860]	  Use new (delta-compatible) booting technology.

[I386]	  Use new (delta-compatible) booting technology.

Organizational changes:
-------------- -------

Renamed NORMA conditionals; for example, MACH_CLPORT becomes NORMA_IPC.
Better support for partial enabling of NORMA support; for example, one should
now be able to build with just NORMA_IPC.

Moved NORMA ipc support from ipc directory to norma directory.

[I860]	  Rearranged dev_forward_name.c table for non-integrated I/O nodes.

Special notes:
------- -----

Everything in this merge is either i860 dependent or hidden under NORMA
conditionals. I built and tested on i860 (dimitri), i386 (dimitri and ubik),
andmips (jsb).

The i860ipsc console driver is flaky. This will be fixed in the next merge,
when I pick up the newest Intel code.

Log messages:
--- --------

[ ./conf/version.edit ]
49
[ ./kernel/conf/MASTER ]
Rearranged and renamed NORMA options.
[91/06/17  09:54:37  jsb]
[ ./kernel/conf/Makefile.template ]
NORMA_VM: added rule for xmm_proxy.defs.
[91/06/17  13:49:10  jsb]
[ ./kernel/conf/files ]
Moved files from ipc to norma; added norma xmm files.
[91/06/17  13:51:16  jsb]
[ ./kernel/conf/files.i860 ]
Added fpe* files; moved read_fault.c to intel directory;
added new dcm support.
[91/06/17  09:56:47  jsb]
[ ./kernel/ddb/db_command.c ]
Renamed NORMA conditionals.
[91/06/17  09:57:51  jsb]
[ ./kernel/device/dev_pager.c ]
NORMA_VM: use xmm_vm_object_lookup, since we really need a vm_object_t;
use xmm_add_exception to mark device pagers as non-interposable.
[91/06/17  13:22:58  jsb]
[ ./kernel/device/device_init.c ]
Renamed NORMA conditionals.
[91/06/17  09:58:32  jsb]
[ ./kernel/device/ds_routines.c ]
Renamed NORMA conditionals.
[91/06/17  09:58:59  jsb]
[ ./kernel/i386ipsc/asm_startup.h ]
Enabled support for new boot protocol, and eliminated support for old.
[91/06/17  10:00:10  jsb]
[ ./kernel/i386ipsc/dcm_input.c ]
Changed include of renamed norma file. Changed call to vm_page_init
to match its redefinition (it lost two parameters). 
[91/06/17  10:06:40  jsb]
[ ./kernel/i386ipsc/dcm_output.c ]
Changed include of renamed norma file.
[91/06/17  10:07:18  jsb]
[ ./kernel/i386ipsc/model_dep.c ]
Changed intialization printf.
[91/06/17  10:08:20  jsb]
[ ./kernel/i860/db_disasm.c ]
Fixed call to db_find_sym_and_offset.
[91/06/17  10:22:41  jsb]
[ ./kernel/i860/db_interface.c ]
An attempts to follow recent i386 changes.
[91/06/17  10:24:55  jsb]
[ ./kernel/i860/db_machdep.h ]
Added inst_load, inst_store definitions.
[91/06/17  10:25:34  jsb]
[ ./kernel/i860/exec.c ]
First functional version.
[91/06/17  10:27:30  jsb]
[ ./kernel/i860/exec.h ]
First checkin.
[91/06/17  10:31:12  jsb]
[ ./kernel/i860/fpdefs.h ]
From Paul Pierce: created from iPSC/860 NX code.
[91/06/17  13:43:28  jsb]
[ ./kernel/i860/fpeh.c ]
From Paul Pierce: created from iPSC/860 NX code.
[91/06/17  13:42:50  jsb]
[ ./kernel/i860/fpehutila.s ]
From Paul Pierce: created from iPSC/860 NX code.
[91/06/17  13:41:58  jsb]
[ ./kernel/i860/fpehutils.c ]
From Paul Pierce: created from iPSC/860 NX code.
[91/06/17  13:40:37  jsb]
[ ./kernel/i860/hardclock.c ]
Use machine/thread.h instead of machine/reg.h.
[91/06/17  10:12:13  jsb]
[ ./kernel/i860/pcb.c ]
Added stack_attach, stack_detach, etc. for continuation support.
[91/06/17  10:13:46  jsb]
[ ./kernel/i860/psl.h ]
Corrected USERMODE definition; eliminated ptrace garbage.
[91/06/17  10:14:34  jsb]
[ ./kernel/i860/start.s ]
Use r26 in place of r20.
[91/06/17  10:15:36  jsb]
[ ./kernel/i860/state.h ]
First checkin.
[91/06/17  10:16:53  jsb]
[ ./kernel/i860/thread.h ]
From Paul Pierce: modified for new trap handler.
[91/06/17  13:38:29  jsb]
[ ./kernel/i860/trap.c ]
From Paul Pierce: replaced with new version created from i386.
[91/06/17  13:37:26  jsb]
[ ./kernel/i860/trap.h ]
Cleaned up.
[91/06/17  10:21:15  jsb]
[ ./kernel/i860/ttrap.s ]
From prp: replaced entirely.
[91/06/17  13:35:50  jsb]
[ ./kernel/i860/user.s ]
Changes to copyin, copyout. Also added copy{in,out}msg aliases.
[91/06/17  10:30:42  jsb]
[ ./kernel/i860ipsc/autoconf.c ]
Changed to match i386ipsc autoconf.c.
[91/06/17  10:35:07  jsb]
[ ./kernel/i860ipsc/dcm_input.c ]
Removed bogus bcopy definition.
[91/06/17  15:28:56  jsb]

Updated for newer, faster internode IPC implementation.
[91/06/17  10:41:40  jsb]
[ ./kernel/i860ipsc/dcm_output.c ]
Updated for newer, faster internode IPC implementation.
[91/06/17  10:41:59  jsb]
[ ./kernel/i860ipsc/i860_init.c ]
From Paul Pierce: support for new boot protocol.
[91/06/17  13:33:44  jsb]
[ ./kernel/i860ipsc/intr.c ]
From Paul Pierce: replaced old dcm intr callouts with new.
[91/06/17  13:29:23  jsb]
[ ./kernel/i860ipsc/led.c ]
Added led_idle, led_active definitions.
[91/06/17  10:39:38  jsb]
[ ./kernel/intel/pmap.c ]
Fixed reference to XEOD_OFF_PH for i860ipsc dcm module.
[91/06/17  10:43:40  jsb]
[ ./kernel/ipc/ipc_init.c ]
Renamed NORMA conditionals.
[91/06/17  10:45:48  jsb]
[ ./kernel/ipc/ipc_kmsg.c ]
Renamed NORMA conditionals.
[91/06/17  10:45:05  jsb]
[ ./kernel/ipc/ipc_kmsg.h ]
Renamed NORMA conditionals.
[91/06/17  10:46:12  jsb]
[ ./kernel/ipc/ipc_mqueue.c ]
Renamed NORMA conditionals.
[91/06/17  10:44:39  jsb]
[ ./kernel/ipc/ipc_port.c ]
Renamed NORMA conditionals.
[91/06/17  10:44:21  jsb]
[ ./kernel/ipc/ipc_port.h ]
Renamed NORMA conditionals.
[91/06/17  10:44:06  jsb]
[ ./kernel/ipc/ipc_space.h ]
Renamed NORMA conditionals.
[91/06/17  10:45:36  jsb]
[ ./kernel/ipc/mach_msg.c ]
Renamed NORMA conditionals.
[91/06/17  10:46:35  jsb]
[ ./kernel/ipsc/dcmcom.c ]
Renamed NORMA conditionals. Updated i860 dcm_init().
[91/06/17  10:47:15  jsb]
[ ./kernel/ipsc/dev_forward_name.c ]
Renamed NORMA conditionals. Modified for non-integrated I/O nodes.
[91/06/17  13:48:13  jsb]
[ ./kernel/ipsc/node.c ]
Renamed NORMA conditionals. Redefined master node.
[91/06/17  10:48:32  jsb]
[ ./kernel/kern/ast.c ]
Renamed NORMA conditionals.
[91/06/17  10:48:46  jsb]
[ ./kernel/kern/bootstrap.c ]
Renamed NORMA conditionals.
[91/06/17  10:49:04  jsb]
[ ./kernel/kern/debug.c ]
Renamed NORMA conditionals.
[91/06/17  10:49:18  jsb]
[ ./kernel/kern/ipc_host.c ]
Renamed NORMA conditionals.
[91/06/17  10:49:34  jsb]
[ ./kernel/kern/ipc_kobject.c ]
Renamed NORMA conditionals. Added NORMA_VM support.
[91/06/17  13:46:55  jsb]
[ ./kernel/kern/ipc_mig.c ]
Renamed NORMA conditionals.
[91/06/17  10:50:07  jsb]
[ ./kernel/kern/ipc_tt.c ]
Renamed NORMA conditionals. Moved norma code to norma/kern_task.c.
[91/06/17  10:50:57  jsb]
[ ./kernel/kern/startup.c ]
Renamed NORMA conditionals.
[91/06/17  10:51:38  jsb]
[ ./kernel/kern/task.c ]
Added norma_task hooks. See norma/kern_task.c for code.
[91/06/17  10:53:30  jsb]
[ ./kernel/mach/memory_object.defs ]
If KERNEL and NORMA_VM, then use a userprefix (to allow interposition).
[91/06/17  10:55:06  jsb]
[ ./kernel/man/ddb.man ]
Added documentation for continue/c, match, search, and watchpoints.
I've not actually explained what a watchpoint is; maybe Rich can
do that (hint, hint).
[91/06/17  10:58:08  jsb]
[ ./kernel/norma/clport_ether.c ]
Use a less bogus conditional to enable code.
[91/06/17  10:59:36  jsb]
[ ./kernel/norma/ipc_defs.h ]
Moved here from ipc/ipc_cldefs.h.
[91/06/17  11:04:33  jsb]
[ ./kernel/norma/ipc_input.c ]
Moved here from ipc/ipc_clinput.c.
[91/06/17  11:02:28  jsb]
[ ./kernel/norma/ipc_kserver.c ]
Moved here from ipc/ipc_clkobject.c.
[91/06/17  11:05:35  jsb]
[ ./kernel/norma/ipc_output.c ]
Moved here from ipc/ipc_cloutput.c.
[91/06/17  11:06:38  jsb]
[ ./kernel/norma/ipc_packet.h ]
Moved here from ipc/ipc_clpacket.h.
[91/06/17  11:07:00  jsb]
[ ./kernel/norma/ipc_port.h ]
Moved here from ipc/ipc_clport.h.
[91/06/17  11:08:34  jsb]
[ ./kernel/norma/ipc_vm.c ]
Moved here from ipc/ipc_clvm.c.
[91/06/17  11:07:45  jsb]
[ ./kernel/norma/ipc_wait.c ]
Changed norma include.
[91/06/17  11:01:02  jsb]
[ ./kernel/norma/ipc_xxx.c ]
Moved here from ipc/ipc_clport.c.
[91/06/17  11:07:25  jsb]
[ ./kernel/norma/kern_task.c ]
Moved routines here from kern/ipc_tt.c and kern/task.c.
[91/06/17  11:01:51  jsb]
[ ./kernel/norma/xmm.c ]
First checkin.
[91/06/17  10:58:38  jsb]
[ ./kernel/norma/xmm_debug.c ]
First checkin.
[91/06/17  11:05:55  jsb]
[ ./kernel/norma/xmm_export.c ]
First checkin.
[91/06/17  11:06:11  jsb]
[ ./kernel/norma/xmm_import.c ]
First checkin.
[91/06/17  11:03:28  jsb]
[ ./kernel/norma/xmm_interpose.c ]
First checkin.
[91/06/17  11:08:05  jsb]
[ ./kernel/norma/xmm_invalid.c ]
First checkin.
[91/06/17  11:03:08  jsb]
[ ./kernel/norma/xmm_obj.h ]
First checkin.
[91/06/17  11:03:46  jsb]
[ ./kernel/norma/xmm_proxy.defs ]
First checkin.
[91/06/17  13:45:41  jsb]
[ ./kernel/norma/xmm_server.c ]
First checkin.
[91/06/17  11:05:10  jsb]
[ ./kernel/norma/xmm_server_rename.h ]
First checkin.
[91/06/17  11:09:08  jsb]
[ ./kernel/norma/xmm_split.c ]
First checkin.
[91/06/17  11:04:50  jsb]
[ ./kernel/norma/xmm_svm.c ]
First checkin.
[91/06/17  11:04:03  jsb]
[ ./kernel/norma/xmm_user.c ]
Renamed xmm_vm_object_lookup.
[91/06/17  13:20:06  jsb]

First checkin.
[91/06/17  11:02:47  jsb]
[ ./kernel/norma/xmm_user_rename.h ]
First checkin.
[91/06/17  11:08:51  jsb]
[ ./kernel/vm/memory_object.c ]
NORMA_VM: include xmm_server_rename.h, for interposition.
[91/06/17  11:09:52  jsb]
[ ./kernel/vm/vm_map.c ]
Renamed NORMA conditionals.
[91/06/17  11:11:13  jsb]
[ ./kernel/vm/vm_object.c ]
Added NORMA_VM support.
[91/06/17  15:28:16  jsb]
[ ./kernel/vm/vm_pageout.c ]
NORMA_VM: declare definitions for memory_object_data_{initialize,write}
since they won't be provided by interposed-on memory_object_user.h.
[91/06/17  11:13:22  jsb]
[ ./kernel/vm/vm_resident.c ]
Renamed NORMA conditionals. Fixed vm_page_rename implementation.
[91/06/17  11:25:16  jsb]
[ ./kernel/ipc/ipc_cldefs.h ]
Moved to norma/ipc_defs.h.
[ ./kernel/ipc/ipc_clinput.c ]
Moved to norma/ipc_input.c.
[ ./kernel/ipc/ipc_clkobject.c ]
Moved to norma/ipc_kserver.c.
[ ./kernel/ipc/ipc_cloutput.c ]
Moved to norma/ipc_output.c.
[ ./kernel/ipc/ipc_clpacket.h ]
Moved to norma/ipc_packet.h.
[ ./kernel/ipc/ipc_clport.c ]
Moved to norma/ipc_xxx.c.
[ ./kernel/ipc/ipc_clport.h ]
Moved to norma/ipc_clport.h.
[ ./kernel/ipc/ipc_clvm.c ]
Moved to norma/ipc_vm.c.
[ ./kernel/i860ipsc/dcm.c ]
Replaced by dcm_input.c and dcm_output.c.
    
    
    
==========================================================================
   ***** MK Version MK50  (jsb) *****
    
    
New copyright from Intel: i860, i860ipsc, i386ipsc, and ipsc directories
now contain freely distributable files. Unfortunately, the i386ipsc ethernet
driver is still encumbered, so I've stuffed it into its own directory,
i386ipsc/cnp.

Also picked up recent i860 fixes from Intel.

Bug fixes:
--- -----

[I860]	  Many.

Organizational changes:
-------------- -------

[I386]	  Moved i386ipsc/if_cnp.[ch] to i386ipsc/cnp/if_cnp.[ch].

Tested On:
------ --

[I386]	  dimitri (i386ipsc), ubik.

[I860]	  dimitri.

[PMAX]	  jsb.

Log Messages:
--- --------

[ ./conf/version.edit ]
50
[ ./kernel/conf/Makefile.template ]
Moved mach/proxy.defs to norma/xmm_proxy.defs.
[91/06/18  18:46:36  jsb]
[ ./kernel/conf/files.i386 ]
Moved i386ipsc/if_cnp.c into cnp subdirectory for licensing reasons.
[91/06/18  20:21:15  jsb]
[ ./kernel/conf/files.i860 ]
For now, use i860ipsc/usm.c instead of ipsc/usm.c.
[91/06/18  18:47:06  jsb]
[ ./kernel/device/dev_pager.c ]
Removed extra include of norma_vm.h.
[91/06/18  18:47:29  jsb]
[ ./kernel/i386ipsc/asm_startup.h ]
New copyright from Intel.
[91/06/18  20:05:19  jsb]
[ ./kernel/i386ipsc/autoconf.c ]
New copyright from Intel.
[91/06/18  20:05:31  jsb]
[ ./kernel/i386ipsc/bia.h ]
New copyright from Intel.
[91/06/18  20:05:41  jsb]
[ ./kernel/i386ipsc/cnp/if_cnp.c ]
Corrected include of if_cnp.h to reflect new i386ipsc/cnp directory.
[91/06/18  19:49:46  jsb]

Moved here from i386ipsc for licensing reasons.
[91/06/18  19:44:34  jsb]
[ ./kernel/i386ipsc/cnp/if_cnp.h ]
Moved here from i386ipsc for licensing reasons.
[91/06/18  19:45:04  jsb]
[ ./kernel/i386ipsc/conf.c ]
New copyright from Intel.
[91/06/18  20:05:51  jsb]
[ ./kernel/i386ipsc/dcm.h ]
New copyright from Intel.
[91/06/18  20:06:00  jsb]
[ ./kernel/i386ipsc/dcm_input.c ]
New copyright from Intel.
[91/06/18  20:06:09  jsb]
[ ./kernel/i386ipsc/dcm_output.c ]
New copyright from Intel.
[91/06/18  20:06:21  jsb]
[ ./kernel/i386ipsc/dcm_route.s ]
New copyright from Intel.
[91/06/18  20:06:30  jsb]
[ ./kernel/i386ipsc/iopl.c ]
New copyright from Intel.
[91/06/18  20:06:41  jsb]
[ ./kernel/i386ipsc/led.c ]
New copyright from Intel.
[91/06/18  20:06:51  jsb]
[ ./kernel/i386ipsc/model_dep.c ]
New copyright from Intel.
[91/06/18  20:07:00  jsb]
[ ./kernel/i386ipsc/pic_ipsc.c ]
New copyright from Intel.
[91/06/18  20:07:09  jsb]
[ ./kernel/i386ipsc/port.h ]
New copyright from Intel.
[91/06/18  20:07:23  jsb]
[ ./kernel/i386ipsc/scsi.h ]
New copyright from Intel.
[91/06/18  20:07:32  jsb]
[ ./kernel/i386ipsc/sd.c ]
New copyright from Intel.
[91/06/18  20:07:42  jsb]
[ ./kernel/i386ipsc/sd.h ]
New copyright from Intel.
[91/06/18  20:07:53  jsb]
[ ./kernel/i386ipsc/sdintr.c ]
New copyright from Intel.
[91/06/18  20:08:01  jsb]
[ ./kernel/i860/_setjmp.s ]
New code and copyright from Intel.
[91/06/18  18:48:26  jsb]
[ ./kernel/i860/ast.h ]
New copyright from Intel.
[91/06/18  18:48:39  jsb]
[ ./kernel/i860/bcopy.s ]
New code and copyright from Intel.
[91/06/18  18:49:00  jsb]
[ ./kernel/i860/cswitch.c ]
New copyright from Intel.
[91/06/18  18:49:12  jsb]
[ ./kernel/i860/db_disasm.c ]
New code and copyright from Intel.
[91/06/18  18:49:32  jsb]
[ ./kernel/i860/db_interface.c ]
New code and copyright from Intel.
[91/06/18  18:50:15  jsb]
[ ./kernel/i860/db_machdep.h ]
New copyright, and support for single stepping, from Intel.
[91/06/18  18:50:45  jsb]
[ ./kernel/i860/db_trace.c ]
New code and copyright from Intel.
[91/06/18  18:50:59  jsb]
[ ./kernel/i860/exec.c ]
New copyright from Intel. Corrected setting of regs.sp.
Printfs ifdef'd out.
[91/06/18  18:52:42  jsb]
[ ./kernel/i860/exec.h ]
New copyright from Intel.
[91/06/18  18:52:53  jsb]
[ ./kernel/i860/fpdefs.h ]
New copyright from Intel.
[91/06/18  18:53:12  jsb]
[ ./kernel/i860/fpeh.c ]
New code and copyright from Intel.
[91/06/18  18:53:32  jsb]
[ ./kernel/i860/fpehutila.s ]
New code and copyright from Intel.
[91/06/18  18:53:50  jsb]
[ ./kernel/i860/fpehutils.c ]
New code and copyright from Intel.
[91/06/18  18:54:12  jsb]
[ ./kernel/i860/genassym.c ]
New copyright from Intel.
[91/06/18  18:54:28  jsb]
[ ./kernel/i860/hardclock.c ]
New code and copyright from Intel.
[91/06/18  18:54:42  jsb]
[ ./kernel/i860/init.c ]
New copyright from Intel.
[91/06/18  18:55:41  jsb]
[ ./kernel/i860/ipl.h ]
New copyright from Intel.
[91/06/18  18:56:14  jsb]
[ ./kernel/i860/loose_ends.c ]
New copyright from Intel.
[91/06/18  18:56:25  jsb]
[ ./kernel/i860/mach_param.h ]
New copyright from Intel.
[91/06/18  18:56:40  jsb]
[ ./kernel/i860/machparam.h ]
New copyright from Intel.
[91/06/18  18:56:52  jsb]
[ ./kernel/i860/ntoh.s ]
New copyright from Intel.
[91/06/18  18:57:02  jsb]
[ ./kernel/i860/pcb.c ]
New copyright from Intel.
[91/06/18  18:57:14  jsb]
[ ./kernel/i860/phys.c ]
New copyright from Intel.
[91/06/18  18:57:26  jsb]
[ ./kernel/i860/pmap.h ]
New copyright from Intel.
[91/06/18  18:57:35  jsb]
[ ./kernel/i860/psl.h ]
New copyright from Intel.
[91/06/18  18:57:44  jsb]
[ ./kernel/i860/reg.h ]
New copyright from Intel. Fixed i860REGCOUNT definition.
[91/06/18  18:58:15  jsb]
[ ./kernel/i860/setjmp.h ]
New copyright from Intel.
[91/06/18  18:58:28  jsb]
[ ./kernel/i860/start.s ]
New code and copyright from Intel.
[91/06/18  18:58:42  jsb]
[ ./kernel/i860/state.h ]
New copyright from Intel.
[91/06/18  18:58:53  jsb]
[ ./kernel/i860/swapgeneric.c ]
New copyright from Intel.
[91/06/18  18:59:02  jsb]
[ ./kernel/i860/thread.h ]
New copyright from Intel.
[91/06/18  18:59:12  jsb]
[ ./kernel/i860/time_stamp.h ]
New copyright from Intel.
[91/06/18  18:59:22  jsb]
[ ./kernel/i860/trap.c ]
New copyright from Intel.
[91/06/18  18:59:43  jsb]
[ ./kernel/i860/trap.h ]
New copyright from Intel.
[91/06/18  18:59:54  jsb]
[ ./kernel/i860/ttrap.s ]
New copyright from Intel.
[91/06/18  19:00:11  jsb]
[ ./kernel/i860/user.s ]
New copyright from Intel.
[91/06/18  19:00:26  jsb]
[ ./kernel/i860/vm_tuning.h ]
New copyright from Intel.
[91/06/18  19:00:35  jsb]
[ ./kernel/i860/xpr.h ]
New copyright from Intel.
[91/06/18  19:00:44  jsb]
[ ./kernel/i860ipsc/autoconf.c ]
New copyright from Intel.
[91/06/18  19:00:55  jsb]
[ ./kernel/i860ipsc/conf.c ]
New copyright from Intel.
[91/06/18  19:01:05  jsb]
[ ./kernel/i860ipsc/ctlreg.h ]
New copyright from Intel.
[91/06/18  19:01:18  jsb]
[ ./kernel/i860ipsc/dcm_input.c ]
New copyright from Intel.
[91/06/18  19:01:38  jsb]

From Paul Pierce: first implementation of this module.
[91/01/07  10:49:00  jsb]
[ ./kernel/i860ipsc/dcm_output.c ]
New copyright from Intel.
[91/06/18  19:01:51  jsb]

From Paul Pierce: first implementation of this module.
[91/01/07  10:49:00  jsb]
[ ./kernel/i860ipsc/i860_init.c ]
New code and copyright from Intel.
[91/06/18  19:02:12  jsb]
[ ./kernel/i860ipsc/intr.c ]
New code and copyright from Intel.
[91/06/18  19:02:30  jsb]
[ ./kernel/i860ipsc/led.c ]
New code and copyright from Intel.
[91/06/18  19:02:45  jsb]
[ ./kernel/i860ipsc/nodehw.h ]
New copyright from Intel.
[91/06/18  19:02:57  jsb]
[ ./kernel/i860ipsc/spl.c ]
New code and copyright from Intel.
[91/06/18  19:03:22  jsb]
[ ./kernel/i860ipsc/spl.h ]
First checkin.
[91/06/18  19:04:29  jsb]
[ ./kernel/i860ipsc/usm.c ]
First checkin. Just a hack until ipsc/usm.c gets merged again.
[91/06/18  19:04:14  jsb]
[ ./kernel/ipsc/dcmcom.c ]
New copyright from Intel.
[91/06/18  19:04:41  jsb]
[ ./kernel/ipsc/dcmcom.h ]
New copyright from Intel.
[91/06/18  19:04:53  jsb]
[ ./kernel/ipsc/dev_forward_name.c ]
New copyright from Intel.
[91/06/18  19:05:03  jsb]
[ ./kernel/ipsc/node.c ]
New copyright from Intel.
[91/06/18  19:05:13  jsb]
[ ./kernel/ipsc/rtc.c ]
New copyright from Intel.
[91/06/18  19:05:32  jsb]
[ ./kernel/ipsc/usm.c ]
New copyright from Intel.
[91/06/18  19:05:52  jsb]
[ ./kernel/ipsc/usm.h ]
New copyright from Intel.
[91/06/18  19:06:07  jsb]
[ ./kernel/norma/xmm_obj.h ]
Removed bogus include.
[91/06/18  19:06:29  jsb]
[ ./kernel/sys/varargs.h ]
Moved i860 varargs code here from i860/i860_varargs.h, thanks to
new copyright from Intel.
[91/06/18  19:15:02  jsb]
    
    
    
==========================================================================
   ***** MK Version MK51  (rvb) *****
    
    
New features:
--- --------

[VAX]	We now support the VAXSTATION 3100.  This is a Vax processor
	with PMAX peripherals


Bug fixes:
--- -----

[SUN3]	  
[VAX]	  Now build again.  And I build a STD+BI+16 and discovered that
	  it could never have been built; it now can.



Organizational changes:
-------------- -------

Two big ones:

  1. Since the pmax and vaxstation 3100 now share the same devices and since
	we believe that in the future that machines will be made of off the
	shelf chips, we pulled out almost all of the files in mips/PMAX
	and moved them to either the scsi/ toplevel directory or the chips/
	toplevel directory.  Note also that scsi/ has an "adapters" 
	subdirectory.

  2. In setting up the chips/ directory, we puked over having to include
	"cputypes.h" so that we could differentiate some lines of code
	that were necessary for DECSTATIONS vs VAXSTATION.  So we globally
	changes cputypes.h to platforms.h.


Special notes:
------- -----

<Replace this text with any special information of interest for this version.>

******** CUT HERE ******** summary of log messages ******** CUT HERE ********
[ ./conf/version.edit ]
51
[ ./kernel/mips/PMAX/bt459.c ]
defunct; moved to chips/ or scsi/
[ ./kernel/mips/PMAX/bt459.h ]
defunct; moved to chips/ or scsi/
[ ./kernel/mips/PMAX/bt478.c ]
defunct; moved to chips/ or scsi/
[ ./kernel/mips/PMAX/bt478.h ]
defunct; moved to chips/ or scsi/
[ ./kernel/mips/PMAX/build_font.c ]
defunct; moved to chips/ or scsi/
[ ./kernel/mips/PMAX/cfb_hdw.c ]
defunct; moved to chips/ or scsi/
[ ./kernel/mips/PMAX/cfb_misc.c ]
defunct; moved to chips/ or scsi/
[ ./kernel/mips/PMAX/compat_30.h ]
defunct; moved to chips/ or scsi/
[ ./kernel/mips/PMAX/dc503.c ]
defunct; moved to chips/ or scsi/
[ ./kernel/mips/PMAX/dc503.h ]
defunct; moved to chips/ or scsi/
[ ./kernel/mips/PMAX/dz_7085.h ]
defunct; moved to chips/ or scsi/
[ ./kernel/mips/PMAX/dz_defs.h ]
defunct; moved to chips/ or scsi/
[ ./kernel/mips/PMAX/dz_hdw.c ]
defunct; moved to chips/ or scsi/
[ ./kernel/mips/PMAX/dz_tty.c ]
defunct; moved to chips/ or scsi/
[ ./kernel/mips/PMAX/if_se.c ]
defunct; moved to chips/ or scsi/
[ ./kernel/mips/PMAX/if_se.h ]
defunct; moved to chips/ or scsi/
[ ./kernel/mips/PMAX/if_se_mapped.c ]
defunct; moved to chips/ or scsi/
[ ./kernel/mips/PMAX/kernel_font.c ]
defunct; moved to chips/ or scsi/
[ ./kernel/mips/PMAX/kernel_font.data ]
defunct; moved to chips/ or scsi/
[ ./kernel/mips/PMAX/lk201.c ]
defunct; moved to chips/ or scsi/
[ ./kernel/mips/PMAX/lk201.h ]
defunct; moved to chips/ or scsi/
[ ./kernel/mips/PMAX/mapped_scsi.c ]
defunct; moved to chips/ or scsi/
[ ./kernel/mips/PMAX/mapped_scsi.h ]
defunct; moved to chips/ or scsi/
[ ./kernel/mips/PMAX/mc_clock.c ]
defunct; moved to chips/ or scsi/
[ ./kernel/mips/PMAX/mc_clock.h ]
defunct; moved to chips/ or scsi/
[ ./kernel/mips/PMAX/mouse.c ]
defunct; moved to chips/ or scsi/
[ ./kernel/mips/PMAX/pm_defs.h ]
defunct; moved to chips/ or scsi/
[ ./kernel/mips/PMAX/pm_hdw.c ]
defunct; moved to chips/ or scsi/
[ ./kernel/mips/PMAX/pm_misc.c ]
defunct; moved to chips/ or scsi/
[ ./kernel/mips/PMAX/rz.c ]
defunct; moved to chips/ or scsi/
[ ./kernel/mips/PMAX/rz.h ]
defunct; moved to chips/ or scsi/
[ ./kernel/mips/PMAX/rz_disk.c ]
defunct; moved to chips/ or scsi/
[ ./kernel/mips/PMAX/rz_disk_bbr.c ]
defunct; moved to chips/ or scsi/
[ ./kernel/mips/PMAX/rz_labels.h ]
defunct; moved to chips/ or scsi/
[ ./kernel/mips/PMAX/rz_tape.c ]
defunct; moved to chips/ or scsi/
[ ./kernel/mips/PMAX/screen.c ]
defunct; moved to chips/ or scsi/
[ ./kernel/mips/PMAX/screen.h ]
defunct; moved to chips/ or scsi/
[ ./kernel/mips/PMAX/screen_defs.h ]
defunct; moved to chips/ or scsi/
[ ./kernel/mips/PMAX/screen_switch.c ]
defunct; moved to chips/ or scsi/
[ ./kernel/mips/PMAX/screen_switch.h ]
defunct; moved to chips/ or scsi/
[ ./kernel/mips/PMAX/scsi.c ]
defunct; moved to chips/ or scsi/
[ ./kernel/mips/PMAX/scsi.h ]
defunct; moved to chips/ or scsi/
[ ./kernel/mips/PMAX/scsi2.h ]
defunct; moved to chips/ or scsi/
[ ./kernel/mips/PMAX/scsi_53C94.h ]
defunct; moved to chips/ or scsi/
[ ./kernel/mips/PMAX/scsi_53C94_hdw.c ]
defunct; moved to chips/ or scsi/
[ ./kernel/mips/PMAX/scsi_7061.h ]
defunct; moved to chips/ or scsi/
[ ./kernel/mips/PMAX/scsi_7061_hdw.c ]
defunct; moved to chips/ or scsi/
[ ./kernel/mips/PMAX/scsi_alldevs.c ]
defunct; moved to chips/ or scsi/
[ ./kernel/mips/PMAX/scsi_comm.c ]
defunct; moved to chips/ or scsi/
[ ./kernel/mips/PMAX/scsi_cpu.c ]
defunct; moved to chips/ or scsi/
[ ./kernel/mips/PMAX/scsi_defs.h ]
defunct; moved to chips/ or scsi/
[ ./kernel/mips/PMAX/scsi_disk.c ]
defunct; moved to chips/ or scsi/
[ ./kernel/mips/PMAX/scsi_jukebox.c ]
defunct; moved to chips/ or scsi/
[ ./kernel/mips/PMAX/scsi_optical.c ]
defunct; moved to chips/ or scsi/
[ ./kernel/mips/PMAX/scsi_printer.c ]
defunct; moved to chips/ or scsi/
[ ./kernel/mips/PMAX/scsi_rom.c ]
defunct; moved to chips/ or scsi/
[ ./kernel/mips/PMAX/scsi_scanner.c ]
defunct; moved to chips/ or scsi/
[ ./kernel/mips/PMAX/scsi_tape.c ]
defunct; moved to chips/ or scsi/
[ ./kernel/mips/PMAX/scsi_worm.c ]
defunct; moved to chips/ or scsi/
[ ./kernel/i386ipsc/if_cnp.c ]
if_cnp.? -> cnp/ & varargs to sys
[ ./kernel/i386ipsc/if_cnp.h ]
if_cnp.? -> cnp/ & varargs to sys
[ ./kernel/i860/i860_varargs.h ]
if_cnp.? -> cnp/ & varargs to sys
[ ./Directories/ALL ]
new: kernel/{chips,scsi{,/adapter},i386ipsc/cnp}
[ ./Directories/i386 ]
new: kernel/{chips,scsi{,/adapter},i386ipsc/cnp}
[ ./Directories/mips ]
new: kernel/{chips,scsi{,/adapter},i386ipsc/cnp}
[ ./Directories/vax ]
new: kernel/{chips,scsi{,/adapter},i386ipsc/cnp}
[ ./kernel/chips/bt459.c ]
File moved here from mips/PMAX since it tries to be generic.
[91/06/04            rvb]
[ ./kernel/chips/bt459.h ]
File moved here from mips/PMAX since it tries to be generic.
[91/06/04            rvb]
[ ./kernel/chips/bt478.c ]
File moved here from mips/PMAX since it tries to be generic.
[91/06/04            rvb]
[ ./kernel/chips/bt478.h ]
File moved here from mips/PMAX since it tries to be generic.
[91/06/04            rvb]
[ ./kernel/chips/build_font.c ]
File moved here from mips/PMAX since it tries to be generic;
it is used on the PMAX and the Vax3100.
[91/06/04            rvb]
[ ./kernel/chips/busses.c ]
File moved here from mips/PMAX since it tries to be generic;
it is used on the PMAX and the Vax3100.
[91/06/04            rvb]

Added check in configure_bus_master for device's controller# to match
the controller's unit#, if not wildcarded.
Also, made device->ctlr correct *before* calling the slave function.
[91/06/02            af]
[ ./kernel/chips/busses.h ]
File moved here from mips/PMAX since it tries to be generic;
it is used on the PMAX and the Vax3100.
[91/06/04            rvb]
[ ./kernel/chips/cfb_misc.c ]
File moved here from mips/PMAX since it tries to be generic.
[91/06/04            rvb]
[ ./kernel/chips/dc503.c ]
mips->DECSTATION; vax->VAXSTATION
[91/06/12  14:01:22  rvb]

File moved here from mips/PMAX since it tries to be generic;
it is used on the PMAX and the Vax3100.
[91/06/04            rvb]
[ ./kernel/chips/dc503.h ]
File moved here from mips/PMAX since it tries to be generic;
it is used on the PMAX and the Vax3100.
[91/06/04            rvb]
[ ./kernel/chips/dz_7085.h ]
mips->DECSTATION; vax->VAXSTATION
[91/06/12  14:01:26  rvb]

File moved here from mips/PMAX since it tries to be generic;
it is used on the PMAX and the Vax3100.
[91/06/04            rvb]

Split out machine specific details to machine/dev/dz_7085.h
[91/05/20            rvb]
[ ./kernel/chips/dz_defs.h ]
File moved here from mips/PMAX since it tries to be generic;
it is used on the PMAX and the Vax3100.
[91/06/04            rvb]
[ ./kernel/chips/dz_hdw.c ]
mips->DECSTATION; vax->VAXSTATION
[91/06/12  14:01:30  rvb]

	File moved here from mips/PMAX since it tries to be generic;
	it is used on the PMAX and the Vax3100.
[91/06/04            rvb]
[ ./kernel/chips/dz_tty.c ]
mips->DECSTATION; vax->VAXSTATION
[91/06/12  14:01:35  rvb]

	File moved here from mips/PMAX since it tries to be generic;
	it is used on the PMAX and the Vax3100.
[91/06/04            rvb]
[ ./kernel/chips/kernel_font.c ]
File moved here from mips/PMAX since it tries to be generic.
[91/06/04            rvb]
[ ./kernel/chips/kernel_font.data ]
	File moved here from mips/PMAX since it tries to be generic;
	it is used on the PMAX and the Vax3100.
[91/06/04            rvb]
[ ./kernel/chips/lance.c ]
mips->DECSTATION; vax->VAXSTATION
[91/06/12  14:01:39  rvb]

File moved here from mips/PMAX since it tries to be generic;
it is used on the PMAX and the Vax3100.
[91/06/04            rvb]
[ ./kernel/chips/lance.h ]
File moved here from mips/PMAX since it tries to be generic;
it is used on the PMAX and the Vax3100.
[91/06/04            rvb]
[ ./kernel/chips/lance_mapped.c ]
mips->DECSTATION; vax->VAXSTATION
[91/06/12  14:01:45  rvb]

File moved here from mips/PMAX since it tries to be generic;
it is used on the PMAX and could be used on the Vax3100.
[91/06/04            rvb]
[ ./kernel/chips/lk201.c ]
mips->DECSTATION; vax->VAXSTATION
[91/06/12  14:01:50  rvb]

File moved here from mips/PMAX since it tries to be generic;
it is used on the PMAX and the Vax3100.
[91/06/04            rvb]
[ ./kernel/chips/lk201.h ]
File moved here from mips/PMAX since it tries to be generic;
it is used on the PMAX and the Vax3100.
[91/06/04            rvb]
[ ./kernel/chips/mc_clock.c ]
mips->DECSTATION; vax->VAXSTATION
[91/06/12  14:01:54  rvb]

File moved here from mips/PMAX since it tries to be generic;
it is used on the PMAX and could be used on the Vax3100.
It would need a few ifdef vax & ifdef mips for the latter.
[91/06/04            rvb]
[ ./kernel/chips/mc_clock.h ]
File moved here from mips/PMAX since it tries to be generic.
[91/06/04            rvb]
[ ./kernel/chips/mouse.c ]
File moved here from mips/PMAX since it tries to be generic;
it is used on the PMAX and the Vax3100.
[91/06/04            rvb]
[ ./kernel/chips/pm_defs.h ]
mips->DECSTATION; vax->VAXSTATION
[91/06/12  14:01:57  rvb]

	File moved here from mips/PMAX since it tries to be generic;
	it is used on the PMAX and the Vax3100.
[91/06/04            rvb]
[ ./kernel/chips/pm_hdw.c ]
mips->DECSTATION; vax->VAXSTATION
[91/06/12  14:02:01  rvb]

File moved here from mips/PMAX since it tries to be generic;
it is used on the PMAX and the Vax3100.
[91/06/04            rvb]
[ ./kernel/chips/pm_misc.c ]
X support
[91/06/18  21:36:46  rvb]

mips->DECSTATION; vax->VAXSTATION
[91/06/12  14:02:05  rvb]

File moved here from mips/PMAX since it tries to be generic;
it is used on the PMAX and the Vax3100.
[91/06/04            rvb]
[ ./kernel/chips/screen.c ]
X support
[91/06/18  21:36:53  rvb]

mips->DECSTATION; vax->VAXSTATION
[91/06/12  14:02:09  rvb]

File moved here from mips/PMAX since it tries to be generic;
it is used on the PMAX and the Vax3100.
[91/06/04            rvb]
[ ./kernel/chips/screen.h ]
File moved here from mips/PMAX since it tries to be generic;
it is used on the PMAX and the Vax3100.
[91/06/04            rvb]
[ ./kernel/chips/screen_defs.h ]
File moved here from mips/PMAX since it tries to be generic;
it is used on the PMAX and the Vax3100.
[91/06/04            rvb]
[ ./kernel/chips/screen_switch.c ]
mips->DECSTATION; vax->VAXSTATION
[91/06/12  14:02:13  rvb]

File moved here from mips/PMAX since it tries to be generic;
it is used on the PMAX and the Vax3100.
[91/06/04            rvb]
[ ./kernel/chips/screen_switch.h ]
File moved here from mips/PMAX since it tries to be generic;
it is used on the PMAX and the Vax3100.
[91/06/04            rvb]
[ ./kernel/chips/vs42x_rb.h ]
Created, from the DEC specs:
"VS42X-RB Storage Controller, Engineering Specification"
January 1989, DEC Maynard Ma.
[91/04/23            af]
[ ./kernel/conf/MASTER.i386 ]
cputypes.h->platforms.h
[91/06/12  13:44:24  rvb]
[ ./kernel/conf/MASTER.i860 ]
cputypes.h->platforms.h
[91/06/12  13:44:33  rvb]
[ ./kernel/conf/MASTER.mips ]
dz got renamed dz_, because the driver was renamed.
[91/06/07            rvb]
[ ./kernel/conf/MASTER.sun3 ]
cputypes.h->platforms.h
[91/06/12  13:44:29  rvb]
[ ./kernel/conf/MASTER.vax ]
Support for VaxStation 3100
[91/06/07            rvb]
[ ./kernel/conf/files.mips ]
Most files in mips/PMAX got moved to scsi/ or chips/.
[91/06/07            rvb]
[ ./kernel/conf/files.vax ]
Support for VaxStation 3100
[91/06/07            rvb]
[ ./kernel/i386/cswitch.s ]
cputypes.h->platforms.h
[91/06/12  13:44:37  rvb]
[ ./kernel/i386/fpu.c ]
cputypes.h->platforms.h
[91/06/12  13:44:41  rvb]
[ ./kernel/i386/genassym.c ]
cputypes.h->platforms.h
[91/06/12  13:44:45  rvb]
[ ./kernel/i386/hardclock.c ]
cputypes.h->platforms.h
[91/06/12  13:44:49  rvb]
[ ./kernel/i386/interrupt.s ]
cputypes.h->platforms.h
[91/06/12  13:44:55  rvb]
[ ./kernel/i386/locore.s ]
cputypes.h->platforms.h
[91/06/12  13:44:59  rvb]
[ ./kernel/i386/pic.c ]
cputypes.h->platforms.h
[91/06/12  13:45:08  rvb]
[ ./kernel/i386/pic.h ]
cputypes.h->platforms.h
[91/06/12  13:45:13  rvb]
[ ./kernel/i386/pit.c ]
cputypes.h->platforms.h
[91/06/12  13:45:16  rvb]
[ ./kernel/i386/pit.h ]
cputypes.h->platforms.h
[91/06/12  13:45:21  rvb]
[ ./kernel/i386/setroot.c ]
cputypes.h->platforms.h
[91/06/12  13:45:24  rvb]
[ ./kernel/i386/start.s ]
cputypes.h->platforms.h
[91/06/12  13:45:27  rvb]
[ ./kernel/i386at/autoconf.c ]
cputypes.h->platforms.h
[91/06/12  13:45:33  rvb]
[ ./kernel/i386at/model_dep.c ]
cputypes.h->platforms.h
[91/06/12  13:45:37  rvb]
[ ./kernel/i386ipsc/model_dep.c ]
cputypes.h->platforms.h
[91/06/12  13:45:41  rvb]
[ ./kernel/kern/bootstrap.c ]
Ask for startup program to override default.
[91/06/18  21:39:17  rvb]
[ ./kernel/mips/PMAX/ga_hdw.c ]
The busses.h and other header files have moved to the "chips"
directory.
[91/06/07            rvb]
[ ./kernel/mips/PMAX/gq_hdw.c ]
The busses.h and other header files have moved to the "chips"
directory.
[91/06/07            rvb]
[ ./kernel/mips/PMAX/mips_box.c ]
The busses.h and other header files have moved to the "chips"
directory.
[91/06/07            rvb]
[ ./kernel/mips/PMAX/tc.c ]
The busses.h and other header files have moved to the "chips"
directory.
[91/06/07            rvb]
[ ./kernel/mips/autoconf.c ]
#ifdef PMAX -> #ifdef DECSTATION and we include <platforms.h>
[91/06/12  14:08:42  rvb]
[ ./kernel/mips/mach_param.h ]
#ifdef PMAX -> #ifdef DECSTATION and we include <platforms.h>
[91/06/12  14:08:46  rvb]
[ ./kernel/mips/mips_box.h ]
#ifdef PMAX -> #ifdef DECSTATION and we include <platforms.h>
[91/06/12  14:08:49  rvb]
[ ./kernel/mips/mips_init.c ]
#ifdef PMAX -> #ifdef DECSTATION and we include <platforms.h>
[91/06/12  14:09:50  rvb]

cons_enable() now takes an argument -- which should be 1.
[91/06/07            rvb]
[ ./kernel/mips/pmap.c ]
#ifdef PMAX -> #ifdef DECSTATION and we include <platforms.h>
[91/06/12  14:08:54  rvb]
[ ./kernel/mips/prom_interface.h ]
#ifdef PMAX -> #ifdef DECSTATION and we include <platforms.h>
[91/06/12  14:09:01  rvb]
[ ./kernel/scsi/compat_30.h ]
File moved here from mips/PMAX since it is now "MI" code, also
used by Vax3100 and soon -- the omron luna88k.
[91/06/04            rvb]
[ ./kernel/scsi/mapped_scsi.c ]
minor improvements
[91/06/18  21:34:58  rvb]

mips->DECSTATION; vax->VAXSTATION
[91/06/12  14:02:17  rvb]

File moved here from mips/PMAX since it is now "MI" code, also
used by Vax3100 and soon -- the omron luna88k.
[91/06/04            rvb]
[ ./kernel/scsi/mapped_scsi.h ]
File moved here from mips/PMAX since it is now "MI" code, also
used by Vax3100 and soon -- the omron luna88k.
[91/06/04            rvb]
[ ./kernel/scsi/rz.c ]
File moved here from mips/PMAX since it is now "MI" code, also
used by Vax3100 and soon -- the omron luna88k.
[91/06/04            rvb]
[ ./kernel/scsi/rz.h ]
File moved here from mips/PMAX since it is now "MI" code, also
used by Vax3100 and soon -- the omron luna88k.
[91/06/04            rvb]

A couple of macros were not fully parenthesized, which screwed
up the second scsi bus on Vaxen.  [This was the only bug in the
multi-bus code, amazing].
[91/05/30            af]
[ ./kernel/scsi/rz_disk.c ]
File moved here from mips/PMAX since it is now "MI" code, also
used by Vax3100 and soon -- the omron luna88k.
[91/06/04            rvb]
[ ./kernel/scsi/rz_disk_bbr.c ]
File moved here from mips/PMAX since it is now "MI" code, also
used by Vax3100 and soon -- the omron luna88k.
[91/06/04            rvb]
[ ./kernel/scsi/rz_labels.h ]
File moved here from mips/PMAX since it is now "MI" code, also
used by Vax3100 and soon -- the omron luna88k.
[91/06/04            rvb]
[ ./kernel/scsi/rz_tape.c ]
File moved here from mips/PMAX since it is now "MI" code, also
used by Vax3100 and soon -- the omron luna88k.
[91/06/04            rvb]
[ ./kernel/scsi/scsi.c ]
mips->DECSTATION; vax->VAXSTATION
[91/06/12  14:02:21  rvb]

	File moved here from mips/PMAX since it is now "MI" code, also
	used by Vax3100 and soon -- the omron luna88k.
[91/06/04            rvb]

	Printing of 'unsupported..' in scsi_slave was screwed cuz
	ui->mi and ui->unit could be bogus at that point in time.
[91/05/30            af]
[ ./kernel/scsi/scsi.h ]
File moved here from mips/PMAX since it is now "MI" code, also
used by Vax3100 and soon -- the omron luna88k.
[91/06/04            rvb]
[ ./kernel/scsi/scsi2.h ]
File moved here from mips/PMAX since it is now "MI" code, also
used by Vax3100 and soon -- the omron luna88k.
[91/06/04            rvb]
[ ./kernel/scsi/scsi_alldevs.c ]
File moved here from mips/PMAX since it is now "MI" code, also
used by Vax3100 and soon -- the omron luna88k.
[91/06/04            rvb]
[ ./kernel/scsi/scsi_comm.c ]
File moved here from mips/PMAX since it is now "MI" code, also
used by Vax3100 and soon -- the omron luna88k.
[91/06/04            rvb]
[ ./kernel/scsi/scsi_cpu.c ]
File moved here from mips/PMAX since it is now "MI" code, also
used by Vax3100 and soon -- the omron luna88k.
[91/06/04            rvb]
[ ./kernel/scsi/scsi_defs.h ]
File moved here from mips/PMAX since it is now "MI" code, also
used by Vax3100 and soon -- the omron luna88k.
[91/06/04            rvb]
[ ./kernel/scsi/scsi_disk.c ]
File moved here from mips/PMAX since it is now "MI" code, also
used by Vax3100 and soon -- the omron luna88k.
[91/06/04            rvb]
[ ./kernel/scsi/scsi_jukebox.c ]
File moved here from mips/PMAX since it is now "MI" code, also
used by Vax3100 and soon -- the omron luna88k.
[91/06/04            rvb]
[ ./kernel/scsi/scsi_optical.c ]
File moved here from mips/PMAX since it is now "MI" code, also
used by Vax3100 and soon -- the omron luna88k.
[91/06/04            rvb]
[ ./kernel/scsi/scsi_printer.c ]
File moved here from mips/PMAX since it is now "MI" code, also
used by Vax3100 and soon -- the omron luna88k.
[91/06/04            rvb]
[ ./kernel/scsi/scsi_rom.c ]
File moved here from mips/PMAX since it is now "MI" code, also
used by Vax3100 and soon -- the omron luna88k.
[91/06/04            rvb]
[ ./kernel/scsi/scsi_scanner.c ]
File moved here from mips/PMAX since it is now "MI" code, also
used by Vax3100 and soon -- the omron luna88k.
[91/06/04            rvb]
[ ./kernel/scsi/scsi_tape.c ]
File moved here from mips/PMAX since it is now "MI" code, also
used by Vax3100 and soon -- the omron luna88k.
[91/06/04            rvb]
[ ./kernel/scsi/scsi_worm.c ]
File moved here from mips/PMAX since it is now "MI" code, also
used by Vax3100 and soon -- the omron luna88k.
[91/06/04            rvb]
[ ./kernel/src/config/config.h ]
cputypes.h->platforms.h
[91/06/12  13:45:45  rvb]
[ ./kernel/src/config/config.l ]
cputypes.h->platforms.h
[91/06/12  13:45:50  rvb]
[ ./kernel/src/config/config.y ]
cputypes.h->platforms.h
[91/06/12  13:45:55  rvb]
[ ./kernel/src/config/main.c ]
cputypes.h->platforms.h
[91/06/12  13:46:00  rvb]
[ ./kernel/src/config/mkglue.c ]
cputypes.h->platforms.h
[91/06/12  13:46:04  rvb]
[ ./kernel/src/config/mkheaders.c ]
cputypes.h->platforms.h
[91/06/12  13:46:08  rvb]
[ ./kernel/src/config/mkioconf.c ]
cputypes.h->platforms.h
[91/06/12  13:46:13  rvb]
[ ./kernel/src/config/mkmakefile.c ]
cputypes.h->platforms.h
[91/06/12  13:46:20  rvb]
[ ./kernel/src/config/mkswapconf.c ]
cputypes.h->platforms.h
[91/06/12  13:46:26  rvb]
[ ./kernel/sun3/autoconf.c ]
cputypes.h->platforms.h
[91/06/12  13:46:30  rvb]
[ ./kernel/sun3/cpu.h ]
cputypes.h->platforms.h
[91/06/12  13:46:34  rvb]
[ ./kernel/sun3/map.s ]
cputypes.h->platforms.h
[91/06/12  13:46:38  rvb]
[ ./kernel/sun3/model_dep.c ]
cputypes.h->platforms.h
[91/06/12  13:46:41  rvb]
[ ./kernel/sun3/pmap.c ]
cputypes.h->platforms.h
[91/06/12  13:46:46  rvb]
[ ./kernel/sun3/sun_init.c ]
cputypes.h->platforms.h
[91/06/12  13:46:53  rvb]
[ ./kernel/sun3/trap.c ]
cputypes.h->platforms.h
[91/06/12  13:46:56  rvb]
[ ./kernel/sundev/mb.c ]
cputypes.h->platforms.h
[91/06/12  13:47:02  rvb]
[ ./kernel/sys/reboot.h ]
Second byte of boothowto is flags for "startup" program.
[91/06/18            rvb]
Add ifndef ASSEMBLER so that vax_init.s can include it.
[91/06/11            rvb]
[ ./kernel/vax/Locore.c ]
cputypes.h->platforms.h
[91/06/12  13:57:39  rvb]

Support for VaxStation 3100: cvax like VAX6x0
[91/06/04            rvb]
[ ./kernel/vax/autoconf.c ]
cputypes.h->platforms.h
[91/06/12  13:47:08  rvb]
[ ./kernel/vax/clock.c ]
cputypes.h->platforms.h
[91/06/12  13:57:41  rvb]

Support for VaxStation 3100: like Cvax II
[91/06/04            rvb]
[ ./kernel/vax/conf.c ]
X support
[91/06/18  21:36:41  rvb]

Support for VaxStation 3100: devices like DEC Station 3100
[91/06/04            rvb]
[ ./kernel/vax/cons.c ]
cputypes.h->platforms.h
[91/06/12  13:57:44  rvb]

Support for VaxStation 3100: NO STANDARD CONSOLE,
NO ROM PRINT CALLOUT, console is like the DEC Station 3100
[91/06/04            rvb]
[ ./kernel/vax/cons.h ]
cputypes.h->platforms.h
[91/06/12  13:47:17  rvb]
[ ./kernel/vax/cpmbx.h ]
cputypes.h->platforms.h
[91/06/12  13:57:47  rvb]

Support for VaxStation 3100: cvax like VAX6x0
[91/06/04            rvb]
[ ./kernel/vax/cpu_data.c ]
cputypes.h->platforms.h
[91/06/12  13:57:50  rvb]

Support for VaxStation 3100: new processor cvax + different
memory and bus.
[91/06/04            rvb]
[ ./kernel/vax/cpu_data.h ]
Support for VaxStation 3100: new processor number
[91/06/04            rvb]
[ ./kernel/vax/ka3100.c ]
cputypes.h->platforms.h
[91/06/12  13:57:52  rvb]

Support for VaxStation 3100: new processor cvax + different
memory and bus.
[91/06/04            rvb]

Created.
[91/05/24            rvb]
[ ./kernel/vax/ka3100.h ]
Support for VaxStation 3100: new processor cvax + different
memory and bus.
[91/06/04            rvb]

Created
[91/04/26            rvb]
[ ./kernel/vax/ka6200.c ]
cputypes.h->platforms.h
[91/06/12  13:47:56  rvb]
[ ./kernel/vax/ka630.c ]
cputypes.h->platforms.h
[91/06/12  13:48:01  rvb]
[ ./kernel/vax/ka630.h ]
cputypes.h->platforms.h
[91/06/12  13:48:11  rvb]
[ ./kernel/vax/ka650.c ]
cputypes.h->platforms.h
[91/06/12  13:48:15  rvb]
[ ./kernel/vax/ka7xx.c ]
cputypes.h->platforms.h
[91/06/12  13:49:49  rvb]
[ ./kernel/vax/ka820.c ]
cputypes.h->platforms.h
[91/06/12  13:49:53  rvb]
[ ./kernel/vax/ka8600.c ]
cputypes.h->platforms.h
[91/06/12  13:49:58  rvb]
[ ./kernel/vax/locore.s ]
Support for VaxStation 3100: new processor number added to tables
and ka42_<> interrupt trampoline.
[91/06/04            rvb]
[ ./kernel/vax/mem.h ]
cputypes.h->platforms.h
[91/06/12  13:50:01  rvb]
[ ./kernel/vax/model_dep.c ]
cputypes.h->platforms.h
[91/06/12  13:57:55  rvb]

Support for VaxStation 3100: new processor
[91/06/04            rvb]
[ ./kernel/vax/mtpr.h ]
cputypes.h->platforms.h
[91/06/12  13:50:07  rvb]
[ ./kernel/vax/nexus.h ]
cputypes.h->platforms.h
[91/06/12  13:50:11  rvb]
[ ./kernel/vax/qbus.c ]
cputypes.h->platforms.h
[91/06/12  13:50:15  rvb]
[ ./kernel/vax/scb.s ]
cputypes.h->platforms.h
[91/06/12  13:50:19  rvb]
[ ./kernel/vax/setroot.c ]
a kinder gentler setroot
[91/06/18  21:37:37  rvb]

Fix setroot for scsi device.
[91/06/11            rvb]
Support for VaxStation 3100: use rz disk and two digit
unit number
[91/06/04            rvb]
[ ./kernel/vax/vax_init.s ]
cputypes.h->platforms.h
[91/06/12  13:58:02  rvb]

VAX3100: Get device and mem_bitmap parameters from ultrix.
[91/06/11            rvb]
Support for VaxStation 3100: new processor number
[91/06/04            rvb]
[ ./kernel/vax/watch_chip.c ]
Support for VaxStation 3100:	shift two bits
[91/06/04            rvb]
[ ./kernel/vax/watch_chip.h ]
Support for VaxStation 3100:	shift two bits
[91/06/04            rvb]
[ ./kernel/vaxmba/mba.c ]
cputypes.h->platforms.h
[91/06/12  13:50:27  rvb]
[ ./kernel/vaxuba/ubareg.h ]
cputypes.h->platforms.h
[91/06/12  13:50:33  rvb]
[ ./kernel/vaxuba/ubavar.h ]
cputypes.h->platforms.h
[91/06/12  13:50:37  rvb]
[ ./kernel/vaxuba/uda_umd.c ]
cputypes.h->platforms.h
[91/06/12  13:50:44  rvb]
[ ./kernel/conf/MASTER.vax ]
Support for VaxStation 3100
[91/06/07            rvb]
[ ./kernel/conf/MASTER.mips ]
dz got renamed dz_, because the driver was renamed.
[91/06/07            rvb]
[ ./kernel/chips/lance.c ]
mips->DECSTATION; vax->VAXSTATION
[91/06/12  14:01:39  rvb]

File moved here from mips/PMAX since it tries to be generic;
it is used on the PMAX and the Vax3100.
[91/06/04            rvb]
[ ./kernel/chips/lance_mapped.c ]
mips->DECSTATION; vax->VAXSTATION
[91/06/12  14:01:45  rvb]

File moved here from mips/PMAX since it tries to be generic;
it is used on the PMAX and could be used on the Vax3100.
[91/06/04            rvb]
[ ./kernel/scsi/scsi_endian.h ]
Created.
[91/06/11            af]
[ ./kernel/conf/files.vax ]
Support for VaxStation 3100
[91/06/07            rvb]
[ ./kernel/conf/files.mips ]
Most files in mips/PMAX got moved to scsi/ or chips/.
[91/06/07            rvb]
[ ./kernel/conf/MASTER.vax ]
Support for VaxStation 3100
[91/06/07            rvb]
[ ./kernel/conf/MASTER.mips ]
dz got renamed dz_, because the driver was renamed.
ln got renamed se_, because the driver was renamed.
[91/06/07            rvb]
[ ./kernel/chips/lance.c ]
mips->DECSTATION; vax->VAXSTATION
[91/06/12  14:01:39  rvb]

File moved here from mips/PMAX since it tries to be generic;
it is used on the PMAX and the Vax3100.
[91/06/04            rvb]
[ ./kernel/chips/lance_mapped.c ]
mips->DECSTATION; vax->VAXSTATION
[91/06/12  14:01:45  rvb]

File moved here from mips/PMAX since it tries to be generic;
it is used on the PMAX and could be used on the Vax3100.
[91/06/04            rvb]
[ ./kernel/scsi/adapters/scsi_5380.h ]
From the NCR data sheets
"NCR 5380 Family, SCSI Protocol Controller Data Manual"
NCR Microelectronics Division, Colorado Spring, 6/98 T01891L
[91/04/21            af]
[ ./kernel/scsi/adapters/scsi_5380_hdw.c ]
mips->DECSTATION; vax->VAXSTATION
[91/06/12  14:02:28  rvb]

Created, from the NCR specs:
"NCR 5380 Family, SCSI Protocol Controller Data Manual"
NCR Microelectronics Division, Colorado Spring, 6/98 T01891L
and from code taken from the scsi_7061_hdw.c file
[91/04/23            af]
[ ./kernel/scsi/adapters/scsi_53C94.h ]
File moved here from mips/PMAX since it is now "MI" code, also
used by Vax3100 and soon -- the omron luna88k.
[91/06/04            rvb]
[ ./kernel/scsi/adapters/scsi_53C94_hdw.c ]
mips->DECSTATION; vax->VAXSTATION
[91/06/12  14:02:35  rvb]

	File moved here from mips/PMAX since it is now "MI" code, also
	used by Vax3100 and soon -- the omron luna88k.
[91/06/07            rvb]
[ ./kernel/scsi/adapters/scsi_7061.h ]
File moved here from mips/PMAX since it is now "MI" code, also
used by Vax3100 and soon -- the omron luna88k.
[91/06/04            rvb]
[ ./kernel/scsi/adapters/scsi_7061_hdw.c ]
File moved here from mips/PMAX since it is now "MI" code, also
used by Vax3100 and soon -- the omron luna88k.
[91/06/04            rvb]
[ ./kernel/conf/files.vax ]
Support for VaxStation 3100
[91/06/07            rvb]
[ ./kernel/conf/files.mips ]
Most files in mips/PMAX got moved to scsi/ or chips/.
[91/06/07            rvb]
[ ./kernel/sun3/setroot.c ]
gets() must be static to not conflict with kern/printf:gets()
[ ./kernel/scsi/adapters/scsi_5380.h ]
From the NCR data sheets
"NCR 5380 Family, SCSI Protocol Controller Data Manual"
NCR Microelectronics Division, Colorado Spring, 6/98 T01891L
[91/04/21            af]
[ ./kernel/scsi/adapters/scsi_5380_hdw.c ]
mips->DECSTATION; vax->VAXSTATION
[91/06/12  14:02:28  rvb]

Created, from the NCR specs:
"NCR 5380 Family, SCSI Protocol Controller Data Manual"
NCR Microelectronics Division, Colorado Spring, 6/98 T01891L
and from code taken from the scsi_7061_hdw.c file
[91/04/23            af]
[ ./kernel/scsi/adapters/scsi_53C94.h ]
File moved here from mips/PMAX since it is now "MI" code, also
used by Vax3100 and soon -- the omron luna88k.
[91/06/04            rvb]
[ ./kernel/scsi/adapters/scsi_53C94_hdw.c ]
mips->DECSTATION; vax->VAXSTATION
[91/06/12  14:02:35  rvb]

	File moved here from mips/PMAX since it is now "MI" code, also
	used by Vax3100 and soon -- the omron luna88k.
[91/06/07            rvb]
[ ./kernel/scsi/adapters/scsi_7061.h ]
File moved here from mips/PMAX since it is now "MI" code, also
used by Vax3100 and soon -- the omron luna88k.
[91/06/04            rvb]
[ ./kernel/scsi/adapters/scsi_7061_hdw.c ]
File moved here from mips/PMAX since it is now "MI" code, also
used by Vax3100 and soon -- the omron luna88k.
[91/06/04            rvb]
[ ./kernel/chips/pm_misc.c ]
X support
[91/06/18  21:36:46  rvb]

mips->DECSTATION; vax->VAXSTATION
[91/06/12  14:02:05  rvb]

File moved here from mips/PMAX since it tries to be generic;
it is used on the PMAX and the Vax3100.
[91/06/04            rvb]
[ ./kernel/chips/cfb_hdw.c ]
	File moved here from mips/PMAX since it tries to be generic.
[91/06/04            rvb]
[ ./kernel/vax/ka3100.c ]
Changes from sandro
[91/06/19            rvb]

	cputypes.h->platformsh.
[91/06/12            rvb]

Support for VaxStation 3100: new processor cvax + different
memory and bus.
[91/06/04            rvb]

Created.
[91/05/24            rvb]
[ ./kernel/vax/ka3100.h ]
Changes from sandro
[91/06/19            rvb]

Support for VaxStation 3100: new processor cvax + different
memory and bus.
[91/06/04            rvb]

Created
[91/04/26            rvb]
[ ./kernel/vax/setroot.c ]
gets() defined in kern/printf strikes again.

[ ./kernel/scsi/adapters/scsi_5380_hdw.c ]
Only one interrupt to be cleared on reset for now
[ ./kernel/scsi/adapters/scsi_5380_hdw.c ]
Don't allow disconnects for now.

[ ./kernel/vm/vm_resident.c ]
Add pmap_page_grap_phys_addr() so that we don't have to export vm_page_t.

[ ./kernel/chips/pm_misc.c ]
X support
[91/06/18  21:36:46  rvb]

mips->DECSTATION; vax->VAXSTATION
[91/06/12  14:02:05  rvb]

File moved here from mips/PMAX since it tries to be generic;
it is used on the PMAX and the Vax3100.
[91/06/04            rvb]
[ ./kernel/chips/pm_misc.c ]
X support
[91/06/18  21:36:46  rvb]

mips->DECSTATION; vax->VAXSTATION
[91/06/12  14:02:05  rvb]

File moved here from mips/PMAX since it tries to be generic;
it is used on the PMAX and the Vax3100.
[91/06/04            rvb]
[ ./kernel/vax/clock.c ]
funny thing: before you could not build STD+BI because ka650.h was necessary to define ssc
[ ./kernel/vax/locore.s ]
funny thing: before you could not build STD+BI because ka650.h was necessary to define ssc
[ ./kernel/vax/genassym.c ]
funny thing: before you could not build STD+BI because ka650.h was necessary to define ssc
[ ./kernel/vax/conf.c ]
X support
[91/06/18  21:36:41  rvb]

Support for VaxStation 3100: devices like DEC Station 3100
[91/06/04            rvb]
[ ./kernel/vax/ka3100.c ]
cputypes.h->platforms.h
[91/06/12  13:57:52  rvb]

Support for VaxStation 3100: new processor cvax + different
memory and bus.
[91/06/04            rvb]
    
    
    
==========================================================================
   ***** MK Version MK52  (rvb) *****
    
    
THESE CHANGES ARE MIPS AND VAX ONLY.

Mainly we forgot to export the include files into the release/chips and release/scsi
directories that had been in release/mips/PMAX.  This means trouble for the
unix server and other users of release.

Also a few tweaks from sandro for mips.

NOTE: only the 3100 platforms were compiled for.

ALSO NOTE: on the previous release MK51, we build for
	sun3, i386, sqt, mips, vax6bb and r2d2.  We
	tested on mips and vax6bb.


[ ./conf/version.edit ]
52
[ ./kernel/mips/busses.c ]
defunct; now in chips
[ ./kernel/mips/busses.h ]
defunct; now in chips
[ ./kernel/mips/busses.c ]
defunct; now in chips
[ ./kernel/mips/busses.h ]
defunct; now in chips
[ ./kernel/mips/start.s ]
Make it assemble with the 2.1 compiler
[ ./kernel/mips/PMAX/boot/c_misc.c ]
Scsi include files have moved, plus we use BSD label defs
from disk_status.h
[91/06/20            af]
[ ./kernel/mips/PMAX/boot/mkboot.c ]
Scsi include files have moved, plus we use BSD label defs
from disk_status.h
[91/06/20            af]
[ ./include/Makefile ]
Account for the new chips/ and scsi/ directories.
[ ./include/Makefile ]
Account for new scsi/ and chips/ directories.

    
    
    
==========================================================================
   ***** MK Version MK53  (rvb) *****
    
    
Bug fixes:
--- -----
Organizational changes:
-------------- -------
[VAX]
[PMAX]
	Well, the last release defuncted busses.[ch] from the mips/PMAX/ 
directory and as luck would have it there was still one reference in the tree
to it.

******** CUT HERE ******** summary of log messages ******** CUT HERE ********
[ ./conf/version.edit ]
53
[ ./kernel/chips/busses.c ]
Sigh, busses.h really is in chips/ and until MK52 it was also in
mips/

    
    
    
==========================================================================
   ***** MK Version MK54  (rpd) *****
    
    
New features:
--- --------

Mig now understands a new option, "-sheader <file>", which causes
it to output a header file containing declarations/prototypes
of server-side functions.  I restored the prototypes in the standard
header file ("-header <file>"), which contains declarations
for the user-side stubs.

I removed some old code which caused Mig to produce
an "init_<module>" function in the user file.  It hasn't done
anything in a long time and nobody should be calling it.

I hacked Mig to use the type "ipc_port_t" instead of "mach_port_t"
in appropriate places when generating files for the kernel.
This way prototypes use the right type and I could remove
a bunch of casts from the kernel, especially in the vm system.


Bug fixes:
--- -----

I fixed a bug in the message-buffer caching code from MK43.

I picked up a fix from dlb for no-op assignments of threads
to processor sets.

In MK47, I changed the kernel so that syscall forms of kernel RPCs
return MACH_SEND_INTERRUPTED to indicate that libmach should retry.
In this merge, I made the companion fix to libmach to check
for MACH_SEND_INTERRUPTED instead of any non-success return code.
A Unix server built with this release won't work on pre-MK47 kernels.

I picked up some minor changes from jsb so that the norma/
directory is only used when building NORMA configurations.

[VAX]	  I fixed files in the chips/ and scsi/ directories
so that they compile with gcc.  I fixed a problem with the recent
vaxstation support that screwed up r2d2.

[I386]	  A minor fix so that STD+WS+TEST works.
I added kernel/src/makeboot to the appropriate Directories/ files.

[PMAX]    I fixed the mips/PMAX/boot/ directory so that people
without dot in their paths can build it.


Special notes:
------- -----

I tested the following configurations:

vax	STD+VAX6bb+gcc			nova, sf
	STD+16+fixpri+VAX6bb+BI+de+gcc	r2d2
i386	STD+WS				waldo
	STD+SQT+32			boris
	STD+iPSC+NORMA			dimitri
sun3	STD+SWS				rocky
pmax	STD+ANY				rpd
    
    
    
==========================================================================
   ***** MK Version MK55  (jsb) *****
    
    
Bug fixes:
--- -----

NORMA_VM:	Eliminated leaks; cleaned up implementation.

NORMA_IPC:	Improved buffer management code.

New features:
--- --------

From David Black: memory_object_data_supply, and generalization
of NORMA_IPC page list technology. Code currently turned off
by default. More details when I pick up the rest of David's work.

Special notes:
------- -----

Built for and tested on
	ubik		i386		STD+WS
	jsb		pmax		STD+ANY
	dimitri		i386ipsc	STD+iPSC+NORMA

Build, not tested:
			vax		STD+16+fixpri+VAX6bb+BI+de
			sun3		STD+SWS


I could not build

	STD+16+fixpri+VAX6bb+BI+de+gcc

because the build died on gcc -ES ... locore.s. It looks like gcc doesn't
know what a '-ES' means. (Perhaps ius3 has an old gcc?)

Log messages:
--- --------

[ ./conf/version.edit ]
55
[ ./kernel/ddb/db_command.c ]
Added support for 'show all slocks'.
[91/06/29  15:59:01  jsb]
[ ./kernel/i386ipsc/autoconf.c ]
Call ask_bootstrap_server.
[91/06/29  16:39:11  jsb]
[ ./kernel/i386ipsc/dcm_input.c ]
Use clport_page_grab instead of vm_page_grab.
Removed bogus null definition of clport_replenish.
[91/06/29  16:08:08  jsb]
[ ./kernel/i386ipsc/model_dep.c ]
Temporary hack to prevent kernel text and data from being used
as free memory.
[91/06/29  17:48:16  jsb]
[ ./kernel/i386ipsc/sd.c ]
Replaced first_sdopen_ever with sd_initialized.
[91/06/29  16:09:42  jsb]
[ ./kernel/i386ipsc/sdintr.c ]
Replace "Wrong direction DATAOUT" assertion with printf.
I seem to hit this a lot when running a STD+iPSC+NORMA+TEST kernel.
[91/06/29  16:13:34  jsb]
[ ./kernel/i860ipsc/autoconf.c ]
Call ask_bootstrap_server.
[91/06/29  16:39:30  jsb]
[ ./kernel/ipc/ipc_kmsg.c ]
From David Black at OSF: generalized page list support.
[91/06/29  16:29:29  jsb]
[ ./kernel/ipsc/dcmcom.c ]
Implemented clport_replenish and clport_page_grab.
[91/06/29  16:49:46  jsb]
[ ./kernel/ipsc/node.c ]
Removed master_node(). Added ask_bootstrap_server.
[91/06/29  16:32:06  jsb]
[ ./kernel/ipsc/usm.c ]
Fixed usmopen to call ttychars with the tty unlocked.
[91/06/29  16:33:36  jsb]
[ ./kernel/kern/bootstrap.c ]
Removed notion of master/slave. Instead, refuse to start up
a bootstrap task whenever startup_name is null.
[91/06/29  16:48:14  jsb]
[ ./kernel/kern/ipc_kobject.h ]
For NORMA_VM: added IKOT_XMM_PAGER, for memory_objects mapped only
by other kernels.

From David Black at OSF: added ipc_kobject_vm_special.
[91/06/29  14:33:34  jsb]
[ ./kernel/kern/lock.c ]
Implemented db_show_all_slocks.
[91/06/29  16:52:53  jsb]
[ ./kernel/mach/mach.defs ]
From David Black at OSF: added memory_object_data_supply.
[91/06/29  14:59:47  jsb]
[ ./kernel/mach/memory_object.defs ]
From David Black at OSF: added memory_object_supply_completed
and memory_object_data_return.
[91/06/29  14:54:47  jsb]
[ ./kernel/mach/memory_object_default.defs ]
If KERNEL and NORMA_VM, then use a userprefix (to allow interposition).
[91/06/29  16:35:53  jsb]
[ ./kernel/norma/ipc_kserver.c ]
Changes for new vm_map_copy_t definition.
[91/06/29  16:38:27  jsb]
[ ./kernel/norma/ipc_output.c ]
Changes for new vm_map_copy_t definition.
Locking changes in ipc_clport_send.
[91/06/29  15:06:45  jsb]
[ ./kernel/norma/ipc_vm.c ]
Changes for new vm_map_copy_t definition.
[91/06/29  15:08:54  jsb]
[ ./kernel/norma/ipc_xxx.c ]
Some locking changes.
[91/06/29  15:10:46  jsb]
[ ./kernel/norma/xmm.c ]
Removed non-KERNEL code.
Replaced Xobj_allocate with xmm_obj_allocate.
Added xmm_obj_deallocate.
Use per-class zone for obj allocation.
[91/06/29  15:21:33  jsb]
[ ./kernel/norma/xmm_debug.c ]
Collect garbage. Return valid return values.
[91/06/29  15:25:16  jsb]
[ ./kernel/norma/xmm_export.c ]
Fixed object importation protocol.
Corrected declaration of _proxy_lock_completed.
[91/06/29  15:28:46  jsb]
[ ./kernel/norma/xmm_import.c ]
Fixed object importation protocol. Return valid return values.
[91/06/29  15:30:10  jsb]
[ ./kernel/norma/xmm_interpose.c ]
Collect garbage. Return valid return values.
[91/06/29  15:31:20  jsb]
[ ./kernel/norma/xmm_invalid.c ]
Added declaration of invalid_mclass, for debugging use.
[91/06/29  15:32:54  jsb]
[ ./kernel/norma/xmm_obj.h ]
Removed malloc, free definitions.
Added xmm_decl macro.
Renamed Xobj_allocate to xmm_obj_allocate.
Added zone element to xmm_class structure.
[91/06/29  14:41:25  jsb]
[ ./kernel/norma/xmm_server.c ]
Added support for memory_object_create.
Now export normal memory_object_init with standard arguments.
Improved object initialization logic.
Added garbage collection.
[91/06/29  15:39:01  jsb]
[ ./kernel/norma/xmm_split.c ]
Use zone for requests.
[91/06/29  15:34:20  jsb]
[ ./kernel/norma/xmm_svm.c ]
Now allow objects to grow in size (as temporary objects do).
Merged user_t and kobj structures. Do garbage collection.
Now pass up all set_attribute calls, not just first.
Use zone for request structures.
[91/06/29  15:43:16  jsb]
[ ./kernel/norma/xmm_user.c ]
Collect garbage. Support memory_object_create.
Disassociate kobj from memory_control before calling
memory_object_terminate to prevent upcalls on terminated kobj.
[91/06/29  15:51:50  jsb]
[ ./kernel/vm/memory_object.c ]
21-Jun-91 David L. Black (dlb) at Open Software Foundation
Add memory_object_data_supply.
[91/06/29  16:36:43  jsb]
[ ./kernel/vm/vm_fault.c ]
Changed remaining pager_* references to memory_object_*.
[91/06/29  16:26:22  jsb]
[ ./kernel/vm/vm_map.c ]
20-Jun-91 David L. Black (dlb) at Open Software Foundation
Add support for page list format map copies.  NORMA/CLPORT code
will be cut over later.

18-Jun-91 David L. Black (dlb) at Open Software Foundation
Convert to use multiple format map copies.
[91/06/29  16:37:03  jsb]
[ ./kernel/vm/vm_map.h ]
18-Jun-91 David L. Black (dlb) at Open Software Foundation
	Declarations for multiple-format vm map copy support.
[91/06/29  14:36:42  jsb]
[ ./kernel/vm/vm_object.c ]
Improved NORMA_VM support, including support for memory_object_create.
[91/06/29  17:06:11  jsb]
[ ./kernel/vm/vm_page.h ]
28-Jun-91 David L. Black (dlb) at Open Software Foundation
Change unused was_absent field to precious field.

21-Jun-91 David L. Black (dlb) at Open Software Foundation
Remove extraneous include of kern/thread.h.
[91/06/29  14:39:05  jsb]
[ ./kernel/vm/vm_pageout.c ]
18-Jun-91 David L. Black (dlb) at Open Software Foundation
Add missing includes of vm/vm_map.h and kern/thread.h.
[91/06/29  16:53:36  jsb]
[ ./kernel/vm/vm_resident.c ]
Removed accidently merged hack.
[91/06/29  17:47:21  jsb]

20-Jun-91 David L. Black (dlb) at Open Software Foundation
Need vm_page_replace in all configurations.
[91/06/29  16:37:31  jsb]
[ ./kernel/vm/memory_object.c ]
Changed mach_port_t to ipc_port_t in memory_object_data_supply.
    
    
    
==========================================================================
   ***** MK Version MK56  (danner) *****
    
    
New features:
--- --------

The purpose of this release is essentially to get the luna88k code
under source control. Other minor upgrades occured in the process. The
code is incomplete and currently broken. 

The luna build environment is still less than ideal. If your are
interested in building such kernels, please contact me or bob.

The software single step code is now smart enough to avoid putting
breakpoints directly after unconditional flow transfer instructions.
This causes problems on both the pmax and luna. 

DDB can now take a table of machine specific commands to be installed
in addition to the normal commands under the command prefix "machine".
This necessitated some changes to the ddb header files. See
luna88k/db_interface.c for a use of the functionality.

The SSSCSI (Sandro Spiffy SCSI) code now understands dec, omron and
bsd labels, which form a maze of disk labels, all alike.

Copyrights on the omron code are somewhat suspect, and I expect I
caused retrograde motion on several MI file copyrights. Apologies in
advance.

Built on amalia.mach (luna), and booted single, dual, and quad cpu.
Works as well as ever. (gets through SCSI autoconfig, finds paging
file, dies).

Built and booted on rvb4.mach.cs.cmu.edu (Decstation 5000). DDB
changes tested. Comes up multiuser.

Built STD+VAX6bb on sf.mach.cs.cmu.edu. 

Bug fixes:
--- -----

Organizational changes:
-------------- -------

A bunch of luna specific directories were created.

Special notes:
------- -----

I created an new version of the utils/mktree.sh script that is used to
create kernel trees. Gratitously replicated directory creation code
has been collapsed to loops. Until Mary or someone can figure out how
to install this in its proper place
(/afs/cs/project/mach-7/mk/bin/mktree), please manually pull the script
out of /afs/cs/project/mach-7/mk/src/latest/utils/mktree.sh. 

******** CUT HERE ******** summary of log messages ******** CUT HERE ********
[ ./conf/version.edit ]
56
[ ./kernel/mach/luna88k/thread_status.h ]
Initial Checkin
[91/06/26  12:40:20  danner]
[ ./kernel/mach/luna88k/vm_param.h ]
Initial Checkin
[91/06/26  12:40:27  danner]

Added some macros which be related to m88k segment.
[89/08/16            kick]

Changed the vax declarations for M88000.
note: incomplete MIN_ADDRESS, MAX_ADDRESS and STACH_SIZE.
[89/08/12            kick]
[ ./kernel/mach/luna88k/vm_types.h ]
Initial Checkin
[91/06/26  12:40:33  danner]
[ ./kernel/src/config/config.h ]
Luna88k support.
[91/06/26            danner]
[ ./kernel/src/config/config.l ]
Luna88k support.
[91/06/26            danner]
[ ./kernel/src/config/config.y ]
Luna88k support.
[91/06/26            danner]
[ ./kernel/src/config/main.c ]
Luna88k support.
[91/06/26            danner]
[ ./kernel/src/config/mkglue.c ]
Luna88k support.
[91/06/26            danner]
[ ./kernel/src/config/mkheaders.c ]
Luna88k support.
[91/06/26            danner]
[ ./kernel/src/config/mkioconf.c ]
Luna88k support.
[91/06/26            danner]
[ ./kernel/src/config/mkmakefile.c ]
Luna88k support.
[91/06/26            danner]
[ ./kernel/src/config/mkswapconf.c ]
Added support for null ioconf.c for luna88k.
[91/07/08  16:16:56  danner]
[ ./utils/mktree.sh ]
Added luna88k support.
Reorganized code to use loops instead of endlessly repeated code.
[91/06/26            danner]
[ ./kernel/mips/mips_instruction.c ]
Add inst_unconditional_flow_transfer to support ddb.
[91/07/09            danner]
[ ./kernel/mips/mips_instruction.c ]
Fixed bug in inst_unconditional_flow_transfer.
[ ./kernel/conf/files.vax ]
Added scsi/rz_labels.c
[91/07/09            danner]
[ ./Directories/luna88k ]
Few more luna specific directories.
[91/06/26  11:25:53  danner]

	Created from Mips
[91/06/26            danner]

 
[ ./kernel/Makeconf ]
Luna88k support.
[91/06/26            danner]
[ ./kernel/Makefile ]
Luna88k support.
[91/06/26            danner]
[ ./kernel/conf/MASTER ]
Added support for luna88k (pseudo-device cpus 4).
[91/05/06            danner]
[ ./kernel/conf/MASTER.luna88k ]
Created

 Revision 2.2  91/04/05  13:53:25  mbj
 	Stripped out all vax stuff
 	[91/03/17  22:49:26  rvb]
 
 Revision 2.1  91/03/07  12:06:45  rvb
 to 2.1
 
[ ./kernel/conf/Makefile.luna88k ]
Created
[91/06/26  10:58:58  danner]
[ ./kernel/conf/devices.luna88k ]
Created

 Revision 2.2  91/04/05  13:55:17  mbj
 	install on branch too
 	[91/03/17  22:54:22  rvb]
 
[ ./kernel/conf/files.luna88k ]
Added scsi/rz_labels.c
[91/07/08  22:55:54  danner]

Initial Checkin

 Revision 2.2  91/04/05  13:55:21  mbj
 	No more db_obsolete.
 	[91/03/15  18:04:58  rvb]
 
 	Added kern/printf.c (on mach_kdb) to support ddb.
 	Added db_obsolete.c in support of iprintf.c
 	[91/03/14            danner]
 
 	Added ddb support files; obsoleted kdb which never 
 	was in use
 	[91/03/08            danner]
 
[ ./kernel/conf/files.mips ]
Added scsi/rz_labels.c to support new label technology.

[ ./kernel/ddb/db_aout.c ]
On luna, kdb_init needs to be called ddb_init. Add ifndef
 DB_SYMBOLS_PRELOADED for machines that use a.out format but
 whose prom loaders load generously load the symbol table.
[91/07/08            danner]
[ ./kernel/ddb/db_break.c ]
Conditionalized db_map_addr to work right on the luna. Used a
 ifdef luna88k. This is evil, and needs to be fixed.
[91/07/08            danner]
[ ./kernel/ddb/db_command.c ]
Modified the command loop to include the cpu number in the
 command prompt on multicpu machines, and node number in norma
      systems.
[91/04/12            danner]
[ ./kernel/ddb/db_command.h ]
Grabbed up to date copyright.
[91/07/08            danner]
[ ./kernel/ddb/db_input.c ]
Add include of machine/db_machdep.h to allow machine-specific
 overrides via defines.
[91/07/08            danner]
[ ./kernel/ddb/db_output.c ]
Include machine/db_machdep.c.
When db_printf is invoked, call db_printing on luna. This is used
 to trigger a screen clear. Under luna88k conditional.
[91/07/08            danner]
[ ./kernel/ddb/db_print.c ]
Fixed a few printf that should be db_printfs. 
[91/07/08            danner]
[ ./kernel/ddb/db_run.c ]
Added logic to db_set_single_step not to set a breakpoint at the
 next sequential instruction if the current instruction is an
 unconditional transfer of flow of control instruction. This
 avoids problems with the debugger overwriting data or clobbering
 routines that the debugger itself might need. This is determined
 by calling the predicate inst_unconditional_flow_transfer. This
 predicate now needs to be defined for all architectures using
 the software single step. 

     Added include of ddb/db_run.h, where all the STEP defines have been
      moved.
 
[91/07/08            danner]
[ ./kernel/ddb/db_run.h ]
Broken out of db_run.c because I needed access to the step mode in the 
machine dependent luna88k debugger code.
[91/07/09  00:47:31  danner]
[ ./kernel/ddb/db_sym.c ]
Changed a printf.
[91/07/08            danner]
[ ./kernel/device/tty.h ]
   Added omron tty specific flags; conditionalized under luna88k.
[91/05/25            danner]
[ ./kernel/kern/debug.c ]
Luna88k support.
[91/06/26            danner]
[ ./kernel/luna88k/asm.h ]
Initial 3.0 Checkin
[91/06/26  11:57:57  danner]
[ ./kernel/luna88k/asm_macro.h ]
Initial Checkin. Currently unused. In fact, I'm not sure where
 this file came from.
[91/07/08            danner]
[ ./kernel/luna88k/ast.h ]
Taken from mips.
[91/07/08            danner]
[ ./kernel/luna88k/ast_types.h ]
3.0 Initial Checkin
[91/07/09  10:26:02  danner]
[ ./kernel/luna88k/autoconf.c ]
cputypes.h -> platforms.h
[91/06/24            danner]

Butchered for 3.0
[91/05/06            danner]
[ ./kernel/luna88k/board.h ]
Initial 3.0 Checkin
[91/06/26  11:58:14  danner]
[ ./kernel/luna88k/clock.c ]
cputypes.h -> platforms.h
[91/06/24            danner]

Butchered for 3.0
[91/05/06            danner]
[ ./kernel/luna88k/clock.h ]
Added CLOCK_INTR_HZ, the frequency of the system interrupt clock.
[91/05/10            danner]
[ ./kernel/luna88k/cmmu.c ]
Initial 3.0 Checkin
[91/06/26  11:58:39  danner]
[ ./kernel/luna88k/conf.c ]
Initial 3.0 Checkin
[91/06/26  11:58:45  danner]
[ ./kernel/luna88k/cpu.h ]
Initial 3.0 Checkin
[91/06/26  11:58:51  danner]
[ ./kernel/luna88k/cpu_number.h ]
Created for luna.
[91/07/08            danner]
[ ./kernel/luna88k/db_disasm.c ]
Initial 3.0 Checkin
[91/06/26  12:01:05  danner]
[ ./kernel/luna88k/db_interface.c ]
Picked up include of assym.s
[91/07/09            danner]

Added printing of epsr, vector to frame printing routine. Disabled
      frame crawling support, since locore support is gone.
[91/07/08            danner]

Changed db_interface to use ENTRY_ASM in gimmeabreak.
[91/07/08            danner]
Conditionalized db_read_bytes, db_write_bytes to deal with
 unitialized pmap subsystem.
[91/05/13            danner]
[ ./kernel/luna88k/db_machdep.h ]
Removed unnecessary include of assym.s
[91/07/09            danner]

Purged 2.5 RCS log. Added ENTRY_ASM for neatness.
[91/07/08            danner]

Added include of assym.s (really a C header file).
[91/07/05            danner]
Initial 3.0 Checkin
[91/06/26  11:59:14  danner]
[ ./kernel/luna88k/db_sstep.c ]
Initial 3.0 Checkin
[91/06/26  11:59:21  danner]
[ ./kernel/luna88k/db_trace.c ]
Initial 3.0 Checkin
[91/06/26  11:59:31  danner]
[ ./kernel/luna88k/exec.c ]
Created (borrowed from Sandro)
[91/05/10            danner]
[ ./kernel/luna88k/genassym.c ]
Added generation of ENTRY_ASM, the assembly instruction to
 enter the debugger.
[91/07/08            danner]

Added THREAD_SWAP_FUNC for switch_to_shutdown_context
[91/06/25            danner]
[ ./kernel/luna88k/jtermio.h ]
Initial 3.0 Checkin
[91/06/26  11:59:47  danner]
[ ./kernel/luna88k/lock.h ]
Created.
[91/06/24            danner]
[ ./kernel/luna88k/locore/asm_utils.h ]
Initial 3.0 Checkin
[91/06/26  11:59:58  danner]
[ ./kernel/luna88k/locore/debug_msg.c ]
Initial 3.0 Checkin
[91/06/26  12:00:05  danner]
[ ./kernel/luna88k/locore/eh.c ]
Reorganized to support stack handoff. All exceptions from user
 mode now store registers in the pcb in the thread structure.
 This has increased ugliness, esp. in the case when turning on
 the FPU causes an exception.

Removed stack crawling support because the exception frame is now
 not always on the stack. Sigh

     Still a bug in cleaning up DMT0. 
[91/07/04            danner]
Upgraded to last pre_trap and pre_ext_int technology
[91/05/13            danner]
[ ./kernel/luna88k/locore/exception_vectors.h ]
Initial 3.0 Checkin
[91/06/26  12:00:23  danner]

Flush jkdb.
[91/04/01            rvb]
[ ./kernel/luna88k/locore/locore.c ]
Removed OLD_MACH2_5 code (where did it come from). Also
 switch_task_context, which is obsolete.
[91/07/08            danner]

Updated save_context to use new pcb definition.
[91/07/05            danner]
Added switch_to_shutdown_context
[91/06/25            danner]

Added intstack definition for boot.
[91/05/09            danner]

Removed sigcode (2.5 trampoline code)
Other 2.5isms ifdef 0 out.
[91/05/05            danner]

Removed include of sys/syscall.h
[91/05/05            danner]
Flush jkdb.
[91/04/01            rvb]
Removed a comma that violated motorola assembler syntax
[91/03/07            danner]
[ ./kernel/luna88k/locore/locore.h ]
Removed old OMRON RCS Log, SIZEOF_EF
[91/07/08            danner]

Removed SIZEOF_EF. Now generated by genasssym.
[91/07/04            danner]
Added USERMODE definition
[91/05/10            danner]
[ ./kernel/luna88k/locore/locore_asm_routines.c ]
Copyinmsg and copyoutmsg aliased to copyin and copyout, resp.
[91/05/08            danner]

Removed include of sys/errno.h and copyinstr, copyoutstr,
     addupc, copystr.
[91/05/05            danner]

Removed include sys/syscall.h
[91/05/05            danner]
Flush jkdb.
[91/04/01            rvb]
We will now use gcc routines for copy/zero.
[91/04/01            rvb]
Add are_interrupts_disabled for the debugger.
[91/03/12            danner]

add simple_lock_held for debugger
[91/03/12            danner]

fixed a bcnd statement that use ne as the test instead of ne0
[91/03/07            danner]

Replaced \\ with NEWLINE for ENTRY macro
[91/03/07            danner]
[ ./kernel/luna88k/locore/locore_c_routines.c ]
Initial Checkin
[91/06/26  12:23:24  danner]
[ ./kernel/luna88k/locore/vsnprintf.c ]
Initial Checkin.
[91/06/26  12:24:19  danner]
[ ./kernel/luna88k/luna_fp.c ]
Added inclusion of assym.s
[91/07/04            danner]
Initial Checkin
[91/06/26  12:25:30  danner]
[ ./kernel/luna88k/luna_init.c ]
Added avail_next.
[91/06/25            danner]

Moved kdb_init here from machdep.
[91/05/13            danner]
[ ./kernel/luna88k/m88k.h ]
Removed all the EF_* defines - they are now created by genassym.
[91/07/04            danner]
Initial Checkin
[91/06/26  12:25:58  danner]
[ ./kernel/luna88k/mach_param.h ]
Snarfed from 386
[91/05/06            danner]
[ ./kernel/luna88k/machdep.c ]
Support for remunged pcb. Untested.
[91/07/05            danner]
cputypes.h -> platforms.h
[91/06/24            danner]

Added halt_all_cpus.
[91/05/10            danner]
[ ./kernel/luna88k/machine_thread.c ]
Created
[91/05/10            danner]
[ ./kernel/luna88k/machparam.h ]
Created for luna88k.
[91/05/06            danner]
[ ./kernel/luna88k/mem.c ]
Initial Checkin
[91/06/26  12:29:15  danner]
[ ./kernel/luna88k/nvram.h ]
Initial Checkin
[91/06/26  12:29:22  danner]
[ ./kernel/luna88k/pcb.c ]
Support for 3.0 style pcb's, where the user registers are dumped
 into the pcb on all traps/interrupts from user mode.
[91/07/08            danner]
Nuked thread dup
[91/05/07            danner]
[ ./kernel/luna88k/pcb.h ]
Modified to include thread.h instead of redefining the pcb structure.
[91/07/03            danner]
Initial Checkin
[91/06/26  12:30:20  danner]
[ ./kernel/luna88k/pio.h ]
Initial Checkin
[91/06/26  12:30:36  danner]
[ ./kernel/luna88k/pmap.c ]
Added pmap_virtual_space, pmap_free_pages, and pmap_next_page.
[91/06/25            danner]

Modified to protect the page which has the exception vector 
     table. (SYSV_BASE).
[91/05/22            danner]

ASSERT -> assert
[91/05/10            danner]

Removed mach_xp include and conditionals.
[91/05/07            danner]
[ ./kernel/luna88k/pmap.h ]
Added noops for pmap_list_resident_pages and
 pmap_remove_attributes.
[91/05/09            danner]
[ ./kernel/luna88k/psl.h ]
Initial Checkin
[91/06/26  12:31:10  danner]
[ ./kernel/luna88k/pte.h ]
Initial Checkin
[91/06/26  12:31:16  danner]
[ ./kernel/luna88k/reg.h ]
Initial Checkin
[91/06/26  12:31:22  danner]
[ ./kernel/luna88k/rom1ep.h ]
Initial Checkin
[91/06/26  12:31:29  danner]
[ ./kernel/luna88k/scb.h ]
Initial Checkin
[91/06/26  12:31:36  danner]
[ ./kernel/luna88k/scr.h ]
Initial Checkin
[91/06/26  12:31:46  danner]
[ ./kernel/luna88k/setjmp.h ]
Initial 3.0 Checkin.
[91/07/09  09:55:58  danner]
[ ./kernel/luna88k/setroot.c ]
Lifted from i386at directory.
[91/05/09            danner]
[ ./kernel/luna88k/softint.c ]
Initial Checkin
[91/06/26  12:32:00  danner]
[ ./kernel/luna88k/softint.h ]
Initial Checkin
[91/06/26  12:32:06  danner]
[ ./kernel/luna88k/sys_machdep.c ]
Initial Checkin
[91/06/26  12:32:15  danner]
[ ./kernel/luna88k/thread.h ]
Keep_Stacks currently defined.
[91/07/08            danner]
Added include of mach/kern_return.h
[91/05/06            danner]
[ ./kernel/luna88k/time_stamp.h ]
Snarfed from i386
[91/05/06            danner]
[ ./kernel/luna88k/trap.c ]
Removed frame is bogus warning that depended on scribbling magic
 constants into frames.
[91/07/08            danner]
Initial Checkin
[91/06/26  12:32:46  danner]
[ ./kernel/luna88k/trap.h ]
Initial Checkin
[91/06/26  12:32:53  danner]
[ ./kernel/luna88k/ufs_machdep.c ]
Initial Checkin
[91/06/26  12:33:37  danner]
[ ./kernel/luna88k/varargs.h ]
Typo fixup.
[91/06/26            danner]
Initial Checkin
[91/06/26  12:37:40  danner]
[ ./kernel/luna88k/vm_machdep.c ]
Initial Checkin
[91/06/26  12:38:33  danner]
[ ./kernel/luna88k/vm_tuning.h ]
3.0 Checkin.
[91/07/09  10:48:44  danner]
[ ./kernel/luna88k/vmparam.h ]
Initial Checkin
[91/06/26  12:38:41  danner]
[ ./kernel/luna88k/xpr.h ]
Initial 3.0 Checkin.
[91/07/09  10:38:06  danner]
[ ./kernel/luna88kdev/codetbl.t ]
Initial Checkin
[91/06/26  11:43:05  danner]
[ ./kernel/luna88kdev/compat_25.h ]
Initial Checkin
[91/06/26  11:43:15  danner]
[ ./kernel/luna88kdev/cons.c ]
Initial Checkin
[91/06/26  11:42:24  danner]
[ ./kernel/luna88kdev/cons.h ]
Initial Checkin
[91/06/26  11:42:30  danner]
[ ./kernel/luna88kdev/deftbl.t ]
Initial Checkin
[91/06/26  11:43:25  danner]
[ ./kernel/luna88kdev/esctbl.t ]
Initial Checkin
[91/06/26  11:43:36  danner]
[ ./kernel/luna88kdev/kbmain.c ]
Initial Checkin
[91/06/26  11:47:02  danner]
[ ./kernel/luna88kdev/kbms.h ]
Initial Checkin
[91/06/26  11:42:36  danner]
[ ./kernel/luna88kdev/keymap.t ]
Initial Checkin
[91/06/26  11:45:36  danner]
[ ./kernel/luna88kdev/msmain.c ]
Initial Checkin
[91/06/26  11:46:02  danner]
[ ./kernel/luna88kdev/ramdisk.h ]
Initial Checkin
[91/06/26  11:45:55  danner]
[ ./kernel/luna88kdev/table.h ]
Initial Checkin
[91/06/26  11:45:46  danner]
[ ./kernel/luna88kdev/uart.c ]
Initial Checkin
[91/06/26  11:46:18  danner]
[ ./kernel/luna88kdev/uart.h ]
Initial Checkin
[91/06/26  11:46:09  danner]
[ ./kernel/luna88kif/if_qb.h ]
Initial Checkin
[91/06/26  12:40:42  danner]
[ ./kernel/mach/luna88k/boolean.h ]
Created
[91/07/08  22:38:27  danner]
[ ./kernel/mach/luna88k/exception.h ]
Created
[91/07/08  22:40:45  danner]

Rearranged.
[89/08/16            hattori]
[ ./kernel/mach/luna88k/kern_return.h ]
Created
[91/07/08  22:39:30  danner]
[ ./kernel/mach/luna88k/syscall_sw.h ]
Created
[91/07/08  22:39:56  danner]
[ ./kernel/mach/luna88k/vm_param.h ]
Initial Checkin
[91/06/26  12:40:27  danner]
[ ./kernel/mach/machine.h ]
   Added CPU_SUBTYPE_LUNA88K
[91/05/06            danner]
[ ./kernel/scsi/adapters/scsi_89352.h ]
<<<log message for ./kernel/scsi/adapters/scsi_89352.h>>>
28,31c28
<  * $ Log:	MERGE_HISTORY,v $
<  * Revision 2.1  91/07/09  10:58:05  danner
<  * Created.
<  * 
---
>  * $ Log:	MERGE_HISTORY,v $

...
Created from the Fujitsu specs:
"SCSI Processor Manual MB89352", EM11-03319-2, Japan 1987,
and
"MB87033B SCSI Protocol Controller (SPC) With On-Chip Drivers/Receivers"
Fujitsu Limited, August 1989, Ed 1.0
and later from information in
"Fast Track to SCSI", Fujitsu
ISBN 0-13-307000-X, 1991 Prentice Hall, NJ
[91/07/09  10:59:31  danner]
[ ./kernel/scsi/adapters/scsi_89352_hdw.c ]
3.0 SCSI Chip support for the Fujistu MB89352, the SCSI chip
 present on the Omron Luna88k motherboard. This chip is a first
 generation SCSI controller, and does not support synchronous SCSI.
[91/07/09            danner]

...
Created from the Fujitsu specs:
"SCSI Processor Manual MB89352", EM11-03319-2, Japan 1987,
and
"MB87033B SCSI Protocol Controller (SP) With On-Chip Drivers/Receivers"
Fujitsu Limited, August 1989, Ed 1.0
[91/07/09  10:56:03  danner]
[ ./kernel/scsi/rz.c ]
Added gross ifdef luna88k to use <sd.h> instead of <scsi.h>. Will
 be fixed as soon as I figure out the configuration tools.
[91/07/09            danner]

<<<log message for ./kernel/scsi/rz.c>>>
[91/07/09  11:05:28  danner]
[ ./kernel/scsi/rz_disk.c ]
Upgraded to support new label technology.
[91/07/09  11:15:50  danner]
[ ./kernel/scsi/rz_disk_bbr.c ]
Upgraded to new label technology.
[91/07/09  11:16:12  danner]
[ ./kernel/scsi/rz_labels.c ]
Created, splitting out DEC-specific code from rz_disk.c and
adding some more.
[91/06/26            af]
[ ./kernel/scsi/rz_labels.h ]
Support for DEC, BSD, Omron labels.
[91/07/09  11:15:23  danner]
[ ./kernel/scsi/scsi.c ]
Added gross luna88k ifdef to use <sd.h> instead of <scsi.h>. Will be
fixed when I understand how to use the configuration tools.
[91/07/09  11:08:15  danner]
[ ./kernel/scsi/scsi_defs.h ]
Added include of <scsi/rz_labels.h>
[91/07/09  11:16:30  danner]
[ ./kernel/sys/varargs.h ]
Added luna88k support.
[91/06/24            danner]
[ ./user/libmach/Makefile ]
Added LUNA88K cpp override.
[91/07/08  22:59:09  danner]
[ ./user/libmach/luna88k/_setjmp.h ]
Created. Incomplete
[91/07/08  23:01:08  danner]
[ ./user/libmach/luna88k/bcopy.c ]
Additions.
[91/07/08  23:01:44  danner]
[ ./user/libmach/setjmp.h ]
Added luna88k support, some missing comments.
[91/06/27            danner]
    
    
    
==========================================================================
   ***** MK Version MK57  (danner) *****
    
    
Bug fixes:
--- -----

Fixed Copyrights for mrt.

Built nowhere. Tested nowhere.

******** CUT HERE ******** summary of log messages ******** CUT HERE ********
[ ./conf/version.edit ]
57
[ ./kernel/conf/Makefile.luna88k ]
Copyright Fixes
[ ./kernel/ddb/db_command.c ]
Copyright Fixes
[ ./kernel/ddb/db_run.h ]
Copyright Fixes
[ ./kernel/luna88k/ast.h ]
Copyright Fixes
[ ./kernel/luna88k/conf.c ]
Copyright Fixes
[ ./kernel/luna88k/cpu_number.h ]
Copyright Fixes
[ ./kernel/luna88k/genassym.c ]
Copyright Fixes
[ ./kernel/luna88k/mach_param.h ]
Copyright Fixes
[ ./kernel/luna88k/machparam.h ]
Copyright Fixes
[ ./kernel/luna88k/pcb.h ]
Copyright Fixes
[ ./kernel/luna88k/setroot.c ]
Copyright Fixes
[ ./kernel/luna88k/thread.h ]
Copyright Fixes
[ ./kernel/luna88k/time_stamp.h ]
Copyright Fixes
[ ./kernel/luna88k/ufs_machdep.c ]
Copyright Fixes
[ ./kernel/luna88k/varargs.h ]
Copyright Fixes
[ ./kernel/luna88k/vm_machdep.c ]
Copyright Fixes
[ ./kernel/mach/luna88k/thread_status.h ]
Copyright Fixes
[ ./kernel/mach/luna88k/vm_param.h ]
Copyright Fixes
[ ./kernel/mach/luna88k/vm_types.h ]
Copyright Fixes
[ ./kernel/scsi/adapters/scsi_89352.h ]
Copyright Fixes
[ ./kernel/scsi/adapters/scsi_89352_hdw.c ]
Copyright Fixes
[ ./utils/mktree.sh ]
Copyright Fixes
    
    
    
==========================================================================
   ***** MK Version MK58  (rvb) *****
    
    
UX25 and MK58 have been built and tested together on
all 4 major(?) architectures,  i386, pmax, vax, sun3.
They can be built and they are consistent.

(Also we added a few minor changes.)
    
    
    
==========================================================================
   ***** MK Version MK59  (dbg) *****
    
    
New features:
--- --------

MiG changes:

    User-specified deallocate flag: use 'dealloc[]'.
    It's an argument in the sender but not in the receiver.
    
    Variable-length C strings now take up only as much space as
    necessary in the message.  Use 'c_string[maxlen]' to get this
    behavior, instead of '(MSG_TYPE_STRING_C, 8*maxlen)'.
    
    Variable-length array arguments passed from client to server
    will now be passed either in-line or out-of-line, depending
    on size.  To get this behavior, specify 'array[] of foo' (not
    out-of-line, no maximum size).  Specifying 'serverCopy' passes
    the inline/out-of-line flag through to the server; otherwise,
    out-of-line data is deallocated when the server procedure
    returns.
    
    (It doesn't handle returning data the same way.  The semantics
     are ugly and need more thought.  Use at your own risk.)

Kernel changes:

    vm_pageable() is gone.  It has been replaced by David Black's proposed
    vm_wire(host_port, task, start, size, protection) call.
    The thread_wire() call is also in, but doesn't quite work yet.

    The mach_debug interface has a call to load a symbol table into the kernel
    debugger: host_load_symbol_table(host, start, count, task).  It takes an
    arbitrary array of bytes whose format the loader and debugger agree on.
    If the task is specified, DDB will only look for these symbols when in
    the task.

    host_adjust_time() has been implemented - I copied the BSD code.
    Haven't tested it: the U*X server needs to call it.

    Memory_object_data_supply uses the new MiG feature to let the client
    supply the deallocate bit.

    Improved scheduling state machine.  Consolidates several thread state
    fields into one.

    There is a generic vm-object_map_pages routine to allocate pages mapping
    physical device memory.

    Thread-termination is quicker.  If a thread is at a known continuation,
    its state can be cleaned up immediately, without re-awakening the thread.

libmach and cthread changes:

    Both libraries build with GCC: use 'make CC=gcc'.

    VAX, SUN3 and i386 use GCC inline substitution for the cthread_sp(),
    spin_lock_try(), and spin_unlock() functions.

[Sequent]
   Supports microsecond timing.

[i386]
   The V8086 mode interrupt assist is in.

   There is a call to map a device's IO registers into a thread:
   i386_io_map.  It should eventually replace the ISA_PORT_MAP thread
   state and /dev/iopl.

   Context switching no longer has to copy registers between the stack
   and the PCB.

   Copyin/copyout use longword move if possible.

[sun3]
   Supports stack switching.


Bug fixes:
--- -----

Fixed time-out race condition.

Fixed scheduling problem: a thread could be suspended even though it
was sleeping uninterruptibly (e.g. grabbing a vm_map lock), hanging the
task and anyone trying to suspend it.

thread_handoff() now checks for the new thread being bound to another
processor.

thread_block(continuation) always resumes execution in the continuation.
Previously, if it decided to continue running the current thread, it
returned to the point of call even if a continuation was supplied.

The definitions of dev_name_t in the .h and .defs file now match.

[vax]
    Fixed switch_to_shutdown_context.

    Fixed the qd driver so that debugger output is visible even
    if X was running.


Organizational changes:
-------------- -------

Interrupt_stack_alloc() has been removed from kern/startup.c.
Not all multiprocessors need interrupt stacks.

pcb_module_init() is now called from thread_init(), not from machine-dependent
code.

All microsecond timing routines can now be defined in machine-dependent code.

Each machine's PCB module needs a new routine:
thread_set_syscall_return(thread_t, kern_return_t)
to make a thread return a kern_return value (typically MACH_RCV_INTERRUPTED)
from an aborted system call.

[VAX]
    The kernel is built with GCC by default.  A compiler and assembler
    that work are in the mach-7/release area: do
	setpath -ib /usr/misc /afs/cs/project/mach-7/release/@sys
	setenv GCC_EXEC_PREFIX /afs/cs/project/mach-7/release/@sys/lib/gcc-
    to get the compiler.
    
    (AS is a filter that strips the nesting depth off the
     '# file line nesting' lines that GCC produces, to keep
     the BSD assembler happy.)

[SUN3]
    The kernel is built with GCC by default.  A compiler and assembler
    that work are in the mach-7/release area: do
	setpath -ib /usr/misc /afs/cs/project/mach-7/release/@sys
	setenv GCC_EXEC_PREFIX /afs/cs/project/mach-7/release/@sys/lib/gcc-
    to get the compiler.
    
[Sequent]
    The Sequent code is publically distributable.



Special notes:
------- -----

The latest UX servers will run but NOT build with this release.
The calls to vm_pageable() must be removed.



******** CUT HERE ******** summary of log messages ******** CUT HERE ********
[ ./conf/version.edit ]
59
[ ./kernel/boot_ufs/def_pager_setup.c ]
Pass master host port to file_wire.
[91/07/30  16:37:07  dbg]
[ ./kernel/boot_ufs/file_io.c ]
Call vm_wire instead of vm_pageable.
[91/07/30  16:38:01  dbg]
[ ./kernel/boot_ufs/load.c ]
Replace blkclr with bzero.
[91/07/26            dbg]

Moved read_symtab_from_file here and made independent of load
format.
[91/06/25            dbg]

[ ./kernel/conf/MASTER.sun3 ]
Add rules for GCC.
[91/07/19            dbg]
[ ./kernel/conf/MASTER.vax ]
Remove 'sed' pass over assembler files - there's a filter that
does the same job.
[91/07/26            dbg]
[ ./kernel/conf/Makefile.i386 ]
Add rules for mach_i386.defs.
[91/07/30  16:39:42  dbg]
[ ./kernel/conf/Makefile.template ]
Removed vm_pageable.  Added mach_host functions to libmig.a.
[91/07/30  16:41:07  dbg]
[ ./kernel/conf/Makefile.vax ]
Remove GCC_ASM_SED - there's a filter that strips the offending
lines and invokes the BSD assembler.
[91/07/26            dbg]
[ ./kernel/conf/files ]
Added db_ext_symtab.c.
[91/07/30  16:41:37  dbg]
[ ./kernel/conf/files.i386 ]
Added mach_i386_server.c and io_map_interface.c.
[91/07/30  16:42:09  dbg]
[ ./kernel/conf/files.vax ]
Add blkops.s.
[91/07/26            dbg]
[ ./kernel/ddb/db_aout.c ]
Removed read_symtab_from_file.
Added task argument to X_db_sym_init.
[91/07/30  16:42:51  dbg]
[ ./kernel/ddb/db_ext_symtab.c ]
Created.
[91/07/30  16:43:20  dbg]
[ ./kernel/ddb/db_print.c ]
Revise scheduling state machine.
[91/07/30  16:43:42  dbg]
[ ./kernel/ddb/db_sym.c ]
Add task pointer and space for string storage to symbol table
descriptor.
[91/07/31            dbg]
[ ./kernel/ddb/db_sym.h ]
Add map pointer and storage for name to db_symtab_t.
[91/07/30  16:45:08  dbg]
[ ./kernel/device/cirbuf.c ]
Put CB_CHECK under debugging switch.
[91/07/30  16:45:34  dbg]
[ ./kernel/device/dev_name.c ]
Fixed to not modify the string passed in.
[91/07/23            dbg]
[ ./kernel/device/dev_pager.c ]
Use vm_object_page_map to allocate pages for a device-map object.
Its vm_page structures are allocated and freed by the VM system.
[91/07/30  16:46:43  dbg]
[ ./kernel/device/device_types.h ]
Fix dev_name_t to match definition in
device/device_types.defs.
[91/07/30  16:47:13  dbg]
[ ./kernel/device/subrs.c ]
Add strcpy.
[91/07/30  16:47:37  dbg]
[ ./kernel/i386/cswitch.s ]
Push user state directly in PCB and switch to kernel stack on
trap entry.
[91/07/30  16:48:18  dbg]
[ ./kernel/i386/db_interface.c ]
Registers are in different locations on keyboard interrupt.
[91/07/30  16:48:52  dbg]
[ ./kernel/i386/exec.c ]
Changed get_symtab to copy out the size of the symbol table and
return the symbol table size + string table size.
[91/07/31            dbg]
[ ./kernel/i386/genassym.c ]
Add microsecond timing.

Save user registers in PCB and switch to separate kernel stack
on entry.
[91/07/30  16:50:29  dbg]
[ ./kernel/i386/hardclock.c ]
New interrupt save area.
[91/07/30  16:50:59  dbg]
[ ./kernel/i386/idt.s ]
Save fewer registers on interrupt entry.
[91/07/30  16:51:33  dbg]
[ ./kernel/i386/interrupt.s ]
Support separate interrupt stack.  Interrupt handler may now be
called from different places.
[91/07/30  16:52:19  dbg]
[ ./kernel/i386/io_map_interface.c ]
Created.
[91/07/30  16:52:44  dbg]
[ ./kernel/i386/locore.s ]
Add microsecond timing.

Save user regs directly in PCB on trap, and switch to separate
kernel stack.

Make copyin and copyout use longword move if possible.
[91/07/30  16:53:39  dbg]
[ ./kernel/i386/mp_desc.c ]
Move interrupt-stack allocation for multiprocessors here.
[91/07/30  16:54:10  dbg]
[ ./kernel/i386/pcb.c ]
Add thread_set_syscall_return.

Save user regs directly in PCB on trap, and switch to separate
kernel stack.

Add v8086 mode interrupt support.
[91/07/30  16:56:09  dbg]
[ ./kernel/i386/sched_param.h ]
Created.
[91/07/30  16:56:40  dbg]
[ ./kernel/i386/start.s ]
Add pointers to interrupt stack (for uniprocessor).
[91/07/30  16:57:13  dbg]
[ ./kernel/i386/thread.h ]
Save user regs directly in PCB on trap, and switch to separate
kernel stack.

Add fields for v86 interrupt simulation.
[91/07/30  16:58:18  dbg]
[ ./kernel/i386/timer.h ]
Created.
[91/07/30  16:58:38  dbg]
[ ./kernel/i386/trap.c ]
Separate user and kernel trap cases.  Combine user and v86-mode
trap cases (except for calling instruction assist).

New v86 interrupt simulation.

Check for two copyout failure locations.
[91/07/30  17:01:10  dbg]
[ ./kernel/i386at/model_dep.c ]
Remove call to pcb_module_init (in machine-independent code).
[91/07/26            dbg]
[ ./kernel/i386ipsc/model_dep.c ]
Remove call to pcb_module_init (in machine-independent code).
[91/07/26            dbg]
[ ./kernel/i386ipsc/pic_ipsc.c ]
Changed hardclock for stack_switching support.
[91/07/29            dbg]
[ ./kernel/ipc/mach_msg.c ]
Add mach_msg_interrupt to force a thread waiting in mach_msg_continue
or mach_msg_receive_continue into a stable state.
[91/07/30  17:02:11  dbg]
[ ./kernel/kern/bootstrap.c ]
Pass host port to boot_load_program and read_emulator_symbols.
[91/07/30  17:02:40  dbg]
[ ./kernel/kern/debug.c ]
Minor SUN changes.
[91/07/12            dbg]
[ ./kernel/kern/ipc_sched.c ]
Check for new thread bound to wrong processor in thread_handoff.
[91/07/25            dbg]

Fix timeout race.
[91/05/23            dbg]

Revise scheduling state machine.
[91/05/22            dbg]
[ ./kernel/kern/mach_clock.c ]
Fixed timeout race.  Implemented host_adjust_time.
[91/07/30  17:03:54  dbg]
[ ./kernel/kern/machine.c ]
Removed interrupt_stack - it's machine-dependent.
[91/07/26            dbg]
[ ./kernel/kern/sched_prim.c ]
When re-invoking the running thread (thread_block, thread_run):
. Mark the thread interruptible.
. If there is a continuation, call it instead of returning.
[91/07/26            dbg]

Fix timeout race.
[91/05/23            dbg]

Revised scheduling state machine.
[91/05/22            dbg]
[ ./kernel/kern/startup.c ]
Remove interrupt_stack_alloc - not all multiprocessors use it.

Revised scheduling state machine.
[91/07/30  17:05:11  dbg]
[ ./kernel/kern/syscall_subr.c ]
Fix timeout race.
[91/07/30  17:05:37  dbg]
[ ./kernel/kern/thread.c ]
Call pcb_module_init from thread_init.
[91/07/26            dbg]

When halting a thread: if it is waiting at a continuation with a
known cleanup routine, call the cleanup routine instead of
resuming the thread.
[91/06/21            dbg]

Revise scheduling state machine.
[91/05/22            dbg]

Add thread_wire.
[91/05/14            dbg]
[ ./kernel/kern/thread.h ]
Consolidated interruptible, swap_state, halted into state field.
Revised state machine.
[91/07/30  17:06:37  dbg]
[ ./kernel/kern/thread_swap.c ]
Revise scheduling state machine.
[91/07/30  17:07:03  dbg]
[ ./kernel/kern/thread_swap.h ]
Merge remaining swap states with state field in thread.
[91/07/30  17:07:30  dbg]
[ ./kernel/kern/time_out.h ]
Fix race condition.
[91/07/30  17:08:00  dbg]
[ ./kernel/kern/timer.c ]
Allow all routines to be defined in machine-dependent code.
[91/07/30  17:08:39  dbg]
[ ./kernel/mach/i386/mach_i386.defs ]
Created.
[91/07/30  17:09:09  dbg]
[ ./kernel/mach/i386/thread_status.h ]
Add V86 mode interrupt assist.
[91/07/30  17:09:37  dbg]
[ ./kernel/mach/mach.defs ]
Added user-settable 'dealloc' flag to data argument of
memory_object_data_supply.  Needs new MiG.
USERS OF THIS FUNCTION MUST RE-LINK!!
[91/07/29            dbg]

MACH_IPC_COMPAT: set C type for backup argument to
port_set_backup to be 'mach_port_t'.  If mach_interface.h is
included with MACH_IPC_COMPAT == 0, the type 'port_t' is not
defined.

Removed vm_pageable.
[91/06/24            dbg]
[ ./kernel/mach/mach_host.defs ]
Add vm_wire and thread_wire.
[91/07/30  17:10:17  dbg]
[ ./kernel/mach/machine.h ]
Remove declaration of interrupt_stack - it is machine-dependent.
Changed CPU_SUBTYPE_LUNA88K - there's already a (potential)
mc88000 port.
[91/07/26            dbg]
[ ./kernel/mach/sun3/reg.h ]
Fix typedefs with no name for ANSI C.
Remove unused definitions for integer register save area.
[91/07/19            dbg]
[ ./kernel/mach/sun3/syscall_sw.h ]
Fixes for ANSI C preprocessor.
[91/07/23            dbg]
[ ./kernel/mach/vax/syscall_sw.h ]
Fixes for ANSI and GNU C preprocessors.
[91/07/23            dbg]
[ ./kernel/mach_debug/mach_debug.defs ]
Added host_load_symbol_table.
[91/07/30  17:11:15  dbg]
[ ./kernel/mach_debug/mach_debug_types.defs ]
Add symtab_name_t.
[91/07/30  17:11:38  dbg]
[ ./kernel/mach_debug/mach_debug_types.h ]
Add symtab_name_t.
[91/07/30  17:12:01  dbg]
[ ./kernel/mips/autoconf.c ]
Moved call to pcb_module_init to machine-independent code.
[91/07/26            dbg]
[ ./kernel/mips/db_mips_sym.c ]
Added X_db_sym_init.
[91/07/29            dbg]
[ ./kernel/mips/exec.c ]
Added get_symtab.
[91/07/29            dbg]
[ ./kernel/mips/pcb.c ]
Add thread_set_syscall_return.
[91/07/26            dbg]
[ ./kernel/sqt/SGSmem.h ]
Changed copyright.
[91/07/31            dbg]
[ ./kernel/sqt/SGSproc.h ]
Changed copyright.
[91/07/31            dbg]
[ ./kernel/sqt/asm_macros.h ]
Changed copyright.
[91/07/31            dbg]
[ ./kernel/sqt/autoconf.c ]
Changed copyright.
[91/07/31            dbg]
[ ./kernel/sqt/bdp.h ]
Changed copyright.
[91/07/31            dbg]
[ ./kernel/sqt/bic.h ]
Changed copyright.
[91/07/31            dbg]
[ ./kernel/sqt/buscycles.h ]
Changed copyright.
[91/07/31            dbg]
[ ./kernel/sqt/cfg.h ]
Changed copyright.
[91/07/31            dbg]
[ ./kernel/sqt/chiptypes.h ]
Changed copyright.
[91/07/31            dbg]
[ ./kernel/sqt/clkarb.h ]
Changed copyright.
[91/07/31            dbg]
[ ./kernel/sqt/clock.c ]
Changed copyright.
[91/07/31            dbg]
[ ./kernel/sqt/clock.h ]
Changed copyright.
[91/07/31            dbg]
[ ./kernel/sqt/consio.c ]
Changed copyright.
[91/07/31            dbg]
[ ./kernel/sqt/engine.h ]
Changed copyright.
[91/07/31            dbg]
[ ./kernel/sqt/hwparam.h ]
Changed copyright.
[91/07/31            dbg]
[ ./kernel/sqt/intctl.h ]
Changed copyright.
[91/07/31            dbg]
[ ./kernel/sqt/interrupt.s ]
Changed copyright.

Call interrupt routine, since we may be on a different stack.
[91/05/22            dbg]
[ ./kernel/sqt/ioconf.h ]
Changed copyright.
[91/07/31            dbg]
[ ./kernel/sqt/macros.h ]
Changed copyright.
[91/07/31            dbg]
[ ./kernel/sqt/memory.c ]
Changed copyright.
[91/07/31            dbg]
[ ./kernel/sqt/misc.s ]
Changed copyright.
[91/07/31            dbg]
[ ./kernel/sqt/model_dep.c ]
Changed copyright.

Removed call to pcb_module_init (now called from
machine-independent code).
[91/07/26            dbg]

Call interrupt_stack_alloc.
[91/06/27            dbg]
[ ./kernel/sqt/mutex.h ]
Changed copyright.
[91/07/31            dbg]
[ ./kernel/sqt/mutex.s ]
Changed copyright.
[91/07/31            dbg]
[ ./kernel/sqt/sema.c ]
Changed copyright.
[91/07/31            dbg]
[ ./kernel/sqt/setconf.c ]
Changed copyright.
Moved root_name string out of text segment.
[91/07/31            dbg]
[ ./kernel/sqt/slic.c ]
Changed copyright.
[91/07/31            dbg]
[ ./kernel/sqt/slic.h ]
Changed copyright.
[91/07/31            dbg]
[ ./kernel/sqt/slicreg.h ]
Changed copyright.
[91/07/31            dbg]
[ ./kernel/sqt/spl.s ]
Changed copyright.
[91/07/31            dbg]
[ ./kernel/sqt/sqtasm.h ]
Changed copyright.
[91/07/31            dbg]
[ ./kernel/sqt/sqtparam.h ]
Changed copyright.
[91/07/31            dbg]
[ ./kernel/sqt/stubs.c ]
Changed copyright.
[91/07/31            dbg]
[ ./kernel/sqt/trap.h ]
Changed copyright.
[91/07/31            dbg]
[ ./kernel/sqt/vm_defs.h ]
Changed copyright.
[91/07/31            dbg]
[ ./kernel/sqtconf/conf.c ]
Changed copyright.
[91/07/31            dbg]
[ ./kernel/sqtconf/conf_co.c ]
Changed copyright.
[91/07/31            dbg]
[ ./kernel/sqtconf/conf_if_se.c ]
Changed copyright.
[91/07/31            dbg]
[ ./kernel/sqtconf/conf_led.c ]
Changed copyright.
[91/07/31            dbg]
[ ./kernel/sqtconf/conf_sd.c ]
Changed copyright.
[91/07/31            dbg]
[ ./kernel/sqtconf/conf_vec.c ]
Changed copyright.
[91/07/31            dbg]
[ ./kernel/sqtconf/conf_zd.c ]
Changed copyright.
[91/07/31            dbg]
[ ./kernel/sqtconf/sqt_io_conf.c ]
Changed copyright.
[91/07/31            dbg]
[ ./kernel/sqtconf/sqtparam.c ]
Changed copyright.
[91/07/31            dbg]
[ ./kernel/sqtmbad/ioconf.h ]
Changed copyright.
[91/07/31            dbg]
[ ./kernel/sqtsec/co.c ]
Changed copyright.
[91/07/31            dbg]
[ ./kernel/sqtsec/co.h ]
Changed copyright.
[91/07/31            dbg]
[ ./kernel/sqtsec/if_se.c ]
Changed copyright.
[91/07/31            dbg]
[ ./kernel/sqtsec/if_se.h ]
Changed copyright.
[91/07/31            dbg]
[ ./kernel/sqtsec/ioconf.h ]
Changed copyright.
[91/07/31            dbg]
[ ./kernel/sqtsec/scsi.h ]
Changed copyright.
[91/07/31            dbg]
[ ./kernel/sqtsec/sd.c ]
Changed copyright.
[91/07/31            dbg]
[ ./kernel/sqtsec/sd.h ]
Changed copyright.
[91/07/31            dbg]
[ ./kernel/sqtsec/sec.c ]
Changed copyright.
[91/07/31            dbg]
[ ./kernel/sqtsec/sec.h ]
Changed copyright.
[91/07/31            dbg]
[ ./kernel/sqtsec/sec_ctl.h ]
Changed copyright.
[91/07/31            dbg]
[ ./kernel/sqtzdc/ioconf.h ]
Changed copyright.
[91/07/31            dbg]
[ ./kernel/sqtzdc/zd.c ]
Changed copyright.
[91/07/31            dbg]
[ ./kernel/sqtzdc/zdbad.h ]
Changed copyright.
[91/07/31            dbg]
[ ./kernel/sqtzdc/zdc.h ]
Changed copyright.
[91/07/31            dbg]
[ ./kernel/sqtzdc/zdinit.c ]
Changed copyright.
[91/07/31            dbg]
[ ./kernel/src/mig/lexxer.l ]
Add 'serverCopy' keyword.
[91/06/05            dbg]

Add 'c_string' keyword.
[91/04/03            dbg]
[ ./kernel/src/mig/mig.sh ]
Allow both -header and -sheader switches.
Fix copyright.
[91/07/30  17:14:28  dbg]
[ ./kernel/src/mig/parser.y ]
Allow 'dealloc[]' to mean user-specified deallocate flag.

Added c_string.
[91/04/03            dbg]
[ ./kernel/src/mig/routine.c ]
Support indefinite-length (inline or out-of-line) variable
arrays.
[91/04/10            dbg]

Change argDeallocate to an enumerated type, to allow for
user-specified deallocate flag.

Special handling for varying C_Strings in rtAddCountArg.

Add rtCheckMaskFunction.  Add rtNoReplyArgs to routine
structure.
[91/04/03            dbg]
[ ./kernel/src/mig/routine.h ]
Add akbIndefinite, argServerCopy.
[91/04/10            dbg]

Change argDeallocate to an enumerated type, to allow for
user-specified deallocate flag.

Add rtCheckMaskFunction.  Add rtNoReplyArgs to routine
structure.
[91/04/03            dbg]
[ ./kernel/src/mig/server.c ]
Allow indefinite-length variable arrays.  They may be copied
either in-line or out-of-line, depending on size.

Copy variable-length C Strings with mig_strncpy, to combine
'strcpy' and 'strlen' operations.

New method for advancing request message pointer past
variable-length arguments.  We no longer have to know the order
of variable-length arguments and their count arguments.

Remove redundant assignments (to msgh_simple, msgh_size) in
generated code.
[91/07/17            dbg]
[ ./kernel/src/mig/type.c ]
Indefinite-length inline arrays.

Change itDeallocate to an enumerated type, to allow for
user-specified deallocate flag.

Add itCStringDecl.
[91/07/17            dbg]
[ ./kernel/src/mig/type.h ]
Add flServerCopy.
[91/06/05            dbg]

Add itIndefinite.
[91/04/10            dbg]

Change itDeallocate to an enumerated type, to allow for
user-specified deallocate flag.

Add itCStringDecl.
[91/04/03            dbg]
[ ./kernel/src/mig/user.c ]
Allow indefinite-length variable arrays.  They may be copied
either in-line or out-of-line, depending on size.

Copy variable-length C Strings with mig_strncpy, to combine
'strcpy' and 'strlen' operations.

New method for advancing request message pointer past
variable-length arguments.  We no longer have to know the order
of variable-length arguments and their count arguments.

Remove redundant assignments (to msgh_simple, msgh_size) in
generated code.
[91/07/17            dbg]
[ ./kernel/src/mig/utils.c ]
Accept new dealloc_t argument type in WriteStaticDecl,
WritePackMsgType.

Don't need to zero last character of C string.  Mig_strncpy does
the proper work.

Add SkipVFPrintf, so that WriteCopyType doesn't print fields in
comments.
[91/07/17            dbg]
[ ./kernel/sun/exec.c ]
Changed get_symtab to copy out the size of the symbol table and
return the symbol table size + string table size.
[91/07/31            dbg]
[ ./kernel/sun3/asm_linkage.h ]
Changes for stack switching, GCC.
[91/06/18            dbg]
[ ./kernel/sun3/clock.h ]
Added volatile declarations.
[91/07/23            dbg]
[ ./kernel/sun3/cpu.h ]
Remove cpu_number and related definitions.
[91/07/19            dbg]
[ ./kernel/sun3/cswtch.s ]
Support stack switching.
[91/03/25            dbg]
[ ./kernel/sun3/db_interface.c ]
Stack switching support.
[91/07/12            dbg]
[ ./kernel/sun3/db_machdep.h ]
Changed register save area name.
[91/07/12            dbg]
[ ./kernel/sun3/db_trace.c ]
Stack switching support.
[91/07/12            dbg]
[ ./kernel/sun3/genassym.c ]
Define 'volatile' as empty string for pre-ANSI compilers.
[91/07/19            dbg]

Added support for stack switching.
[91/07/12            dbg]
[ ./kernel/sun3/interreg.h ]
Declared 'volatile'.
[91/07/23            dbg]
[ ./kernel/sun3/locore.s ]
Stack switching support.
[91/03/25            dbg]
[ ./kernel/sun3/machparam.h ]
Update inline spl macros for latest version of GCC.
[91/07/23            dbg]
[ ./kernel/sun3/map.s ]
ANSI C preprocessor fixes.
[91/07/19            dbg]
[ ./kernel/sun3/pcb.c ]
Add stack_switching support.
[91/03/25            dbg]
[ ./kernel/sun3/pmap.c ]
pmap_activate and pmap_deactivate are unnecessary.
[91/07/15            dbg]
[ ./kernel/sun3/pmap.h ]
Separated user and kernel cases of PMAP_ACTIVATE
and PMAP_DEACTIVATE.
[91/07/30  17:18:36  dbg]
[ ./kernel/sun3/reg.h ]
Fix typedefs with no name for ANSI C.
[91/07/19            dbg]
[ ./kernel/sun3/setroot.c ]
Move root_name string out of text segment for ANSI C.
[91/07/23            dbg]
[ ./kernel/sun3/thread.h ]
Support stack switching.
[91/03/25            dbg]
[ ./kernel/sun3/trap.c ]
Support stack switching.
[91/03/25            dbg]
[ ./kernel/sundev/bwtwo.c ]
Fixed typo in include file list.
Fixes for ANSI C.
[91/07/19            dbg]
[ ./kernel/sundev/cgfour.c ]
Fixes for ANSI C.
[91/07/19            dbg]
[ ./kernel/sundev/cgtwo.c ]
Replace splx(pritospl(...)) with splpri().
[91/07/23            dbg]
[ ./kernel/sundev/kbd.c ]
Fixes for ANSI C.
[91/07/19            dbg]
[ ./kernel/sundev/mb.c ]
Replace splx(pritospl(...)) with splpri().
[91/07/23            dbg]
[ ./kernel/sundev/sc.c ]
Replace splx(pritospl(...)) with splpri().
[91/07/23            dbg]

Fixes for ANSI C.
[91/07/19            dbg]
[ ./kernel/sundev/scsi.h ]
Fixes for ANSI C.
[91/07/19            dbg]
[ ./kernel/sundev/sd.c ]
Replace splx(pritospl(...)) with splpri().
[91/07/23            dbg]

Fixes for ANSI C.
[91/07/19            dbg]
[ ./kernel/sundev/si.c ]
Replace splx(pritospl(...)) with splpri().
[91/07/23            dbg]

Fixes for ANSI C.
[91/07/19            dbg]
[ ./kernel/sundev/st.c ]
Replace splx(pritospl(...) with splpri().
[91/07/23            dbg]

Fixes for ANSI C.
[91/07/23            dbg]
[ ./kernel/sundev/vuid_event.h ]
Fixed for ANSI C.
[91/07/19            dbg]
[ ./kernel/sundev/xy.c ]
Replace splx(pritospl(...)) with splpri().
[91/07/23            dbg]
[ ./kernel/sundev/zs_asm.s ]
ANSI C preprocessor fixes.
[91/07/19            dbg]
[ ./kernel/sunif/if_subr.c ]
Update to latest version of GCC.
[91/07/23            dbg]
[ ./kernel/vax/blkops.s ]
Created.
[91/07/26            dbg]
[ ./kernel/vax/conf.c ]
Correct an '#ifdef' to an '#if'.
[91/07/30  17:22:22  dbg]
[ ./kernel/vax/exec.c ]
Changed get_symtab to copy out the size of the symbol table and
return the symbol table size + string table size.
[91/07/31            dbg]
[ ./kernel/vax/gcc_asm.h ]
Make bcopy and bzero handle sizes over 64K, so that we can
eliminate blkcpy and blkclr.
[91/07/26            dbg]
[ ./kernel/vax/locore.s ]
Fix switch_to_shutdown_context.
[91/07/30  17:23:35  dbg]
[ ./kernel/vax/model_dep.c ]
Allocate interrupt stacks here for multiprocessors.
Remove call to pcb_module_init.
Replace blkclr with bzero.
[91/07/25            dbg]
[ ./kernel/vax/pcb.c ]
Add thread_set_syscall_return.
[91/07/30  17:24:07  dbg]
[ ./kernel/vaxuba/qd.c ]
Fix up screen when entering debugger if graphics device open;
restore it when exiting.  Settings are correct for X11 R4.
[91/07/30  17:25:16  dbg]
[ ./kernel/vm/memory_object.c ]
Removed explicit data_dealloc argument to
memory_object_data_supply.  MiG now handles a user-specified
dealloc flag.
[91/07/29            dbg]
[ ./kernel/vm/vm_object.c ]
Add vm_object_page_map, to attach a set of physical pages to an
object.
[91/07/30  17:26:58  dbg]
[ ./kernel/vm/vm_resident.c ]
Redefine 'private' to mean private memory, not private page
structure.  Calling vm_page_free on a private page frees the
page structure but not the page.
[91/07/30  17:27:50  dbg]
[ ./kernel/vm/vm_user.c ]
Change vm_pageable to vm_wire.  Require host_priv port to gain
wiring privileges.
[91/07/30  17:28:22  dbg]
[ ./user/libmach/Makefile ]
Add mach_debug interface.
[91/07/30  17:28:54  dbg]
[ ./user/libmach/i386/asm.h ]
Changes for STDC (from kernel version).
[91/07/30  17:29:23  dbg]
[ ./user/libmach/i386/crt0.c ]
Fix for ANSI C.
[91/07/30  17:29:44  dbg]
[ ./user/libmach/mig_strncpy.c ]
Changed to return the length of the string, including
the trailing 0.
[91/07/25            dbg]
[ ./user/libmach/sun3/DEFS.h ]
Fixes for standard C.
[91/07/23            dbg]
[ ./user/libmach/sun3/crt0.s ]
Fixes for ANSI C preprocessor.
[91/07/23            dbg]
[ ./user/libmach/vax/DEFS.h ]
Fixes for standard C.
[91/07/30  17:30:34  dbg]
[ ./user/libmach/vax/crt0.cc ]
Fixes for ANSI C and GCC inline assembler.
[91/07/30  17:31:03  dbg]
[ ./user/threads/Makefile ]
Directly compile C files if INLINE is null (depends
on the machine).
Remove IBMRT-dependent fiddling for malloc.
[91/07/30  17:32:13  dbg]
[ ./user/threads/cprocs.c ]
Fix some more bad types.  Ints are NOT pointers.

Fix argument type mismatch in cproc_create.
[91/07/30  17:32:59  dbg]
[ ./user/threads/cthread_internals.h ]
Protect against redefinition of ASSERT.
[91/07/30  17:33:21  dbg]
[ ./user/threads/cthreads.c ]
Fix bad self-pointer reference.

Don't declare _setjmp and _longjmp; they are included by
cthreads.h.
[91/07/30  17:33:50  dbg]
[ ./user/threads/cthreads.h ]
Fix the standard-C conditional: it's __STDC__.

Allow for macro-redefinition of cthread_sp, spin_try_lock,
spin_unlock (from machine/cthreads.h).
[91/07/30  17:34:28  dbg]
[ ./user/threads/i386/asm.h ]
Changes for STDC (from kernel version).
[91/07/30  17:34:54  dbg]
[ ./user/threads/i386/csw.s ]
Fix for ANSI C preprocessor.
[91/07/30  17:35:16  dbg]
[ ./user/threads/i386/cthreads.h ]
Add inline substitution for cthread_sp, spin_unlock,
spin_try_lock.
[91/07/30  17:35:53  dbg]
[ ./user/threads/i386/thread.c ]
Undefine cthread_sp macro around function definition.
[91/07/30  17:36:23  dbg]
[ ./user/threads/stack.c ]
Fix some bad stack references (stack direction).
[91/07/30  17:36:50  dbg]
[ ./user/threads/sun3/cthreads.h ]
Add inline substitution for cthread_sp, spin_unlock,
spin_try_lock.
[91/07/23            dbg]
[ ./user/threads/sun3/thread.c ]
Undefine cthread_sp macro around function definition.
[91/07/23            dbg]
[ ./user/threads/vax/cthreads.h ]
Add inline substitution for cthread_sp, spin_unlock,
spin_try_lock.
[91/07/25            dbg]
[ ./user/threads/vax/thread.c ]
Undefine cthread_sp macro around function.
[91/07/25            dbg]
[ ./user/threads/vax/thread.c ]
Let this file still compile with PCC.
[91/08/01            dbg]
[ ./kernel/sun3/trap.c ]
Restore thread_should_halt test to exit path of
user_page_fault_continue.  Fix user single-step handling.
[91/08/01            dbg]
[ ./kernel/conf/files ]
Add mach_machine_routines.h options file.
[91/08/01            dbg]
[ ./kernel/conf/MASTER.i386 ]
Define mach_machine_routines to call mach_i386_server.
[91/08/01            dbg]
[ ./kernel/i386/machine_routines.h ]
Created.
[91/08/01            dbg]
[ ./kernel/kern/ipc_kobject.c ]
Call machine-dependent interface routine, under
MACH_MACHINE_ROUTINES.
[91/08/01            dbg]
[ ./kernel/conf/MASTER.sun3 ]
Make GCC build standard.
[91/08/01            dbg]
[ ./kernel/conf/MASTER.vax ]
Make GCC build standard.
[91/08/01            dbg]
[ ./kernel/conf/MASTER.i386 ]
Add microsecond timing to Sequent configuration.
[91/08/01            dbg]
    
    
    
==========================================================================
   ***** MK Version MK60  (jsb) *****
    
    
New features:
--- --------

NORMA IPC works over ethernet, using retransmission when necessary.
It's built on top of the device/net_io.c interface to the ethernet
drivers, so no driver modification is necessary.

Removed the infamous line 122 from cthreads.h (the nested comment
(that wasn't really a nested comment).

Completed conversion to new page lists.

Removed norma_get_{host,host_priv,device}_port;
Use norma_{get,set}_special_port instead, combined with
mach/norma_special_ports.h.

Added ``show msg'' and ``show kmsg'' ddb commands.

``Show all threads'' now prints continuation names instead of ``(swapped)''.

Added an IO_LOANED flag for io_requests which are created with valid data
(and thus device_write_get should leave them alone) and which should be
returned directly via (*ior->io_done)() (instead of awakening a thread to
do so).

Organizational changes:
-------------- -------

Eliminated NORMA_BOOT conditional; replaced uses with either preexisting
NORMA_IPC conditional or new NORMA_DEVICE conditional. NORMA_DEVICE
allows nodes to access remote devices and provides a unified device
name space across all nodes. Among other things, this automatically
allows diskless nodes to boot by using a remote device, which is why
it used to be included under the NORMA_BOOT conditional.

Added a new option, norma_ether, for ethernet support for NORMA IPC.

Log Messages:
--- --------

[ ./conf/version.edit ]
60
[ ./kernel/ipsc/node.c ]
Defuncted.
[ ./kernel/ipsc/dcmcom.c ]
Defuncted.
[ ./kernel/norma/clport_ether.c ]
Defuncted.
[ ./kernel/norma/ipc_defs.h ]
Defuncted.
[ ./kernel/norma/ipc_packet.h ]
Defuncted.
[ ./kernel/norma/ipc_port.h ]
Defuncted.
[ ./kernel/norma/ipc_vm.c ]
Defuncted.
[ ./kernel/conf/MASTER ]
Replaced NORMA_BOOT with more specific NORMA_DEVICE.
[91/07/27  18:24:47  jsb]

Added NORMA_ETHER option.
[91/07/24  22:34:52  jsb]
[ ./kernel/conf/files ]
Replaced NORMA_BOOT with NORMA_DEVICE.
[91/07/27  18:25:13  jsb]

NORMA_IPC: added norma/ipc_net.c.
NORMA_ETHER: added norma/ipc_ether.c.
[91/07/24  22:43:57  jsb]

Removed norma/ipc_vm.c (functionality moved to vm/vm_map.c).
[91/07/04  09:53:11  jsb]
[ ./kernel/conf/files.i386 ]
ipsc/dev_forward_name.c now triggered by norma_device.
[91/07/27  18:18:36  jsb]
[ ./kernel/ddb/db_command.c ]
Added `show kmsg' and `show msg'.
Replaced NORMA_BOOT conditionals with NORMA_IPC.
Use _node_self instead of node_self() for prompt,
since node_self() will panic if _node_self not intialized.
[91/07/24  22:48:48  jsb]
[ ./kernel/ddb/db_print.c ]
In db_print_thread, if the thread is swapped and there is a
continuation function, print the function name in parentheses
instead of '(swapped)'.
[91/07/04  09:59:27  jsb]
[ ./kernel/device/dev_pager.c ]
Corrected declaration of xmm_vm_object_lookup.
[91/07/17  13:54:47  jsb]
[ ./kernel/device/device_init.c ]
Removed NORMA hooks.
[91/07/17  23:06:14  jsb]
[ ./kernel/device/ds_routines.c ]
Device_write_get doesn't need to do anything for loaned ior's.
[91/08/02  12:13:15  jsb]

Create the right flavor of copy object in ds_read_done.
Replace NORMA_BOOT conditionals with NORMA_DEVICE.
Free loaned ior's directly in iodone().
[91/07/27  22:45:09  jsb]
[ ./kernel/device/if_ether.h ]
Protected against multiple inclusion.
[91/07/24  22:57:01  jsb]
[ ./kernel/device/io_req.h ]
Added IO_LOANED flag, initially for norma_ipc support.
Loaned ior's are returned directly at interrupt level;
see iodone() for details.
[91/07/27  22:28:29  jsb]
[ ./kernel/device/net_io.c ]
Added NORMA_ETHER support.
[91/07/24  22:54:41  jsb]
[ ./kernel/i386ipsc/autoconf.c ]
Eliminated call to ask_bootstrap_server.
Only call ask_root_device if RB_ASKNAME.
Split dcm_init call into dcm_init_{send,recv}.
[91/07/25  18:38:51  jsb]
[ ./kernel/i386ipsc/cnp/if_cnp.c ]
Added cnpintr_count, and code in cnpintr to set unit to zero
when cnpintr is actually called from an interrupt.
[91/07/17  13:56:50  jsb]
[ ./kernel/i386ipsc/dcm.h ]
Removed PHYSADDR definition.
[91/07/24  22:59:34  jsb]
[ ./kernel/i386ipsc/dcm_input.c ]
Moved all device independent code to norma/ipc_net.c.
[91/07/25  18:30:13  jsb]
[ ./kernel/i386ipsc/dcm_output.c ]
Added setting of size field in dcm_header for i860ipsc support.
[91/07/27  19:04:34  jsb]

Moved all device independent code to norma/ipc_net.c.
[91/07/25  18:30:44  jsb]
[ ./kernel/i386ipsc/dcm_route.s ]
Removed dcm_send_k, dcm_send_a. Changed send_chan_* to dcm_send_chan_*.
[91/07/24  23:18:30  jsb]

Changed for rename of recv_chan to dcm_recv_chan.
[91/07/17  23:26:00  jsb]

Added dcm_send_a; added outb_dx, outw_dx, outb_i macros.
[91/07/17  13:58:26  jsb]
[ ./kernel/i386ipsc/model_dep.c ]
Force RB_ASKNAME into boothowto, since we cannot do so at boot time.
[91/07/25  18:40:17  jsb]

Added node_self(), _node_self.
[91/07/24  23:15:52  jsb]
[ ./kernel/i386ipsc/pic_ipsc.c ]
Added cnpintr.
[91/07/17  13:59:08  jsb]
[ ./kernel/ipc/ipc_init.c ]
Removed call to ipc_clport_init.
[91/07/24  22:11:04  jsb]
[ ./kernel/ipc/ipc_kmsg.c ]
Added support for ddb commands ``show msg'' and ``show kmsg''.
Made changes for elimination of intermediate clport structure.
[91/07/27  22:25:06  jsb]

Moved MACH_MSGH_BITS_COMPLEX_{PORTS,DATA} to mach/message.h.
Removed complex_data_hint_xxx[] garbage.
Adopted new vm_map_copy_t page_list technology.
[91/07/04  13:09:45  jsb]
[ ./kernel/ipc/ipc_kmsg.h ]
NORMA_IPC: added ikm_page field to struct ipc_kmsg.
[91/07/17  14:01:38  jsb]
[ ./kernel/ipc/ipc_mqueue.c ]
Renamed replenish routine.
[91/08/01  23:00:06  jsb]

Removed obsolete include.
Added option, timeout parameters to ipc_clport_send.
[91/07/17  14:04:15  jsb]
[ ./kernel/ipc/ipc_port.c ]
Call norma_ipc_destroy when destroying port.
Added clport fields to ipc_port_print.
[91/07/24  22:14:01  jsb]

Fixed include. Changed clport field initialization.
[91/07/17  14:05:38  jsb]
[ ./kernel/ipc/ipc_port.h ]
Fixed include. Added clport fields directly to struct ipc_port.
[91/07/17  14:06:25  jsb]
[ ./kernel/ipsc/dcmcom.h ]
Added size field to dcm_header for i860ipsc support.
[91/07/27  19:03:12  jsb]

Simplified.
[91/07/25  16:45:08  jsb]
[ ./kernel/ipsc/dev_forward_name.c ]
Removed norma conditionals; use conf/file technology instead.
[91/07/27  18:16:09  jsb]
[ ./kernel/kern/bootstrap.c ]
Moved bootstrap query earlier. Removed all NORMA specific code.
[91/07/25  18:25:35  jsb]
[ ./kernel/kern/debug.c ]
Replaced obsolete NORMA tag with NORMA_IPC.
[91/07/27  18:13:01  jsb]
[ ./kernel/kern/ipc_host.c ]
Removed NORMA hooks.
[91/07/17  23:05:10  jsb]
[ ./kernel/kern/ipc_mig.c ]
Corrected comment for mach_msg_send_from_kernel.
[91/07/04  10:08:23  jsb]
[ ./kernel/kern/mach_clock.c ]
NORMA_IPC: added call to netipc_timeout in hardclock.
[91/07/24  22:30:22  jsb]
[ ./kernel/kern/startup.c ]
Changed NORMA specific startup again.
[91/07/24  22:32:51  jsb]
[ ./kernel/mach/mach_norma.defs ]
Removed norma_get_{host,host_priv,device}_port;
Use norma_{get,set}_special_port instead.
[91/07/25  07:51:11  jsb]
[ ./kernel/mach/message.h ]
Added MACH_MSGH_BITS_COMPLEX_{PORTS,DATA}.
[91/07/04  12:38:13  jsb]
[ ./kernel/mach/norma_special_ports.h ]
First checkin.
[91/07/25  07:52:36  jsb]
[ ./kernel/norma/ipc_ether.c ]
Restructured to work with completely unmodified ethernet driver.
Added code to automatically find a usable ethernet device.
Removed NODE_BY_SUBNET case. Perform initialization earlier.
[91/08/02  14:21:08  jsb]

Use IO_LOANED technology.
[91/07/27  22:56:42  jsb]

Added fragmentation.
[91/07/27  18:54:37  jsb]

First checkin.
[91/07/24  23:38:03  jsb]
[ ./kernel/norma/ipc_ether.h ]
Made netipc_udpip_header field names more regular.
[91/07/27  18:59:59  jsb]

First checkin.
[91/07/24  23:37:33  jsb]
[ ./kernel/norma/ipc_input.c ]
Use MACH_MSGH_BITS_COMPLEX_DATA instead of null msgid to determine
whether data follows kmsg.
[91/08/01  21:57:37  jsb]

Eliminated remaining old-style page list code.
Cleaned up and corrected clport_deliver_page.
[91/07/27  18:47:08  jsb]

Moved MACH_MSGH_BITS_COMPLEX_{PORTS,DATA} to mach/message.h.
[91/07/04  13:10:48  jsb]

Use vm_map_copy_t's instead of old style page_lists.
Still need to eliminate local conversion between formats.
[91/07/04  10:18:11  jsb]
[ ./kernel/norma/ipc_kserver.c ]
Replaced spldcm/splx with sploff/splon.
[91/07/28  20:52:22  jsb]

Removed obsolete includes and vm and kmsg munging operations.
[91/07/17  14:14:11  jsb]

Moved MACH_MSGH_BITS_COMPLEX_{PORTS,DATA} to mach/message.h.
[91/07/04  13:12:09  jsb]

Use vm_map_copy_t page_lists instead of old style page_lists.
[91/07/04  10:20:35  jsb]
[ ./kernel/norma/ipc_net.c ]
Fiddled splon/sploff definitions. Removed another printf.
[91/08/02  14:30:57  jsb]

Many many changes.
[91/08/01  22:59:24  jsb]

Small protocol bug fixes. Removed bogus kv_addr usage.
[91/07/27  18:56:52  jsb]

First checkin.
[91/07/24  22:55:43  jsb]
[ ./kernel/norma/ipc_net.h ]
First checkin.
[91/07/27  19:00:39  jsb]
[ ./kernel/norma/ipc_output.c ]
Merged into norma/ipc_net.c. At some point I will move all output
related functions from norma/ipc_net.c back into here.
[91/08/01  22:04:59  jsb]

Cleaned up and corrected handling of out-of-line data.
Eliminated remaining old-style page list code.
[91/07/27  18:51:30  jsb]

Moved MACH_MSGH_BITS_COMPLEX_{PORTS,DATA} to mach/message.h.
[91/07/04  13:11:39  jsb]

Confined complex_data_hint garbage to just this file.
[91/07/04  10:22:22  jsb]
[ ./kernel/norma/ipc_wait.c ]
Fixed include.
[91/07/17  14:06:39  jsb]
[ ./kernel/norma/ipc_xxx.c ]
Conditionalized printfs.
[91/08/01  22:55:17  jsb]

Eliminated dynamically allocated clport structures; this information
is now stored in ports directly. This simplifies issues of allocation
at interrupt time.

Added definitions for IP_CLPORT_{NODE,LID} appropriate for using the
low two bytes of an internet address as a node number.

Revised norma_special_port mechanism to better handle port death
and port replacement. Eliminated redundant special port calls.
Cleaned up associated startup code.
[91/07/25  19:09:16  jsb]
[ ./kernel/norma/xmm.c ]
Renamed xmm_init() to norma_vm_init().
[91/07/24  23:25:57  jsb]
[ ./kernel/norma/xmm_server.c ]
Changed mach_port_t to ipc_port_t whereever appropriate.
[91/07/17  14:07:08  jsb]
[ ./kernel/norma/xmm_svm.c ]
Added missing type cast.
[91/07/17  14:07:46  jsb]
[ ./kernel/vm/memory_object.c ]
For now, use memory_object_data_supply iff NORMA_IPC.
[91/07/04  13:14:50  jsb]
[ ./kernel/vm/vm_map.c ]
Removed vm_map_convert_from_page_list.
Temporarily make vm_map_copyin_page_list always steal pages.
[91/08/01  22:49:17  jsb]

NORMA_IPC: Added vm_map_convert_{to,from}_page_list functions.
These will be removed when all kernel interfaces
understand page_list copy objects.
[91/07/04  14:00:24  jsb]

Removed obsoleted NORMA_IPC functions:
	ipc_clport_copyin_object
	vm_map_copyout_page
	ipc_clport_copyin_pagelist
[91/07/04  13:20:09  jsb]
[ ./user/threads/cthreads.h ]
Removed the infamous line 122.
[91/08/01  22:40:24  jsb]
    
    
    
==========================================================================
   ***** MK Version MK61  (af) *****
    
    
New features:
--- --------

A new DEC machine enters the family: the DECstation 5000/120,125.
Brings in a new screen and some new graphic chips also.

The 386AT now understands SCSI, using the generic SCSI driver which
now supports the Adaptec 1540 board.  Plug in your SCSI toys and have
fun!

New autoconfig code for the 386.  I repeat: "NEW AUTOCONFIG CODE for THE 386".

New, much improved generic serial line driver.  Understands two chips 
currently: the dz7085 from DEC and the scc8530 from Zilog.

The SCSI driver understands and handles correctly PROCESSOR type devices.
More on this some other day.  We also handle fixed-size tapes (QIC-11).

The screen driver can be asked about the size of the phys screen.

Use the 4.4 BSD string functions.  Now the Berkeley people cannot joke
about ATT code in our kernels anymore, sorry Keith.

[PMAX]	  The interrupt system is now much more flexible, spls are vectored
so that each machine type can install its own, if needs to.  Old ones are
the default.

[PMAX]	  Support for extra SCSI boards, which can be plugged in any TC slot.

[PMAX]	  Boot now understands the REX prom interface from DEC


Bug fixes:
--- -----

Some.

Organizational changes:
-------------- -------

As mentioned by danner, now we are supposed to build for the Omron too.

Special notes:
------- -----

Testing was:

	vax	STD+VAX6bb (gcc)	booted on sf.mach
	sun	STD+SWS (gcc)		booted on rocky
	i386	STD+WS			booted on badenov
					(SCSI native also (*))
		STD+NORMA+iPSC
		STD+SQT+32
	88k	STD+ANY			booted (partially) on amalia
	mips	STD+ANY			booted on testarossa, miura, rvb

(*) The 386 does not know where it is booted from, Bob promised to look into.
    For now, stop it in get_boot_device and patch root_name by hand.

******** CUT HERE ******** summary of log messages ******** CUT HERE ********
[ ./conf/version.edit ]
61
[ ./Directories/ALL ]
Added luna88k specific directories.
[91/07/11            danner]
[ ./include/Makefile ]
Luna88k support, partial i860 support, general restructings
[91/08/01            danner]
[ ./kernel/chips/bt431.c ]
Created, from Brooktree specs:
"Product Databook 1989"
"Bt431 Monolithic CMOS 64x64 Pixel Cursor Generator"
Brooktree Corp. San Diego, CA
LA59001 Rev. J
[91/07/25            af]
[ ./kernel/chips/bt431.h ]
Created, from Brooktree specs:
"Product Databook 1989"
"Bt431 Monolithic CMOS 64x64 Pixel Cursor Generator"
Brooktree Corp. San Diego, CA
LA59001 Rev. J
[91/07/25            af]
[ ./kernel/chips/bt455.c ]
Cleaned up a bit, avoid use of poorly documented add_clr register.
Catched various minor bloopers.
[91/08/22  11:02:18  af]

Created, from Brooktree specs:
"Graphics And Imaging Product Databook 1991"
"Bt454/Bt455 170 Mhz Monolithic CMOS 16 Color Palette RAMDAC"
Brooktree Corp. San Diego, CA, 3rd Ed.
[91/07/25            af]
[ ./kernel/chips/bt455.h ]
Cleaned up a bit, described spec sources more precisely.
[91/08/22  11:03:56  af]

Created, from Brooktree specs:
"Graphics And Imaging Product Databook 1991"
"Bt454/Bt455 170 Mhz Monolithic CMOS 16 Color Palette RAMDAC"
Brooktree Corp. San Diego, CA, 3rd Ed.
[91/07/25            af]
[ ./kernel/chips/bt459.c ]
Moved padding of regmap here, in implementation file.
[91/08/02  02:03:12  af]
[ ./kernel/chips/bt459.h ]
Padding is a machdep issue: moved into implementation file.
[91/08/02  02:03:49  af]
[ ./kernel/chips/bt478.c ]
Moved padding of regmap here.  Add a couple of clarifications.
[91/08/02  02:06:15  af]
[ ./kernel/chips/bt478.h ]
Moved padding of regmap to impl file.
[91/08/02  02:06:41  af]
[ ./kernel/chips/busses.c ]
Wildcarding on adaptor no. works now.
[ ./kernel/chips/busses.h ]
Mods to cope with the 386 PC/AT ISA bus.
[91/06/20            af]
[ ./kernel/chips/cfb_hdw.c ]
Works on 3mins too.  New calling seq, declare screen sizes.
[91/08/02  01:59:46  af]
[ ./kernel/chips/cfb_misc.c ]
CharRows is gone, pm_init_screen_params() is different.
[91/08/02  02:00:39  af]
[ ./kernel/chips/dc503.c ]
Moved padding of regmap here.  Rid of "struct pcc" hack, now
we understand a pm_softc, and compatibles.
[91/08/02  02:27:53  af]
[ ./kernel/chips/dc503.h ]
Moved padding issues down in impl file.
Struct pcc hack is gone.
[91/08/02  02:28:28  af]
[ ./kernel/chips/dz_7085.h ]
Moved padding down in impl file.
[91/08/02  02:14:58  af]
[ ./kernel/chips/dz_hdw.c ]
Spl for 3min, padding of regmap here, a lot of code migrated
elsewhere to become chip-indep, pseudo-dma is gone.
Did not think I changed so much, oops.
[91/08/02  02:31:34  af]
[ ./kernel/chips/fb_hdw.c ]
Created, from .. NO SPECS AT ALL.  A little experimentation
with ddb, and a lot of past experience did the magic.
I guess this screen driver really is portable.
BTW, the cursor is still mirrored, ahem.
[91/01/25            af]
[ ./kernel/chips/fb_misc.c ]
Got cursor mirrored right.
[91/08/22  11:05:12  af]

Created, from .. NO SPECS AT ALL.  A little experimentation
with ddb, and a lot of past experience did the magic.
I guess this screen driver really is portable.
BTW, the cursor is still mirrored, ahem.
[91/01/25            af]
[ ./kernel/chips/lance.c ]
Spls for 3min, which has yet another bogus DMA setup: now the
alignment for the rings can be different from the one for data.
What will be next ?
[91/08/02  02:24:15  af]
[ ./kernel/chips/lance.h ]
Fixed mis-typing of strides, mods to switch to cope with yet-another
DMA bogosity.
[91/08/02  01:54:00  af]
[ ./kernel/chips/lance_mapped.c ]
Bugfix: typos, spl for 3min.
[91/08/02  01:52:26  af]
[ ./kernel/chips/lk201.c ]
Spls for 3min.  More uniformity.  More flexible about where the serial 
line is.
[91/08/02  02:18:02  af]
[ ./kernel/chips/mc_clock.c ]
Fixed spl munging, for 3min.
[91/08/02  01:49:09  af]
[ ./kernel/chips/mouse.c ]
The hack for 3mins was screwing up everyone else.
[91/08/02            af]
Spl for 3min, more uniformity, temporary hack for bug
still at large on 3min, generic console linkage.
[91/08/02  02:33:05  af]
[ ./kernel/chips/pm_defs.h ]
Dropped predefines of frame sizes.
[91/08/02  02:16:00  af]
[ ./kernel/chips/pm_hdw.c ]
Declare screen sizes, new calling sequences for a couple funcs.
[91/08/02  01:58:48  af]
[ ./kernel/chips/pm_misc.c ]
Now we share this with yet another driver.  Mods to cope with
arbitrary framebuffer geometries.  Did not put pixel sizes in,
maybe should someday.  Code seems more understandable, too.
Threw in a couple optims, did not try to avoid copying non-visible
memory when scrolling, will do next time around.
[91/08/02  02:14:16  af]
[ ./kernel/chips/scc_8530.h ]
Created, from the Zilog specs:
"Z8530 SCC Serial Communications Controller, Product Specification"
in the "1983/84 Components Data Book" pp 409-429, September 1983
Zilog, Campbell, CA 95008
[91/06/21            af]
[ ./kernel/chips/scc_8530_hdw.c ]
Created, from the Zilog specs:
"Z8530 SCC Serial Communications Controller, Product Specification"
in the "1983/84 Components Data Book" pp 409-429, September 1983
Zilog, Campbell, CA 95008
[91/06/28            af]
[ ./kernel/chips/screen.c ]
Spls for 3min, added SCREEN_HARDWARE_INFO.
[91/08/02  02:04:46  af]
[ ./kernel/chips/screen.h ]
Added frame size related defs, and get_status call.
[91/08/02  02:05:23  af]
[ ./kernel/chips/screen_defs.h ]
Added frame size related defs.  Redefines for 3min.
Define here logical names for the keyboard&mouse
serial lines.  Specify completely here the kernel font.
[91/08/02  02:09:43  af]
[ ./kernel/chips/screen_switch.c ]
Added new hires, monochrome screen driver "fb", dressed as a color one.
[91/08/02  01:56:50  af]
[ ./kernel/chips/serial_console.c ]
Created, splitting out most code from dz_tty.c file.
[91/07/07            af]
[ ./kernel/chips/serial_defs.h ]
Created.
[91/07/07            af]
[ ./kernel/conf/MASTER.i386 ]
Added SCSI driver "aha".
[91/08/02  02:34:39  af]
[ ./kernel/conf/MASTER.luna88k ]
Lets build mach_kernel like everyone else.
[91/08/16            rvb]
Changed scsi support from sd to scsi.
[91/07/13            danner]
[ ./kernel/conf/MASTER.mips ]
Changes for kmin, including one more ASC scsi interface, and a new
driver: the SCC serial line one (substitutes the DZ)
[91/07/05            af]
[ ./kernel/conf/MASTER.vax ]
Generic console driver. Should eventually replace all the old cruft.
[91/08/02  02:35:27  af]
[ ./kernel/conf/Makefile.luna88k ]
Defuncted vsnprintf.c,  debug_msg.c in locore.
Removed -fvolatile-global, -fvolatile
[91/07/19            danner]
[ ./kernel/conf/files.i386 ]
Added SCSI driver files and new autoconf code.
[91/08/02  02:36:35  af]
[ ./kernel/conf/files.luna88k ]
	Added some missing scsi files.
	sd --> scsi

 Revision 2.2  91/07/09  23:14:57  danner
Added scsi/rz_labels.c
[91/07/08  22:55:54  danner]

Initial Checkin
[91/03/08            danner]
 
[ ./kernel/conf/files.mips ]
The SCC driver moved to its final destination.
[91/08/02  10:21:47  af]

New 3min files for "fb" screen, SCC serial lines, 3min (kmin*)
proper, new SCSI "Cpu" and "Host" devices, generic console.
[91/08/02  02:39:59  af]
[ ./kernel/conf/files.vax ]
Generic console driver, two new SCSI devices: "Cpu" and "Host".
Plus disklabel related code is separate.
[91/08/02  02:37:55  af]
[ ./kernel/ddb/db_command.c ]
Added optional funcall at ddb entry: similar to GDB's
"display"s in spirit.
[91/08/02  02:42:11  af]
[ ./kernel/device/chario.c ]
Spl definitions.
[91/08/02  02:44:21  af]
[ ./kernel/device/ds_routines.c ]
Spls definitions.
[91/08/02  02:44:45  af]
[ ./kernel/device/net_io.c ]
Missing include for Spls definitions.
[91/08/02  02:45:16  af]
[ ./kernel/device/subrs.c ]
Use BSD string functions now, which of course come with a
copyright.  Also, undef them in case some smarty..
[91/08/22            af]
[ ./kernel/i386/loose_ends.c ]
Added delay() function, for where too much optim hurts.
[91/08/02  02:47:21  af]
[ ./kernel/i386/trap.c ]
Revision 2.15.3.1  91/08/19  13:45:20  danner
Make the file safe for gcc 1.36.  There is a really bizarro
structure assignment of an array that starts at zero that
nukes us.
[91/08/07            rvb]
[ ./kernel/i386at/autoconf.c ]
Use new MI autoconf procedures. Added SCSI.
[91/08/02  02:52:15  af]
[ ./kernel/i386at/com.c ]
New MI autoconf.
[91/08/02  02:50:03  af]
[ ./kernel/i386at/conf.c ]
Added SCSI disks, tapes, and cpus.
[91/08/02  02:56:08  af]
[ ./kernel/i386at/fd.c ]
New MI autoconf.
[91/08/02  02:53:26  af]
[ ./kernel/i386at/grab_bob_label.c ]
Temporarily created, till we evaporate the religious issues.
[91/08/02            af]
[ ./kernel/i386at/hd.c ]
New MI autoconf.
[91/08/02  02:52:47  af]
[ ./kernel/i386at/if_3c501.c ]
New MI autoconf.
[91/08/02  02:54:56  af]
[ ./kernel/i386at/if_ns8390.c ]
New MI autoconf.
[91/08/02  02:55:17  af]
[ ./kernel/i386at/if_pc586.c ]
New MI autoconf.
[91/08/02  02:54:27  af]
[ ./kernel/i386at/if_wd8003.h ]
Removed embedded control character that made gcc unhappy.
[91/07/29            danner]
[ ./kernel/i386at/kd_mouse.c ]
New MI autoconf.
[91/08/02  02:49:38  af]
[ ./kernel/i386at/m765knl.c ]
New MI autoconf.
[91/08/02  02:53:56  af]
[ ./kernel/kern/sched_prim.c ]
Final form of do_priority_computation was missing a pair of parenthesis.
[91/07/19            danner]
[ ./kernel/kern/syscall_emulation.c ]
Cast tags for bcopy
[91/08/14            rvb]
[ ./kernel/luna88k/autoconf.c ]
pcb_zone_init -> pcb_module_init and now is called by MI code.
[91/08/14            rvb]
Modifed slave_machine_configure to call cpu_configuration_print.
[91/07/18            danner]
[ ./kernel/luna88k/clock.c ]
Changed snprintf to sprintf, upped buffer size.
[91/07/20  15:34:04  danner]
[ ./kernel/luna88k/cmmu.c ]
Changed cmmu_cpu_number to use a more meaningfull loop variable.
[91/08/08            danner]
Changes from jfriedl, including 2.5 compatibility
[91/08/06  11:49:54  danner]
Added cmmu_get_idr (mmu identification register) so we can print
 chip revision during boot.

Cmmu_init now turns on the global bit of each processor. This
 avoids coherency problems when the first processor goes virtual
 and the other processors are still physical.

Removed broken BATC usage code.
[91/07/20            danner]
[ ./kernel/luna88k/db_disasm.c ]
Changes from jfriedl, including 2.5 compatability
[91/08/06  11:49:18  danner]
[ ./kernel/luna88k/db_interface.c ]
Changes from jfriedl, including 2.5 compatability.

Added volatile declarations to compensate for dropping
 volatile-global flag from gcc.
[91/07/14            danner]
[ ./kernel/luna88k/db_machdep.h ]
Changes from jfriedl, including 2.5 compatability
[91/08/06  11:49:49  danner]
[ ./kernel/luna88k/db_sstep.c ]
Changes from jfriedl, including 2.5 compatability
[91/08/06  11:49:22  danner]
[ ./kernel/luna88k/db_trace.c ]
Conditionalized pid field on ifndef MACH_KERNEL. Modified stack
 trace command to recognize integers 0 - 3 as references to the
 exception frame of the specified cpu.
[91/08/08            danner]
Changes from jfriedl, including 2.5 compatability
[91/08/06  11:49:28  danner]
[ ./kernel/luna88k/exec.c ]
Clone get_symtab from vax copy.  IS sym_off correct?
[91/08/14            rvb]
Updated to reflect new thread_state structure.
[91/08/08            danner]
[ ./kernel/luna88k/exec.h ]
Taken from i386/exec.h.
[91/08/14            rvb]
[ ./kernel/luna88k/genassym.c ]
Updated to reflect new exception frame thread /
 luna88k_saved_state structure. Added sanity checking code to
 make sure the thread structure is an integral multiple of double
 words. 
[91/08/07            danner]
[ ./kernel/luna88k/locore/eh.c ]
Bug fixes.
[91/07/11            danner]
[ ./kernel/luna88k/locore/locore.c ]
New slave stack initialization.
[91/08/15            rvb]
Removed the unused scASM* and ocsum functions.
[91/08/06            danner]
Made save context switch to interupt stack.
[91/07/15            danner]
[ ./kernel/luna88k/locore/locore.h ]
We realy should not define NBPG here.
[91/08/16  19:43:26  rvb]
[ ./kernel/luna88k/locore/locore_asm_routines.c ]
Removed ffs, suword, fuword, careful_bcopy
[91/08/06            danner]
Added read processor identification register function.
[91/07/20  15:36:01  danner]
[ ./kernel/luna88k/locore/locore_c_routines.c ]
Removed everything except data access emulation and vector init.
 The rest of the functions are defunct in 3.0
[91/08/06            danner]
[ ./kernel/luna88k/luna_init.c ]
Changes from jfriedl, including 2.5 compatability
[91/08/06  11:49:31  danner]
[ ./kernel/luna88k/machdep.c ]
Change instack declaration type and add a cast for 
assignment into the interrupt_stack of instack.
[91/08/16  16:34:38  rvb]
Add get_slave_stack to do kmem_alloc for slave's stack.
[91/08/15            rvb]
Added cpu_configuration_print.
[91/07/18            danner]
[ ./kernel/luna88k/pcb.c ]
Added thread_set_syscall_return -- does nothing for now.
Renamed pcb_zone_init -> pcb_module_init.
[91/08/14            rvb]
Cast bcopy arguments to (char *) when not.
[91/08/14            rvb]
Updated to reflect new thread_state structure.
[91/08/08            danner]
[ ./kernel/luna88k/pmap.c ]
Taken from danner.
[ ./kernel/luna88k/pmap.h ]
Changes from jfriedl, including 2.5 compatability
[91/08/06  11:48:59  danner]
Volatilized
[91/07/19            danner]
[ ./kernel/luna88k/setroot.c ]
Updated to coincide slightly more with reality.
[91/07/13            danner]
[ ./kernel/luna88k/sys_machdep.c ]
read_symtab_from_file is now MI in boot_ufs/load.c
[91/08/14            rvb]
[ ./kernel/luna88k/thread.h ]
Added scratch1, pad fields.
[91/08/07            danner]
Reorganized luna88k_saved_state structure to match up nicely with
 the thread_status structure. Removed the pid field and moved the
 fpsr and fpcr registers to be right after the general user
 registers. Moved the vector field to follow the fpit field. Moved
      the ssbr register to follow the sfip.
[91/08/07            danner]
[ ./kernel/luna88k/trap.c ]
Replaced use of backtrace with db_stack_trace_cmd.
[91/08/06            danner]
Added missing argument to ddb_error_trap.
[91/07/14            danner]
[ ./kernel/mach/luna88k/thread_status.h ]
Typo correction.
[91/08/09  18:32:12  danner]
Completely reorganized. All the machine registers are now
 exportable. Broke the state up into two pieces - one contains
 the basic user registers + pc, and the other contains the rest
 of the machine state. Things are synchronized with the
 luna88k_saved_state structure in luna88k/thread.h so that block
 copies can be used. 
[91/08/07            danner]
[ ./kernel/mach/port.h ]
Added a set of parenthesis to MACH_PORT_TYPE to shut up gcc2.
[91/07/19            danner]
[ ./kernel/mips/PMAX/boot/Makefile ]
Now test program needs c_misc.o too.
[91/08/22  11:27:20  af]
[ ./kernel/mips/PMAX/boot/asm_misc.h ]
Rid of longjmp crap.  Make callbacks vectorable, as needed
by new interface on 3min.  Described 3min interface.
[91/08/22  11:20:22  af]
[ ./kernel/mips/PMAX/boot/asm_misc.s ]
Rid of longjmp crap. Added 3min callbacks.
[91/08/22  11:21:27  af]
[ ./kernel/mips/PMAX/boot/c_misc.c ]
Set up prom callback vector appropriately, added which_prom().
Now exec passes four arguments along.
[91/08/22  11:23:41  af]
[ ./kernel/mips/PMAX/boot/mkboot.c ]
Scsi include files have moved, plus we use BSD label defs
from disk_status.h
[91/06/20            af]
[ ./kernel/mips/PMAX/boot/primary_boot.c ]
Pass along all 4 arguments, needed on 3min.
[91/08/22  11:17:49  af]
[ ./kernel/mips/PMAX/boot/start.s ]
Rid of jumpbuffer, shrinked stack frame, call which_prom()
asap to set up callback vector, moved exit() elsewhere.
[91/08/22  11:25:55  af]
[ ./kernel/mips/PMAX/boot/test.c ]
Now take 4 args, and do not try to deref the third one.
[91/08/22  11:18:37  af]
[ ./kernel/mips/PMAX/kmin.c ]
Created, from the DEC specs:
"3MIN System Module Functional Specification"  Revision 1.7
Workstation Systems Engineering, Palo Alto, CA. Sept 14, 1990.
"KN02BA Daughter Card Functional Specification" Revision 1.0
Workstation Systems Engineering, Palo Alto, CA. Aug  14, 1990.
[91/06/21            af]
[ ./kernel/mips/PMAX/kmin.h ]
Documented new SCSI registers, which were missing in the 3min prototype.
[91/08/22  11:14:57  af]

Created, from the DEC specs:
"3MIN System Module Functional Specification"  Revision 1.7
Workstation Systems Engineering, Palo Alto, CA. Sept 14, 1990.
"KN02BA Daughter Card Functional Specification" Revision 1.0
Workstation Systems Engineering, Palo Alto, CA. Aug  14, 1990.
[91/06/21            af]
[ ./kernel/mips/PMAX/kmin_cpu.h ]
Ignore, as hinted by specs, the "SCSI data available" interrupt.
The point is there seems to be no obvious way to clear it.
[91/08/22  11:14:10  af]

Created, from the DEC specs:
"3MIN System Module Functional Specification"  Revision 1.7
Workstation Systems Engineering, Palo Alto, CA. Sept 14, 1990.
"KN02BA Daughter Card Functional Specification" Revision 1.0
Workstation Systems Engineering, Palo Alto, CA. Aug  14, 1990.
[91/06/21            af]
[ ./kernel/mips/PMAX/kmin_cpu.s ]
Created, from the DEC specs:
"3MIN System Module Functional Specification"  Revision 1.7
Workstation Systems Engineering, Palo Alto, CA. Sept 14, 1990.
"KN02BA Daughter Card Functional Specification" Revision 1.0
Workstation Systems Engineering, Palo Alto, CA. Aug  14, 1990.
[91/06/21            af]
[ ./kernel/mips/PMAX/kmin_dma.c ]
Actually got it to boot multiuser with on-board SCSI.
[91/08/22  11:11:55  af]

Created.
[91/08/02  03:39:00  af]
[ ./kernel/mips/PMAX/kn02_dma.c ]
Now end_xfer routine is called for writes too.
[91/08/22  11:12:51  af]

Created.
[91/08/02  03:39:32  af]
[ ./kernel/mips/PMAX/mips_box.c ]
Spl defines, SCC and ASIC drivers, a bunch more disks and tapes
so that we can play any number of additional SCSI interface boards.
New fb screen driver.
[91/08/02  03:36:23  af]
[ ./kernel/mips/PMAX/mips_box.h ]
Pass along interrupt frame pointer to intr routines:
on 3min we need to munge the SR on the fly.
[91/08/02  03:37:22  af]
[ ./kernel/mips/PMAX/model_dep.c ]
Added 3min support, spl dispatcher lives here too.
[91/08/02  03:41:00  af]
[ ./kernel/mips/PMAX/pmag_aa.h ]
Created, from the DEC specs:
"PMAG-AA TURBOchannel Monochrome Frame Buffer Functional Specification"
Workstation Systems Engineering, Palo Alto, CA. Aug 27, 1990.
[91/01/25            af]
[ ./kernel/mips/PMAX/tc.c ]
Bugfix from Michael Pagels (pagels@cs.arizona.edu): did
not properly skip unknown devices.
[91/08/02  12:48:21  af]

Added PMAG-AA, and ASIC and Z8530 pseudos.
Made number of slots dynamic, probe them from
high to low slot number (system devices take precedence).
The 'someday' for an arbitrary interrupt enable function has come.
[91/08/02  03:33:19  af]
[ ./kernel/mips/PMAX/tc.h ]
Defined max number of TC slots, arbitrary TC interrupt
enable function.
[91/08/02  03:34:38  af]
[ ./kernel/mips/autoconf.c ]
We understand 3mins.  Finding systype is a problem now.
[91/08/02  03:24:57  af]
[ ./kernel/mips/conf.c ]
Generic console driver, SCSI processor devices.
[91/08/02  03:07:13  af]
[ ./kernel/mips/db_disasm.c ]
We are supposed to print a newline before returning from db_disasm().
[91/08/02  16:25:54  af]
[ ./kernel/mips/db_interface.c ]
Use generic console calls.
[91/08/02  03:15:32  af]
[ ./kernel/mips/locore.s ]
Made clearing of buserrors variables, accomodates 3mins.
[91/08/02  03:19:50  af]
[ ./kernel/mips/machparam.h ]
Made spls indirect jumps, to allow more flexibility in redefining
them.  This is dictated by the ridicoulous interrupt dispatching
found on the DEC 3min, which mixes both different levels and an
interrupt mask on one level.
[91/06/24            af]
[ ./kernel/mips/mips_box.h ]
Defines for some new DEC boxes.
[91/08/02  03:06:24  af]
[ ./kernel/mips/mips_cpu.s ]
Renames of old spl functions, still used as "default" spls.
[91/08/02  03:05:32  af]
[ ./kernel/mips/mips_init.c ]
Some calls that lived in assembly live here now.
Identify proms real quick now, getenv depends on it.
More flexibility in finding the bitmap of valid pages.
Made contiguous page stealing a MI feature.
[91/08/02  03:23:48  af]
[ ./kernel/mips/mips_instruction.c ]
pcb_synch() no longer needed.
[91/08/02  03:28:18  af]
[ ./kernel/mips/mips_misc.c ]
Spl defs, define halt() function.
[91/08/02  03:18:57  af]
[ ./kernel/mips/mips_startup.c ]
Removed obsolete piece of wisdom.
[91/08/02  03:15:03  af]
[ ./kernel/mips/parse_args.c ]
Added rcline, and temporarily SCC .
[91/08/02  03:11:11  af]
[ ./kernel/mips/pcb.c ]
Missing include of Spl defs.
[91/08/02  03:04:04  af]
[ ./kernel/mips/pmap.c ]
phys_to_k0seg() is out, kvtophys() is in.
[91/08/02  03:13:06  af]
[ ./kernel/mips/prom_interface.h ]
Reduced the number of entry points to the ones we actually use.
[91/06/25            af]
[ ./kernel/mips/prom_interface.s ]
Reduced the number of entry points to the ones we actually use.
Added yet-another-prom-interface-from-DEC, for 3min.
[91/06/25            af]
[ ./kernel/mips/start.s ]
Moved any call to C that can be made from C in C code.
Save all 4 arguments for later inspection: new DEC
proms are more creative.
[91/08/02  03:17:56  af]
[ ./kernel/mips/swapgeneric.c ]
Better parsing of both old and new syntax, assumed
arguments are a bit more consistent.  Understands
unit numbers greater than 9 also.  Can tftp() boot,
but only if we have a local disk :-((
[91/08/02  03:27:33  af]
[ ./kernel/mips/trap.c ]
Spl defs, and fixed disguised splsoftclock().
[91/08/02  03:12:05  af]
[ ./kernel/scsi/adapters/README ]
Created.
[91/08/02            af]
[ ./kernel/scsi/adapters/scsi_33C93.h ]
Created, from the Amd specs:
"Am33C93A Enhanced SCSI-Bus Interface Controller"
Publication #11853 Rev.A Amendment/0 Issue Date: June 1989
5/16/1989, Advanced Micro Devices Inc.,  Sunnyvale, CA.
[91/08/01            af]
[ ./kernel/scsi/adapters/scsi_33C93_hdw.c ]
Created, from the Amd specs:
"Am33C93A Enhanced SCSI-Bus Interface Controller"
Publication #11853 Rev.A Amendment/0 Issue Date: June 1989
5/16/1989, Advanced Micro Devices Inc.,  Sunnyvale, CA.
[91/08/01            af]
[ ./kernel/scsi/adapters/scsi_5380.h ]
Moved padding of regmap in impl file.
[91/08/02  04:22:39  af]
[ ./kernel/scsi/adapters/scsi_5380_hdw.c ]
Moved padding of regmap here.  Do synch neg on inquiry too.
[91/08/02  04:23:37  af]
[ ./kernel/scsi/adapters/scsi_53C94.h ]
Moved padding down in impl file.
[91/08/02  04:14:53  af]
[ ./kernel/scsi/adapters/scsi_53C94_hdw.c ]
Always call the end_xfer routine, might have to stop DMA engine.
In synch negotiation, actually send out the command we are
supposed to rather than blindly test_unit_ready.
[91/08/22  11:08:23  af]

Moved padding of regmap here.  Moved dma-like operations elsewhere,
now we have a new case in which a true DMA chip uses the 53C94.
Actually, on 3mins the two types of dma might/do coexist.
[91/08/02  04:17:22  af]
[ ./kernel/scsi/adapters/scsi_7061.h ]
Moved padding of regmap in impl file.
[91/08/02  04:18:05  af]
[ ./kernel/scsi/adapters/scsi_7061_hdw.c ]
Padding of regmap is done here.  Renames for uniformity.
Do the synch neg on enquiry too.  Disabled answering to
selection, we live on the same bus with other machines
now.
[91/08/02  04:20:22  af]
[ ./kernel/scsi/adapters/scsi_89352_hdw.c ]
Reflected changes in MI code
[af]
Changed hardware header from sd.h to scsi.h
[91/07/13            danner]
[ ./kernel/scsi/adapters/scsi_aha15.h ]
Created, from the Adaptec manual:
"AHA-1540B/1542B Technical Reference Manual"
Adaptec Inc. Literature Department,
600001-031 Rev. C, 7/90, Milpitas, CA.
[91/06/14            af]
[ ./kernel/scsi/adapters/scsi_aha15_hdw.c ]
Created, from the Adaptec spec:
"AHA-1540B/1542B Technical Reference Manual"
Adaptec Inc. Literature Department,
600001-031 Rev. C, 7/90, Milpitas, CA.
[91/06/14            af]
[ ./kernel/scsi/adapters/scsi_dma.h ]
Created.
[91/08/02  04:14:25  af]
[ ./kernel/scsi/compat_30.h ]
Corrected defines.
[91/08/02  03:50:58  af]
[ ./kernel/scsi/mapped_scsi.c ]
Spl defs.
[91/08/02  03:45:16  af]
[ ./kernel/scsi/rz.c ]
Pass along the ior in open calls.
Removed luna88k specialization, as the device headers have been
 rationalized. 
[91/08/02  03:51:40  af]
[ ./kernel/scsi/rz_cpu.c ]
Created.
[91/08/02  03:52:11  af]
[ ./kernel/scsi/rz_disk.c ]
Spl defs.  Search for label. MultiP locks.
[91/08/02  03:53:45  af]
[ ./kernel/scsi/rz_disk_bbr.c ]
Fixed includes.
[91/08/02  03:45:46  af]
[ ./kernel/scsi/rz_host.c ]
Created.
[91/08/02  03:47:02  af]
[ ./kernel/scsi/rz_labels.c ]
Created, splitting out DEC-specific code from rz_disk.c and
adding some more.
[91/06/26            af]
[ ./kernel/scsi/rz_labels.h ]
More vendor's labels.
[91/08/02  03:50:34  af]
[ ./kernel/scsi/rz_tape.c ]
Flag tapes as exclusive open, Spl defs, now we
understand fixed-size tapes (QIC-11), multiP locks.
[91/08/02  03:56:41  af]
[ ./kernel/scsi/scsi.c ]
Spls defs, corrected scsi_master_alloc() to allocate
as expected, support for processor devices, 
made it possible to avoid sync neg at all (for rb's sake),
no start unit on processor devices, understand our
own descriptor.
[91/08/02  04:01:50  af]
[ ./kernel/scsi/scsi_alldevs.c ]
Revised scsi_inquiry to try selecting with ATN too,
a certain target insults us ("dumb initiator") if not.
[91/08/02  03:48:38  af]
[ ./kernel/scsi/scsi_cpu.c ]
Filled in with what was missing.  Works, too.
[91/08/02  03:46:32  af]
[ ./kernel/scsi/scsi_defs.h ]
Added processor_type infos, definition of an opaque type,
multiP locking.
[91/08/02  03:55:05  af]
[ ./kernel/scsi/scsi_disk.c ]
Bcopy casts.
[ ./kernel/scsi/scsi_tape.c ]
Support for fixed-size-tapes: careful about speed selections,
round sizes properly, use fixed bit.
[91/08/02  03:58:18  af]
[ ./kernel/src/mig/Makefile ]
Fine tuning: ... -if vs if
[91/08/14            rvb]
Fixed release to actually link each time.
[91/07/23            danner]
[ ./kernel/vax/conf.c ]
Generic console.
[91/08/02  04:30:46  af]
[ ./kernel/vax/ka3100.c ]
pcc is gone, reflected other changes in calling seq or
function names.
[91/08/02  04:31:48  af]
[ ./user/libmach/Makefile ]
Luna setjmp needs to go the the preprocessor. Added SETJMP variable to
accomplish this.
[91/07/20  15:42:18  danner]
[ ./user/libmach/luna88k/_setjmp.cs ]
Added _longjmp, optimized setjmp.
[91/07/20            danner]
Renamed from _setjmp.h. Completed
[91/07/11            danner]
[ ./user/libmach/luna88k/bzero.c ]
Created
[91/07/20            danner]
[ ./user/threads/Makefile ]
Added MACHINE_CFLAGS switch to support the -Wf,-XNk150 flag for
 mips string space. Apparently "danner/n3" is enough longer than
 "dbg" to exhaust string space.
[91/08/21            danner]
Added better cpp technology to deal with gcc limitations. 
      Currently only an issue on luna88k.
[91/07/26            danner]
Made use of -ES vs. -E machine dependent, as luna88k does not
 like -ES.
[91/07/19            danner]
[ ./user/threads/luna88k/csw.s ]
Comment leader fix
[91/07/19  20:03:34  danner]
Created by rwd
[91/07/19  18:58:17  danner]
[ ./user/threads/luna88k/cthread_inline.awk ]
Revision 2.1  91/07/11  17:24:50  danner
Created.
[ ./user/threads/luna88k/cthreads.h ]
Created by rwd
[91/07/19  18:45:07  danner]
[ ./user/threads/luna88k/lock.s ]
Comment leader fix
Created by rwd
[91/07/19  20:03:31  danner]
[ ./user/threads/luna88k/thread.c ]
Created.
[91/07/19  18:45:28  danner]
[ ./utils/mktree.sh ]
Fixed a comment.
[91/07/21            danner]
Missed one pmax/mips thingie.
[91/07/13            danner]

Fixed mistake where pmax_mach was a link to pmax instead of mips.
 This is the only machine were @sys_mach should not be a link to
 @sys. Sigh.
[91/07/11            danner]

Added i860 to machines. Changed directory warning to warn if the
 current directory is not 'latest' instead of 'kernel'.
[91/07/11            danner]
    
    
    
==========================================================================
   ***** MK Version MK62  (jsb) *****
    
    
Warning/disclaimer:
------------------

This is really about 4 1/2 merges, one each from jsb (me), dlb, rpd,
and intel, and some misc stuff from dbg and af. I don't remember how
I decided that this was a good thing to do.

New features:
--- --------

Summary:

===> From jsb:

Added support for remote task creation with inherited memory.
Remove task creation is accessible either via task_create_remote,
or task_create with task_server_node patched to some reasonable value.
The first option allows a norma-knowlegable program or server to create
a task on a particular node. The second option allows norma-naive
programs or servers (such as the unix server) to use remote task creation;
the task_server_node variable will be replaced with a policy module
that selects one of several nodes on which to create the new task.

The vm inheritance logic for remote task creation has some problems.
When a local task creates a remote task, memory is copied lazily.
Unfortunately, when that child creates a new task, that address space
copy is done eagerly. This will be fixed in a future merge.

Removed the hardwired table of <node number | ethernet addr | ip addr >
from the kernel, and replaced with client code for an arp-like protocol
which provides the same information. The server for this protocol will
be released to the USER area in a future merge.

Added preliminary support in network code for windows > 1 packet.
(The current code uses stop-and-wait.)

Added a.out ddb filename/line number support. (This support has existed for
a long time for the pmax.) Building with the 'lineno' options (e.g.,
STD+WS+lineno) will build a kernel with all the necessary symbol table
info. The xstrip program then removes all the unnecessary symbol table
info, leaving just global identifiers, file names, and line numbers.

The pmax now no longer by default builds with line number information;
if you want this information, you must use the lineno option.

Added 'A' flag to examine: just like 'a' (address), but prints addr
as a procedure type, thus printing file/line info if available.
Useful when called as 'x/Ai'.

Did a lot of integration of norma code with dlb, rpd, and intel changes.
I've punted on some of the conflicts, which will be fixed properly in
future merges. For example, the norma xmm code doesn't yet know about
data_supply.

Updated machine/conf.c for all machines to include devinfo fields
(as dlb described on mach3) for all devices. Right now they are almost
all set to nodev. If you want your machine to handle big big writes
without panicing, add devinfo routines for your devices. For reference,
here is dlb's hddevinfo for the i386 hd driver:

hddevinfo(dev, flavor, info)
dev_t   dev;
int     flavor;
char    *info;
{
        register int    result;

        result = D_SUCCESS;

        switch (flavor) {
        case D_INFO_BLOCK_SIZE:
                *((int *) info) = SECSIZE;
                break;
        default:
                result = D_INVALID_OPERATION;
        }

        return(result);
}

See, isn't that easy?

===> From dlb:

Update previous page list code.  Add continuation logic
to allow arbitrary sized vm regions to be handled by page list routines.
[These are not the same continuations that the scheduler uses!]

Enhance page stealing logic for page lists to steal wired pages; convert
default pager to take advantage of this (pages paged in by default pager
are now almost always stolen instead of copied).

Changed device_write to use page lists.  This replaces io_wire,
io_unwire, and kmem_fault_wire with kmem_io_map_{copyout,deallocate}.
Minor device driver changes are required to make device's block size
available to the device code.

Implement precious pages based on 2.5 version.  Still a few minor tweaks
left to do, but the code should be usable.  Add backwards compatibility
logic to protect old pagers from new interfaces.

[i386]  Add device driver logic to make block size available.

===> From rpd:

Messages dequeued from a port get stamped with a sequence number.
Newly created ports start with zero.  The sequence number is reset
to zero when a receive right moves between tasks.  The msgh_kind
field is renamed msgh_seqno.  There is a new type, mach_port_seqno_t.
This change is not backwards compatible, but in practice programs
didn't use msgh_kind (except for ipc_test), so old programs are happy.

The mach_port_status_t type (returned by mach_port_get_receive_status)
has a new field that reports the sequence number the port will use next.
This change is backwards compatible because I changed the msg-id
of mach_port_get_receive_status and left a compatibility call at the old id.
There is a new call, mach_port_set_seqno, which changes a port's
sequence number.

When a message is dequeued but not received (ie, MACH_RCV_INVALID_NOTIFY,
MACH_RCV_TOO_LARGE, MACH_RCV_HEADER_ERROR) then the message header
with all fields but the reply port (which is MACH_PORT_NULL) is received.
This extends the old MACH_RCV_HEADER_ERROR behavior to the other error codes.
Except for extremely picky programs like ipc_test, this is compatible.

I removed Camelot and TrapRoutine (some experimental code I did
a long time ago) support from Mig.  I removed support for the obsolete
forms of translation and destructor syntax.  I replaced the MsgKind keyword
with MsgSeqno.  A MsgSeqno argument passes to the server the
request message's sequence number.  I added a ServerDemux keyword
which can be used to specify the name of the server's demux function.
For example,
	subsystem foo 12345;
	#include <mach/std_types.defs>

	ServerDemux not_foo_server_but_something_else;

	simpleroutine asyncmsg(server: mach_port_t;
		       MsgSeqno seqno: mach_port_seqno_t);
I added a new return code, MIG_SERVER_DIED, which client stubs report
when the server dies without sending a reply.  (Before this situation
was reported as a generic MIG_REPLY_MISMATCH error.)

I added a call, default_pager_info, to the default_pager_object interface.
It returns information about the amount of backing store available.
(A forthcoming USER release will have a program which uses this feature.)

I upgraded the default pager to use the new sequence number feature.
Now it can service most requests from the kernel, even for a single object,
in parallel.  (Read requests will wait for previous write requests
on the same object.)

I changed how the default pager manages the paging file so that it
uses a wired array of disk block addresses instead of repeatedly re-reading
indirect blocks.  This is an improvement because
	1) The default pager services many/most requests twice as fast now.
	2) The wired array only takes a few pages.
	3) Because the pager doesn't have to read a page to write a page,
	the kernel won't run out of free pages when multiple write requests
	are being serviced in parallel.
	4) The wired array can potentially be grown on-the-fly, so one
	could add backing store dynamically.


===> From Intel/SSD (the iPSC folks):

[I860]	  Lots and lots and lots of fixes. This kernel almost boots
	  multiuser. (That is, Intel is now booting multiuser, and
	  this release has almost all of their changes.)

Bug fixes:
--- -----

===> From jsb:

Fixed code to handoff kmsgs from interrupt handler to spinning thread.

===> From dlb:

Make synchronous io wait (iowait/iodone) logic work on multiprocessors.

Handle dirty private pages correctly in vm_object_terminate().

===> From rpd:

I fixed mach_msg_interrupt to check for MACH_RCV_IN_PROGRESS.

I changed vm_map_copyout so that it follows the standard protocol
of only consuming its arguments when it returns KERN_SUCCESS.
This fixes the usage inside device_write that could result in
a map-copy object being freed twice.

I fixed exception_no_server to print a semi-informative message
before dropping into kdb, so it doesn't look like the kernel is at fault.

I fixed syscall_mach_port_insert_right and syscall_task_set_special_port
to handle non-valid port names correctly.

I changed vm_pageout_scan so that it copes when memory is very tight
and external pagers can't process write requests to clean dirty pages.
This basically resurrects the Mach 2.5 vm_pageout_reserved_external
and vm_pageout_reserved_internal technology, but done somewhat differently
to avoid some problems.  I added vm_page_free_count_minimum, which
tracks the lowest value of vm_page_free_count.  If you do a lot of
paging, I would be interested in hearing what kind of values you
see for vm_page_free_count_minimum.

I fixed vm_page_deactivate to handle absent/fictitious pages properly.

I increased the device_io_map size so that one can mkfs partitions
reliably.  (Previously a 256K write would fill device_io_map, leaving
no room for writes by eg the default pager.)

I fixed xprbootstrap to zero the xpr buffer.

I fixed read_symtab_from_file so that the pmax can boot a non-xstripped
Unix server without barfing on the large symbol table.

I fixed cthreads so that cthread_fork_prepare, cthread_fork_child,
and cthread_fork_parent work at least minimally.

===> From af:

[PMAX]	  Fixed bug in SCC 8530 code that hung the machine when restarting X11.

Special notes:
------- -----

===> From dlb:

NOTE: The dev_ops (dev_name_list) structure now has an additional entry
to make device-dependent information available to machine-independent code.
This entry should be nodev for devices that don't support it.  The kernel
will panic if a big write (>64k) is attempted to such a device; these
will be replaced by error returns in the near future.

Log messages:
--- --------
[ ./conf/version.edit ]
62
[ ./kernel/boot_ufs/def_pager_setup.c ]
Added struct file_direct and associated functions.
[91/08/19            rpd]
[ ./kernel/boot_ufs/default_pager.c ]
Added seqnos_memory_object_change_completed.
From dlb: use memory_object_data_supply for pagein when buffer is
going to be deallocated.
From me: don't use data_supply under NORMA_VM (will be fixed).
[91/08/26  14:30:07  jsb]

Changed to process requests in parallel when possible.

Don't bother keeping track of mscount.
[91/08/16            rpd]
Added default_pager_info.
[91/08/15            rpd]

Added sequence numbers to the memory object interface.
Changed to use no-senders notifications.
Changed to keep track of port rights and not use mach_port_destroy.
Added dummy supply-completed and data-return stubs.
[91/08/13            rpd]
[ ./kernel/boot_ufs/file_io.c ]
Added struct file_direct and associated functions.
[91/08/19            rpd]
[ ./kernel/boot_ufs/file_io.h ]
Added struct file_direct and associated functions.
[91/08/19            rpd]
[ ./kernel/boot_ufs/load.c ]
Fixed to check vm_allocate return codes, esp in read_symtab_from_file.
[91/08/26            rpd]
[ ./kernel/chips/scc_8530_hdw.c ]
Fixed scc_scan to actually check the tp->state each time,
we are not notified when the MI code brutally zeroes it
on close and so we cannot update our software CARrier.
[91/08/27  16:18:05  af]
[ ./kernel/chips/screen.c ]
Fixed screen_write to check vm_map_copyout's return code.
[91/08/03            rpd]
[ ./kernel/conf/MASTER ]
Added lineno build option.
[91/08/26  11:12:32  jsb]
[ ./kernel/conf/MASTER.i386 ]
Added support for lineno build option.
[91/08/26  11:11:55  jsb]
[ ./kernel/conf/MASTER.mips ]
Added support for lineno build option. This option is now required
to get filename and line number debugging info.
[91/08/26  11:25:33  jsb]
[ ./kernel/conf/MASTER.sun3 ]
Added support for lineno build option.
[91/08/27  18:04:54  jsb]
[ ./kernel/conf/MASTER.vax ]
Added support for lineno build option.
[91/08/27  18:05:04  jsb]
[ ./kernel/conf/Makefile.i860 ]
Bumped up data origin a little bit (0xf8080000 -> 0xf8090000).
[91/08/27  17:09:51  jsb]
[ ./kernel/conf/Makefile.template ]
Added support for lineno build option.
[91/08/26  11:26:52  jsb]

Added sequence numbers to the memory object interface.
Updated MACH_PORT_FUNCS.
[91/08/13            rpd]
Add new external memory management routines to libmig.
[91/07/03  13:58:50  dlb]
Removed rules pertaining to mach/norma_task.defs.
Added rules for building mach_user.o and mach_norma_user.o.
[91/08/15  13:24:48  jsb]
[ ./kernel/conf/files ]
Removed mach/norma_task_user.c.
Added mach_user.c and mach_norma_user.c.
Added norma/xmm_copy.c.
[91/08/15  13:00:43  jsb]
[ ./kernel/conf/files.i860 ]
Replaced cswitch.c with cswitch.s; removed ipsc/{node,dcmcom}.c.
[91/08/27  17:08:46  jsb]
[ ./kernel/ddb/db_aout.c ]
Added line number support, via X_db_line_at_pc.
[91/08/13  18:12:37  jsb]
[ ./kernel/ddb/db_examine.c ]
Added 'A' flag to examine: just like 'a' (address), but prints addr
as a procedure type, thus printing file/line info if available.
Useful when called as 'x/Ai'.
[91/08/13  18:14:55  jsb]
[ ./kernel/device/blkio.c ]
From rpd: documented what (*max_count)() does in block_io.
[91/08/22  15:30:18  jsb]

Unlimited size is for write only.
[91/08/12  17:44:31  dlb]

Support synchronous waits for writes with vm continuations.
Remove limit on size of operations.
[91/08/12  17:22:59  dlb]
[ ./kernel/device/chario.c ]
Fixed char_write to check vm_map_copyout's return code.
[91/08/03            rpd]
[ ./kernel/device/conf.h ]
Change block size entry to general device info entry.
[91/08/12  17:24:37  dlb]

Add block size entry.  Only needed for block_io devices.
[91/08/05  17:28:42  dlb]
[ ./kernel/device/ds_routines.c ]
From rpd: increased DEVICE_IO_MAP_SIZE; documented why
device_write_get cannot be used for in-band data.
[91/08/22  15:28:19  jsb]

In device_write_get, always set the wait parameter to something;
by default, it's FALSE.
[91/08/16  14:19:31  jsb]

Support synchronous wait by writers when vm continuations are present.
Optimize device_write_dealloc.  Fix MP bug in iowait/iodone.
Convert from bsize to dev_info entry in device op vector.
[91/08/12  17:27:15  dlb]

Page lists working reliably: delete old code.
[91/08/06  17:16:09  dlb]

Clean up and add continuation support for device_write page lists.
[91/08/05  17:30:38  dlb]

First version of support for vm page lists in device_write.
Still needs cleanup and continuation support.  Old code left
under #ifdef 0.  
[91/07/31  14:42:24  dlb]
[ ./kernel/device/ds_routines.h ]
Page list support: device_write_dealloc returns a boolean.
[91/08/05  17:32:28  dlb]
[ ./kernel/device/io_req.h ]
Removed semicolon after decl_simple_lock_data in io_req declaration.
[91/08/16  15:31:22  jsb]

Add lock and associated macros to io_req structure.
[91/08/12  17:28:46  dlb]

Add io_total for use by writes - io_count is for each driver
operation, io_total is for the entire device_write.
[91/08/05  17:34:49  dlb]

Add io_copy field to remember vm_map_copy_t that must be discarded
when a mapped (not inline) device_write completes.
[91/07/31  14:43:07  dlb]
[ ./kernel/device/net_io.c ]
Panic if network write attempted with continuation.
[91/08/12  17:29:53  dlb]
[ ./kernel/i386/db_trace.c ]
In stack traces, print file/line info if available.
[91/08/13  18:15:57  jsb]
[ ./kernel/i386at/conf.c ]
Fixed field-describing comment in dev_name_list definition.
[91/08/27  17:52:06  jsb]

Convert bsize entries to devinfo entries.  Add nodev entries for
[91/08/15  18:43:13  jsb]
[ ./kernel/i386at/hd.c ]
Replace hdbsize with hddevinfo.
[91/08/12  17:33:59  dlb]

Add block size routine.
[91/08/05  17:39:16  dlb]
[ ./kernel/i386at/m765knl.c ]
Replace fdbsize with fddevinfo.
[91/08/12  17:34:48  dlb]

Add block size routine.
[91/08/05  17:40:04  dlb]
[ ./kernel/i386ipsc/conf.c ]
Added entries for new dev_info field.
[91/08/27  17:54:02  jsb]
[ ./kernel/i386ipsc/dcm_input.c ]
Moved shortword count support here from norma/ipc_net.c.
[91/08/26  14:03:39  jsb]
[ ./kernel/i386ipsc/dcm_output.c ]
Moved shortword count support here from norma/ipc_net.c.
[91/08/26  14:04:28  jsb]
[ ./kernel/i860/_setjmp.s ]
From Intel SSD: new implementation.
[91/08/26  16:01:36  jsb]
[ ./kernel/i860/bcopy.s ]
From Intel SSD: added get_r1; changed sploff/splon.
[91/08/26  16:05:21  jsb]
[ ./kernel/i860/db_interface.c ]
Removed references to db_jmpbuf.
[91/08/27  11:03:20  jsb]

From Intel SSD: various changes.
[91/08/26  16:44:29  jsb]
[ ./kernel/i860/db_trace.c ]
From Intel SSD: use pcb->k_context (not context) in db_stack_trace_cmd.
[91/08/26  16:10:05  jsb]
[ ./kernel/i860/hardclock.c ]
Removed in_hardclock; added test of db_active.
[91/08/26  16:12:45  jsb]
[ ./kernel/i860/pcb.c ]
From Intel SSD: various fixes. Added pcb_get{cur,th}pcb for cswitch.s.
[91/08/26  17:01:02  jsb]
[ ./kernel/i860/setjmp.h ]
From Intel SSD: new definitions.
[91/08/26  16:16:46  jsb]
[ ./kernel/i860/start.s ]
From Intel SSDL: always come up single user; forcibly turn interrupts
off in thread_bootstrap.
[91/08/26  16:32:10  jsb]
[ ./kernel/i860/thread.h ]
From Intel SSD: changed pcb definition.
[91/08/26  16:38:06  jsb]
[ ./kernel/i860/trap.c ]
Missed a couple exception -> exc renames.
[91/08/27  17:02:26  jsb]

Removed unused user_page_fault_continue.
From Intel SSD: use RECOVERY conditional for recover code to be
enabled in the future; turn off trap_vm_debug by default;
added emul_vm_debug; added splon/sploff to trap() (on upon entry,
off before exit); added emulated_syscall().
[91/08/26  17:45:58  jsb]
[ ./kernel/i860/ttrap.s ]
Replaced astintr call with splsched, ast_taken calls.
Left a comment indicating that we should check asts again.
[91/08/27  11:02:32  jsb]

From Intel SSD: lots of fixes.
[91/08/26  15:55:25  jsb]
[ ./kernel/i860ipsc/autoconf.c ]
Eliminated call to ask_bootstrap_server.
Split dcm_init call into dcm_init_{send,recv}.
[91/08/26  15:40:29  jsb]
[ ./kernel/i860ipsc/conf.c ]
Added entries for new dev_info field.
[91/08/27  17:54:12  jsb]
[ ./kernel/i860ipsc/dcm_input.c ]
Updated for norma/ipc_net.c compatability.
Contains lots of debugging printfs.
[91/08/27  17:04:22  jsb]
[ ./kernel/i860ipsc/dcm_output.c ]
Updated for norma/ipc_net.c compatability.
Contains lots of debugging printfs.
Also contains dummy definitions for some new dbg routines.
[91/08/27  17:07:22  jsb]
[ ./kernel/i860ipsc/i860_init.c ]
From intel SSD: Fixed chip_state() and i860_interrupts_on().
[91/08/26  15:29:38  jsb]
[ ./kernel/i860ipsc/intr.c ]
From Intel SSD: fixed intr_poll() and otherint().
[91/08/26  15:33:05  jsb]
[ ./kernel/i860ipsc/led.c ]
Added spls where necessary.
[91/08/26  15:37:21  jsb]
[ ./kernel/i860ipsc/spl.c ]
From Intel SSD: overhauled spl implementation.
[91/08/26  15:34:58  jsb]
[ ./kernel/intel/pmap.c ]
From Intel SSD: add data cache flush in INVALIDATE_TLB to work around
some more subtle unknown bug in page table caching; allow user access
to various bits of I/O space?
[91/08/26  18:27:04  jsb]
[ ./kernel/intel/pmap.h ]
From Intel SSD: turn off caching for i860 for now.
[91/08/26  18:31:19  jsb]
[ ./kernel/ipc/ipc_kmsg.c ]
Changed msgh_kind to msgh_seqno.
[91/08/09            rpd]
Changed for new vm_map_copyout failure behavior.
[91/08/03            rpd]
Update page list discriminant logic to allow use of page list for
kernel objects that do not require page stealing (devices).
[91/07/31  15:00:55  dlb]

Add arg to vm_map_copyin_page_list.
[91/07/30  14:10:38  dlb]

Turn page lists on by default.
[91/07/03  14:01:00  dlb]
Renamed clport fields in struct ipc_port to ip_norma fields.
Added checks for sending receive rights remotely.
[91/08/15  08:22:20  jsb]
[ ./kernel/ipc/ipc_kmsg.h ]
Renamed IKM_SIZE_CLPORT to IKM_SIZE_NORMA.
[91/08/15  08:12:02  jsb]
[ ./kernel/ipc/ipc_mqueue.c ]
Added seqno argument to ipc_mqueue_receive.
Also added seqno processing to ipc_mqueue_send, ipc_mqueue_move.
[91/08/10            rpd]
Fixed norma_ipc_handoff technology.
Renamed clport things to norma_ipc things.
[91/08/15  08:23:17  jsb]
[ ./kernel/ipc/ipc_mqueue.h ]
Added seqno argument to ipc_mqueue_receive.
[91/08/10            rpd]
[ ./kernel/ipc/ipc_notify.c ]
Changed msgh_kind to msgh_seqno.
[91/08/09            rpd]
[ ./kernel/ipc/ipc_port.c ]
Added ip_seqno and ipc_port_set_seqno.
Changed ipc_port_init to initialize ip_seqno.
Changed ipc_port_clear_receiver to zero ip_seqno.
[91/08/09            rpd]
Renamed clport fields in struct ipc_port to ip_norma fields.
[91/08/15  08:20:08  jsb]
[ ./kernel/ipc/ipc_port.h ]
Added ip_seqno and ipc_port_set_seqno.
[91/08/09            rpd]
Renamed clport (now ip_norma) fields in struct ipc_port.
[91/08/14  19:31:55  jsb]
[ ./kernel/ipc/mach_msg.c ]
Changed MACH_RCV_TOO_LARGE and MACH_RCV_INVALID_NOTIFY to work
like MACH_RCV_HEADER_ERROR, using ipc_kmsg_copyout_dest.
[91/08/12            rpd]

Added seqno argument to ipc_mqueue_receive.
Updated mach_msg_trap fast path for seqno processing.
[91/08/10            rpd]
Fixed mach_msg_interrupt to check for MACH_RCV_IN_PROGRESS.
[91/08/03            rpd]
Renamed clport things to norma_ipc things.
[91/08/15  08:24:12  jsb]
[ ./kernel/ipc/mach_msg.h ]
Added mach_msg_interrupt.
[91/08/03            rpd]
[ ./kernel/ipc/mach_port.c ]
Added mach_port_set_seqno and updated mach_port_get_receive_status
for mps_seqno.  Added old_mach_port_get_receive_status.
[91/08/09            rpd]
Changed port_names for new vm_map_copyout failure behavior.
[91/08/03            rpd]
[ ./kernel/ipsc/usm.h ]
From Intel SSD: added some i860 UART register definitions.
[91/08/27  17:21:00  jsb]
[ ./kernel/kern/ast.c ]
Renamed AST_CLPORT to AST_NETIPC.
[91/08/14  21:39:25  jsb]
[ ./kernel/kern/ast.h ]
Renamed AST_CLPORT to AST_NETIPC.
[91/08/14  21:38:09  jsb]
[ ./kernel/kern/bootstrap.c ]
Changed msgh_kind to msgh_seqno.
[91/08/10            rpd]
[ ./kernel/kern/exception.c ]
Added seqno arguments to ipc_mqueue_receive
and exception_raise_continue_slow.
[91/08/10            rpd]

Changed msgh_kind to msgh_seqno.
[91/08/10            rpd]

Changed exception_no_server to print an informative message
before invoking kdb, so this doesn't look like a kernel bug.
[91/08/09            rpd]
[ ./kernel/kern/ipc_kobject.h ]
Add support for using page lists with devices.  Split the macro
that says whether to use page lists into a macro that says whether
to use them (vm_page_list) and a macro that says whether the pages
should be stolen (vm_page_steal).
[91/07/31  15:05:17  dlb]
[ ./kernel/kern/ipc_mig.c ]
Fixed syscall_mach_port_insert_right and syscall_task_set_special_port
to handle non-valid port names correctly.
[91/08/15            rpd]

Changed MACH_RCV_TOO_LARGE and MACH_RCV_INVALID_NOTIFY to work
like MACH_RCV_HEADER_ERROR, using ipc_kmsg_copyout_dest.
[91/08/12            rpd]

Added seqno argument to ipc_mqueue_receive.
[91/08/10            rpd]
Conditionalize mach_msg_rpc_from_kernel on NORMA_VM, not NORMA_TASK.
[91/08/14  18:34:30  jsb]
[ ./kernel/kern/startup.c ]
Start NORMA ipc and vm systems before user bootstrap.
[91/08/15  08:33:05  jsb]
[ ./kernel/kern/thread.c ]
Fixed thread_halt, mach_msg_interrupt interaction.
Added checks for thread_exception_return, thread_bootstrap_return.
[91/08/03            rpd]
[ ./kernel/kern/thread.h ]
Added ith_seqno.
[91/08/10            rpd]
[ ./kernel/kern/xpr.c ]
Fixed xprbootstrap to zero the allocate memory.
[91/08/18            rpd]
[ ./kernel/luna88k/conf.c ]
Added entries for new dev_info field.
[91/08/27  17:58:24  jsb]
[ ./kernel/mach/default_pager_object.defs ]
Added default_pager_info.
[91/08/15            rpd]
[ ./kernel/mach/mach.defs ]
Precious page support:  Add new version of memory_object_lock_request.
Add memory_object_{ready,change_attributes}.
[91/07/03  14:03:34  dlb]
Added KERNEL_USER definitions (for NORMA support).
[91/08/15  09:58:13  jsb]
[ ./kernel/mach/mach_norma.defs ]
Added KERNEL_USER definitions.
Removed norma_set_task_server.
Added task_create_remote, norma_copy_create.
[91/08/15  13:28:27  jsb]
[ ./kernel/mach/mach_port.defs ]
Added mach_port_set_seqno.  Moved mach_port_get_receive_status
to a new id, renaming the old call old_mach_port_get_receive_status.
[91/08/09            rpd]
[ ./kernel/mach/mach_types.defs ]
Increased the size of mach_port_status_t, for mps_seqno.
Added old_mach_port_status_t, for compatibility purposes.
[91/08/09            rpd]
Add memory_object_return_t for precious page support.
[91/07/03  14:04:25  dlb]
[ ./kernel/mach/memory_object.defs ]
Added conditionalized sequence number support.
[91/08/13            rpd]
Fixed memory_object_supply_completed and memory_object_data_return
to use mach_port_t as the C type name for port arguments.
[91/08/02            rpd]
Update types in new memory object routines.  Add
memory_object_change_completed.
[91/07/03  14:05:39  dlb]
[ ./kernel/mach/memory_object.h ]
Add defs for memory_object_return_t.
[91/07/03  14:06:26  dlb]
[ ./kernel/mach/memory_object_default.defs ]
Added conditionalized sequence number support.
[91/08/13            rpd]
[ ./kernel/mach/message.h ]
Replaced msgh_kind with msgh_seqno.
[91/08/09            rpd]
[ ./kernel/mach/mig_errors.h ]
Added MIG_SERVER_DIED.
[91/08/21            rpd]
[ ./kernel/mach/notify.defs ]
Added conditionalized sequence number support.
[91/08/13            rpd]
[ ./kernel/mach/port.h ]
Added mach_port_seqno_t.  Added mps_seqno to mach_port_status_t
and created old_mach_port_status_t for compatibility purposes.
[91/08/09            rpd]
[ ./kernel/mach/std_types.defs ]
Added mach_port_seqno_t.
[91/08/09            rpd]
[ ./kernel/mach_debug/vm_info.h ]
single_use --> use_old_pageout to match vm_object.h
[91/08/05  17:41:53  dlb]
[ ./kernel/mips/conf.c ]
Added entries for new dev_info field.
[91/08/27  17:59:55  jsb]
[ ./kernel/mips/db_mips_sym.c ]
Made message about preserving symtab uniform with other machines.
Added missing one in X_db_sym_init().
[91/08/27  16:42:03  af]
[ ./kernel/norma/ipc_ether.c ]
Generalized netipc_swap_device code.
[91/08/16  14:30:15  jsb]

Added fields to support nrp (node table resolution protocol),
allowing removal of hardwired table of node/ip/ether addresses.
[91/08/15  08:58:04  jsb]
[ ./kernel/norma/ipc_ether.h ]
Added fields to support nrp (node table resolution protocol).
[91/08/15  08:50:29  jsb]
[ ./kernel/norma/ipc_input.c ]
Mark received pages as dirty and not busy.
Initialize copy->cpy_cont and copy->cpy_cont_args.
[91/08/16  10:44:19  jsb]

Fixed reference to norma_ipc_kobject_send.
[91/08/15  08:42:23  jsb]

Renamed clport things to norma things.
[91/08/14  21:34:13  jsb]

Fixed norma_ipc_handoff code.
Added splon/sploff redefinition hack.
[91/08/14  19:11:07  jsb]
[ ./kernel/norma/ipc_kserver.c ]
As a hack to avoid printfs from i860ipsc/spl.c,
defined sploff/splon as splsched/splx.
[91/08/27  21:59:34  jsb]

Renamed clport things to norma things.
[91/08/15  09:11:36  jsb]
[ ./kernel/norma/ipc_net.c ]
Removed shortword count support (BTODEV, etc) since this can be handled
by each driver. Added a couple of hacks for i860 support.
[91/08/26  14:02:50  jsb]

Added changes in preparation for >1 window sizes.
Use array-based linked lists in place of full array search.
Renamed clport things to norma things.
[91/08/15  09:10:55  jsb]
[ ./kernel/norma/ipc_wait.c ]
Renamed ast_clport things to ast_netipc things.
[91/08/15  09:12:09  jsb]

Fixed, and added counters.
[91/08/14  19:22:35  jsb]
[ ./kernel/norma/ipc_xxx.c ]
Renamed clport things to norma things.
Eliminated NORMA_ETHER special case node/lid uid division.
[91/08/15  09:14:06  jsb]

Renamed ipc_clport_foo things to norma_ipc_foo.
Added host_port_at_node().
[91/08/14  19:21:16  jsb]
[ ./kernel/norma/kern_task.c ]
Turned off remaining printf.
[91/08/26  11:16:11  jsb]

Added support for remote task creation with inherited memory.
Remove task creation is accessible either via task_create_remote,
or task_create with task_server_node patched to some reasonable value.
[91/08/15  13:55:54  jsb]
[ ./kernel/norma/xmm_copy.c ]
In m_copy_data_request: removed dead code, and added missing
is_continuation parameter to vm_map_copyin_page_list.
[91/08/16  14:25:04  jsb]

First checkin.
[91/08/15  13:03:06  jsb]
[ ./kernel/norma/xmm_server.c ]
Added temporary definition for memory_object_change_completed.
[91/08/16  14:21:20  jsb]

Added comment to xmm_lookup about read-only pagers.
[91/08/15  10:12:12  jsb]
[ ./kernel/norma/xmm_server_rename.h ]
Added xxx_memory_object_lock_request, memory_object_data_supply,
memory_object_ready, and memory_object_change_attributes.
[91/08/16  14:32:26  jsb]
[ ./kernel/norma/xmm_user.c ]
Added definition for xxx_memory_object_lock_request, and temporary
stubs for data_supply, object_ready, and change_attributes.
[91/08/16  14:22:37  jsb]

Added check for internal memory objects to xmm_user_create.
[91/08/15  10:14:19  jsb]
[ ./kernel/norma/xmm_user_rename.h ]
Added supply_completed, data_return, change_completed.
[91/08/16  10:47:04  jsb]
[ ./kernel/scsi/adapters/scsi_33C93.h ]
Name prefix change, revised list of spec documents.
[91/08/27  17:11:47  af]
[ ./kernel/scsi/adapters/scsi_33C93_hdw.c ]
Added some more code, name prefix changed, new specs.
[91/08/27  17:12:59  af]
[ ./kernel/sqtconf/conf.c ]
Added entries for new dev_info field.
[91/08/27  17:56:16  jsb]
[ ./kernel/src/mig/global.c ]
Replaced ServerProcName with ServerDemux.
[91/08/13            rpd]

Removed Camelot and TrapRoutine support.
Changed MsgKind to MsgSeqno.
[91/08/12            rpd]
[ ./kernel/src/mig/global.h ]
Replaced ServerProcName with ServerDemux.
[91/08/13            rpd]

Removed Camelot and TrapRoutine support.
Changed MsgKind to MsgSeqno.
[91/08/12            rpd]
[ ./kernel/src/mig/header.c ]
Removed TrapRoutine support.
[91/08/12            rpd]
[ ./kernel/src/mig/lexxer.l ]
Added syServerDemux.
[91/08/13            rpd]

Removed syMsgKind, syCamelot, syCamelotRoutine, syTrapRoutine,
syTrapSimpleRoutine.  Added syMsgSeqno.
[91/08/11            rpd]
[ ./kernel/src/mig/mig.c ]
Removed TrapRoutine support.
[91/08/12            rpd]
[ ./kernel/src/mig/parser.y ]
Added ServerDemux.
[91/08/13            rpd]

Removed Camelot, TrapRoutine support.
Removed obsolete translation and destructor specs.
Replaced MsgKind with MsgSeqno.
[91/08/12            rpd]
[ ./kernel/src/mig/routine.c ]
Removed Camelot and TrapRoutine support.
Changed MsgKind to MsgSeqno.
[91/08/12            rpd]
[ ./kernel/src/mig/routine.h ]
Removed Camelot and TrapRoutine support.
Changed MsgKind to MsgSeqno.
[91/08/12            rpd]
[ ./kernel/src/mig/server.c ]
Replaced ServerProcName with ServerDemux.
[91/08/13            rpd]

Removed Camelot and TrapRoutine support.
Changed MsgKind to MsgSeqno.
[91/08/12            rpd]
[ ./kernel/src/mig/type.c ]
Removed itMsgKindType.
[91/08/12            rpd]
[ ./kernel/src/mig/type.h ]
Removed itMsgKindType.
[91/08/12            rpd]
[ ./kernel/src/mig/user.c ]
Added MIG_SERVER_DIED.
[91/08/21            rpd]
Removed Camelot and TrapRoutine support.
Changed MsgKind to MsgSeqno.
[91/08/12            rpd]
[ ./kernel/src/mig/write.h ]
Removed TrapRoutine support.
[91/08/12            rpd]
[ ./kernel/sun/conf.c ]
Added entries for new dev_info field.
[91/08/27  17:56:37  jsb]
[ ./kernel/vax/conf.c ]
Added entries for new dev_info field.
[91/08/27  17:57:06  jsb]
[ ./kernel/vm/memory_object.c ]
Continuation bug fix.
[91/08/05  17:42:57  dlb]

Add vm_map_copy continuation support to memory_object_data_supply.
[91/07/30  14:13:59  dlb]

Turn on page lists by default: gut and remove body of memory_object_
data_provided -- it's now a wrapper for memory_object_data_supply.
Precious page support:
    Extensive modifications to to memory_object_lock_{request,page}
    Implement old version wrapper xxx_memory_object_lock_request
    Maintain use_old_pageout field in vm objects.
    Add memory_object_ready, memory_object_change_attributes.
[91/07/03  14:11:35  dlb]
[ ./kernel/vm/vm_debug.c ]
single_use --> use_old_pageout in vm_object.
[91/08/05  17:44:32  dlb]
[ ./kernel/vm/vm_kern.c ]
Delete kmem_fault_wire, io_wire, io_unwire - Replaced by
kmem_io_{copyout,deallocate}.
[91/08/06  17:17:40  dlb]

Make kmem_io_map_deallocate return void.
[91/08/05  17:45:39  dlb]

New interfaces for kmem_io_map routines.
[91/08/02  17:07:40  dlb]

New and improved io wiring support based on vm page lists:
kmem_io_map_{copyout,deallocate}.  io_wire and io_unwire will
go away when the device logic fully supports this.
[91/07/31  15:12:02  dlb]
[ ./kernel/vm/vm_kern.h ]
Delete io_wire, io_unwire.
[91/08/06  17:18:36  dlb]

Add declarations for kmem_io_map_{copyout,deallocate}.
[91/08/05  17:46:55  dlb]
[ ./kernel/vm/vm_map.c ]
Changed vm_map_copyout to discard the copy object only upon success.
[91/08/03            rpd]
Initialize copy->cpy_cont and copy->cpy_cont args in
vm_map_convert_to_page_list and
vm_map_convert_to_page_list_from_object.
[91/08/16  10:34:53  jsb]

Optimize stealing wired pages case of vm_map_copyin_page_list.
[91/08/12  17:36:57  dlb]

Move vm_map_copy_steal pages in this file.  Improve comments,
and related cleanup.
[91/08/06  17:22:43  dlb]

Split page release logic for page lists into separate
routine, vm_map_copy_page_discard.  Minor continuation
bug fix.
[91/08/05  17:48:23  dlb]

Move logic that steals pages by making a new copy into a separate
routine since both vm_map_{copyin,copyout}_page_list may need it.
Also: Previous merge included logic to be a little more careful
about what gets copied when a map entry is duplicated.
[91/07/31  15:15:19  dlb]

Implement vm_map_copy continuation for page lists.  
Implement in transition map entries needed by the above.
[91/07/30  14:16:40  dlb]

New and improved version of vm_map_copyin_page_list:
    Clean up error handling (especially vm_fault_page returns).
    Avoid holding map locks across faults and page copies.
    Move page stealing code to separate loop to deal with
	pagein errors from vm_fault_page.
    Add support for stealing wired pages (allows page stealing on
	pagein from default pager).
[91/07/03  14:15:39  dlb]
Restored definition of vm_map_convert_from_page_list.
Added definition of vm_map_convert_to_page_list_from_object.
Added call to vm_map_convert_from_page_list to vm_map_copy_overwrite.
Added include of kern/assert.h.
[91/08/15  13:20:13  jsb]
[ ./kernel/vm/vm_map.h ]
Supplied missing argument to thread_block in vm_map_entry_wait.
[91/08/16  10:36:21  jsb]

Minor cleanups.
[91/08/06  17:26:24  dlb]

Discard pages before invoking or aborting a continuation.
[91/08/05  17:51:55  dlb]

Add declarations for in transition map entries and vm_map_copy
continuations.
[91/07/30  14:18:14  dlb]
[ ./kernel/vm/vm_object.c ]
Handle dirty private pages correctly in vm_object_terminate().
[91/07/30  14:18:54  dlb]

single_use --> use_old_pageout in object initialization template.
Support precious pages in vm_object_terminate().
[91/07/03  14:18:07  dlb]
[ ./kernel/vm/vm_object.h ]
single_use --> use_old_pageout in vm_object structure.
[91/07/03  14:18:59  dlb]
[ ./kernel/vm/vm_pageout.c ]
Fixed vm_pageout_scan to send pages to the default pager
when memory gets very tight.  This is the same idea as the old
vm_pageout_reserved_external and vm_pageout_reserved_internal,
but with a different implementation that forcibly double-pages.
[91/08/07            rpd]
Precious page support: return precious pages on pageout, use
memory_object_data_return instead of memory_object_data_write
when appropriate,
[91/07/03  14:20:57  dlb]
[ ./kernel/vm/vm_resident.c ]
Added vm_page_free_count_minimum.
Fixed divergence between vm_page_free and vm_page_replace.
Fixed vm_page_deactivate to handle absent/fictitious pages properly.
[91/08/07            rpd]
Replaced divergent, expanded vm_page_free code in vm_page_replace
with a call to vm_page_free itself.
[91/08/15  18:49:59  jsb]
[ ./kernel/vm/vm_user.c ]
Fixed vm_map to check memory_object with IP_VALID.
Changed vm_wire to use KERN_INVALID_{HOST,TASK,VALUE}
instead of a generic KERN_INVALID_ARGUMENT return code.
[91/07/12            rpd]
[ ./user/libmach/mach.h ]
Synced up with USER area mach.h by removing exc.h, mach_host.h,
memory_object_default.h, and memory_object_user.h.
[91/08/27  16:39:43  jsb]
[ ./user/threads/cprocs.c ]
Fixed the loop in cproc_fork_child that frees cprocs.
[91/08/23            rpd]
[ ./user/threads/cthread_internals.h ]
Fixed MACH_CALL to allow multi-line expressions.
[91/08/23            rpd]
[ ./user/threads/cthreads.c ]
Fixed mig_init initialization in cthread_fork_child.
[91/08/23            rpd]
[ ./kernel/device/dev_pager.c ]
For now, use older dev_pager code for NORMA_VM.
I'll fix this soon.
[91/08/28  11:24:45  jsb]
[ ./kernel/boot_ufs/default_pager.c ]
Fixed the default values of default_pager_internal_count and
default_pager_external_count.
[91/08/28            rpd]
[ ./user/threads/i386/cthreads.h ]
Safer definitions for spin_unlock and spin_try_lock from mib.
[ ./kernel/luna88k/locore/locore.c ]
As a hack to make things compile, added null definition
of thread_bootstrap_return.
[ ./kernel/i386/interrupt.s ]
Check for out-of-range interrupts.
[91/08/20            dbg]
[ ./kernel/i386/trap.c ]
Don't emulate IO instructions if in V86 mode.
[91/08/21            dbg]
[ ./kernel/i386/locore.s ]
Add tests for V86 mode in trace and GP fault checks.  Clear
direction flag at all kernel entry points.
[91/08/20            dbg]
[ ./kernel/mips/mips_init.c ]
New proms on 3max problem: getenv copies strings on the
stack sometimes.  Fixed default_get_memory_bitmap() accordingly.
[91/08/29            af]
[ ./kernel/boot_ufs/default_pager.c ]
A couple quick changes for NORMA_VM. Will be fixed later.
    
    
    
==========================================================================
   ***** MK Version MK63  (jsb) *****
    
    
New features:
--- --------

Finished merging Intel i860 support. Most of the new files are in
the mk/user tree, but there are some fixes to the mk/kernel tree.
The merged kernel now works well enough to come up single user
and run some commands.

Bug fixes:
--- -----

[PMAX]	  Picked up fix to booting problem from Sandro (actually,
	  from Rich's area).

Special notes:
------- -----

Built for i386 and pmax. Tested on ubik.mach and jsb.mach.
This includes UX28 server and emulator rebuilt using rebuilt
mk/release files.

Log messages:
--- --------

[ ./conf/version.edit ]
63
[ ./include/Makeconf ]
Added cross-compilation support via atsys variable.
[91/09/01  09:45:13  jsb]
[ ./include/Makefile ]
Replaced accidently deleted MACH_LUNA88K_INCLUDES definition.
Added missing '$' to MACH_I860_INCLUDES definition.
[91/09/04  11:08:51  jsb]

Added full i860 support.
[91/09/04  10:09:05  jsb]
[ ./kernel/boot_ufs/load.c ]
Fixed a printf in read_symtab_from_file (following failure of
get_symtab) by not printing unset variable ``result''.
[91/09/01  07:48:45  jsb]
[ ./kernel/i860/cswitch.s ]
First checkin.
[91/08/30  15:31:13  jsb]
[ ./kernel/i860/db_interface.c ]
Use jmp_buf db_recover instead of db_nofault. Updated kdb_trap.
[91/09/01  07:53:59  jsb]
[ ./kernel/i860/trap.c ]
Added astintr(), called from ttrap.s.
[91/09/04  08:48:43  jsb]
[ ./kernel/i860/ttrap.s ]
Revert to astintr, reimplemented elsewhere.
[91/09/04  07:31:56  jsb]
[ ./kernel/i860ipsc/dcm_input.c ]
Removed debugging printfs and made it work (sort of).
[91/09/04  09:08:06  jsb]
[ ./kernel/i860ipsc/dcm_output.c ]
Removed debugging printfs and made it work (sort of).
[91/09/04  09:08:42  jsb]
[ ./kernel/i860ipsc/usm.c ]
This is Intel's most recent usm.c, with my JUSTHACKIT code added
and enabled since things still act funny without it.
[91/09/04  08:39:09  jsb]
[ ./kernel/kern/sched_prim.c ]
Add a temporary hack to thread_dispatch for i860 support:
don't panic if thread->state is TH_WAIT.
[91/09/04  09:24:43  jsb]
[ ./kernel/norma/ipc_net.c ]
Removed i860 support hacks. Bumped up _netipc_timeout for ipsc to
work around not-yet-understood bug.
[91/09/04  09:45:22  jsb]
[ ./kernel/norma/ipc_wait.c ]
Use splhigh/splx instead of sploff/splon for now.
[91/09/04  09:46:45  jsb]
[ ./user/Makeconf ]
Added ATSYS variable which can be used to override use of @sys.
[91/09/04  10:11:15  jsb]
[ ./user/Makefile ]
Use $(atsys) in place of @sys.
[91/09/04  10:11:53  jsb]
[ ./user/libmach/Makefile ]
Use cc860 for i860.
[91/09/04  11:23:12  jsb]

From Intel SSD: added i860 cases.
[91/09/04  10:16:51  jsb]
[ ./user/libmach/i860/_setjmp.s ]
First checkin. Provided by Intel SSD.
[91/09/04  10:32:35  jsb]
[ ./user/libmach/i860/bcopy.s ]
First checkin. Provided by Intel SSD.
[91/09/04  10:32:49  jsb]
[ ./user/libmach/i860/bzero.s ]
First checkin. Provided by Intel SSD.
[91/09/04  10:33:01  jsb]
[ ./user/libmach/i860/crt0.c ]
First checkin. Provided by Intel SSD.
[91/09/04  10:36:20  jsb]

Created 12/12/90 dfc from Jim Hurley's code.
[91/09/04  10:33:22  jsb]
[ ./user/libmach/setjmp.h ]
From Intel SSD: added i860 support.
[91/09/04  10:14:32  jsb]
[ ./user/libmach/varargs.h ]
Added i860 support, provided by Intel SSD.
[91/09/04  10:34:52  jsb]
[ ./user/threads/Makefile ]
Use cc860 for i860.
[91/09/04  11:23:25  jsb]

From Intel SSD: Added I860_CPP for i860 support.
[91/09/02  08:57:36  jsb]
[ ./user/threads/i860/csw.s ]
First checkin. Contributed by Intel/SSD.
[91/09/02  08:54:36  jsb]
[ ./user/threads/i860/cthread_inline.awk ]
First checkin. Contributed by Intel/SSD.

i860/cthread_inline.awk
[91/09/02  08:55:28  jsb]
[ ./user/threads/i860/cthreads.h ]
First checkin. Derived from i386 sources by Intel/SSD.
[91/09/02  08:56:06  jsb]
[ ./user/threads/i860/lock.s ]
First checkin. Contributed by Intel/SSD.
[91/09/02  08:56:39  jsb]
[ ./user/threads/i860/thread.c ]
First checkin. Derived from i386 sources by Intel/SSD.
[91/09/02  08:42:47  jsb]
[ ./kernel/chips/lance.c ]
Don't let ethernet interrupts blow us away.
[91/09/04  11:35:00  jsb]
[ ./kernel/mips/autoconf.c ]
Don't let ethernet interrupts blow us away.
[91/09/04  11:36:17  jsb]
    
    
    
==========================================================================
   ***** MK Version MK64  (bohman) *****
    
    
New features:
--- --------

Added Macintosh II{,x,cx,ci,fx} and SE/30 support.  The IIsi has NOT been
tested, but it should work.  Should also work on future Macintoshes with
full 030's.  The kernel does not require an FPU to run.

The device pager now allocates vm_page structures on the fly from
memory_object_data_request().  This is so that large objects can be
mapped without running the system out of memory.

I fixed up the device_write inband code a bit.  A reply port is now not
required.  Also, device_write_get() for an inband request now copies
the data into an io_inband buffer.  This allows driver code to be less
complicated in handling inband requests.

I added strlen() to device/subrs.c (BSD version).

Bug fixes:
--- -----

I fixed ds_read_done() to not zfree() the io_inband buffer unless one
was actually allocated.

I made a few minor bug fixes in device/chario.c.

I changed launch_first_thread() to set active_stacks[] in addition to
setting active_threads[].  This means that load_context() is not required
to do this.

Organizational changes:
-------------- -------

None that I know of.

Special notes:
------- -----

This merge was done rather quickly, since I am leaving CMU very soon.  In
fact, no post merge testing has been done.  I expect that the Mach group
at CMU will test the non-mac systems soon.  Zon Williamson
(zon@andrew.cmu.edu) will be testing the mac system.  Contact him if you are
interested in learning how soon this will be done.

******** CUT HERE ******** summary of log messages ******** CUT HERE ********
[ ./conf/version.edit ]
64
[ ./Directories/ALL ]
Added mac2.
[91/09/11  14:00:12  bohman]
[ ./Directories/mac2 ]
Created.
[91/09/11  14:02:19  bohman]
[ ./kernel/Makefile ]
mac2 support.
[91/09/11  14:06:43  bohman]
[ ./kernel/conf/MASTER ]
Added ufs_pager option and made it the default.  Not enabling it allows
a different default pager setup to be supplied.
[91/09/11  16:53:41  bohman]
[ ./kernel/conf/MASTER.mac2 ]
Created.
[91/09/11  16:56:07  bohman]
[ ./kernel/conf/MASTER.mac2.local ]
Created.
[91/09/11  16:57:20  bohman]
[ ./kernel/conf/Makefile.mac2 ]
Created Mach 3.0 version from 2.5 version.
[91/09/11  16:58:31  bohman]
[ ./kernel/conf/Makefile.template ]
Added task_get_special_port to MACH_FUNCS.
[91/09/11  16:59:30  bohman]
[ ./kernel/conf/files ]
Added ufs_pager option.
Made boot_ufs/def_pager_setup.c optional on ufs_pager.
[91/09/11  17:01:20  bohman]
[ ./kernel/conf/files.mac2 ]
Created.
[91/09/11  17:02:41  bohman]
[ ./kernel/device/chario.c ]
Added missing clear of TS_TTSTOP in char_write().
TS_INIT belongs in t_state, not t_flags.
[91/09/11  17:04:18  bohman]
[ ./kernel/device/dev_pager.c ]
For device_map objects, don't setup the actual resident page mappings
at initialization time.  Instead, do it in response to actual requests
for the data.  I left in the old code for NORMA_VM.
[91/09/11  17:05:20  bohman]
[ ./kernel/device/ds_routines.c ]
Changed device_write_inband() to not require a reply port.
Fixed device_write_get() to allow inband calls.  In this case,
an io_inband buffer is allocated and the data is copied into it.
Fixed device_write_dealloc() to correctly deallocate io_inband
buffers.
Fixed ds_read_done() to free io_inband buffers only if one was
actually allocated.
[91/09/11  17:06:50  bohman]
[ ./kernel/device/subrs.c ]
Added strlen() (BSD version).
[91/09/11  17:07:25  bohman]
[ ./kernel/kern/bootstrap.c ]
Made bootstrap task call mac2 machine dependent code before running
'startup', which is loaded from the UX file system.  This needs to
be handled more generally in the future.
[91/09/11  17:07:59  bohman]
[ ./kernel/kern/startup.c ]
Changed launch_first_thread() to set active_stacks[] before
starting the first thread.
[91/09/11  17:08:23  bohman]
[ ./kernel/mac2/act.c ]
Created Mach 3.0 version from 2.5 version.
[91/09/11  14:16:15  bohman]
[ ./kernel/mac2/act.h ]
Created Mach 3.0 version from 2.5 version.
[91/09/11  14:18:07  bohman]
[ ./kernel/mac2/asm.h ]
Created Mach 3.0 version from 2.5 version.
[91/09/11  14:20:09  bohman]
[ ./kernel/mac2/ast.h ]
Created Mach 3.0 version from 2.5 version.
[91/09/11  14:21:19  bohman]
[ ./kernel/mac2/bitmap_inline.c ]
Created Mach 3.0 version from 2.5 version.
[91/09/11  14:22:10  bohman]
[ ./kernel/mac2/call_frame.h ]
Created Mach 3.0 version from 2.5 version.
[91/09/11  14:22:53  bohman]
[ ./kernel/mac2/clock.c ]
Created Mach 3.0 version from 2.5 version.
[91/09/11  14:24:23  bohman]
[ ./kernel/mac2/clock.h ]
Created Mach 3.0 version from 2.5 version.
[91/09/11  14:25:06  bohman]
[ ./kernel/mac2/conf.c ]
Created.
[91/09/11  14:26:30  bohman]
[ ./kernel/mac2/cpu.h ]
Created Mach 3.0 version from 2.5 version.
[91/09/11  14:27:30  bohman]
[ ./kernel/mac2/cpu_inline.c ]
Created Mach 3.0 version from 2.5 version.
[91/09/11  14:28:18  bohman]
[ ./kernel/mac2/emul_trap.s ]
Created.
[91/09/11  14:29:51  bohman]
[ ./kernel/mac2/endian.h ]
Created Mach 3.0 version from 2.5 version, deleting extraneous stuff.
[91/09/11  14:40:17  bohman]
[ ./kernel/mac2/exec.c ]
Created from vax version.
[91/09/11  14:41:46  bohman]
[ ./kernel/mac2/exec.h ]
Created Mach 3.0 version from 2.5 version.
[91/09/11  14:43:04  bohman]
[ ./kernel/mac2/genassym.c ]
Created Mach 3.0 version from 2.5 version.
[91/09/11  14:44:10  bohman]
[ ./kernel/mac2/ivect.c ]
Created Mach 3.0 version from 2.5 version.
[91/09/11  14:44:57  bohman]
[ ./kernel/mac2/locore.s ]
Created Mach 3.0 version from 2.5 version.
[91/09/11  14:45:54  bohman]
[ ./kernel/mac2/mac2_init.c ]
Created Mach 3.0 version from 2.5 version.
[91/09/11  14:46:40  bohman]
[ ./kernel/mac2/mach_param.h ]
Created.
[91/09/11  14:47:35  bohman]
[ ./kernel/mac2/machdep.c ]
Created Mach 3.0 version from 2.5 version.
[91/09/11  14:50:52  bohman]
[ ./kernel/mac2/machine_routines.h ]
Created.
[91/09/11  14:52:23  bohman]
[ ./kernel/mac2/machparam.h ]
Created Mach 3.0 version from 2.5 version.
[91/09/11  14:53:31  bohman]
[ ./kernel/mac2/pager_support.c ]
Created.
[91/09/11  14:54:27  bohman]
[ ./kernel/mac2/pcb.c ]
Created Mach 3.0 version from 2.5 version.
[91/09/11  14:55:26  bohman]
[ ./kernel/mac2/pmap.c ]
Created Mach 3.0 version from 2.5 version.
[91/09/11  14:56:49  bohman]
[ ./kernel/mac2/pmap.h ]
Created Mach 3.0 version from 2.5 version.
[91/09/11  14:57:46  bohman]
[ ./kernel/mac2/pmap_inline.c ]
Created Mach 3.0 version from 2.5 version.
[91/09/11  14:58:28  bohman]
[ ./kernel/mac2/pmap_kmap.h ]
Created Mach 3.0 version from 2.5 version.
[91/09/11  14:59:14  bohman]
[ ./kernel/mac2/pmmu_inline.c ]
Created Mach 3.0 version from 2.5 version.
[91/09/11  14:59:50  bohman]
[ ./kernel/mac2/pmmu_log2phys.c ]
Created.
[91/09/11  15:01:14  bohman]
[ ./kernel/mac2/psl.h ]
Created Mach 3.0 version from 2.5 version.
[91/09/11  15:01:51  bohman]
[ ./kernel/mac2/setroot.c ]
Created.
[91/09/11  15:02:41  bohman]
[ ./kernel/mac2/slots.c ]
Created.
[91/09/11  15:03:36  bohman]
[ ./kernel/mac2/slots.h ]
Created.
[91/09/11  15:04:27  bohman]
[ ./kernel/mac2/softint.c ]
Created Mach 3.0 version from 2.5 version.
[91/09/11  15:05:07  bohman]
[ ./kernel/mac2/swapgeneric.c ]
Created.
[91/09/11  15:06:18  bohman]
[ ./kernel/mac2/thread.h ]
Created Mach 3.0 version from mac2/pcb.h of 2.5 version.
[91/09/11  15:21:01  bohman]
[ ./kernel/mac2/time_stamp.h ]
Created.
[91/09/11  15:09:56  bohman]
[ ./kernel/mac2/trap.c ]
Changed TRAP_BREAKPOINT in user_trap() to not
decrement pc to trap instruction.
Created MACH 3.0 version from 2.5 version.
[91/09/11  15:11:19  bohman]
[ ./kernel/mac2/trap.h ]
Created Mach 3.0 version from 2.5 version.
[91/09/11  15:12:15  bohman]
[ ./kernel/mac2/virt.s ]
Created Mach 3.0 version from 2.5 version.
[91/09/11  15:12:50  bohman]
[ ./kernel/mac2/vm_tuning.h ]
Created Mach 3.0 version from 2.5 version.
[91/09/11  15:14:30  bohman]
[ ./kernel/mac2/xpr.h ]
Created Mach 3.0 version from 2.5 version.
[91/09/11  15:16:00  bohman]
[ ./kernel/mac2dev/adb.c ]
Created.
[91/09/11  15:23:32  bohman]
[ ./kernel/mac2dev/adb.h ]
Created.
[91/09/11  15:24:40  bohman]
[ ./kernel/mac2dev/cons.c ]
Created Mach 3.0 version from 2.5 version.
[91/09/11  15:25:22  bohman]
[ ./kernel/mac2dev/font.h ]
Created Mach 3.0 version from 2.5 version.
[91/09/11  15:26:12  bohman]
[ ./kernel/mac2dev/font1.s ]
Created Mach 3.0 version from 2.5 version.
[91/09/11  15:26:55  bohman]
[ ./kernel/mac2dev/font_521.b ]
Created Mach 3.0 version from 2.5 version.
[91/09/11  15:33:24  bohman]
[ ./kernel/mac2dev/font_524.b ]
Created Mach 3.0 version from 2.5 version.
[91/09/11  15:34:27  bohman]
[ ./kernel/mac2dev/mhd.c ]
Created Mach 3.0 version from 2.5 version.
[91/09/11  15:35:03  bohman]
[ ./kernel/mac2dev/mscsi.c ]
Created.
[91/09/11  15:35:57  bohman]
[ ./kernel/mac2dev/mscsi.h ]
Created.
[91/09/11  16:00:42  bohman]
[ ./kernel/mac2dev/sdisk.c ]
Created.
[91/09/11  16:01:41  bohman]
[ ./kernel/mac2dev/sdisk.h ]
Created.
[91/09/11  16:02:51  bohman]
[ ./kernel/mac2dev/sony.c ]
Created.
[91/09/11  16:04:36  bohman]
[ ./kernel/mac2dev/sony_done.s ]
Created.
[91/09/11  16:05:27  bohman]
[ ./kernel/mac2dev/thread_io.c ]
Created.
[91/09/11  16:06:16  bohman]
[ ./kernel/mac2dev/thread_io_done.s ]
Created.
[91/09/11  16:07:27  bohman]
[ ./kernel/mac2dev/video.c ]
Created Mach 3.0 version from 2.5 version.
[91/09/11  16:08:10  bohman]
[ ./kernel/mac2dev/video.h ]
Created Mach 3.0 version from 2.5 version.
[91/09/11  16:09:38  bohman]
[ ./kernel/mac2extra/macobjects.c ]
Created.
[91/09/11  16:40:33  bohman]
[ ./kernel/mac2extra/macobjects_kern.c ]
Created.
[91/09/11  16:41:26  bohman]
[ ./kernel/mac2extra/macserver.defs ]
Created.
[91/09/11  16:43:47  bohman]
[ ./kernel/mac2if/if_en.c ]
Created.
[91/09/11  16:17:20  bohman]
[ ./kernel/mac2if/if_en.h ]
Created.
[91/09/11  16:18:08  bohman]
[ ./kernel/mac2if/if_enproto.s ]
Created.
[91/09/11  16:19:02  bohman]
[ ./kernel/mac2os/DeskBus.h ]
Created.
[91/09/11  16:25:31  bohman]
[ ./kernel/mac2os/Disks.h ]
Created.
[91/09/11  16:26:26  bohman]
[ ./kernel/mac2os/Errors.h ]
Created Mach 3.0 version from 2.5 version.
[91/09/11  16:27:04  bohman]
[ ./kernel/mac2os/Ethernet.h ]
Created.
[91/09/11  16:28:05  bohman]
[ ./kernel/mac2os/Files.h ]
Created.
[91/09/11  16:28:58  bohman]
[ ./kernel/mac2os/Globals.h ]
Created.
[91/09/11  16:29:59  bohman]
[ ./kernel/mac2os/ROMDefs.h ]
Created Mach 3.0 version from 2.5 version.
[91/09/11  16:30:36  bohman]
[ ./kernel/mac2os/Retrace.h ]
Created.
[91/09/11  16:31:35  bohman]
[ ./kernel/mac2os/SCSI.h ]
Created.
[91/09/11  16:32:34  bohman]
[ ./kernel/mac2os/Slots.h ]
Created Mach 3.0 version from 2.5 version.
[91/09/11  16:33:48  bohman]
[ ./kernel/mac2os/Timer.h ]
Created.
[91/09/11  16:34:39  bohman]
[ ./kernel/mac2os/Traps.h ]
Created.
[91/09/11  16:35:56  bohman]
[ ./kernel/mac2os/Types.h ]
Created Mach 3.0 version from 2.5 version.
[91/09/11  16:36:35  bohman]
[ ./kernel/mac2os/Video.h ]
Created Mach 3.0 version from 2.5 version.
[91/09/11  16:37:14  bohman]
[ ./kernel/mac2os/os_interface.s ]
Created.
[91/09/11  16:38:07  bohman]
[ ./kernel/mach/mac2/boolean.h ]
Created Mach 3.0 version from 2.5 version.
[91/09/11  17:11:38  bohman]
[ ./kernel/mach/mac2/exception.h ]
Created Mach 3.0 version from 2.5 version.
[91/09/11  17:12:17  bohman]
[ ./kernel/mach/mac2/frame.h ]
Created Mach 3.0 version from 2.5 version.
[91/09/11  17:12:52  bohman]
[ ./kernel/mach/mac2/kern_return.h ]
Created Mach 3.0 version from 2.5 version.
[91/09/11  17:13:28  bohman]
[ ./kernel/mach/mac2/reg.h ]
Created Mach 3.0 version from 2.5 version.
[91/09/11  17:14:09  bohman]
[ ./kernel/mach/mac2/syscall_sw.h ]
Created Mach 3.0 version from 2.5 version.
[91/09/11  17:14:59  bohman]
[ ./kernel/mach/mac2/thread_status.h ]
Created Mach 3.0 version from 2.5 version.
[91/09/11  17:15:42  bohman]
[ ./kernel/mach/mac2/vm_param.h ]
Created Mach 3.0 version from 2.5 version.
[91/09/11  17:16:38  bohman]
[ ./kernel/mach/mac2/vm_types.h ]
Created Mach 3.0 version from 2.5 version.
[91/09/11  17:17:13  bohman]
[ ./kernel/src/config/config.y ]
Added mac2.
[91/09/11  17:21:32  bohman]
[ ./kernel/src/config/main.c ]
Added mac2.
[91/09/11  17:22:03  bohman]
[ ./kernel/src/mig/Makefile ]
Added mac2.
[91/09/11  17:22:34  bohman]
[ ./kernel/sys/varargs.h ]
Added mac2.
[91/09/11  17:22:52  bohman]
    
    
    
==========================================================================
   ***** MK Version MK65  (af) *****
    
    
New features:
--- --------

Debugger extensions and modifications from OSF.


Bug fixes:
--- -----

Many, see log.


******** CUT HERE ******** summary of log messages ******** CUT HERE ********
[ ./conf/version.edit ]
65
[ ./kernel/conf/files.i386 ]
From 2.5, switch over to fd.c vs *765*
[91/09/04  22:03:09  rvb]
[ ./kernel/i386/interrupt.s ]
From mg32: testing for spurious interrupts is bogus.
[91/09/23            rvb]
[ ./kernel/i386/locore.s ]
tenmicrosec() was all wrong has been expunged, since noone uses
it.
[91/09/04            rvb]
[ ./kernel/i386/loose_ends.c ]
Removed strlen(), which is now MI.
[91/10/05            af]
[ ./kernel/i386/pit.c ]
tenmicrosec() was all wrong has been expunged, since noone uses
it.
[91/09/04            rvb]
[ ./kernel/i386at/autoconf.c ]
Allow for second fd controller and fix hd entry.
[91/10/01  15:26:32  rvb]

Synchronize with 2.5 tables.
[91/09/04            rvb]
[ ./kernel/i386at/com.c ]
Add some improvements from 2.5 version.
[91/09/04  22:05:25  rvb]
[ ./kernel/i386at/disk.h ]
From 2.5:
 	p_flag & p_tag -> p_flag
[91/09/09            rvb]
[ ./kernel/i386at/fd.c ]
Still better
[91/10/07  16:29:57  rvb]

From mg32: Better probe for multiple controllers now possible.
[91/09/23            rvb]
New chips/busses.[ch] nomenclature.
[91/09/09  17:12:23  rvb]

Added a reset in open to prevent "no such device" errors
Added dlb's fddevinfo.
Reworked to make 2.5/3.0 compatible
[91/09/04  15:46:49  rvb]
[ ./kernel/i386at/fdreg.h ]
More mg32 changes
[91/10/07            rvb]
New chips/busses.[ch] nomenclature.
[91/09/09  17:11:55  rvb]

Synched again with 2.5.
[91/09/04            rvb]
[ ./kernel/i386at/hd.c ]
Now works with 2 disk drives, new probe/slave routines, misc cleanup
[91/08/07            mg32]

From 2.5:
		Rationalize p_flag
		Kill nuisance print out.
		Removed "hdioctl(): do not recognize ioctl ..." printf().
[91/08/07            rvb]
[ ./kernel/i386at/hdreg.h ]
Made port addresses dependent on base address, cleaned up hh struct
[91/08/07            mg32]
[ ./kernel/i386at/if_pc586.c ]
Add a lot of fixes/improvements from 2.5.
[91/09/04            rvb]
[ ./kernel/i386at/kd.c ]
Add support for ibm ps2 "keyboard" mouse.  Try to be general
about it to support other "keyboard mice", but we don't have
any.
[91/09/25            rvb]
Changes by mg32 from Mach2.5:
  	Neet bug.  Setting LED's yields TWO ack's.  And since we
  	only read one this screwed us up.
  	Bound's check the esc string
[91/09/04            rvb]
[ ./kernel/i386at/kd_mouse.c ]
Add support for ibm ps2 "keyboard" mouse.  Try to be general
about it to support other "keyboard mice", but we don't have
any.
[91/09/25            rvb]
Add support for MicroSoft 2 button Mouse from 2.5
[91/09/04            rvb]
[ ./kernel/i386at/kdasm.s ]
From 2.5: Always set "direction bit" before rep.
	([91/05/03            rvb])
[91/09/04            rvb]
[ ./MERGE_HISTORY ]
MK65 done.
[ ./kernel/chips/busses.c ]
Changed to never overwrite the *->address and *->phys_address
fields in either master or device descriptors.  This lets the
probe routine use them as it pleases, and modify them if
necessary.
Also, if the device does have a phys address insist that we match.
[91/09/03            af]
[ ./kernel/conf/MASTER.i386 ]
Revision 2.17.1.1  91/09/23  23:00:23  rvb
	Allow for 4 hd's and 4 fd's
Revision 2.17.2.1  91/10/05  13:01:18  jeffreyh
	Deleted "-x" option from LDFLAGS to keep static symbol information.
	[91/08/29            tak]
[ ./kernel/conf/Makefile.mips ]
The lineno option wasn't passed along appropriately.
Note that locore.s needs it if you want to be able to
trace into user space.
[91/10/05  10:12:35  af]
[ ./kernel/conf/files ]
Revision 2.24.1.1  91/10/05  13:01:45  jeffreyh
	Added ddb/{db_cond.c, db_macro.c, db_task_thread.c}.
	[91/08/29            tak]
[ ./kernel/ddb/db_access.c ]
 Revision 2.4.3.1  91/10/05  13:03:41  jeffreyh
 	Added db_{get,put}_task_value, and changed db_{get,put}_value
 	  to call them.  db_{get,put}_value are left for compatibility
 	  reason.
 	Added "task" parameter to specifiy target task space.
 	Added db_access_level to indicate implementation dependent
 	  access capability.
 	[91/08/29            tak]
[ ./kernel/ddb/db_access.h ]
 Revision 2.4.3.1  91/10/05  13:03:49  jeffreyh
 	Added declarations of db_{get,put}_task_value.
 	Added definitions of implementation dependent access capability.
 	Added default defines of space access check functions.
 	[91/08/29            tak]
[ ./kernel/ddb/db_aout.c ]
 Revision 2.8.1.1  91/10/05  13:04:00  jeffreyh
 	Supported address lookup with line number.
 	Changed X_db_line_at_pc to get file name without compiled
 	  with -g option.
 	Included "stab.h" for symbol type definitions.
 	[91/08/29            tak]
[ ./kernel/ddb/db_break.c ]
 Revision 2.9.2.1  91/10/05  13:04:32  jeffreyh
 	Supported thread-oriented break points.
 	[91/08/29            tak]
[ ./kernel/ddb/db_break.h ]
 Revision 2.5.3.1  91/10/05  13:05:04  jeffreyh
 	Added db_thread_breakpoint structure, and added task and threads
 	field to db_breakpoint structure.  Some status flags were also
 	added to keep track user space break point correctly.
 	[91/08/29            tak]
[ ./kernel/ddb/db_command.c ]
 Revision 2.15.1.1  91/10/05  13:05:19  jeffreyh
 	Added compound, macro, and conditional command support.
	Added "xf" and "xb" command to examine forward and backward.
 	Added last command execution with "!!".
 	Added "show task" command.
 	Added "ipc_port" command to print all IPC ports in a task.
 	Added dot address and default thread indicator in prompt.
 	Changed error messages to output more information.
 	Moved "skip_to_eol()" to db_lex.c.
 	[91/08/29            tak]
[ ./kernel/ddb/db_command.h ]
 Revision 2.5.2.1  91/10/05  13:05:30  jeffreyh
 	Added db_exec_conditional_cmd(), and db_option().
 	Deleted db_skip_to_eol().
 	[91/08/29            tak]
[ ./kernel/ddb/db_cond.c ]
 Revision 2.1.3.1  91/10/05  13:05:38  jeffreyh
 	Created to support conditional break point and command execution.
 	[91/08/29            tak]
[ ./kernel/ddb/db_examine.c ]
 Revision 2.6.1.1  91/10/05  13:05:49  jeffreyh
 	Supported non current task space data examination and search.
 	Added 'm' format and db_xcdump to print with hex and characters.
 	Added db_examine_{forward, backward}.
 	Changed db_print_cmd to support variable number of parameters
 	including string constant.
 	Included "db_access.h".
 	[91/08/29            tak]
[ ./kernel/ddb/db_expr.c ]
 Revision 2.4.3.1  91/10/05  13:06:04  jeffreyh
 	Added relational expression etc. to support condition expression.
 	Supported modifier after indirect expression to specify size,
 	  sign extention and non current task space indirection.
 	Changed error messages to print more information.
 	[91/08/29            tak]
[ ./kernel/ddb/db_input.c ]
 Revision 2.6.2.1  91/10/05  13:06:12  jeffreyh
 	Fixed incorrect db_lbuf_end setting.
 	[91/08/29            tak]
[ ./kernel/ddb/db_lex.c ]
 Revision 2.4.3.1  91/10/05  13:06:25  jeffreyh
 	Added relational operator tokens and string constant etc.
 	Added input switching functions for macro and conditional command.
 	Moved skip_to_eol() from db_command.c and added db_last_lp to print
 	  skipped input data as a warning message.
 	Added last input repetition support to db_read_line.
 	Changed db_lex() to always set db_tok_string for error message.
 	[91/08/29            tak]
[ ./kernel/ddb/db_lex.h ]
 Revision 2.4.3.1  91/10/05  13:06:34  jeffreyh
 	Added db_lex_context structure and some routine declarations
 	  for macro and conditinal command.
 	Added relational operator tokens etc. for condition expression.
 	Changed TOK_STRING_SIZE from 120 to 64, and defined
 	  DB_LEX_LINE_SIZE as 256 which was previously embedded
 	  in db_lex.c as 120.
 	[91/08/29            tak]
Revision 2.4.1 91/07/15  09:30:00  tak
	Added db_lex_context for macro support
	Added some lexical constants to support logical expression etc.
	[91/05/15  13:55:00  tak]
[ ./kernel/ddb/db_macro.c ]
 Revision 2.1.3.1  91/10/05  13:06:40  jeffreyh
 	Created for macro support.
 	[91/08/29            tak]
[ ./kernel/ddb/db_output.c ]
 Revision 2.5.2.1  91/10/05  13:06:46  jeffreyh
 	Added "more" like function.
 	[91/08/29            tak]
[ ./kernel/ddb/db_print.c ]
 Revision 2.9.1.1  91/10/05  13:06:54  jeffreyh
 	Supported "show registers" for non current thread.
 	Changed display format of thread and task information.
 	Changed "show thread" to print current thread information 
 	  if no thread is specified.
 	Added "show_one_task" for "show task" command.
 	Added IPC port print routines for "show ipc_port" command.
 	[91/08/29            tak]
[ ./kernel/ddb/db_run.c ]
 Revision 2.8.2.1  91/10/05  13:07:06  jeffreyh
 	Added task parameter for user space break point, and changed
 	 db_find_breakpoint_here to db_find_thread_breakpoint_here
 	 to support thread based break point.
 	Changed db_{set,clear}_single_step to db_{set,clear}_task_single
 	 _step to add task paramter and to maintain compatibility.
 	[91/08/29            tak]
[ ./kernel/ddb/db_sym.c ]
 Revision 2.9.2.1  91/10/05  13:07:27  jeffreyh
 	Changed symbol table name qualification syntax from "xxx:yyy"
 	  to "xxx::yyy" to allow "file:func:line" in "yyy" part.
	       "db_sym_parse_and_lookup" is also added for "yyy" part parsing.
 	Replaced db_search_symbol with db_search_task_symbol, and moved
 	  it to "db_sym.h" as a macro.
 	Added db_task_printsym, and changed db_printsym to call it.
 	Added include "db_task_thread.h".
 	Fixed infinite recursion of db_symbol_values.
 	[91/08/29            tak]
[ ./kernel/ddb/db_sym.h ]
 Revision 2.5.1.1  91/10/05  13:07:39  jeffreyh
 	Added macro definitions of db_find_task_sym_and_offset(),
 	  db_find_xtrn_task_sym_and_offset(), db_search_symbol().
 	[91/08/29            tak]
[ ./kernel/ddb/db_task_thread.c ]
 Revision 2.1.3.1  91/10/05  13:07:50  jeffreyh
 	Created for task/thread handling.
 	[91/08/29            tak]
[ ./kernel/ddb/db_task_thread.h ]
 Revision 2.1.3.1  91/10/05  13:08:07  jeffreyh
 	Created for task/thread handling.
 	[91/08/29            tak]
[ ./kernel/ddb/db_trap.c ]
 Revision 2.7.3.1  91/10/05  13:08:18  jeffreyh
 	Replaced db_trap function with db_task_trap, and changed
 	 db_trap to call db_task_trap with user_space parameter.
 	 db_trap exists only for backward compatibility.
 	Passed task parameter for user space break point support.
 	[91/08/29            tak]
[ ./kernel/ddb/db_variables.c ]
 Revision 2.4.3.1  91/10/05  13:08:27  jeffreyh
 	Added suffix handling and thread handling of variables.
	Added new variables: lines, task, thread, work and arg.
	Moved db_read_variable and db_write_variable to db_variables.h
 	  as macros, and added db_read_write_variable instead.
 	Changed some error messages.
 	[91/08/29            tak]
[ ./kernel/ddb/db_variables.h ]
 Revision 2.4.3.1  91/10/05  13:08:42  jeffreyh
 	Added suffix related field to db_variable structure.
 	Added macro definitions of db_{read,write}_variable.
 	[91/08/29            tak]
[ ./kernel/ddb/db_watch.c ]
 Revision 2.6.3.1  91/10/05  13:08:50  jeffreyh
 	Added user space watch point support including non current task.
 	Changed "map" field of db_watchpoint structure to "task"
 	  for a user to easily understand the target space.
 	[91/08/29            tak]
[ ./kernel/ddb/db_watch.h ]
 Revision 2.4.3.1  91/10/05  13:09:14  jeffreyh
 	Changed "map" field of db_watchpoint structure to "task",
 	and also changed paramters of function declarations.
 	[91/08/29            tak]
[ ./kernel/ddb/db_write_cmd.c ]
 Revision 2.5.3.1  91/10/05  13:09:25  jeffreyh
	Added user space write support including inactive task.
 	[91/08/29            tak]
[ ./kernel/ddb/stab.h ]
 Revision 2.1  91/10/05  13:02:42  jeffreyh
 Created.
[ ./kernel/device/ds_routines.c ]
Fixed device_write_get to check kmem_io_map_copyout return code.
Enabled wait_for_space in device_io_map.
[91/09/17            rpd]
[ ./kernel/i386/db_disasm.c ]
 Revision 2.4.3.1  91/10/05  13:09:57  jeffreyh
 	Supported disassemble of non current task by passing task parameter.
 	[91/08/29            tak]
[ ./kernel/i386/db_interface.c ]
 Revision 2.7.2.1  91/10/05  13:10:15  jeffreyh
 	Added user space access and check routines.
 	Added UNIX task information print routines.
 	Changed db_trap to db_task_trap.
 	[91/08/29            tak]
[ ./kernel/i386/db_machdep.h ]
 Revision 2.6.3.1  91/10/05  13:10:32  jeffreyh
 	Added access and task name macros.
 	[91/08/29            tak]
[ ./kernel/i386/db_trace.c ]
 Revision 2.8.2.1  91/10/05  13:10:45  jeffreyh
 	Supported stack trace and register access of non current thread.
 	Supported user register access.
 	Fixed incorrect next frame check.
 	[91/08/29            tak]
 Revision 2.8.1.1  91/09/29  13:08:09  rpd
 	Fixed stack tracing for threads without kernel stacks.  Yes, again.
 	[91/09/26            rpd]
[ ./kernel/i386/pcb.c ]
 Revision 2.11.2.1  91/10/05  13:11:06  jeffreyh
 	Set value of kenrel_stack field in stack_handoff().
 	[91/08/29            tak]
[ ./kernel/i386/trap.c ]
 Revision 2.17.1.1  91/10/05  13:11:17  jeffreyh
 	Checked kdb trap for user space T_DUBUG and T_INT3.
 	[91/08/29            tak]
[ ./kernel/i386at/if_ns8390.c ]
 Revision 2.12.1.1  91/09/03  17:28:50  af
 	Fixes from 2.5 (from rvb), made sure two WD boards work (with
 	help from jeffreyh).
[ ./kernel/i860/loose_ends.c ]
 Revision 2.3.1.1  91/09/22  14:56:13  rpd
 	Removed strlen.
 	[91/09/22            rpd]
[ ./kernel/ipc/ipc_entry.c ]
 Revision 2.6.2.1  91/09/16  10:15:30  rpd
 	Added <ipc/ipc_hash.h>.
 	[91/09/02            rpd]
[ ./kernel/ipc/ipc_kmsg.c ]
 Revision 2.16.2.2  91/10/05  15:58:10  rpd
 	Changed msgh_kind to msgh_seqno in ipc_msg_print.
 	[91/10/05            rpd]
 Revision 2.16.2.1  91/09/16  10:15:35  rpd
 	Removed unused variables.  Added <ipc/ipc_notify.h>.
 	[91/09/02            rpd]
[ ./kernel/ipc/ipc_object.h ]
 Revision 2.5.2.1  91/09/16  10:15:46  rpd
 	Added (unconditional) ipc_object_print declaration.
 	[91/09/02            rpd]
[ ./kernel/ipc/ipc_port.c ]
 Revision 2.10.2.1  91/09/16  10:15:49  rpd
 	Removed unused variable.
 	[91/09/16  09:42:52  rpd]
[ ./kernel/ipc/ipc_port.h ]
 Revision 2.9.2.1  91/09/16  10:15:53  rpd
 	Added (unconditional) ipc_port_print declaration.
 	[91/09/02            rpd]
[ ./kernel/ipc/ipc_pset.h ]
 Revision 2.5.2.1  91/09/16  10:15:55  rpd
 	Added (unconditional) ipc_pset_print declaration.
 	[91/09/02            rpd]
[ ./kernel/ipc/ipc_space.c ]
 Revision 2.7.2.1  91/09/16  10:15:57  rpd
 	Added <ipc/ipc_hash.h>.
 	[91/09/02            rpd]
[ ./kernel/ipc/ipc_splay.c ]
 Revision 2.4.2.1  91/09/16  10:16:00  rpd
 	Added MACH_PORT_SMALLEST, MACH_PORT_LARGEST definitions to reduce lint.
 	[91/09/02            rpd]
[ ./kernel/ipc/ipc_splay.h ]
 Revision 2.4.2.1  91/09/16  10:16:03  rpd
 	Fixed typo in ipc_splay_tree_insert declaration.
 	[91/09/02            rpd]
[ ./kernel/ipc/ipc_table.c ]
 Revision 2.5.2.1  91/09/16  10:16:06  rpd
 	Removed unused variables.
 	[91/09/02            rpd]
[ ./kernel/ipc/mach_msg.c ]
 Revision 2.13.2.1  91/09/16  10:16:09  rpd
 	Added <ipc/ipc_notify.h>.  Fixed type-mismatch in msg_rpc_trap.
 	[91/09/02            rpd]
[ ./kernel/ipc/mach_port.c ]
 Revision 2.5.2.1  91/09/16  10:16:19  rpd
 	Added <ipc/ipc_notify.h>.
 	[91/09/02            rpd]
[ ./kernel/kern/syscall_emulation.c ]
Everyone gets as many syscalls as mips, needed
on e.g. vax and sun for AFS support.
[91/10/07            af]
[ ./kernel/kern/xpr.c ]
Removed xpr_save.  Modified xpr_dump to make it useful
for dumping xpr buffers in user space tasks.
[91/09/20            rpd]

Turned on xprenable by default.  xprbootstrap now preserves
the original contents of the buffer if xprenable is off.
[91/09/18            rpd]
[ ./kernel/luna88k/db_trace.c ]
Added parens for initializers to db_regs[].
[91/10/07            af]
[ ./kernel/mach/message.h ]
 Revision 2.10.1.1  91/10/05  15:44:57  rpd
 	Added check for __STDC__ to get function prototypes.
 	Removed MACH_MSGH_KIND_NOTIFICATION compatibility definition.
[ ./kernel/mips/PMAX/kmin.c ]
 Revision 2.2.1.1  91/08/30  11:45:33  af
 	Moved REX's memory bitmap routine elsewhere, it is used
 	also by 3maxen with the new boot.
[ ./kernel/mips/PMAX/kn02_dma.c ]
 Revision 2.2.1.1  91/08/30  11:37:05  af
 	Made sure it works under 2.5.
[ ./kernel/mips/PMAX/model_dep.c ]
 Revision 2.8.1.1  91/08/30  11:43:55  af
 	Sigh, ds 5000 with new proms AND new boot need the REX
 	interface, all of it.
 	Moved REX's memory bitmap routine here from kmin file.
[ ./kernel/mips/db_disasm.c ]
 Revision 2.5.1.1  91/10/05  13:11:59  jeffreyh
 	Changed db_get_value and db_printsym to db_get_task_value and
 	  db_task_printsym, and passed task or thread parameter to
 	  some function calls.
 	[91/09/05            tak]
[ ./kernel/mips/db_interface.c ]
 Revision 2.12.1.1  91/10/05  13:12:12  jeffreyh
 	Added user space access and check routines.
 	Added UNIX tasak information print routines.
 	Changed db_trap to db_task_trap.
 	[91/09/05            tak]
[ ./kernel/mips/db_machdep.h ]
 Revision 2.6.1.1  91/10/05  13:12:27  jeffreyh
 	Added access and task name macros and screen size definitions.
 	[91/09/05            tak]
[ ./kernel/mips/db_mips_sym.c ]
 Revision 2.9.1.1  91/10/05  13:12:38  jeffreyh
	Supported address lookup with line number.
 	[91/09/05            tak]
[ ./kernel/mips/db_trace.c ]
Fixed db_trace_cproc.
[91/09/19            rpd]
[ ./kernel/mips/mips_instruction.c ]
 Revision 2.12.1.1  91/10/05  13:20:51  jeffreyh
 	Added a paramter to stack_modified to pass an argument to
 	  "getreg" function.
 	Added db_restore_regs to get saved register value.
	[91/09/05            tak]
[ ./kernel/mips/mips_misc.c ]
 Revision 2.10.1.1  91/10/05  13:21:33  jeffreyh
 	correct gets problem
[ ./kernel/mips/swapgeneric.c ]
 Revision 2.9.1.1  91/10/05  13:22:36  jeffreyh
 	correct gets problem
[ ./kernel/mips/trap.c ]
On breakpoint exceptions we were taking the instruction
from the wrong place.
[91/09/29            af]
[ ./kernel/scsi/adapters/scsi_7061_hdw.c ]
 Revision 2.13.1.1  91/09/22  14:56:46  rpd
 	Fix from Sandro for a race in sii_dosynch.
 	[91/09/18            rpd]
[ ./kernel/scsi/adapters/scsi_user_dma.c ]
Moved over from 2.5 tree, and made machine independent.
[ ./kernel/scsi/adapters/scsi_user_dma.h ]
Moved over from 2.5 tree, and made machine independent.
[ ./kernel/scsi/compat_30.h ]
 Revision 2.5.1.1  91/08/29  18:10:28  af
 	The 2.5 raw-I/O support code has moved, and became MI.
[ ./kernel/scsi/mapped_scsi.c ]
Changing the header files broke this module cuz padding, fixed now.
Made to work with the DEC driver first, and then with our driver
in user space.
[91/10/05  10:23:39  af]
[ ./kernel/scsi/mapped_scsi.h ]
Define maximum size of mapped region.  The fifo flags
for the ASC chip do not change with interrupt ack, the
command might.
[91/10/05  10:25:03  af]
[ ./kernel/scsi/rz.c ]
 Revision 2.10.1.1  91/09/01  17:17:17  af
 	Zero io_error before using the ior.
[ ./kernel/scsi/rz_disk.c ]
Do not tolerate a negative io_count (sanity).
[91/10/05  10:21:09  af]
[ ./kernel/scsi/rz_tape.c ]
 Revision 2.9.1.2  91/09/01  17:16:50  af
 	Zero io_error before using the ior.
 Revision 2.9.1.1  91/08/29  18:08:50  af
 	Fixed to compile again under 2.5.
[ ./kernel/sun3/db_trace.c ]
Added parens in initializers for db_regs.
[91/10/07            af]
[ ./kernel/sys/ioctl.h ]
 Revision 2.4.1.1  91/09/01  15:53:00  af
 	Upgraded to BSD 4.4.
 	[91/09/01            af]
[ ./kernel/vax/db_trace.c ]
Added parens to initializers for db_regs[].
[91/10/07            af]
[ ./kernel/vax/stubs.c ]
Removed that one real routine: strlen.
[91/10/07            af]
[ ./kernel/vm/memory_object.c ]
 Revision 2.24.1.2  91/10/06  14:46:38  rpd
 	Fixed assertion in memory_object_data_supply.
 	[91/10/06            rpd]
 Revision 2.24.1.1  91/10/05  14:35:49  rpd
 	Added vm_page_deactivate_hint.
 	[91/09/29            rpd]
[ ./kernel/vm/vm_map.c ]
 Revision 2.26.1.3  91/10/07  10:46:15  rpd
 	Fixed vm_map_copy_page_discard to lock before activating.
 	Fixed vm_map_copyout_page_list to clear just the busy bit (from dlb).
 	Fixed vm_map_copy_steal_pages to activate if necessary (from dlb).
	[91/10/07            rpd]
 Revision 2.26.1.2  91/10/06  14:46:51  rpd
	Fixed vm_map_copyout_page_list to clear busy and dirty bits.
 	[91/10/06            rpd]
 Revision 2.26.1.1  91/09/29  13:08:19  rpd
 	Picked up dlb fix for stealing wired pages in vm_map_copyin_page_list.
 	[91/09/27            rpd]
[ ./kernel/vm/vm_pageout.c ]
 Revision 2.19.1.1  91/10/05  14:36:04  rpd
 	Added vm_pageout_pause_count, vm_pageout_pause_max technology
 	so that vm_pageout_burst_wait can decrease as well as increase.
 	[91/10/04            rpd]
[ ./kernel/vm/vm_resident.c ]
 Revision 2.19.1.1  91/10/05  14:36:34  rpd
 	Added vm_page_deactivate_behind.
[ ./user/threads/vax/csw.s ]
 Revision 2.5.1.1  91/09/16  10:26:18  rpd
 	Removed inappropriate RCS keywords.
[ ./user/threads/vax/cthread_inline.awk ]
Revision 2.4.1.1  91/09/16  10:26:21  rpd
	Removed inappropriate RCS keywords.
[ ./user/threads/vax/lock.s ]
 Revision 2.4.1.1  91/09/16  10:26:24  rpd
 	Removed inappropriate RCS keywords.
[ ./user/threads/vax/thread.c ]
 Revision 2.7.1.1  91/09/16  10:26:26  rpd
 	Removed inappropriate RCS keywords.
    
    
    
==========================================================================
   ***** MK Version MK66  (rvb) *****
    
    
There were two main objectives for this merge:

	1. to fix problems for the i386 with MK65 mainly
	   for ether devices

	2. to merge up the latest iPSC and NORMA support from
	   jsb's "tar.3" to MK65.

Of course, there are a few other bug fixes and improvements.

This system was tested with UX29 on a
	5000/200
	Sun 3/60
	VaxStation 3100
	Lots of I386en

This system was tested by Jeffrey Heller on some I386en,
a few NORMA platforms and a Hypercube.

Thanks to Rich Draves and Jeffrey Heller for helping with the 
NORMA part of merge.


Special notes:
------- -----
On the i386, to make NORMA happy, we have unconditionally up
the kernel stack size to 4 pages.  I don't think this should
cause problems.


******** CUT HERE ******** summary of log messages ******** CUT HERE ********
[ ./conf/version.edit ]
66
[ ./kernel/chips/busses.c ]
Upgrade phys_address and address check
[91/10/30  15:36:00  rvb]
[ ./kernel/i386at/fd.c ]
Amazing how hard getting the probe to work for all machines is.
[91/10/16            rvb]
[ ./kernel/i386at/hd.c ]
Amazing how hard getting the probe to work for all machines is.
V_REMOUNT must clear gotvtoc[].
[91/10/16            rvb]
[ ./kernel/i386at/if_ns8390.c ]
Undo "strict" wrong change to probe()
[91/10/25            rvb]
[ ./kernel/i386at/if_pc586.c ]
Undo 2.16.1.1
[91/10/25            rvb]
Typo in transcribing the 2.5 changes missed ! before pc586read().
Funny thing is that we did have this fixed in a branch once.
[91/10/16            rvb]
[ ./kernel/i386at/kd.c ]
Get kd_kbd_magic from 2.5 version.
[91/10/17  23:08:19  rvb]

Use scroll lock vs insert to turn on "keyboard" mouse.
To make DOS happy.
[91/10/17            rvb]
[ ./kernel/mips/PMAX/kmin_dma.c ]
In kmin_dma_end_msgin(), brutally copy four bytes off the IOCTL
buffers, flushing is asynchronous and does not work well enough.
This seems to have put an end to the "bad SDP" printouts.
[91/11/01  10:53:32  af]
[ ./kernel/mips/PMAX/kn02_dma.c ]
Added kn02_dma_end_msgin() {null function}.
[91/10/30  13:44:31  af]
[ ./kernel/mips/mips_copyin.s ]
Anti-sneaker test was too strict in copyin/copyout, would
not let you touch the very last byte of the user's space.
[91/10/19  08:42:19  af]
[ ./kernel/mips/pcb.c ]
When allocating breakpoint structure zero the bp count,
this is now needed by prepare/did_sstep.
[91/10/13  17:19:49  af]
[ ./kernel/mips/trap.c ]
Use the ss_count field as a flag to prevent re-entering
prepare_sstep() after, e.g. an AST go tus on the way out
to user space.  Looong overdue bugfix.
[91/10/13  17:21:59  af]

On breakpoint exceptions we were taking the instruction
from the wrong place.
[91/09/29            af]
[ ./kernel/scsi/adapters/scsi_53C94_hdw.c ]
To cope with kmin, call dma complete function at end of
msg-in phase (disconnect sequence).  Also check no leftover
bytes in fifo.
[91/10/30  13:41:44  af]
[ ./kernel/scsi/adapters/scsi_dma.h ]
Added end_msgin().
[91/10/30  13:42:14  af]
[ ./kernel/scsi/scsi_tape.c ]
Deal with fixed-size tapes more gracefully: fixed a bug in
read (incorrectly called the go routine with the number of
blocks rather than the number of bytes), in mode select
set the block size too.
We seem to be happy with DEC TZK10s now.
[91/10/30  13:39:34  af]
[ ./kernel/src/config/mkmakefile.c ]
Accept "...|$(FORCE_VOLATILE)" like clauses for all files.
Bug report and fix from idall@eleceng.adelaide.edu.au.
[91/10/28  11:42:05  af]
[ ./kernel/conf/files ]
Restored 2.24 changes.  Fixed the log.
[91/10/30            rpd]
[ ./kernel/ddb/db_break.c ]
Fixed db_delete_cmd so that just "d" works in user space.
[91/10/31            rpd]
Fixed db_delete_thread_breakpoint for zero task_thd.
[91/10/30            rpd]
[ ./kernel/ddb/db_print.c ]
Added OPTION_USER ("/u") to db_show_all_threads, db_show_one_thread,
db_show_one_task.  Without it, we display old-style information.
[91/10/31            rpd]
[ ./kernel/i386/db_trace.c ]
Removed redundant printing of the continuation.
Fixed the log.
[91/11/07            rpd]
[ ./kernel/i386/lock.h ]
Added simple_lock_pause.
[91/11/12            rpd]
[ ./kernel/i386/mp_desc.c ]
Added simple_lock_pause.
[91/11/12            rpd]
[ ./kernel/kern/bootstrap.c ]
Added task_insert_send_right.
Changed BOOTSTRAP_MAP_SIZE to 4 meg.
[91/11/12            rpd]
[ ./kernel/kern/lock.h ]
Added simple_lock_pause.
[91/11/12            rpd]
[ ./kernel/vm/vm_fault.c ]
Added simple_lock_pause.
[91/11/12            rpd]
[ ./kernel/vm/vm_object.c ]
Added simple_lock_pause.
[91/11/12            rpd]
[ ./kernel/norma/ipc_alias.c ]
Created.
[ ./kernel/norma/ipc_fields.h ]
Created.
[ ./kernel/norma/ipc_migrate.c ]
Created.
[ ./kernel/norma/ipc_node.h ]
Created.
[ ./kernel/norma/ipc_token.c ]
Created.
[ ./kernel/norma/ipc_transit.c ]
Created.
[ ./kernel/norma/ipc_xxx.c ]
Moved to norma/ipc_special.c.
[ ./kernel/norma/ipc_special.c ]
Moved from norma/ipc_xxx.c.
[ ./kernel/norma/ipc_input.c ]
Replaced norma_ipc_get_proxy with norma_ipc_receive_sright.
Added checks on type of received rights.
[91/09/19  13:51:21  jsb]
[ ./kernel/norma/ipc_net.c ]
Replaced norma_ipc_export call with norma_ipc_send_sright.
[91/09/19  13:46:39  jsb]
[ ./kernel/norma/kern_task.c ]
Use new child_node task field in place of task_server_node to decide
upon what node to create child task. Also add task_set_child_node().
[91/09/23  09:22:18  jsb]
[ ./kernel/norma/ipc_ether.c ]
Picked up mysterious norma changes.
[ ./kernel/norma/ipc_kserver.c ]
Picked up mysterious norma changes.
[ ./kernel/norma/xmm.c ]
Picked up mysterious norma changes.
[ ./kernel/norma/xmm_import.c ]
Picked up mysterious norma changes.
[ ./kernel/conf/files ]
Picked up mysterious norma changes.
[91/11/14            rpd]
[ ./kernel/device/ds_routines.c ]
Picked up mysterious norma changes.
[91/11/14            rpd]
[ ./kernel/ipc/ipc_kmsg.c ]
Picked up mysterious norma changes.
[91/11/14            rpd]
[ ./kernel/ipc/ipc_mqueue.c ]
Picked up mysterious norma changes.
[91/11/14            rpd]
[ ./kernel/ipc/ipc_port.c ]
Picked up mysterious norma changes.
[91/11/14            rpd]
[ ./kernel/ipc/ipc_port.h ]
Picked up mysterious norma changes.
[91/11/14            rpd]
[ ./kernel/kern/ipc_mig.c ]
Picked up mysterious norma changes.
[91/11/14            rpd]
[ ./kernel/mach/mach_norma.defs ]
Picked up mysterious norma changes.
[91/11/14            rpd]
[ ./kernel/vm/vm_map.c ]
Picked up mysterious norma changes.
[91/11/14            rpd]
[ ./kernel/ipc/mach_msg.c ]
Picked up mysterious norma changes.
[91/11/14            rpd]
[ ./kernel/vm/vm_map.c ]
Add ifdef's to always steal code. Not needed (or wanted) except
to workaround a norma ether bug. UGH!
[91/11/14            jeffreyh]

Add consume on success logic to vm_map_copyout_page_list.
[91/11/12            dlb]
[ ./kernel/kern/syscall_emulation.c ]
Rewrote task_set_emulation_vector for greater clarity.
Fixed bcopy bug in task_get_emulation_vector.
Simplified and removed debugging printf from task_set_emulation.
[91/09/24  14:15:28  jsb]
[ ./kernel/norma/xmm_copy.c ]
Use ipc_port_make_send in norma_copy_create for returned memory_object.
[91/09/23  09:09:25  jsb]
[ ./kernel/norma/xmm_export.c ]
Use ipc_port_copy_send in _proxy_init for import_master.
[91/09/23  09:14:28  jsb]
[ ./kernel/kern/task.h ]
NORMA_TASK: added child_node field, which determines where child tasks
are created for the given task. A value of -1 means local node.
[91/09/23  09:19:35  jsb]
[ ./kernel/kern/task.c ]
NORMA_TASK: initialize new child_node field in task upon creation.
[91/09/23  09:20:23  jsb]
[ ./kernel/i386ipsc/sd.c ]
Flush p_tag, and redo V_VALID computation like was done on
all the other i386 disks.
[ ./kernel/i386at/hd.c ]
For now, back out the hdprobe(), hdslave() probes and use
the old simple test and believe BIOS.
[ ./kernel/intel/pmap.c ]
Up morevm for NORMA.
    
    
    
==========================================================================
   ***** MK Version MK67  (jsb) *****
    
    
Lots of NORMA fixes, vm fixes, etc.
I'll tell you more tomorrow.

- Joe

Log messages:
--- --------

[ ./conf/version.edit ]
67
[ ./kernel/device/ds_routines.c ]
Merged in 2.25.1.1 from dlb.
[91/12/10  11:16:31  jsb]
[ ./kernel/ipc/ipc_init.c ]
Removed reference counting bug workaround.
[91/12/10  11:17:21  jsb]
[ ./kernel/ipc/ipc_kmsg.c ]
Added ipc_kmsg_copyout_to_network, as required by ipc_kserver.c.
Picked up vm_map_convert_to_page_list call changes from dlb.
Changed NORMA_VM conditional for ipc_kmsg_copyout_to_kernel
to NORMA_IPC.
[91/12/10  11:20:36  jsb]
[ ./kernel/norma/ipc_input.c ]
Added support for moving receive rights.
Use norma_ipc_ack_xxx upcalls (downcalls?) instead of return values
from norma_deliver_kmsg and _page.
Merged dlb check for continuation-needing copy objects in
norma_deliver_page.
Added (untested) support for multiple copy objects per message.
[91/12/10  11:26:32  jsb]
[ ./kernel/norma/ipc_kserver.c ]
Use ipc_kmsg_copyout_to_network instead of ipc_kmsg_copyin_from_kernel.
[91/12/10  11:27:15  jsb]
[ ./kernel/norma/ipc_migrate.c ]
Make sure a port has a uid before migrating its receive right.
Set ip_receiver_name and ip_destination for migrated right.
[91/12/10  11:28:53  jsb]
[ ./kernel/norma/ipc_net.c ]
Fixed protocol bug previously worked around with longer timeout.
Lowered timeout accordingly. Simplified netipc_set_seqid.
Added (untested) support for multiple copy objects per message.
Added norma_ipc_ack_xxx upcalls for quicker acknowledgements.
Added netipc_safe_vm_map_copy_discard to avoid calling vm routines
at interrupt level.
Added support for migrating receive rights.
[91/12/10  11:33:35  jsb]
[ ./kernel/norma/kern_task.c ]
Changed printfs to frets.
[91/12/10  11:34:35  jsb]
[ ./kernel/norma/xmm.c ]
Added better debugging in xmm_obj_deallocate.
[91/12/10  11:35:06  jsb]
[ ./kernel/norma/xmm_import.c ]
Added missing third parameter in call to proxy_terminate.
[91/12/10  12:48:52  jsb]
[ ./kernel/norma/xmm_invalid.c ]
Added better debugging support to xmm_invalid_complain.
[91/12/10  12:46:26  jsb]
[ ./kernel/norma/xmm_proxy.defs ]
Added missing third parameter to proxy_terminate.
It should in the future become a moving receive right.
[91/12/10  12:49:57  jsb]
[ ./kernel/vm/vm_map.c ]
5-Dec-91 David L. Black (dlb) at Open Software Foundation
Simplify page list continuation abort logic.
[91/12/10  12:56:06  jsb]
[ ./kernel/vm/vm_map.h ]
5-Dec-91 David L. Black (dlb) at Open Software Foundation
	Simplify page list continuation abort logic. Temporarily
increase size of page lists for NORMA_IPC until it supports
page list continuations.
[91/12/10  12:50:01  jsb]
[ ./kernel/vm/vm_object.c ]
Comment out noisy printf. (Avoiding dealloc ...)
[91/12/10  12:50:34  jsb]
[ ./kernel/vm/vm_user.c ]
Apply temporary NORMA_VM workaround to XMM problem.
This leaks objects if vm_map() fails.
[91/12/10  12:55:27  jsb]
[ ./kernel/conf/MASTER.i386 ]
Fixes from Intel
[91/12/10  15:51:24  jsb]
[ ./kernel/conf/MASTER.i860 ]
Fixes from Intel
[91/12/10  15:31:55  jsb]
[ ./kernel/conf/Makefile.i860 ]
Fixes from Intel
[91/12/10  15:31:59  jsb]
[ ./kernel/conf/Makefile.template ]
Fixes from Intel
[91/12/10  15:51:29  jsb]
[ ./kernel/conf/files.i386 ]
Fixes from Intel
[91/12/10  15:51:34  jsb]
[ ./kernel/conf/files.i860 ]
Fixes from Intel
[91/12/10  15:32:02  jsb]
[ ./kernel/i386ipsc/asm_startup.h ]
Fixes from Intel
[91/12/10  15:32:05  jsb]
[ ./kernel/i386ipsc/bia.h ]
Fixes from Intel
[91/12/10  15:32:07  jsb]
[ ./kernel/i386ipsc/conf.c ]
Fixes from Intel
[91/12/10  15:32:10  jsb]
[ ./kernel/i386ipsc/led.c ]
Fixes from Intel
[91/12/10  15:32:14  jsb]
[ ./kernel/i386ipsc/md.c ]
New files from Intel
[91/12/10  16:11:01  jsb]
[ ./kernel/i386ipsc/model_dep.c ]
Fixes from Intel
[91/12/10  15:32:17  jsb]
[ ./kernel/i386ipsc/sd.c ]
Fixes from Intel
[91/12/10  15:32:20  jsb]
[ ./kernel/i860/_setjmp.s ]
Fixes from Intel
[91/12/10  15:32:23  jsb]
[ ./kernel/i860/bcopy.s ]
Fixes from Intel
[91/12/10  15:32:26  jsb]
[ ./kernel/i860/bzero.s ]
New files from Intel
[91/12/10  16:11:07  jsb]
[ ./kernel/i860/coff.h ]
New files from Intel
[91/12/10  16:11:12  jsb]
[ ./kernel/i860/cswitch.s ]
Fixes from Intel
[91/12/10  15:32:30  jsb]
[ ./kernel/i860/ctrap.c ]
New files from Intel
[91/12/10  16:11:18  jsb]
[ ./kernel/i860/db_coff_sym.c ]
New files from Intel
[91/12/10  16:11:24  jsb]
[ ./kernel/i860/db_disasm.c ]
Fixes from Intel
[91/12/10  15:32:33  jsb]
[ ./kernel/i860/db_interface.c ]
Fixes from Intel
[91/12/10  15:32:36  jsb]
[ ./kernel/i860/db_machdep.h ]
Fixes from Intel
[91/12/10  15:32:39  jsb]
[ ./kernel/i860/db_trace.c ]
Fixes from Intel
[91/12/10  15:32:41  jsb]
[ ./kernel/i860/exec.c ]
Fixes from Intel
[91/12/10  15:32:45  jsb]
[ ./kernel/i860/exec.h ]
Fixes from Intel
[91/12/10  15:32:48  jsb]
[ ./kernel/i860/misc.s ]
New files from Intel
[91/12/10  16:11:30  jsb]
[ ./kernel/i860/mmu.s ]
New files from Intel
[91/12/10  16:11:36  jsb]
[ ./kernel/i860/pcb.c ]
Fixes from Intel
[91/12/10  15:32:50  jsb]
[ ./kernel/i860/psl.h ]
Fixes from Intel
[91/12/10  15:32:53  jsb]
[ ./kernel/i860/start.s ]
Fixes from Intel
[91/12/10  15:32:56  jsb]
[ ./kernel/i860/storclass.h ]
New files from Intel
[91/12/10  16:11:41  jsb]
[ ./kernel/i860/syms.h ]
New files from Intel
[91/12/10  16:11:47  jsb]
[ ./kernel/i860/thread.h ]
Fixes from Intel
[91/12/10  15:33:00  jsb]
[ ./kernel/i860/trap.c ]
Fixes from Intel
[91/12/10  15:33:03  jsb]
[ ./kernel/i860/trap.h ]
Fixes from Intel
[91/12/10  15:33:06  jsb]
[ ./kernel/i860/ttrap.s ]
Fixes from Intel
[91/12/10  15:33:10  jsb]
[ ./kernel/i860/va_list.h ]
New files from Intel
[91/12/10  16:11:53  jsb]
[ ./kernel/i860/varargs.h ]
New files from Intel
[91/12/10  16:12:01  jsb]
[ ./kernel/i860/varargs.pgi.h ]
New files from Intel
[91/12/10  16:12:10  jsb]
[ ./kernel/i860ipsc/autoconf.c ]
Fixes from Intel
[91/12/10  15:33:20  jsb]
[ ./kernel/i860ipsc/dcm_input.c ]
Fixes from Intel
[91/12/10  15:33:22  jsb]
[ ./kernel/i860ipsc/dcm_output.c ]
Fixes from Intel
[91/12/10  15:33:25  jsb]
[ ./kernel/i860ipsc/intr.c ]
Fixes from Intel
[91/12/10  15:33:29  jsb]
[ ./kernel/i860ipsc/led.c ]
Fixes from Intel
[91/12/10  15:33:32  jsb]
[ ./kernel/i860ipsc/model_dep.c ]
New files from Intel
[91/12/10  16:12:19  jsb]
[ ./kernel/i860ipsc/spl.c ]
Fixes from Intel
[91/12/10  15:33:34  jsb]
[ ./kernel/i860oki/boot/bootblok.c ]
New files from Intel
[91/12/10  16:12:26  jsb]
[ ./kernel/i860oki/boot/romcall.h ]
New files from Intel
[91/12/10  16:12:34  jsb]
[ ./kernel/i860oki/model_dep.c ]
New files from Intel
[91/12/10  16:12:40  jsb]
[ ./kernel/intel/pmap.c ]
Fixes from Intel
[91/12/10  15:51:38  jsb]
[ ./kernel/intel/pmap.h ]
Fixes from Intel
[91/12/10  15:51:47  jsb]
[ ./kernel/ipsc/bootenv.c ]
New files from Intel
[91/12/10  16:12:46  jsb]
[ ./kernel/ipsc/dev_forward_name.c ]
Fixes from Intel
[91/12/10  15:33:38  jsb]
[ ./kernel/ipsc/startup.c ]
New files from Intel
[91/12/10  16:12:51  jsb]
[ ./kernel/ipsc/usm.c ]
Fixes from Intel
[91/12/10  15:33:41  jsb]
[ ./kernel/kern/bootstrap.c ]
Fixes from Intel
[91/12/10  15:51:50  jsb]
[ ./kernel/kern/debug.c ]
Fixes from Intel
[91/12/10  15:51:54  jsb]
[ ./kernel/mach/i860/vm_param.h ]
Fixes from Intel
[91/12/10  15:33:46  jsb]
[ ./kernel/mach/machine.h ]
Fixes from Intel
[91/12/10  15:51:57  jsb]
[ ./kernel/sys/varargs.h ]
Fixes from Intel
[91/12/10  15:52:01  jsb]
[ ./user/libmach/Makefile ]
Fixes from Intel
[91/12/10  15:51:19  jsb]
[ ./user/libmach/i860/crt0.c ]
Fixes from Intel
[91/12/10  15:31:47  jsb]
[ ./user/libmach/i860/pre_crt0.s ]
New files from Intel
[91/12/10  16:10:50  jsb]
[ ./user/libmach/mach_syscalls.c ]
Fixes from Intel
[91/12/10  15:51:22  jsb]
[ ./user/threads/Makefile ]
New files from Intel
[91/12/10  16:19:40  jsb]
[ ./user/threads/i860/csw.s ]
Fixes from Intel
[91/12/10  15:31:50  jsb]
[ ./user/threads/i860/thread.c ]
Fixes from Intel
[91/12/10  15:31:53  jsb]
[ ./kernel/mach/i860/thread_status.h ]
Another fix from Intel.
[91/12/11  08:40:08  jsb]
[ ./kernel/kern/task.c ]
Fixed assert_wait/thread_wakeup rendezvous in task_assign.
[91/11/26            rpd]
[ ./kernel/man/mach_msg.man ]
Updated for MK62 (sequence numbers).
[91/11/26  11:01:07  rpd]
[ ./kernel/man/mach_port_allocate.man ]
Updated for MK62 (sequence numbers).
[91/11/26  11:01:28  rpd]

Changed <mach/mach.h> to <mach.h>.
[91/11/25  10:55:09  rpd]
[ ./kernel/man/mach_port_allocate_name.man ]
Updated for MK62 (sequence numbers).
[91/11/26  11:01:31  rpd]

Changed <mach/mach.h> to <mach.h>.
[91/11/25  10:55:13  rpd]
[ ./kernel/man/mach_port_deallocate.man ]
Changed <mach/mach.h> to <mach.h>.
[91/11/25  10:55:16  rpd]
[ ./kernel/man/mach_port_destroy.man ]
Changed <mach/mach.h> to <mach.h>.
[91/11/25  10:55:18  rpd]
[ ./kernel/man/mach_port_extract_right.man ]
Changed <mach/mach.h> to <mach.h>.
[91/11/25  10:55:22  rpd]
[ ./kernel/man/mach_port_get_receive_status.man ]
Updated for MK62 (sequence numbers).
[91/11/26  11:01:25  rpd]

Changed <mach/mach.h> to <mach.h>.
[91/11/25  10:55:24  rpd]
[ ./kernel/man/mach_port_get_refs.man ]
Changed <mach/mach.h> to <mach.h>.
[91/11/25  10:55:27  rpd]
[ ./kernel/man/mach_port_get_set_status.man ]
Changed <mach/mach.h> to <mach.h>.
[91/11/25  10:55:30  rpd]
[ ./kernel/man/mach_port_insert_right.man ]
Changed <mach/mach.h> to <mach.h>.
[91/11/25  10:55:33  rpd]
[ ./kernel/man/mach_port_mod_refs.man ]
Changed <mach/mach.h> to <mach.h>.
[91/11/25  10:55:40  rpd]
[ ./kernel/man/mach_port_move_member.man ]
Changed <mach/mach.h> to <mach.h>.
[91/11/25  10:55:44  rpd]
[ ./kernel/man/mach_port_names.man ]
Changed <mach/mach.h> to <mach.h>.
[91/11/25  10:55:47  rpd]
[ ./kernel/man/mach_port_rename.man ]
Changed <mach/mach.h> to <mach.h>.
[91/11/25  10:55:50  rpd]
[ ./kernel/man/mach_port_request_notification.man ]
Changed <mach/mach.h> to <mach.h>.
[91/11/25  10:55:53  rpd]
[ ./kernel/man/mach_port_set_mscount.man ]
Changed <mach/mach.h> to <mach.h>.
[91/11/25  10:55:57  rpd]
[ ./kernel/man/mach_port_set_qlimit.man ]
Changed <mach/mach.h> to <mach.h>.
[91/11/25  10:55:59  rpd]
[ ./kernel/man/mach_port_set_seqno.man ]
Created.
[91/11/25            rpd]
[ ./kernel/man/mach_port_type.man ]
Changed <mach/mach.h> to <mach.h>.
[91/11/25  10:56:03  rpd]
[ ./kernel/man/thread_wire.man ]
Created.
[91/11/25            rpd]
[ ./kernel/man/vm_wire.man ]
Created.
[91/11/25            rpd]
[ ./kernel/vm/vm_map.c ]
Fixed vm_map_copyout_page_list a la vm_object_coalesce.
Fixed vm_map_copy_overwrite to check for misalignment.
Fixed some log infelicities.
[91/12/09            rpd]
[ ./kernel/vm/vm_object.c ]
Changed vm_object_coalesce to also check for paging references.
This fixes a problem with page-list map-copy objects.
[91/12/03            rpd]
[ ./kernel/vm/vm_pageout.c ]
Added vm_pageout_active, vm_pageout_inactive,
and other measurement counters.  Fixed the log.
[91/11/24            rpd]
[ ./kernel/vm/vm_user.c ]
Fixed vm_write and vm_copy to check for a null map.
Fixed vm_write and vm_copy to not check for misalignment.
Fixed vm_copy to discard the copy if the overwrite fails.
[91/12/09            rpd]
[ ./kernel/i386ipsc/cnp/if_cnp.c ]
Fix from Intel.
[91/12/11  08:48:27  jsb]
[ ./kernel/i860/cswitch.c ]
Defuncted.
[ ./kernel/i860/init.c ]
Defuncted.
[ ./kernel/i860ipsc/i860_init.c ]
Defuncted.
[ ./kernel/i860ipsc/usm.c ]
Defuncted.
[ ./conf/Makefile.template ]
Added rules for norma/norma_internal.defs.
[ ./conf/files ]
Added ./mach/norma_internal_{server,user}.c.
[ ./kernel/kern/exception.c ]
Added NORMA_IPC support.
[ ./kernel/kern/ipc_kobject.c ]
Added support for norma/norma_internal.defs.
[ ./kernel/kern/syscall_emulation.c ]
Increased eml_max_emulate_count for OSF/1+ server support.
[ ./kernel/mach/mach_norma.defs ]
Moved non-exported interfaces to norma/norma_internal.defs.
Changed name of task_create_remote to norma_task_create.
Added comments.
[ ./kernel/mach/norma_special_ports.h ]
Moved MAX_SPECIAL_ID here from ipc/ipc_node.h.
[ ./kernel/vm/vm_map.c ]
Removed NORMA_ETHER always_steal hack.
[ ./kernel/ipc/ipc_kmsg.c ]
Use norma_ipc_copyin_page_list when sending to remote port.
[ ./kernel/norma/kern_task.c ]
Changed name of task_create_remote to norma_task_create.
Added check for local case in norma_task_create.
[ ./kernel/norma/ipc_input.c ]
Fixed check for end of last copy object in norma_deliver_page.
Moved norma_ipc_ack_xxx calls to safer places.
[ ./kernel/norma/ipc_net.c ]
Multiple copy objects per message now works.
Added wakeup and counts to netipc_safe_vm_map_copy_discard.
[ ./kernel/norma/ipc_output.c ]
Added norma_ipc_copyin_page_list and norma_ipc_thread_return.
These will be replaced with more efficient versions.
[ ./kernel/norma/ipc_migrate.c ]
Changed debugging printf routines.
[ ./kernel/norma/ipc_node.h ]
Moved MAX_SPECIAL_ID to mach/norma_special_ports.h.
[ ./kernel/norma/ipc_transit.c ]
Changed printfs to debugging printfs.
[ ./kernel/norma/norma_internal.defs ]
First checkin. Split off from mach/mach_norma.defs.
[ ./kernel/man/vm_copy.man ]
Moved alignment restrictions to a BUGS section.
Removed the non-overlapping restriction.
[91/12/11            rpd]
[ ./kernel/man/vm_write.man ]
Moved alignment restrictions to a BUGS section.
[91/12/11            rpd]
[ ./include/Makeconf ]
Changed OBJECTDIR to reflect new structure
[91/12/09            mrt]
[ ./kernel/Makeconf ]
Changed OBJECTDIR to reflect new structure
[91/12/09            mrt]
[ ./kernel/src/mig/Makefile ]
Changed to reflect new directory structure.
[91/12/12            mrt]
[ ./user/Makeconf ]
Changed OBJECTDIR and MKREL to reflect new structure
[91/12/09            mrt]
[ ./user/Makefile ]
Changed LIBBASE and OBJBASE to reflect new structure
[91/12/09            mrt]
[ ./user/libmach/Makefile ]
Added rules for mach/mach_norma.defs.
[ ./conf/files ]
Added kern/eventcount.c
[91/11/08  12:10:33  af]
[ ./kernel/chips/lance_mapped.c ]
Use eventcounters.
[91/12/12  17:43:08  af]
[ ./kernel/kern/eventcount.c ]
Created.
[91/11/01            af]
[ ./kernel/kern/eventcount.h ]
Created.
[91/11/01            af]
[ ./kernel/kern/syscall_sw.c ]
Added evc_wait().
[91/12/12  17:42:00  af]
[ ./kernel/kern/thread.c ]
Removed thread_resume_from_kernel.
[91/12/12  17:40:12  af]
[ ./kernel/mach/syscall_sw.h ]
Added evc_wait.
[91/11/02  17:44:54  af]
[ ./kernel/mips/PMAX/kmin_dma.c ]
Fixed to flush the FIFO after sending the command
out and before sending more data from a different place.
This should not have been necessary, but it is.
Also fixed read case to manually pick up all remaining
bytes in the SCR regs, just causing it to flush was both
incorrect and unreliable.
[91/12/12  17:49:00  af]

In kmin_dma_end_msgin(), brutally copy four bytes off the IOCTL
buffers, flushing is asynchronous and does not work well enough.
This seems to have put an end to the "bad SDP" printouts.
[91/11/01  10:53:32  af]
[ ./kernel/scsi/mapped_scsi.c ]
Use eventcounters.
[91/11/08  12:11:44  af]
[ ./Directories/i386 ]
new: kernel/{chips,scsi{,/adapters}} (for real this time)
[ ./kernel/i860ipsc/dcm_input.c ]
Fix from andyp at Intel: flush cache after receiving page.
[ ./kernel/kern/exception.c ]
Removed ipc_fields.h hack.
[ ./kernel/ipc/ipc_kmsg.c ]
Removed ipc_fields.h hack.
Made ipc_kmsg_clean_{body,partial} aware of remote ports.
They don't yet clean up remote ports, but at least they
no longer pass port uids to ipc_object_destroy.
[ ./kernel/ipc/ipc_kmsg.h ]
NORMA_IPC: added ikm_copy to struct kmsg.
[ ./kernel/ipc/ipc_mqueue.c ]
Removed ipc_fields.h hack.
[ ./kernel/ipc/ipc_port.c ]
Removed ipc_fields.h hack.
[ ./kernel/ipc/ipc_port.h ]
NORMA_IPC: replaced dummy port struct fields with real names.
[ ./kernel/ipc/mach_msg.c ]
Removed ipc_fields.h hack.
[ ./kernel/kern/eventcount.c ]
Replaced gimmeabreak calls with panics.
[ ./kernel/norma/ipc_alias.c ]
Removed ipc_fields.h hack.
[ ./kernel/norma/ipc_ether.c ]
Picked up bootconfig code from sjs@osf.org.
[ ./kernel/norma/ipc_ether.h ]
Picked up bootconfig code from sjs@osf.org.
[ ./kernel/norma/ipc_fields.h ]
This is now documentation instead of a hack.
[ ./kernel/norma/ipc_input.c ]
Removed private assert definition.
[ ./kernel/norma/ipc_kserver.c ]
Removed ipc_fields.h hack.
[ ./kernel/norma/ipc_migrate.c ]
Removed ipc_fields.h hack.
[ ./kernel/norma/ipc_special.c ]
Removed ipc_fields.h hack.
[ ./kernel/norma/ipc_token.c ]
Removed ipc_fields.h hack.
[ ./kernel/norma/ipc_transit.c ]
Removed ipc_fields.h hack.
[ ./kernel/norma/ipc_wait.c ]
Removed private assert definition.
