Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 03 Oct 2003 13:17:59 -0400 (EDT)
From:      John Baldwin <jhb@FreeBSD.org>
To:        "M. Warner Losh" <imp@bsdimp.com>
Cc:        julian@elischer.org
Subject:   Re: PERFORCE change 38917 for review
Message-ID:  <XFMail.20031003131759.jhb@FreeBSD.org>
In-Reply-To: <20031003.000052.96921421.imp@bsdimp.com>

next in thread | previous in thread | raw e-mail | index | archive | help

On 03-Oct-2003 M. Warner Losh wrote:
> In message: <20031002022135.GA26666@perrin.nxad.com>
>             Hiten Pandya <hmp@nxad.com> writes:
>:      Does this also include PCI Hotplugging or is this going to be
>:      a separate effort?
> 
> Yes and no.
> 
> We already have removable devices in the tree.  CardBus, PC Card, USB
> and Firewire.  Right now the drivers take liberties and chances and
> there are a number of ugly races that rear their ugly heads.  This is
> an effort to clean that up and make things totally safe in all the
> cases that we can think of, and to document those areas where we
> can't.
> 
> There's no specific plans on my part to implement the hot plug state
> transition and deal with it.  People have raised their hands in the
> past to work on it, but so far no one has made significant progress in
> public view.

BTW, I thought of a locking concern in attach routines this morning.
Basically, as soon as a driver does bus_setup_intr(), it needs to start
using any locks shared with its interrupt handler and the hardware
and driver state need to be able to handle having the handler invoked
when that function is called.  The reason is that the device may be
attached to an interrupt line shared with another device and thus the
other device may generate an interrupt and call the new devices handler
before bus_setup_intr() even returns.  Similarly, locking will be
needed after calls to disk_create(), if_attach(), etc.

-- 

John Baldwin <jhb@FreeBSD.org>  <><  http://www.FreeBSD.org/~jhb/
"Power Users Use the Power to Serve!"  -  http://www.FreeBSD.org/



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