On 14:44 Fri 03 Aug 2007, Stephen Hemminger wrote: > On Fri, 03 Aug 2007 20:33:04 +0900 Tejun Heo <[EMAIL PROTECTED]> wrote: > > >> Devres makes low level drivers simpler, easier to get right and > > >> maintain. Writing new drivers becomes easier too. So, why not? > > >> > > >>> Network devices seem to work fine thanks, and the resource requirements > > >>> are different. If ain't broke, don't fix it. > > >> Care to enlighten me on how the resource requirments are different > > >> from ATA drivers? > > > > > > I was thinking of the hot remove (no mod ref counts) and lingering > > > /sys open issues. ATA drivers use ref counts. > > > > I guess the hot removing is done by severing netdev from the actual > > device, right? I don't see how that affects usage of devres on network > > drivers. Am I missing something? > > The issue is that device may be removed at any time. So you can't rely > on module ref counts to save you. And netdevice structure must still > linger after module is removed, till dev ref count goes to zero.
These patches allow the net_device to linger. The code calls free_netdev on device removal just as before. This is how the net_device is handled on device removal by these patches: +static void devm_free_netdev(struct device *gendev, void *res) +{ + struct net_device *dev = dev_get_drvdata(gendev); + free_netdev(dev); +} > > On a separate note, can you explain lingering /sys open issue to me a > > bit? With recent sysfs changes, sysfs nodes are disconnected > > immediately on deletion. Would that make any difference to netdevs? > > Examples are in Documentation/networking/netdevices.txt Isn't this the same problem as above? The net_device structure must stay around if there are still references to it and it does. Or am I missing something? Thanks, Brandon - To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html