🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: comp.os.linux.announce
Article #41

IMPORTANT [BUG in 0.99] Re: [ANNOUNCE]: linux version 0.99

#41
From: Linus Torvalds
Date: Mon, 14 Dec 1992 20:17
56 lines
2826 bytes
Simple but important bug-fixes follow.  Please check them out if you
have had problems with 0.99. 

In article <1992Dec14.174625.1102@galileo.cc.rochester.edu> ctne_ltd@uhura.cc.rochester.edu (Chris Newbold) writes:
>
>Okay. I posted a note this morning about not being able to get 0.99 to boot.
>Well, I solved that problem... Just my own stupidity. *BUT*, I may have a 
>bug to report here.
>
>I also posted another note about X locking up perodically (Subject was 
>[BUG REPORT] swapping trouble ?!?). Now that I am running 0.99, the kernel
>manages to keep limping when X locks up--enough for syslogd to spit out what
>happens: I get a whole bunch of "No free inodes -- contact Linus" messages.

Good.  I added code to handle the "out of inode" error more gracefully,
and it seems to have found the error pretty efficiently (well, I
suspected it already, which is why I wrote the code in the first place,
but now it's confirmed).  Consider me contacted. 

Sadly, the "out of inode" code has a silly bug that can lead to kernel
panics at bootup: the 'inode_wait' wait-queue is not correctly
initialized to NULL, so people booting from floppy may get bad values
here. So here are a couple of fixes for 0.99 - unofficial, but I would
like to hear if there are still problems after these:

 1) in linux/fs/inode.c, at the start, change

	static struct wait_queue * inode_wait;

    to

	static struct wait_queue * inode_wait = NULL;

 2) in linux/include/linux/fs.h, double the value of NR_INODE (to 256),
    ie change

	#define NR_INODE 128

    to

	#define NR_INODE 256

and see if that is enough (it really should be: NR_FILE is 128, so the
above value for NR_INODE should leave plenty of inodes for things like
executables etc).  Hopefully you won't get the "No free inodes" problem
any more. 

Note that I'll have to make the number of inodes dynamic, but I won't do
so for 1.0, as the changes would be big enough to be bug-prone.  1.0
need not be perfect, but I hope it will be stable. 

		Linus


-- 
Send submissions for comp.os.linux.announce to: linux-announce@tc.cornell.edu
Technical Details
Message-ID: <1992Dec14.201728.14054@tc.cornell.edu>
Path: arc1-ca.pugleaf.net!sparky!uunet!caen!batcomputer!db.TC.Cornell.EDU!mdw
References: <1992Dec13.193812.6958@tc.cornell.edu> <1992Dec14.172729.9675@tc.cornell.edu> <1992Dec14.174625.1102@galileo.cc.rochester.edu>

Show Full Headers
Complete Article Headers
Newsgroups: comp.os.linux.announce
Path: arc1-ca.pugleaf.net!sparky!uunet!caen!batcomputer!db.TC.Cornell.EDU!mdw
From: torvalds@klaava.Helsinki.FI (Linus Torvalds)
Subject: IMPORTANT [BUG in 0.99] Re: [ANNOUNCE]: linux version 0.99
Message-ID: <1992Dec14.201728.14054@tc.cornell.edu>
Originator: mdw@db.TC.Cornell.EDU
Keywords: kernel linux 0.99
Sender: news@tc.cornell.edu
Nntp-Posting-Host: db.tc.cornell.edu
Organization: University of Helsinki
References: <1992Dec13.193812.6958@tc.cornell.edu> <1992Dec14.172729.9675@tc.cornell.edu> <1992Dec14.174625.1102@galileo.cc.rochester.edu>
Date: Mon, 14 Dec 1992 20:17:28 GMT
Approved: linux-announce@tc.cornell.edu (Matt Welsh)
Lines: 56