Article View: net.bugs.2bsd
Article #21recent fixes
From: ucbvaxdove
Date: Sat, 16 Jan 1982 14:29
Date: Sat, 16 Jan 1982 14:29
26 lines
1592 bytes
1592 bytes
From: dove at mit-dspg at mit-mc ================================ 1 swapping bug causes system hang on small systems. All unix systems for some time have had this bug! ----------------- Suppose a non sticky sep text job forks soon enough after startup that the text is still waiting to be written and the parent is swapped out. Now the child execs another file. The textp of the child is cleared and it attempts to dec the count of the text. This locks it (the text) and xccdec() tries to swap it out. At this point the child is sleeping so sched() looks for core (remember that this is a SMALL system) finds the child with no APPARENT text locked (since the textp was cleared) and swaps it. Unfortunately, available memory is still fragmented by the locked text and the highest priority jobs is sep i/d and wont fit. BINGO dead system. My cure was to make any proc sleeping on PSWP or PSWP+1 unswappable. Since such things are rare it hasn't hurt swapping much and seems to have cured the problem. We only started having it when we began using an overlayed 2.8bsd and were left with under 128 kb of user memory. =============================== 2 The 2.8bsd dh and dz drivers I had left PENABLE on even if both or neither EVENP or ODDP were on. This made uucp not work. I now leave the hdwr in 8 bit mode in such circumstances.
Technical Details
Message-ID:
<anews.Aucbvax.5813>Path:
arc1-ca.pugleaf.net!utzoo!decvax!ucbvax!dove@mit-dspg@mit-mcShow Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!utzoo!decvax!ucbvax!dove@mit-dspg@mit-mc From: ucbvax!dove@mit-dspg@mit-mc Newsgroups: net.bugs.2bsd Subject: recent fixes Date: Sat, 16 Jan 1982 14:29:27 +0000 Message-ID: <anews.Aucbvax.5813>