|
|
1.1 ! root 1: Changes to kernel and related files for version #78: ! 2: ! 3: NOTES: ! 4: COH 386 apps using sys/timeb.h need to be recompiled. ! 5: New libc.a needed for support of nap() and ftime() system calls. ! 6: New kbmain.o is needed, (just recompile current kbmain.c) and new ! 7: /conf/kbd/us, etc as well, due to change in kb.h (or else you won't ! 8: be able to switch sessions with virtual consoles). ! 9: New db needed from Steve since uproc.h changed. ! 10: File name changes in kernel file set: ! 11: lp.c is replaced by lp386.c ! 12: fl.c is replaced by fdc.c, fl386.c, and <sys/fdc765.h>. ! 13: ! 14: 06/14 msig.c: fix value passed to signal handler ! 15: 06/11 sys/timeb.h, var.c: add ftime system call ! 16: 06/11 sys5.c: uname returned 0, did not set u_error in several failure cases ! 17: 06/10 fl386.c: some open failures left diskette drive locked ! 18: 06/04 sys2.c, var.c: add nap() system call ! 19: 06/03 exec.c: vlad's fix - kernel blew up in pexece() when out of memory ! 20: 05/26 uproc.h: change u_error from char to int so errnos > 127 come out ok ! 21: 05/24 xl.h,xlfdc.h,xlft.h,xlft.c,xl_dec.c,xla.s: Archive floppy tape driver ! 22: 05/24 seg.h,shm0.c,shm1.c: vlad - allow deferred removal of live shm segments ! 23: 05/24 as.s: increase i/o map upper limit (3ff->1fff) for newer vga cards ! 24: 05/19 mmu.c: add getDmaMem for aligned contiguous memory allocation ! 25: 05/18 sig.c: patchable variable CATCH_SEGV for nonportable software ! 26: 05/18 sig.c: signal to traced process wrongly caused core dump ! 27: 05/14 sys3.c: read on file set for APPEND should not be forced to end ! 28: 05/14 mmu.c: growing segments beyond 4 megabytes caused a panic ! 29: 05/14 kb.h: Add lots more function keys; change vt keydefs. (mlk) ! 30: 05/11 sig.c, signal.h, msig.c: sigpause() and reliable signals ! 31: 05/11 sys1.c: upause() should set EINTR. ! 32: 05/11 sys1.c: part of waitpid(), done by Michael ! 33: 05/07 lp386.c: fix interrupt mask and wakeup problems ! 34: 05/07 tty.c: fix sign extension bug in vmin/vtime handling ! 35: 05/07 fl386.c: delete scratch_buffer code - had ugly bug [mlk found this] ! 36: 05/07 fl386.c,fdc.c,fdc765.h: split floppy driver for floppy tape ! 37: 05/03 ndp.c: delete "Bad Em write..." printf, just do SIGSEGV ! 38: 04/27 tty.c: change defer(wakeup,...) to wakeup(...) since all wakeups ! 39: are deferred. This should cut down on defer overflows. ! 40: 04/27 sig.c: set SRFDUMP flag for all dumped segments ! 41: 04/27 move acct.h from /usr/include/ to /usr/include/sys ! 42: 04/26 reg.h,md.c: setivec return status added, for floppy tape support. ! 43: 04/20 fl.c: another FL_DSK_CH_PROB change from Michael ! 44: ! 45: Changes to kernel and related files for version #77: ! 46: ! 47: 04/19 proc.h,sem.h,proc.c,sem386.c: sem_undo and other semaphore final test ! 48: changes from Vlad. ! 49: 04/20 fl.c: FL_AUTO_PARM added by Michael for PS/2-L40 compatibility. ! 50: ! 51: Changes to kernel and related files for version #76: ! 52: ! 53: NOTES: ! 54: "dcore" utility groks r75 and later core files ! 55: "dlout" utility is like "cdmp" for l.out's ! 56: -- ! 57: 04/15 fakedma.c: dmaout() sometimes wrote garbage over the start of a click ! 58: 04/14 sig.c: DUMP_TEXT if patched causes text segment to appear in core files ! 59: ! 60: Changes to kernel and related files for version #75: ! 61: ! 62: NOTES: ! 63: New "file" command groks fixed core file format. ! 64: New kbmain.o needed for Greek keyboards. ! 65: New db needed from steve (later than 93/04/08) for revised core file format. ! 66: -- ! 67: 04/08 sem386.c,Makefiles,bld: vlad's new, improved semaphores ! 68: 04/08 sig.c: put magic number back at start of core file ! 69: 04/08 vtnkb.c,kbmain.c,kb.h: Greek keyboard, with patchable variable VTGREEK ! 70: 04/07 various headers: the definitive (!) paddr_t cleanup ! 71: 04/07 ndpas.s: change fdiv to fdivr to reflect change in assembler ! 72: 04/07 sys/kb.h: added function key definitions from mlk ! 73: 04/07 fl.c: further PS/1 fixes from mlk ! 74: 03/22 exec.c: exsread(): do only one iread() per section ! 75: 03/20 a.out.h,exec.c: allow more than 1 text section for coff executables ! 76: 03/18 var.c: change argument count for uwait() from 0 to 3 for waitpid() ! 77: 03/18 exec.c: delete redundant kkcopy() ! 78: 03/18 aha.c: nigel's fix to prevent defer overflows ! 79: 03/18 sys/__paddr.h added to header suite ! 80: ! 81: Changes to kernel and related files for version #74: ! 82: ! 83: NOTES: ! 84: -- ! 85: 03/10 fl.c: workaround for incorrect detection of nspt on some 3-1/2" drives ! 86: 03/05 aha.c: nigel's interrupt fix ! 87: 03/05 fs1.c: verbose panic output in case idetach panic ! 88: 03/05 fs2.c: once again, restore verbose inode busy diagnostic ! 89: 03/04 alloc.c: verbose panic output in case of bad free ! 90: ! 91: ! 92: Changes to kernel and related files for version #73: ! 93: ! 94: NOTES: ! 95: ! 96: 1. You will need a new libc.a to use waitpid() and chsize(). ! 97: 2. There is a new fsck from epstein. ! 98: 3. "putq()" and "getq()" from prior kernels are now "cltputq()" and "cltgetq()" ! 99: 4. sleep() and v_sleep() have been superseded by x_sleep() - see the comments ! 100: in proc.c for argument list and return values. ! 101: 5. new ps needed ! 102: ! 103: 03/01 sys1.c,proc.c,sig.c: numerous fixes to sleep/wakeup/wait(). ! 104: waitpid() is still a stub. ! 105: 02/23 fs1.c,sys2.c,sys5.c,timeout.c,var.c,fs2.c,pipe.c,sys3.c,atcon.c, ! 106: trap.c,usswan.c,vtnkb.c: epstein's file system changes - pipe fix, ! 107: chsize(), enforce ulimit on file size...,allow Swan kb support ! 108: by patching VTSWAN=1. ! 109: 02/18 types.h et al - Nigel replaced vaddr_t with caddr_t and made other ! 110: header changes in preparation for STREAMS. ! 111: 02/17 fd.c: Nigel's fix - open was creating files even when it failed ! 112: 02/12 tty.c: make sure VEOF is initialized properly on first opens. ! 113: 02/10 sys2.c: allow upoll() to succeed when number of fd's is 0 ! 114: 02/09 seg.h,mmu.c,shm0.c: allow individual shm seg references to be RW/RO ! 115: 02/04 reg.h,con.h,bio.c,fs2.c,fs3.c,sys3.c,sys5.c,md.c,as.s,clock.c: Nigel's ! 116: fixes (1) call STREAMS at key places via macros; (2) add extra ! 117: parameters to dopen()/dclose()/dioctl(); (3) support mask register ! 118: for interrupts. ! 119: 02/04 shm1.c: don't allow attempts to create shm segments of size 0 ! 120: 02/02 fs2.c: restore verbose inode busy diagnostic ! 121: 02/02 as.inc,as.s,clist.c,tty.c: replace getq() and putq() with cltgetq() ! 122: and cltputq() since the old names conflict with standard STREAMS ! 123: externals. ! 124: 02/02 coherent.h,proc.c,rlock.c,alx.c,asy.c,dmareq.c,hs.c,lf.c,msg386.c,sem.c: ! 125: stop passing 2nd and 3rd magic arguments to sleep as they were always ! 126: ignored. sleep() vanishes; v_sleep() becomes a macro calling ! 127: w_sleep(char * event, int cl, char * msg) ! 128: 01/22 sys1.c: utimes() - check for null or otherwise invalid user pointer ! 129: 01/22 fs1.c: imode() - access() as superuser returns exec perm set only ! 130: if the file is executable. ! 131: 01/22 fs3.c: iopen() - a non-superuser trying to write to a directory ! 132: gets EISDIR, not EPERM. ! 133: 01/22 tty.c: sgtty-type TIOCSETx ioctl's no longer set ISTRIP. ! 134: 01/22 sys1.c: add interface for waitpid(); fix uwait return value for ! 135: stopped processes (i.e., processes that hit a breakpoint) ! 136: ! 137: Changes to kernel and related files for version #72: ! 138: ! 139: NOTES: ! 140: ! 141: 1. You will need an upgraded libc.a or at least shmemul.o to use S5 ! 142: shared memory. ! 143: 2. You will need tboot 1.2.6 or later if you are using FP emulation. ! 144: 3. Epstein has given us another fsck. ! 145: ! 146: 01/17 sys5.c: sysi86(SI86FPHW, &data) supported to get ndp type ! 147: 01/17 sig.c: ptrace can examine modify fp state in emulator ! 148: 01/14 fs2.c,fs3.c,sys2.c,pipe.c,sys/inode.h: epstein's pollable pipes ! 149: 01/14 main.c,at.c,fl.c: michael's PS1 mods ! 150: 01/11 ndp.c,mmu.c,bld: hooks for linking Linux/cef floating point emulator ! 151: 12/29 new shm1.c from vlad, after testing preliminary ipcs ! 152: 12/29 mmu.c: fix bug allocating ram disk slots in page directory ! 153: 12/29 mmu.c,ndp.c,uproc.h: fp emulator state save/restore ! 154: 12/23 typed.h and .c files containing it: remove use of T_NULL which ! 155: conflicts with use of that identifier in coff.h ! 156: 12/23 rm.c,mmu.c: move start of RAM disk to virtual 0x8800_0000 for ! 157: compatibility with shm as assigned on other systems. ! 158: 12/23 shm1.c,sys5.c,shm.h,Makefiles,bld: S5 shared memory ! 159: 12/23 mmu.c: leave room for ndp state in user stack, per cef's request ! 160: 12/21 fs1.c,fs2.c: epstein's fix to inode busy bug ! 161: ! 162: Changes to kernel and related files for version #71: ! 163: ! 164: 12/18 fd.c, fs1.c, fs3.c, pipe.c, sys2.c, sys3.c: merge epstein's pipe ! 165: fixes. ! 166: 12/17 shm0.c: minor cleanup, add shmAtt() for vlad ! 167: 12/10 sys[235].c,tty.c: enhanced useracc(), ttioctl no longer allowed to ! 168: overwrite kernel text ! 169: 12/10 ndp.c: fix interrupt 13 attachment in case of 287 ! 170: 12/10 shm0.c: add shmDetachP() in support of ipcrm et al ! 171: 12/10 syscoh.c(): add cohcall(COH_WTEXT,dest,src,numBytes) so a process can ! 172: write into its text segment. This is mainly for cef's NDP emulator ! 173: thunks. ! 174: 12/10 sys5.c,atcon.c,main.c,uproc.h: add code for ulimit(); add kernel ! 175: patchable variable BPFMAX = max # of 512 byte blocks when writing ! 176: a file. Warning: ulimit(2,..) is not yet enforced! ulimit(3) returns ! 177: the maximum possible break value (with 64 kbytes of cushion). ! 178: 12/09 sys1632.c: make 286 stime() work as before ! 179: 12/09 sys5.c: fix return values from ustatfs(),ufstatfs() ! 180: 12/08 null.c,as.s,work.c,fakedma.c,ndp.c,shm0.c,as.inc,mmu.h: replace ! 181: use of WORK0 and WORK1 with calls to workAlloc() and workFree(). ! 182: 12/07 sig.c,ndp.c: allow ptrace() to transfer NDP state ! 183: 12/04 sys1.c: stime() gets value, not pointer (undocumented part of BCS ! 184: compatibility) ! 185: 12/02 shm0.c,bio.c,sys3.c,proc.c,syscoh.c,mmu.c,exec.c: kernel support ! 186: for shared memory ! 187: ! 188: Changes to kernel and related files for version #70: ! 189: ! 190: 11/30 sys2.c,pty.c: fix typo in POLLOUT polling ! 191: 11/25 ktty.h,tty.c: XTABS under sgtty becomes TABDLY=TAB3 under termio ! 192: 11/25 sys1.c: ulseek() once again rejects absolute offsets outside ! 193: the range 0..0x7ffff_ffff. ! 194: 11/25 null.c: /dev/kmemhi ! 195: 11/25 null.c: can now read/write /dev/mem more than 4096 bytes ! 196: 11/25 tty.h,ktty.h,asy.c,*kb*.c: support IXANY ! 197: 11/24 tty.c: block before first character if -icanon, vmin > 0. ! 198: ! 199: New /bin/stty, accepts decimal min/time values, ^? for DEL, ^- for <undef>. ! 200: New /conf/patch needed since we can no longer seek past 0x7ffff_ffff! ! 201: ! 202: Changes to kernel and related files for version #69: ! 203: ! 204: Warning: old COHERENT 286-style (was never part of S5) TIOC[C]BREAD is ! 205: no longer supported. It conflicts with termio-style VMIN/VTIME. Norm ! 206: said it was ok to drop this. ! 207: ! 208: 11/20 fl.c: fix at least one endless retry condition ! 209: 11/20 asy.c: setting BAUD 0 now hangs up the line ! 210: 11/19 asy.c: TCSBRK now sends 0.25 second break ! 211: 11/19 tty.c,asy: TCSETAF,TCSBRK weren't draining output ! 212: 11/19 tty.c: TCFLSH was ignoring third argument ! 213: 11/18 sys1.c: fix improper u_error setting in setuid()/setgid() ! 214: 11/17 mmu.c: fix startup arithmetic bug ! 215: 11/17 misc.c: use strchirp() in panic() if paging not enabled ! 216: 11/17 as.s: fix comparison in paging() ! 217: 11/12 mmu.c: add DV() macro for debugging ! 218: 11/12 asy.c: drain port fully on TCSETAW/TIOCSETP ! 219: 11/12 tty.c: add support for OCRNL, VMIN, VTIME ! 220: ! 221: Changes to kernel and related files for version #68: ! 222: ! 223: New /bin/ps needed! ! 224: setfpe no longer supported. ! 225: ! 226: 11/10 mmu.c,md.c,syscoh.c,as.s: add window server support (iomapOr(), ! 227: iomapAnd, kiopriv(), mapPhysUser()). ! 228: 11/10 msg386.c: vlad's permission 0 fix. ! 229: ... ker 67 was in here somewhere but had fatal character processing bug... ! 230: 11/06 null.c: improved ps command, uses new /dev/ps ! 231: 11/04 sys/ktty.h,tty.c: fix ONLCR/ICRNL check in tty module ! 232: 11/04 at.c,misc.c,as.s: atbsyw() and atdrqw() no longer depend on CPU speed ! 233: 11/04 sys/ktty.h,*kb*.c: fix ctrl-s/ctrl-q test to check IXON flag ! 234: 10/29 sys1.c: fix utimes() return value. ! 235: 10/28 287 support (untested) ! 236: 10/25 Fix floating point exception handling for 387. Add NDP sensing. ! 237: ! 238: Changes to kernel and related files for version #66: ! 239: ! 240: New /bin/ps needed! ! 241: ! 242: NOTICE: /usr/include/sys/dirent.h and /usr/include/sys/dir.h are ! 243: obsolete and should be removed from the /usr/include/sys directory! ! 244: All references to them should include /usr/include/dirent.h instead. ! 245: ! 246: 10/19 trap.c - stub for floating point exceptions ! 247: 10/20 as.s,mmu.h,uproc.h - reserve space just below u area for NDP state ! 248: 10/20 trap.c - device not available trap rewritten for NDP ! 249: 10/22 floating point context switching, exceptions, and signal handlers ! 250: ! 251: Changes to kernel and related files for version #65: ! 252: 10/08 fl.c - fix open/close count imbalance ! 253: 10/11 as.s,trap.c - fix runaway resulting from bad user pointer in system call ! 254: ! 255: Changes to kernel and related files for version #64: ! 256: New /etc/reboot (source in ker386/tools). ! 257: 09/24 sig.c: ptrace fix, going from single step to full speed ! 258: 10/01 trap.c: revise retry policy for iret bug ! 259: 10/01 syscoh.c,param.h: superuser-callable reboot function ! 260: 10/02 as.s: revise IODELAY to solve install problems on some systems ! 261: 10/02 syscoh.c: update breakpoint code for new trap handler ! 262: 10/02 msg386.c,sys2.c: vlad's new msg handler (no longer a device driver) ! 263: 10/02 die.c: shorter code for print8/16/32, without need for data seg. ! 264: 10/05 mmu.c: add PHYS_MEM and getPhysMem() for NCM and others (allocate ! 265: blocks of contiguous physical memory). ! 266: 10/06 fl.c: flopen() would occasionally hang the system ! 267: 10/06 as.s,as.inc,xdt.s: mmu update call gate to speed interrupt response ! 268: ! 269: Changes to kernel and related files for version #63: ! 270: ! 271: 09/08 sys5.c: fix permission problem in mkdir() ! 272: 09/08 fl.c: fix end-of-volume problem ! 273: 09/08 uproc.h, sys1.c, exec.c: S5-compatible setuid()/setgid() ! 274: 09/09 coherent.h,misc.c: replace kkcopy(), kclear() with macro calls to ! 275: memcpy and memset. ! 276: 09/09 tty.c: TCSETAW was losing buffer contents; add ttrtp() call. ! 277: 09/10 seg.c: vlad's fix for recursive exec's ! 278: 09/16 bio.c,tioc.c,al.c,hs.c,asy.c,pty.c,*kb*.c: get rid of tioc286() ! 279: kluge in device drivers; move tioc() call into dioctl() ! 280: 09/17 null.c: /dev/proc for leaner ps, courtesy of La Monte. ! 281: 09/17 uproc.h,md.c,sig.c,sys1.c,trap.c: fixes for db support ! 282: 09/22 ptrace.h: add constants for ptrace() commands (no BCS standard for these) ! 283: 09/22 fs2.c: Steve's conjectured fix for inode busy ! 284: 09/22 as.s,xdt.s,as.inc: further changes for db support ! 285: 09/24 fdioctl.h,sdioctl.h,mtioctl.h,buf.h,fl.c: clean up ioctl name space junk ! 286: ! 287: Related to kernel changes above: ! 288: new bin/ps must be used due to yet another change in u area ! 289: watch for new cron from vlad that doesn't spawn lots more crons ! 290: new db has at least some working features ! 291: ! 292: still to do: ptrace(), floating point ! 293: clean up __cinit()/__putchar() stuff ! 294: ! 295: Changes to kernel and related files for version #62: ! 296: ! 297: 08/28 memset.s: yet another segment botch fixed (sorry!) ! 298: 08/31 fl.c: Jack's improved floppy driver; much quicker on dd; warns on ! 299: attempting to mount write-protected floppy for read/write. ! 300: 09/01 stdio.h,sys/param.h,sys/uproc.h,sys/select.h,libc.a,misc.tar.Z ! 301: (bedaemon.c, select.c),bin/ps,exec.c,fd.c,sys2.c,sys1632.c: up ! 302: to 60 open files per process. If you are building kernels from ! 303: #62 sources, best rm ALL older .o files and start over due to ! 304: change in value of NOFILE in sys/param.h. ! 305: 09/01 conf/kgen - allows you to link a new kernel with same configuration ! 306: as your original 4.0.0/4.0.1 installation. This script is NFG on ! 307: systems not built by doing a full COH install of 4.0.0/4.0.1. Its ! 308: main purpose is to allow developers & customers to replace one or ! 309: more kernel binary files, then make a new kernel with all the right ! 310: drivers and patches for their systems. ! 311: ! 312: Changes to kernel for version #61: ! 313: ! 314: 08/18 new memset.s,memcpy.s ! 315: 08/21 vtkb.c - vlad ! 316: 08/21 null.c - fix bug with /dev/null input ! 317: 08/24 vtkb_d.c,vtkb_f.c - vlad ! 318: 08/25 trap.c,as.s: fix IRET GP fault bug ! 319: 08/25 trap.c: separate GP fault handler ! 320: 08/25 trap.c,as.s,syscoh.c,param.h: kernel breakpoints ! 321: ! 322: Changes to kernel for version #60: ! 323: ! 324: 08/05 as.s: set IOPL to 1, not 3. Requires new /etc/ATclock. ! 325: 08/05 xdt.s: source cleanup ! 326: 08/05 mmu.h,as.inc: add SEG_RNG0_STK, SEG_RNG0_TXT, SEG_RNG1_STK ! 327: 08/14 null.c: set seek limit of 256 on /dev/cmos. Add /dev/clock. ! 328: 08/18 as.s,as.inc,xdt.s,mmu.h,mmu.c,vtnkb.c,mmas.s: Ring 1 kernel (use new ps) ! 329: 08/18 mmu.c: replace zero_fill() with memset() ! 330: ! 331: Changes to kernel for version #59: ! 332: ! 333: 07/24 mmu.c: zero_fill now uses register variables and long* for speed ! 334: 07/20 kb_d.c, kb_f.c: fix Alt-Gr bug. ! 335: ????? limit.h, coff.h cleaned up by steve ! 336: 07/24 typed.h,mmu.h fixed ! 337: 07/24 mmu.c: vaddr() checks MAX_VADDR; round CMOS RAM amt down to click bdry ! 338: 07/24 die.c: hex output ! 339: 07/24 main.c: t_piggy stuff
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.