From owner-freebsd-scsi Wed Sep 18 6: 1:32 2002 Delivered-To: freebsd-scsi@freebsd.org Received: from mx1.FreeBSD.org (mx1.FreeBSD.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 149E837B401; Wed, 18 Sep 2002 06:01:31 -0700 (PDT) Received: from mailman.zeta.org.au (mailman.zeta.org.au [203.26.10.16]) by mx1.FreeBSD.org (Postfix) with ESMTP id E84AE43E7B; Wed, 18 Sep 2002 06:01:29 -0700 (PDT) (envelope-from bde@zeta.org.au) Received: from bde.zeta.org.au (bde.zeta.org.au [203.2.228.102]) by mailman.zeta.org.au (8.9.3/8.8.7) with ESMTP id WAA19071; Wed, 18 Sep 2002 22:58:14 +1000 Date: Wed, 18 Sep 2002 23:06:46 +1000 (EST) From: Bruce Evans X-X-Sender: bde@gamplex.bde.org To: marius@alchemy.franken.de Cc: freebsd-current@FreeBSD.ORG, Subject: Re: page fault while in kernel mode, cam related ? In-Reply-To: <20020918025349.C96711@newtrinity.default-network.net> Message-ID: <20020918225155.X15503-100000@gamplex.bde.org> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-freebsd-scsi@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.org On Wed, 18 Sep 2002 marius@alchemy.franken.de wrote: > btw, this box is connected via a serial console at 9600 bps and while typing > at the ddb-prompt it swallowed most characters, i.e. i had to type single > characters up to four times. That and the "Context switches not allowed in the debugger." message are just bugs in ddb. Interrupts are not enabled on all entries to ddb; in particular, they are not disabled when ddb is entered from trap_fatal(), unlike when ddb is entered from panic() (trap_fatal() calls ddb before panicing). Not disabling interrupts on entry to ddb is an old bug, but it is much more serious under -current since the kernel wants to switch contexts to handle some types of interrupts and it makes a mess attempting to do so. The characters are swallowed by the sio interrupt handler competing with the input polling loop. The sio interrupt handler uses fast interrupts so it can be reached without a context switch, and it _is_ reached since interrupts are enabled. Bruce To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-scsi" in the body of the message