2.9 release from Harvard/CSS

Keith Bostic keith at seismo.CSS.GOV
Sun Sep 1 06:30:33 AEST 1985


Information for people who have requested a 2.9BSD tape from
The Center for Seismic Studies or Harvard University.
----------------------------------------------------------------------

O Happy Days...

All of the tapes I have received as of 30 August 85 are in the mail.
Therefore, if you haven't received a tape from me by the end of next
week, you probably want to let me know immediately.  If anyone's
interested, I've sent out around 100 tapes so far.

Which brings up a slightly more painful subject.  I will be posting, to
net.bugs.2bsd, as often as necessary, a list of problems/explanations.
Otherwise known as Where Bostic Messed Up, or, perhaps, Why They Done What
They Did.   I am also mailing this first posting to my list of people known
to have an unhealthy interest in 2.9BSD.  If you DO NOT receive net.bugs.2bsd
at your site, please send me mail letting me know this and your favorite
e-mail address.  I will then add you to a mailing list at seismo that
distributes copies of all postings to net.bugs.2bsd.  Please do this
immediately, and continue to send me mail until I respond.  Otherwise you
won't get the copies of the stuff people send to Usenet.

Also, I know I keep repeating this, but we are actively seeking out bug
reports -- we expect this system to work and we want to know when it doesn't.

Well, on to the good stuff!

Keith Bostic
	keith at seismo.CSS.GOV
	seismo!keith
	703-276-7900

----------------------------------------------------------------------
Bug/Question:
	Where or what is isr.o?
Answer:
	sys/conf/makefiles/Make.sys and sys/conf/makefiles/Makefile think
	that you need to have a file called isr.[so] in the sys/sys directory.
	They're wrong.  It can be removed totally.  Here are the diffs.

diff Make.sys.wrong Make.sys.right
25,30c25
< all: ${SYS} ${CONF} isr.o
< 
< isr.o:	../sys/isr.s
< 	${CPP} ${CPPFLAGS} ../sys/isr.s > isr.i
< 	${AS} -o isr.o isr.i
< 	-rm isr.i
---
> all: ${SYS} ${CONF}

diff Makefile.wrong Makefile.right
66c66
< 	dz.o isr.o
---
> 	dz.o
89c89
< 	tm.o ts.o tty.o ttynew.o ttyold.o xp.o vp.o dr.o isr.o
---
> 	tm.o ts.o tty.o ttynew.o ttyold.o xp.o vp.o dr.o

----------------------------------------------------------------------
Bug/Question:
	Localopts.h doesn't define MENLO_JCL and UCB_SYMLINKS anymore.

Answer:
	This is not a bug.  These two defines (I think they were the only
	two) have been removed from the includes and source files.  Basically,
	you don't have a choice as to whether they are turned on or not, they
	are on all the time.  They have been left in the namelist, though,
	so no software should break.

----------------------------------------------------------------------
Bug/Question:
	If you define UCB_SUBM in localopts.h routines like acct.c and slp.c
	you don't have a flag SSUBM defined anywhere.

Answer:
	Well, as far as I can tell, SSUBM was never defined, so your guess
	as to what it should be is as good as anyone elses.  UCB_SUBM is a
	2.9 specific define that has to do with the submit(2) and killbkg(2)
	calls in the C library.  Since the calls are not implemented in 4.[23],
	I suspect that it will go away in my version of 2.9 and any future
	releases Harvard and/or I make in the future.  Job control and "stty
	nohang" pretty much cover the ground.

----------------------------------------------------------------------
Bug/Question:
	Where is include/sys.s?

Answer:
	Ulp, missed that one.  It's included below, or you can take the one
	from your 2.9 distribution tape, either one will work fine.

... cut here for include/sys.s ...
indir		=  0.
exit		=  1.
fork		=  2.
read		=  3.
write		=  4.
open		=  5.
close		=  6.
wait		=  7.
creat		=  8.
link		=  9.
unlink		= 10.
exec		= 11.
chdir		= 12.
time		= 13.
mknod		= 14.
chmod		= 15.
chown		= 16.
break		= 17.
stat		= 18.
lseek		= 19.
getpid		= 20.
mount		= 21.
umount		= 22.
setuid		= 23.
getuid		= 24.
stime		= 25.
ptrace		= 26.
alarm		= 27.
fstat		= 28.
pause		= 29.
utime		= 30.
smdate		= 30.
stty		= 31.
gtty		= 32.
access		= 33.
nice		= 34.
sleep		= 35.
ftime		= 35.
sync		= 36.
kill		= 37.
csw		= 38.
setpgrp		= 39.
dup		= 41.
pipe		= 42.
times		= 43.
profil		= 44.
getgrp		= 45.
setgid		= 46.
getgid		= 47.
signal		= 48.
rtp		= 49.
setgrp		= 50.
acct		= 51.
phys		= 52.
lock		= 53.
ioctl		= 54.
reboot		= 55.
mpx		= 56.
vfork		= 57.
setinf		= 59.
exece		= 59.
local		= 58.		/ local system call indirect
umask		= 60.
getinf		= 60.
chroot		= 61.

