From mboxrd@z Thu Jan 1 00:00:00 1970 From: Andrew Morton Date: Wed, 10 Jan 2001 10:58:00 +0000 Subject: Re: hotplug TTD Message-Id: List-Id: References: In-Reply-To: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: linux-hotplug@vger.kernel.org David Brownell wrote: > > - Are those network API changes a 2.4.1 issue -- replacing > init_etherdev() with prepare_etherdev()/withdraw_netdev() ? > It was my understanding they were needed to cleanly do > network hotplugging. No, they're not likely to be a problem. The unpopular dev_probe_lock() protects us for Cardbus and PCI devices. A `sleep 1' prior to running `ifconfig up' will pretty well avoid any problems. Probably unnecessary though. > I think that all USB devices other than some of the funkier HID > devices should be ready to hotplug at this time ... the main win > from that ABI change was simpler handling for usb-storage, but we > got some destabilization too. > > Second, there are various types of related functionality to be > developed. Addressing the "can't hotplug during boot" issue > (something kudzu-like to scan /proc/bus/{usb,pci}/*/* and create > hotplug events). Some sort of generic analogue to "cardctl eject" > would be good. And as Miles noted, "pcmcia_cs" is a degenerate > case of (generic) hotplug ... mm.. For PCI isn't it simply a matter of parsing /proc/bus/pci/*/* (or lspci output) to determine all the devices, then synthesising hotplug events for them? Now, there are a number of bells-n-whistles which could be added here. For example, people get irritated when they put their network cards into different slots and eth0 and eth1 get swapped around. We could fix this with some constraints, or a manual override before the automatic hotplug synthesis. This is just one requirement - there are surely many others. 'fraid I haven't started to get my head around it yet. > There's also device/driver specific initialization that we should > understand better. We know how to ensure that a USB controller > (on any PCI bus) is cleanly initted. I don't think we know how > to do that for a disk drive (start with SCSI and generalize) or > printer. err, yes. Plus if you run `/sbin/hotplug pci' five times back-to-back for five devices, you'll cause a great storm of initialisation activity, concurrent execution of modprobe and all sorts of things. Kernels will explode, I promise :) This is going to be complex. We do need to bring the devices up sequentially and methodically. - _______________________________________________ Linux-hotplug-devel mailing list Linux-hotplug-devel@lists.sourceforge.net http://lists.sourceforge.net/lists/listinfo/linux-hotplug-devel