Re: Today's special: nessusd panics -CURRENT

2001-05-10 Thread Szilveszter Adam

On Thu, May 10, 2001 at 11:29:57AM -0700, David Wolfskill wrote:
> >Ok, I see what's broken.  I don't know how you are out of witness's though. 
> >We don't have enough types of mutexes for that to happen.  Try this patch:

<...>
> Since I didn't use the "-l" flag to patch, it didn't apply, so I did it
> by hand (and subsequently thought to check for whitespace issues).

Yes same with me:-)

> But the patch appears to work; I'm up & running:

Well unfortunately no such luck. It solves the first part of the problem
(the "system call open retunrning with nutex(s) held" panic) but even after
applying the patch and toning down MAXUSERS to 32 (I suspected it might
be somewhat related) I still get the triple panic, which now looks like:

witness_get: witness exhausted
panic: witness_restore: lock (sleep mutex) Giant not locked

After 'c', it says (attempting to sync the disks)

witness_save: panic: lock (sleep mutex) Giant not locked

And finally after attempting to dump:

ata0: resetting devices: panic: lock (sleep mutex) Giant not locked

Here come the traces.

The third trace also contains the first and the second a bit further down.

The third trace:

Debugger
panic
witness_save
mawait
ata_command
ad_reinit
ata_reinit
addump
dumpsys
boot
panic=> From here is part of the second trace too.
witness_save
boot 
panic=> From here this is the first trace too.
witness_restore
msleep
vm_pageout
fork_exit
fork_trampoline

So basically the first trace is:

Debugger
panic
witness_restore
msleep
vm_pageout
fork_exit
fork_trampoline

And the second:

Debugger
panic
witness_save
boot
panic
witness_restore
msleep
vm_pageout
fork_exit
fork_trampoline

This problem *only* appears when running nessusd. Any other app I tried
(including X) runs fine.

If you need more info let me know.
 
-- 
Regards:

Szilveszter ADAM
Szeged University
Szeged Hungary

To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message



RE: Today's special: nessusd panics -CURRENT

2001-05-10 Thread David Wolfskill

>Date: Thu, 10 May 2001 09:52:03 -0700 (PDT)
>From: John Baldwin <[EMAIL PROTECTED]>

>> witness_get: witness exhausted
>> exclusive(sleep mutex) Giant(0xc044a760) locked @ ../../i386/i386/trap.c:1169
>> panic: system call open returning with mutex(s) held

>Ok, I see what's broken.  I don't know how you are out of witness's though. 
>We don't have enough types of mutexes for that to happen.  Try this patch:

>Index: subr_witness.c
>===
>RCS file: /usr/cvs/src/sys/kern/subr_witness.c,v
>retrieving revision 1.70
>diff -u -r1.70 subr_witness.c
>--- subr_witness.c  2001/05/04 17:15:16 1.70
>+++ subr_witness.c  2001/05/10 16:39:27
>@@ -1222,6 +1222,9 @@
>("%s: p != curproc and we aren't in the debugger", __func__));
>KASSERT(!witness_cold, ("%s: witness_cold", __func__));

>+   if (!db_active && witness_dead)
>+   return (0);
>+
>nheld = witness_list_locks(&p->p_sleeplocks);

>/*

>-- 

Since I didn't use the "-l" flag to patch, it didn't apply, so I did it
by hand (and subsequently thought to check for whitespace issues).

But the patch appears to work; I'm up & running:

FreeBSD m147.whistle.com 5.0-CURRENT FreeBSD 5.0-CURRENT #59: Thu May 10 04:06:04 PDT 
2001 root@:/common/C/obj/usr/src/sys/LAPTOP_30W  i386


(I had encountered the witness panic before applying the patch.)

Only annoyance I'm encountering with it so far is involving my use of ssh;
perhaps I'm doing something Really Weird, but in any case, that probably
deserves a different Subject:.

Cheers,
david
-- 
David H. Wolfskill  [EMAIL PROTECTED]
As a computing professional, I believe it would be unethical for me to
advise, recommend, or support the use (save possibly for personal
amusement) of any product that is or depends on any Microsoft product.

To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message



RE: Today's special: nessusd panics -CURRENT

2001-05-10 Thread John Baldwin


On 10-May-01 Szilveszter Adam wrote:
> Hello everybody,
> 
> I have stumbled across some nice giraffe today.
> 
> Look, this is cute (transcribed by hand for your enhanced viewing pleasure):
> (sorry, no serial console handy... should be easy to reproduce though)
> 
># nessusd -D
> 
> witness_get: witness exhausted
> exclusive(sleep mutex) Giant(0xc044a760) locked @ ../../i386/i386/trap.c:1169
> panic: system call open returning with mutex(s) held

Ok, I see what's broken.  I don't know how you are out of witness's though. 
We don't have enough types of mutexes for that to happen.  Try this patch:

Index: subr_witness.c
===
RCS file: /usr/cvs/src/sys/kern/subr_witness.c,v
retrieving revision 1.70
diff -u -r1.70 subr_witness.c
--- subr_witness.c  2001/05/04 17:15:16 1.70
+++ subr_witness.c  2001/05/10 16:39:27
@@ -1222,6 +1222,9 @@
("%s: p != curproc and we aren't in the debugger", __func__));
KASSERT(!witness_cold, ("%s: witness_cold", __func__));
 
+   if (!db_active && witness_dead)
+   return (0);
+
nheld = witness_list_locks(&p->p_sleeplocks);
 
/*

-- 

John Baldwin <[EMAIL PROTECTED]> -- http://www.FreeBSD.org/~jhb/
PGP Key: http://www.baldwin.cx/~john/pgpkey.asc
"Power Users Use the Power to Serve!"  -  http://www.FreeBSD.org/

To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message