From: utzoo!decvax!cca!rlb@Purdue@sri-unix Newsgroups: net.unix-wizards Title: Re: /dev screwed up Article-I.D.: sri-unix.3014 Posted: Mon Aug 30 22:58:19 1982 Received: Wed Sep 8 06:51:28 1982 From: Bob BrownDate: 25 Aug 1982 23:58:02-EST 4.1BSD USERS ONLY! All you sites out there that have suffered losing /dev, please disregard Mike O'Dell's last letter. Don't think that just turning off comsat is going to save your file system from the inode reference-count error in the multiplexor. Mike, a good reason to fix the multiplexor is because comsat is not the only program that uses it. Another is Gosling's emacs and others include various windowing packages under investigation at several sites. Mike Accetta and James Gosling at CMU have fixed two known problems with the multiplexor and one of them caused the /dev screwup. So, save your /dev if you can. Mike Accetta is willing to send out the changed mx2.c or you can get it here. Do it - it slips in with no trouble at all. For you multiplexor hacks out there, try running this program 10 times: #include #include #define P(s) printf("s returns %d\n",s) char *mpxfile = "mpxfile"; main() { int i; P(unlink(mpxfile)); P(mpx(mpxfile,0666)); if ( fork()==0 ) { for ( i=0 ; i<20 ; i++ ) close(i); P(open(mpxfile,2)); exit(1); } sleep(2); kill(getpid(),9); } It tends to gobble up group[] table entries - never to be returned. Type "echo groups,10/X | adb /vmunix /dev/kmem" after each run and watch the table entries just go away (it also eats inode table entries). About comsat: I just changed it so if you say "biff b", you get a polite little "beep" at your terminal when you get a new letter. If you tend to sit inside emacs all day or slide over to your desk to do some "real" work for extended periods, the "set mail=(1" solution just isn't adequate. Changed biff.c and comsat.c are available for the asking, too. Bob Brown (rlb) Purdue-CS (317)494-6530 PS Mike O'Dell, you forgot to FLAME OFF, you still OK?