1.043 Tue Nov 28 09:19:03 PST 1989 This has fixes to the Rpc_Daemon for all hosts. This has a large kernel & FS cache for the DS3100 This has FPU hack for DS3100 that kills user-process instead of kernel. This has process migraiton and other VM fixes for the sun4s. This has UNIX-compatible Proc_Exec arg lengths This has Mary's recovery tracing stuff. This has FPU enable for sun4 and sun4c. Known Major Bugs Left Outstanding: Sun PMEG Stealing still happens FS wedge on locked file handle left by Proc_ServerProc FS disk corruption (fragmenting bug?) 1.044 Thu Nov 30 12:08:38 PST 1989 I think this version was created only during some testing of the Makefile. - FD 1.045 Thu Nov 30 13:10:22 PST 1989 The horrible bug that's been causing the sparc stations to be unstable is fixed. Although the PMEG stealing bug fixed in 1.043 was part of it, the rest of it turned out to be in the new floating point code. This affects both the sun4 and sun4c. Also fixed: user processes killed on the sun4(c)'s due to bad stack pointers in the underflow and overflow handlers should now be put on the debug list rather than just being killed. 1.046 Thu Dec 14 14:38:13 PST 1989 This has a fix for sun4c migration at exec time, and for the uninitialized event field in the PCB. It also will clean up processes in the PROC_NEW state if the other host dies at the start of migration. - FD This contains the final (I hope) format of the recovery information statistics so that all kernels from this point onwards should be able to run the current recovinfo. This has a new Fscache_FetchBlock that doesn't have the double insert bug. This may or may not fix the fragment trashing problem (unknown). - BW This has support for IOC_WRITE_BACK in the file and remote file modules. The top level routine Fs_WriteBackIDStub doesn't use Fs_IOControl (yet), so this is forward compatible for when that changes over. This has new PageRead and PageWrite FS routines, and a cleaned up interface for the BlockRead and BlockWrite FS routines. - BW 1.048 Sat Dec 30 15:29:35 PST 1989 Bogus version due to error while making kernel. 1.049 Sat Dec 30 15:29:44 PST 1989 New sun4 kernel linked from the fixed fsio module that Brent installed to fix the problem with data not being written back to disk. 1.051 Sat Jan 6 13:48:22 PST 1990 Added some hooks for gathering further recovery information on the servers. Dev module includes fix for /dev/null ioctl's that were messing up tx stty's. 1.053 Tue Jan 30 18:03:15 PST 1990 The ds3100 boot routines were modified so that shutdown and rebooting single user work. The ds3100 interrupt routines were modified to prevent bogus FPU in kernel errors. UpdateFragment was fixed to check in a cache block under the new disk block number correctly. Fsrmt_Select was fixed to mask RPC_TIMEOUT errors. Net_InetHdrChecksum was backed out to a previous version to fix ftp/rcp problems. The MachWindowUnderflow problem on the sun4 was fixed. Sun - LE net driver was optimized to avoid mapping very small packets. Sun4c - the vm module has new byte-range cache flushing. Sun - SCSI3 target select bug was fixed and timeout value reduced. Bug is raw scsi device access patched. Scsi INQUIRE command fixed to handle UNIT_ATTENTION errors. The famous "framming" error message has had its spelling corrected. 1.055 Wed Jan 31 16:54:19 PST 1990 Only the sun4 and sun4c are affected by this change: I fixed a bug in the new window underflow trap handler that caused some processes to hang. Note: the files mach/sun4.md/{machAsmDefs.h,machTraps.s} will have the wrong RCSID, since I forgot to check them in before doing the install. 1.056 Thu Feb 8 18:22:52 PST 1990 Improved Fsio_StreamReopen Improved FsrmtFilePageRead (OMAGIC support) fsync() implemented via IOC_WRITE_BACK and supported by nfsmount Proc_Exec supports OMAGIC dev supports 3/50 DMA correctly fsprefix does't forget hard-wired prefixes Partial VM hack for 3/60 color frame buffer (something better is coming later) 1.057 Mon Feb 12 11:32:42 PST 1990 Fixes to 1.056 regarding bad assembler (couldn't enter kernel debugger in 056) Fixes to OMAGIC support (only ds3100 supports OMAGIC) This has a bug in IOC_WRITE_BACK for local files. Returns wrong error code. 1.058 Thu Feb 15 12:02:47 PST 1990 New net module that maps in the device. Needed for newer SparcStations. Fixed fsdm that handles deletions of swap files right. Mousetrap in fscache regarding "block no longer dirty" - just a print statement. Fixed Vm_PageIn so VmCOR errors cause a segment to be nuked. Also, VmKillSharers only happens once per segment in orderto prevent overflowing the Proc_CallFunc queue. procServer.c was fixed so the max number of Proc_ServerProcsis a function of FSCACHE_MAX_CLEANER_PROCS and VM_MAX_PAGE_OUT_PROCS fsio was fixed so that fsync() in the local works. Also, sun3 kernel leaves mapping for frame buffers (0x0fd0000) intact. 1.059 Tue Feb 20 16:30:30 PST 1990 SIOCRPHYSADDR returns correct status. Dec disk labels are supported. Kernel now uses Fmt constants, rather than Swap. Screen blanking works for ds3100s. If a disk is not ready when it is attached then a "start unit" scsi command is sent to the disk. FSCACHE_MAX_CLEANER_PROCS is used in fsBlockCache.c Added IOClientKill call after a consistency call-back times-out. Generate SIGWINCH signal when window size changes. Patched Host_Dead to clear RECOV_REBOOT_CALLBACKS state bit which otherwise prevents a subsequent reboot event from being suppressed (if it occurs before the reboot callbacks complete) 1.060 Fri Mar 2 16:36:20 PST 1990 Fixed "var val val" printf from Vm_Cmd Td_ControlCooked does byte-swapping - can print from DECstations Recov_HostAlive fixed so recovery is initiated after a network partition ends. L1-o reenables the display. Migration of floating point programs fixed Vm_PageIn fixed to have proper error handling when the disk fills up. (This version won't boot on Allspice, a sun4.) 1.061 Wed Mar 14 10:39:49 PST 1990 Added code to Fscache_OkToScavenge that looks for inconsistencies with respect to the dirty list. ---------------------------- Added Fscache_DeleteFile. This procedure is to be called after a file has been deleted from disk. It ensures that no cache blocks remain for the file and that the file is not on the dirty list. ---------------------------- Fixed the race present in 1.059 and 1.060 that allows multiple processes to be doing the reboot callbacks. The RECOV_FAILED bit was added to account for failures during the reboot callbacks. This causes the reboot callbacks to be retried (if a failure occurs during them). ---------------------------- Changed the panic about a bad server ID in Rpc_Call to a printf ---------------------------- increased limit on ds3100 kernel heap to 16 MB ---------------------------- Patched called to VmMach_GetContext() to handle processes without context loaded. sun4c only. This allows kernel stack traces during debug sessions. 1.062 Thu Mar 29 17:37:37 PST 1990 ____________________________________________________________________________ Rpc and Sys: Added rpc code for servers to generate negative acknowledgements if they cannot grant an rpc server process to a client request. The new code contains 2 methods for clients to handle a negative acknowledgement - by backoff or by ramping down the number of channels they can use with that server. New hooks have been added to Sys_StatsStub to control, using rpccmd, the generation of negative acks, the client policy handling negative acks, and the number and max number of rpc server procs. -------------------------------------------------------------------------- Recov and Sys: There is also a stub (for recovcmd) to change the pinging policy of client recov deamons. This new kernel contains code in the recov module to try to prevent clients from synchronizing their pings due to server reboots. They now ping at absolute intervals from when they rebooted, but using recovcmd you can change back to the old way if you want to for some weird reason. --------------------------------------------------------------------------- Mach: (sun4 and sun4c) If a process is suspended for debug due to a bad stack pointer in the window underflow trap, you can now kill it, because it checks for KILL signals now. (ds3100): added Unix compatibility code for semget, semop, semctl, mmap. ------------------------------------------------------------------------- Sig: Added a new routine, Sig_CheckForKill() that lets you check for a kill signal without handling any signals that might take you out to user mode. This is for the Mach change for the sun4 and sun4c, above. ------------------------------------------------------------------------- Dev: You can now skip backwards over files on tape. ------------------------------------------------------------------------- Vm: If a swap error occurs on a segment, the segment is made non-sticky so that the next program to exec it will get a fresh copy. ------------------------------------------------------------------------- Proc: Migration fixes for signals as a result of a failed migration; network partitions causing machines to miss "death notices"; signalling a process after the other host thinks you're down and throws away the state associated with the process on the remote host. ------------------------------------------------------------------------- Fs: Reading a symbolic link now does not include the null byte in the count of characters read (for unix compatibility). ------------------------------------------------------------------------- Sync: Added syncSysV.c, which supports semget, semop, semctl System V semaphore functions. ------------------------------------------------------------------------- 1.063 Wed Apr 4 15:13:55 PDT 1990 Changes on the server side of the new rpc negative acknowledgement stuff so that neg acks will be backwards-compatible on client machines running old kernels. I now OR in an RPC_ACK with the RPC_NACK. I've also fixed some synchronization problems in the neg ack stuff. 1.064 Wed Apr 18 19:57:19 PDT 1990 I've added print statements to the rpc and recovery modules to trace the state of the recovery module. There's a new hook in Sys_Stats to turn on the printing of these trace statements from the recovcmd. 1.065 Wed May 16 12:31:27 PDT 1990 Device module additions: changes to allow idle/busy statistics for scsi disks. Recovery module additions: mouse trap for bad unregister of reboot callback. Fs* module additions: part of above mouse trap for unregister of reboot funcs. Sys module additions: removed recursive panic. Fs_Stat structure augmented for migration and writeback statistics. Fixed problem with stream attributes not being invalidated when cached writable files migrate. Added rpc to stage new migration callback for obtaining offset after deencapsulation. devSCSITape fixed so that a filemark is written on close only if last access was a write. Fs_UserClose now returns error codes consistent with the close() man page. 1.066 Thu Jun 21 22:23:13 PDT 1990 includes more of Mary's modifications for nacks. includes JKO's fs tracing. includes fix for migration to transfer oversized buffers (large page tables, right now) and to have servers tell clients that a flushback is due to migration. 1.067 Thu Jun 28 15:19:38 PDT 1990 fixes migration bugs: pipe buffer being freed if host crash callback closes it; argString getting NIL'ed out and then used during migration; various deadlocks during migration/signals/exiting processes. 1.068 Sat Jun 30 14:35:58 PDT 1990 Fixes change to ioctl rpc stub that wasn't byte-swapping IOC_REPOSITION for shadow stream. Fixes migration not to accidentally leave mig trap signal blocked. 1.069 Thu Jul 19 17:44:16 PDT 1990 Has statistics for Fred. Has various fs lock fixes. Has L1-i function. 1.070 Wed Aug 1 13:12:15 PDT 1990 Has more statistics for Fred. Has disk mount changes for John. Has improved L1-i function. Has vm/signal changes for fault address. 1.071 Thu Aug 16 01:02:47 PDT 1990 Has frame buffer support for /X11/R4. Fixes the global register trashing bug on the sun4. 1.075 Tue Sep 11 19:52:13 PDT 1990 Fix for deadlock caused by delete callback. First attempt at adding function prototypes. 1.078 Thu Nov 8 17:30:08 PST 1990 Ultranet and multiple network interface support. More function prototypes. Profiling on the ds3100. LFS added. ProcExit closes a process's files in two phases to avoid races between the vm and fs modules during process exit. 1.079 Tue Dec 11 13:08:36 PST 1990 Sosp traces and counters in place. vmSun.c: Cache flushing during PMEG stealing in the VM module should be faster now. Merge "extra" Server RPC stats into the regular structure. fsioStream.c: Bug fix to prevent reopens with file types of -1 from indexing through -1 in the file type switch on the server. Poison packet fix for clients. Sparcstation scsi driver added. FscacheBlocks.c: Patched problem with files hanging on dirty list no dirty blocks. procExec.c: Returns E2BIG if anything in the environment is too long. (Unix compat.) Changes to get kernel profiling working. On sun4c's the dma reset is now owned by the dev module and not the net module. Added support for kgcorein dbgMain.c Added the mop protocol in devNet.c. lfsMem.c: removed cache memory requirements for file systems. 1.080 Wed Jan 9 22:18:00 PST 1991 ------------------------------- traceLog.c Added version letter recording and bug fixes fsdmDisk.c #ifdef'd out some prolific error messages for until Mendel can take a look at them. fslclLookup.c Added an extra trace field to indicate a symbolic link. fslclDomain.c Removed an extra getattr trace. Fixed a trace stub in the wrong place. devConfig.c Now you can have a sparcstation root file server. fsrmtAttributes.c Fixed a bug in my last fix. Fixed my last change to get/set attributes. Added logging of userID to get/set attributes. md/RCS/machCode.c Fixed problem with floating/debugger combination crashing system. sysCalls.c Added statistucs. Added version letter logging to trace. fsioFile.c More sosp changes. rpcDaemon.c Fixed the fix for the multiple timeout entry insert problem. Removed extra extern declarations of routines. Fixed timeout queue bug where we would reschedule an rpc daemon timeout even though one was already on the queue. fsAttributes.c Changed getAttr/setAttr to log the userID. lfsSegUsage.c Changed to so only clean a few segments rather than the entire disk each time. lfsSeg.c Changed to so only clean a few segments rather than the entire disk each time. Fixed problem dealing with devices with max transfer size too large to malloc. fsconsistCache.c More sosp tracing stuff. lfsMain.c Added a few Lfs_Commands. fsSelect.c Fixed a problem with Fs_Select returning SUCCESS instead of TIMEOUT. The problem was that the return status was getting clobbered by the status of a Vm_CopyOut. This problem was introduced by the Unix compatibility changes. fsPageOps.c Fixed a bug fix. Fixed stale handle on swap file causing infinite recovery. devGraphics.c Changed BOING define to PROM_1_4 since that's the prom revision for sparcstations that's got the access problem. devSCSIC90.c Fixed off-by-1 bug for DMAs not crossing 16MB boundaries. fsrmtDomain.c Attempt to fix zero-length parameters poison reopen packet bug from server's side. fsrmtIO.c Fixed sosp trace. fixed bug doing lseek on pseudo-filesystems fsStreamOps.c doesn't get attributes when doing an lseek unless it has to. 1.081 I fixed a couple bugs in fslclLookup.c and fsrmtAttributes.c. These were SOSP tracing problems. 1.083 Sat Feb 2 19:52:58 PST 1991 New SOSP counters in many of the file system modules to keep track of cache block lifetimes, etc. A fix to the new sync'ing code in the sys module. 1.088 Mon Apr 8 18:33:10 PDT 1991 fsio: Bug fix to the fsio routine that kills client stream handles - the bug caused a negative reference count panic. net: Fixed bug with delayed reset. sys: Unix compatibility. proc: Unix compatibility. mach: Unix compatibility. 1.089 Tue Apr 9 18:52:02 PDT 1991 Fixed a bug in vmSysCall.c, VmMmapInt, that was causing X to die when accessing a kernel rather than user address for the frame buffer. 1.090 Thu Apr 18 13:27:36 PDT 1991 Changes to SCSI code to support bigger devices. lockProcID => lockProcPtr. 1.091 Fri Apr 19 13:54:46 PDT 1991 fixed stupid bug in test of count limit in scsi group 0 command 1.092 Wed May 8 17:29:45 PDT 1991 first installed ds5000 kernel 1.093 Wed May 29 17:50:34 PDT 1991 1.095 Mon Jun 3 11:15:38 PDT 1991 Converted Sys_DiskStats to be sector rather than request count. Fixed infinite recovery loop due to stale prefixes. Fixed access to user buffer in Fs_ReadLinkStub(). Fixed a bug in Fs_ReadLinkStub that was a result of a previous bug fix... Temporary paranoia checks for Proc_StringNCopy. increased size of kernel heap 1.096 Sat Jun 29 19:30:04 PDT 1991 dbg: Took out the disk sync code for panics, since it wasn't working and was causing the machine to pop out of the debugger. devSCSIDisk.c: Converted Sys_DiskStats to be sector rather than request count. devSCSITape.c: Removed bogus ifdef GOOD line that limited transfer sizes to 1k. devScsiTapeConfig.c: Added DevExabyteAttach and DevEmulexAttach. devTtyAttach.c: added Dean Long's patch to support new prom on sun4c when determining console type fsCommand.c: Added DO_L1_COMMAND support Fixed infinite recovery loop due to stale prefixes. fsInit.c: Fixed infinite recovery loop due to stale prefixes. fsPageOps.c: Added new counters. fsStreamOps.c: Added new counters. Allow execution of PFS files fsSysCall.c: Fixed a bug in Fs_ReadLinkStub for accesing user buffer. fscacheBlocks.c: Patch code we unmounts of LFS work. fslclLookup.c: Patch incorrect block offset for dir change log. 1) Added code to delete the hash table entry for a directory when the name is deleted. Previous, the code deleted the entry when the inode for the directory was delete. This left garbage in the hash table for directories that were delete while open. 2) Added code to FindComponent to handle the case when ".." of a directory has been deleted. fspdevOps.c, fspdevPfs.c, fspdevSetup.c, fspdevSrv.c: Allow execution of PFS files fsprefixOps.c: Fixed infinite recovery loop due to stale prefixes. fsrmtDomain.c: Fixed infinite recovery loop due to stale prefixes. fsrmtFile.c: More counters. lfsBlockIO.c: Added code to stall allocates until enough clean segments are available. lfsDesc.c: Added code to synchronize truncate with write back. This is needed because both modified the file index and one is trying to remove it from the cache. lfsFileLayout.c: Added code to update the segments timeOfLastWrite we files are added. lfsMain.c: Added count of number of dirty block in file cache. lfsSeg.c, lfsSegUsage.c: Added new interface between SegUsage and Seg to handle sorting of segments to clean. Added code to wait for enough clean segments before allocate. procMach.c: Added check so profiled sun4 code gets counted as sprite, not unix. procMigrate.c: When deencapsulating process state, check whether the process is marked as unmigratable. Proc_IsMigratedProc renamed to Proc_IsEvictable. procRemote.c: Add debugging check at exit time for foreign processes that are marked as unmigratable. procRpc.c: Temporary paranoia checks for Proc_StringNCopy. Proc_IsMigratedProcess renamed to Proc_UseRpcBuffer. Change Proc_StringNCopy so that it checks Proc_UseRpcBuffer and calls Vm_StringNCopy if necessary. Some tweaks to comments. procTable.c: Add comment that ProcGetUnusedPCB returns a locked PCB. profSubr.c: Proc_StringNCopy now checks Proc_IsMigratedProcess and calls Vm_StringNCopy if necessary. sysCalls.c: New return code for different-sized stats. Fixed GetDiskStats not to use Vm_CopyOut so we wont get page faults while under MASTER_LOCKS(). vmSeg.c: Use Proc_GetCurrentProc() instead of referring directly to proc_RunningProcesses. vmSun.c: Fixing a problem where we try to map pages for too many pmegs. Changed kernel size for sun4 and sun4c - It's now 40 Meg! vmSysCall.c: tried to fix it so that the hole in the ds vm wasn't included in the count of kernel pages ds5000.md/mainInit.c: Fixed initialization of variables. 1.097 Tue Jul 30 20:44:06 PDT 1991 Added Unix compatibility code. 1.098 Mon Aug 12 10:57:50 PDT 1991 Made some fixes to Unix compatibility. There is a fix in the dev module for a SCSI problem. 1.099 Fri Aug 23 14:57:27 PDT 1991 1.100 Tue Sep 24 23:59:45 PDT 1991 Removed a lot of tracing and debugging code. 1.101 Thu Oct 10 21:43:33 PDT 1991 Fix to sun4 compatibility code deadlock. Fix to disappearing disk space with mapped files. Select is changed back to old style. 1.102 Fri Oct 18 18:44:51 PDT 1991 Another fix to select. Dean Long's merge of sun4c and sun4c2. 1.103 Sat Oct 19 21:42:44 PDT 1991 Fixed a problem with the 101 mapped files change. 1.104 Aborted. 1.105 Fri Oct 25 12:38:21 PDT 1991 Elevated raid module to first-class status. Fixed disk label handling in devSCSIDisk.c. Fixed uninitialized Net_Address vars in netArp.c. 1.106 Thu Nov 14 17:48:27 PST 1991 Fixed FsrmtFileClose() to set last dirty block. Fs_PageCopy modified to make sure streams aren't NIL. Assertion in vmMigrate.c that de-encapsulated stream isn't NIL changed to return FAILURE. Removed unnecessary routines from fsioStream.c. Fixed a few compat bugs: fork returning wrong value sprite vs. unix executable (profiled ones were done wrong) restarting migrated system calls window flush in signal return 1.107 Mon Dec 16 11:25:47 PST 1991 1.108 Wed Dec 18 15:43:38 PST 1991 1.109 Wed Dec 18 15:44:00 PST 1991 1.110 Fri Mar 13 12:29:12 PST 1992 It's the Friday the 13th kernel!! Featuring... - First kernel using the 2.10 version of the MIPS compiler - Deadlock due to reset of ethernet chip inside of output routine is fixed - Proc_UnlockAndSwitch was added - Race between suspending and resuming a process is fixed. - Fixed RpcProcFork to keep the PCB locked while it's being set up - Sig_Pending doesn't really return a simple Boolean, and some code knows that, so stop pretending that it does. Add Sig_NumberToMask. - Fixed code to detect Sprite binaries so it would detect profiled programs correctly. - Added compatibility "profil" call. - Added default partitions to attach on boot of a ds5000. - Add some debugging printf's to track down the mysterious "Error code 16"s we keep getting from pmake. - Added temporary measurements for ASPLOS paper. - Added and modified files pertaining to the Exabyte EXB-120 device driver. - Added some sanity checks to the lfs module and turned off optimization so we can track down a few bugs. - Worked around an apparent compiler bug that bit the dbg module on the DecStations. - Fixed OFS to not try to read a non-existent summary sector from a DecStation partition. - Modified L1-i so it hopefully won't crash the machine. - Removed tracing in SCSI C90 device driver. 1.111 Fri Mar 20 17:58:03 PST 1992 Fixed a bug in LFS that was introduced by the 1.110 kernel. Lfs no longer panics on short reads during attach. Got rid of some warning messages about partition mismatches and short reads that weren't really necessary. RAID device is now enabled properly. 1.110 got it wrong. 1.112 Mon Apr 6 22:04:05 PDT 1992 Fixed the sanity checks in the LFS module that check whether clean segments are really clean. New files linked in from the net library. 1.113 Thu May 14 20:41:19 PDT 1992 Minimized printf's from the net module complaining about CRC and framing errors. Added printf's to report rpc channel delays. 1.114 Thu Jun 4 15:30:39 PDT 1992 Commented out SHUTDOWN operation on serial port for printer. Add support for system call timing. Fix a couple race conditions which could happen if an RPC is forwarded home before the home process has context switched. Fix the FS_ZERO_STATS command. Add Timer_OkToWhine. Add Fscache_ZeroStats Identify the client when returning FS_NO_DISK_SPACE. Add Fsutil_ZeroHandleStats In Fsutil_Reopen, call Vm_Recovery before Proc_WakeupAllProcesses, to avoid a deadlock when recovering with the swap server. Kernel version of Net_Route is defined only if KERNEL is defined. Fixed bug in Net_IDToRoute that caused routes to be lost. Don't reset the network interface if an rpc shows up for a different client. The wrong index parameter was passed to Net_IDToRoute by Rpc_Output. FDDI implementation. 1.115 Tue Jul 14 22:16:30 PDT 1992 Use uncached FDDI buffers until we figure out what goes wrong on shutdown. Added Sys_GetHostName and Sys_SetHostName system calls. Removed Mike Nelson's old Ultrix compatiblity code for the DecStations. Magic number for returning SYS_INVALID_SYSTEM_CALL was wrong in the sun3 kernel. Got rid of locking int NetDFIntr due to deadlock in RPC system. RAID changes: Fixed bug where data was sometimes trashed during writes with a failed disk. Fixed up consistency problems while a disk is failed. Redid logging. OutputPacket no longer panics if the packet it too large (lance driver). VME link board device driver improved. Initial version of the Xbus board driver. Make the lock in Rpc_Histogram always be a kernel lock. Resurrect SCSI circular buffer to investigate 'cmd aborted' messages on Lust. Added tests to various RPCs to verify that the param and data blocks are big enough. Fsprefix_Clear didn't unlock the monitor on one error condition. This caused the machines in Cory to hang during recovery. 1.116 Wed Oct 28 14:17:06 PST 1992 Changes to dev module for atc boards and xbus and a server recovery-related device. Changes to file system so that file with no dirty cache blocks need not be recovered by clients after a server crash. Changes to rpc/fsrmt/fsutil modules to all bulk reopens - these are reopen rpcs that reopen a set of files, and not just a single file. New module fsrecov and changes to fsrmt, fsutil, and recov to suppost fast server recovery from server memory rather than through communication with clients. This should be turned off by default, though. Changes to rpc module to take out annoying printfs. Changes to vm module to support raid changes in device module. Took out unused "release" rpc functions. Fewer noisy FDDI messages. 1.117 Mon Dec 14 13:20:36 PST 1992 Fsrmt contains fix in which files weren't getting their timestamps updated with the new recovery (no recovery of clean unopen files). Dev, fsutil, fsrmt, recov, and rpc contain new code for the device that keeps track of the state of clients of the file server. Sched contains a new check to see if we're at interrupt level when entering the idle loop.