mirror of
git://git.openwrt.org/openwrt/openwrt.git
synced 2025-12-24 05:22:10 -05:00
Renaming a netdev-trigger-tracked interface was resulting in an unbalanced dev_hold(). Example: > iw phy phy0 interface add foo type __ap > echo netdev > trigger > echo foo > device_name > ip link set foo name bar > iw dev bar del [ 237.355366] unregister_netdevice: waiting for bar to become free. Usage count = 1 [ 247.435362] unregister_netdevice: waiting for bar to become free. Usage count = 1 [ 257.545366] unregister_netdevice: waiting for bar to become free. Usage count = 1 Above problem was caused by trigger checking a dev->name which obviously changes after renaming an interface. It meant missing all further events including the NETDEV_UNREGISTER which is required for calling dev_put(). This change fixes that by: 1) Comparing device struct *address* for notification-filtering purposes 2) Dropping unneeded NETDEV_CHANGENAME code (no behavior change) Signed-off-by: Rafał Miłecki <rafal@milecki.pl> |
||
|---|---|---|
| .. | ||
| backport-4.9 | ||
| backport-4.14 | ||
| files | ||
| hack-4.9 | ||
| hack-4.14 | ||
| image | ||
| other-files | ||
| pending-4.9 | ||
| pending-4.14 | ||
| config-4.9 | ||
| config-4.14 | ||
| PATCHES | ||