Subject: Re: crash from ohci detach
To: None <current-users@netbsd.org>
From: Christos Zoulas <christos@astron.com>
List: current-users
Date: 01/04/2008 02:47:50
In article <20080103233127.6f423e16@cs.columbia.edu>,
Steven M. Bellovin <smb@cs.columbia.edu> wrote:
>-=-=-=-=-=-
>
>On Thu, 3 Jan 2008 10:39:35 -0500
>"Steven M. Bellovin" <smb@cs.columbia.edu> wrote:
>
>> On Thu, 3 Jan 2008 00:32:24 +0100
>> Joerg Sonnenberger <joerg@britannica.bec.de> wrote:
>>
>> > On Wed, Jan 02, 2008 at 06:09:15PM -0500, Steven M. Bellovin wrote:
>> > > Eyeballing the panic, it says "ohci_intr:... bad address" followed
>> > > by a uvm_fault. These are both consistent with a bad PTE...
>> >
>> > Check if the interrupt handler is called after the memory mapped IO
>> > has been removed.
>> >
>> My tentative answer is that uhub.c and usb.c called pmf_register but
>> not pmf_deregister. Preliminary tests suggest that adding those calls
>> to the detach routines solve the problem but I want to test more first
>> -- shortly after a series of attach/detach cycles, my system crashed
>> with 'list head mismatch'.
>>
>No, my patch didn't fix the problem...
>
>That said, I think the attached patches should be committed
>nevertheless. Comments?
Yes, if we call pmf_register we should also call pmf_deregister.
christos