On 2023-11-03 16:42:18 [-0400], Alan Stern wrote: > > I see. Don't over complicate or "correct" things here. What should work > > is that the removal callback can be called at any time and things > > continue work. That means it will purge all queues, cancel all requests, > > timers, whatever and free all resources associated with the driver/ > > device. > > The driver _does_ work under those circumstances -- provided the > hardware is still present and accessible. In that case I don't see a problem. > > If it comes to PCI-hotplug you have to have a so called PCI-hotplug > > slot. This "slot" will let the OS know if the hardware has been removed > > or added. If you don't have such a thing you have to maintain the state > > yourself by using the "remove" and "rescan" sysfs files of the PCI slot. > > > > I'm not aware of any requirement for a PCI-driver to check if its device > > has been removed. > > That's the problem: The driver doesn't really support PCI-hotplug. > The code that Meng Li wants to change was sort of a half-baked way to > add such support. This sounds half-baked. Just remove the device from sysfs and then physically plug the card. It is going to end in mess if every driver gets some "hotplug" support. > Alan Stern Sebastian