*BSD News Article 9631


Return to BSD News archive

Received: by minnie.vk1xwt.ampr.org with NNTP
	id AA6135 ; Tue, 05 Jan 93 07:02:43 EST
Path: sserve!manuel.anu.edu.au!munnari.oz.au!spool.mu.edu!nigel.msen.com!math.fu-berlin.de!unidui!du9ds3!veit
From: veit@du9ds3.fb9dv.uni-duisburg.de (Holger Veit)
Newsgroups: comp.unix.bsd
Subject: Re: codrv problems..
Date: 7 Jan 93 18:18:43 GMT
Organization: Uni-Duisburg FB9 Datenverarbeitung
Lines: 48
Message-ID: <veit.726430723@du9ds3>
References: <1993Jan6.184438.5175@lgc.com> <1993Jan7.164904.41040@news.th-darmstadt.de>
Reply-To: veit@du9ds3.fb9dv.uni-duisburg.de
NNTP-Posting-Host: du9ds3.fb9dv.uni-duisburg.de
Keywords: 386BSD, codrv

In <1993Jan7.164904.41040@news.th-darmstadt.de> deeken@iti.informatik.th-darmstadt.de (Hans-Christoph Deeken) writes:

>In article <1993Jan6.184438.5175@lgc.com>, danson@lgc.com (Doug Anson) writes:
>> HI:
>> 
>[ description of codrv problems ]
>> 
>> I have the 386BSD 0.1 kernel with 1-58 patches applied + pcfs.

>Exactly the same problem here. Also "panic: syscall", also 386BSD 0.1.pl58.

>The kernel prints out the devices as they are probed/attached(?), but dies
>after that with a "panic: syscall", before /etc/rc output starts.
>The only occurance of panic("syscall") that I've found is in
>/sys/i386/i386/trap.c, at the start of syscall(). Since I don't know anything
>about the stuff done in trap.c, I'm stuck.

>> Any help would be appreciated.
>> Doug

>Me too. Holger?

>Hannes
>-- 
>Hans-Christoph Deeken | hannes@flinx.{RoBIN.de,hotb.sub.org} (home)
>Gerauer Str. 20       | deeken@iti.informatik.th-darmstadt.de (university)
>6000 Frankfurt/M 71   | IRC: Glenlivet
>      "Das Beispiel hinkt nicht, das sitzt im Rollstuhl" -- Marsi

The location of the panic("syscall") line is in trap.c, that's right. But
it does not tell anything about the real reason of the fault. Panic's occur
for a lot of reasons, but in this case it is indeed evidence that there is
still a bug in codrv-0.1.1. As Serge Vakulenko pointed out (in a private
letter), there is an uninitialized register variable in coprobe(), co_kbd.c.
The first declaration there should read
	register struct consoftc *p = &consoftc;

This might or might not be the bug which causes the trouble here, at least it
is worth trying. 

You may of course wait (a little bit ;-) ) for the next version.

Holger
-- 
|  |   / Dr. Holger Veit         | INTERNET: veit@du9ds3.fb9dv.uni-duisburg.de
|__|  /  University of Duisburg  |
|  | /   Dept. of Electr. Eng.   |          "Understand me correctly:
|  |/    Inst. f. Dataprocessing |     I'm NOT the WIZARD OF OS" (Holger)