/ local system calls

login		=  1.		/ mark login process
lstat		=  2.		/ like stat, but don't follow symbolic links
submit		=  3.		/ submit
nostk		=  4.		/ release stack segment
killbkg		=  5.		/ kill background processes
killpg		=  6.		/ kill process group
renice		=  7.		/ change a process's nice
fetchi		=  8.		/ fetch from user I space
ucall		=  9.		/ call a kernel subroutine
quota		= 10.		/ set quota
qfstat		= 11.		/ long fstat (for quotas)
qstat		= 12.		/ long stat (for quotas)

gldav		= 14.		/ get load average
fperr		= 15.		/ read floating point error registers
vhangup		= 16.		/ virtually hang up a control terminal

select		= 18.		/ select active fd
gethost		= 19.		/ get host name
sethost		= 20.		/ set host name
socket		= 21.		/ get socket fd
connect		= 22.		/ connect socket
accept		= 23.		/ accept socket connection
send		= 24.		/ send datagram
receive		= 25.		/ receive datagram
socketa		= 26.		/ get socket address
setreuid	= 27.		/ set real user id
setregid	= 28.		/ set real group id
symlink		= 29.		/ create symbolic link
readlink	= 30.		/ read symbolic link
gethstid	= 31.		/ get host id
sethstid	= 32.		/ set host id
getgroups	= 33.		/ get list of user's groups
setgroups	= 34.		/ set list of user's groups
getdtablesize	= 35.		/ get descriptor table size

----------------------------------------------------------------------
Bug/Question:
	libcurses compiles fine, ld complains about some missing signal
	calls.

Answer:
	True, so true.  The solution is to comment out the calls, honest.
	Here is the diff.

*** tstp.c.right	Mon Aug 26 00:18:33 1985
--- tstp.c.wrong	Fri Jun  7 11:17:28 1985
***************
*** 32,38
  	endwin();
  	fflush(stdout);
  	/* reset signal handler so kill below stops us */
  	signal(SIGTSTP, SIG_DFL);
  #define	mask(s)	(1 << ((s)-1))
  	omask = sigsetmask(sigblock(0) &~ mask(SIGTSTP));

--- 32,37 -----
  	endwin();
  	fflush(stdout);
  	/* reset signal handler so kill below stops us */
+ #ifndef pdp11
  	signal(SIGTSTP, SIG_DFL);
  #define	mask(s)	(1 << ((s)-1))
  	omask = sigsetmask(sigblock(0) &~ mask(SIGTSTP));
***************
*** 36,42
  	signal(SIGTSTP, SIG_DFL);
  #define	mask(s)	(1 << ((s)-1))
  	omask = sigsetmask(sigblock(0) &~ mask(SIGTSTP));
  	kill(0, SIGTSTP);
  #ifndef pdp11
  	sigblock(mask(SIGTSTP));

--- 35,40 -----
  	signal(SIGTSTP, SIG_DFL);
  #define	mask(s)	(1 << ((s)-1))
  	omask = sigsetmask(sigblock(0) &~ mask(SIGTSTP));
+ #endif !pdp11
  	kill(0, SIGTSTP);
  	sigblock(mask(SIGTSTP));
  	signal(SIGTSTP, tstp);
***************
*** 38,44
  	omask = sigsetmask(sigblock(0) &~ mask(SIGTSTP));
  #endif !pdp11
  	kill(0, SIGTSTP);
  	sigblock(mask(SIGTSTP));
  #endif pdp11
  	signal(SIGTSTP, tstp);

--- 36,41 -----
  #define	mask(s)	(1 << ((s)-1))
  	omask = sigsetmask(sigblock(0) &~ mask(SIGTSTP));
  	kill(0, SIGTSTP);
+ #ifndef pdp11
  	sigblock(mask(SIGTSTP));
  	signal(SIGTSTP, tstp);
  	_tty = tty;
***************
*** 40,46
  	kill(0, SIGTSTP);
  #ifndef pdp11
  	sigblock(mask(SIGTSTP));
  	signal(SIGTSTP, tstp);
  	_tty = tty;
  	stty(_tty_ch, &_tty);

--- 37,42 -----
  	omask = sigsetmask(sigblock(0) &~ mask(SIGTSTP));
  	kill(0, SIGTSTP);
  	sigblock(mask(SIGTSTP));
+ #endif pdp11
  	signal(SIGTSTP, tstp);
  	_tty = tty;
  	stty(_tty_ch, &_tty);

----------------------------------------------------------------------
Bug/Question:
	The vi editor doesn't reset the terminal when you exit.
Answer:
	Yup.  The -V flag wasn't getting passed to the Makefile.
	Diffs for ucb/MAKE follow.

diff MAKE.wrong MAKE.right
105c105
< 		whois | ftp | netstat | talk | tftp)
---
> 		whois | ex | ftp | netstat | talk | tftp)
107,108d106
< 		ex)
< 			(cd $each; $CDOVMK) ;;
----------------------------------------------------------------------



More information about the Comp.bugs.2bsd mailing list