On Mon, Jan 20, 2014 at 11:14:57PM +0000, Mark Brown wrote: > On Mon, Jan 20, 2014 at 09:43:05PM +0000, Alan Cox wrote: > > If the hardware isn't present then the driver shouldn't even register > > with the tty layer in the first place so it doesn't make any resource > > differeneces either for properly written code. > > Right, that's not the idiom that has been followed by any of serial > drivers though so needs fixing too. It's not followed by serial drivers because it gets f*scking complicated to do it that way. In order to do it that way, what we need to do is: 1. On the first device probe, register the UART driver. 2. On subsequent device probes, don't register the UART driver because it's already registered. 3. When devices are removed, do nothing until the last device. 4. When the last device is removed, unregister the UART driver. The first bit is easy... but we need to add locks to every serial driver to prevent two probes operating concurrently... -- FTTC broadband for 0.8mile line: 5.8Mbps down 500kbps up. Estimation in database were 13.1 to 19Mbit for a good line, about 7.5+ for a bad. Estimate before purchase was "up to 13.2Mbit". -- To unsubscribe from this list: send the line "unsubscribe linux-serial" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html