Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 28 Jun 2002 09:43:27 -0400
From:      Don Bowman <don@sandvine.com>
To:        "'freebsd-stable@freebsd.org'" <freebsd-stable@freebsd.org>
Subject:   panic in 4.6 with knote_enqueue from kill
Message-ID:  <FE045D4D9F7AED4CBFF1B3B813C8533767660F@mail.sandvine.com>

next in thread | raw e-mail | index | archive | help
I have a system panic occuring with FreeBSD 4.6. The stack trace is below...

Debugger(c032d70a) at Debugger+0x34
panic(c032bf57,e0f37000,800001e,e0f35ee4,c01ba339) at panic+0xa4
knote_enqueue(e0f37000) at knote_enqueue+0x22
knote(db433820,800001e) at knote+0x35
psignal(db433700,1e,2,db433700,e0f35f80) at psignal+0x49
kill(db433700,e0f35f80,281f8944,81a9000,818467c) at kill+0x7b
syscall2(2821002f,281f002f,80f002f,818467c,81a9000) at syscall2+0x23d
Xint0x80_syscall() at Xint0x80_syscall+0x2b

This is occurring about once per day (well, the machine locks
up with no messages at all about once per day. Today I got it
dropped into ddb). The best guess I have for the process which 
caused the panic is below as 'XXX', 68264. I'm not sure what the 
flags etc mean. This process has an event
loop running which is in kqueue all the time, with sockets
in that kqueue as well as 1 other thread which calls 'kill SIGUSR1',
and a kevent for sigusr1 so that the main thread will wake up
and perform some processing. The threads are pthreads.

From knote_enqueue() its fairly obvious which line panic'd:
static void
knote_enqueue(struct knote *kn)
{
        struct kqueue *kq = kn->kn_kq;
        int s = splhigh();

        KASSERT((kn->kn_status & KN_QUEUED) == 0, ("knote already queued"));
                
        TAILQ_INSERT_TAIL(&kq->kq_head, kn, kn_tqe);
        kn->kn_status |= KN_QUEUED;
        kq->kq_count++;
        splx(s);
        kqueue_wakeup(kq);
}

The machine is a dual P-3 650MHz.

Has anyone else seen anything like this? 
Would anyone care to suggest what I might do next to characterise
or solve this issue?


db> show all procs
  pid   proc     addr    uid  ppid  pgrp  flag stat wmesg   wchan   cmd
68891 e0fb92a0 e11d1000  504 68872 68891 4005806  4                  avu
68872 e0fb7be0 e128c000  504 68740 68872 004086  3    poll c03b25c0 gdb52
68740 e0fb9ac0 e108d000  504 68739 68740 004086  3    wait e0fb9ac0 bash
68739 e0fb7f20 e1276000    0   149   149 000184  3  select c03b25c0 sshd
68645 e0fb7700 e128f000   70 68584 68570 000086  3  sbwait dc68b848 postgres
68644 e0fb9c60 e0fd1000  529 68313 68644 004086  3   ttyin c8c0ae30 psql
68625 e0fb9100 e11d9000   70 68584 68570 000086  3  sbwait dc680508 postgres
68624 db433700 e0f33000    0 68622 68619 4004006  2                  XXX
68622 db432d40 e0f55000    0     1 68619 004086  3    wait db432d40 sh
68589 e0fb88e0 e11f7000   70 68588 68570 000086  3  select c03b25c0 postgres
68588 e0fb9440 e11ce000   70 68584 68570 000086  3  select c03b25c0 postgres
68584 e0fb8c20 e11eb000   70     1 68570 004086  3  select c03b25c0 postgres
68313 e0fb7d80 e127f000  529 68312 68313 004086  3    wait e0fb7d80 bash
68312 db4321e0 e0fa7000    0   149   149 000184  3  select c03b25c0 sshd
66514 e0fb7a40 e1255000  504 66513 66514 004086  3   ttyin c89a8c30 bash
66513 e0fb8400 e1230000    0   149   149 000184  3  select c03b25c0 sshd
 ...

--don

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-stable" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?FE045D4D9F7AED4CBFF1B3B813C8533767660F>