On Fri, Apr 12, 2019 at 06:03:27AM -0700, Eric Dumazet wrote:
On 04/12/2019 01:36 PM, Wang Hai wrote:The second patch is a reincarnation of the first version of the fix which has
When registering struct net_device, it will call
register_netdevice ->
netdev_register_kobject ->
device_initialize(dev);
dev_set_name(dev, "%s", ndev->name)
device_add(dev)
register_queue_kobjects(ndev)
In netdev_register_kobject(), if device_add(dev) or
register_queue_kobjects(ndev) failed. Register_netdevice()
will return error, causing netdev_freemem(ndev) to be
called to free net_device, however put_device(&dev->dev)->..->
kobject_cleanup() won't be called, resulting in a memory leak
which is alloced by dev_set_name()
Having two patches with exact same title is rather confusing for bug trackers.
Instead of revert + another_patch, why not just send a cumulative fix ?
been discussed as not a correct approach. But revert should be applied sooner
as the original commit brought a regression.