Text File

Aucbvax.4063 net.2bsd-bugs utzoo!decvax!ucbvax!dist2 Sat Sep 26 04:45:59 1981 moving i/o buffers back into kernel space

Various people have commented about the lost clock interrupts resulting from the placement of i/o buffers outside the kernel in 2bsd V7 (this happens because spl7's are done during the re-mapping). There have also been musings about whether something in this code was responsible for crashes. We decided to put the buffers back in and see what happens. In addition to undefining UCB_BUFOUT in localopts.h, we had to do the following. Apparently, the kernel was never tested with the buffers in.

Apparently so.

(1) You will also need to undefine UCB_CLIST. In addition, there are separate assemler defines in conf/mch.s which will need to be unset. These are BUFS and CLIST.

Specifically, the needed changes are: diff mch.s mch.s.bufsin 20,21c20,21 .BUFS = 0 / == UCB_BUFOUT > .CLIST = 0 / == UCB_CLIST

(2) seg.h needs to have the defines for UBMAPON and SSR3 placed outside the ifdef for UCB_BUFOUT (their definition is currently contingent on UCB_BUFOUT being defined). There are portions of of the code in sys/machdep.c which get compiled regardless of whether UCB_BUFOUT is defined or not, and which depend on these defines.

This has been fixed in the current release.

(3) sys/syslocal.c will need to include <BUF.H> if UCB_BUFOUT is NOT defined.

The changes which should be made are: diff syslocal.c syslocal.c.old 14a15,17 > #ifndef UCB_BUFOUT > #include <SYS/BUF.H> > #endif They have been made on tapes written after 9/26/81.

(4) there is a line in bkclose() in dev/bk.c which should be compiled only if UCB_BUFOUT is defined. This line is abrelse(tp->t_bufp) If UCB_BUFOUT is not defined, then the following should be compiled instead: brelse(tp->t_bufp)

This has been fixed in the current release.

Carl

----------------------------------------------------------------- gopher://quux.org/ conversion by John Goerzen <jgoerzen@complete.org> of http://communication.ucsd.edu/A-News/

This Usenet Oldnews Archive article may be copied and distributed freely, provided:

1. There is no money collected for the text(s) of the articles.

2. The following notice remains appended to each copy:

The Usenet Oldnews Archive: Compilation Copyright (C) 1981, 1996 Bruce Jones, Henry Spencer, David Wiseman.