From: Taehee Yoo <[email protected]>
Date: Sun, 21 Jun 2020 13:46:25 +0000

> When an interface is being deleted, "/proc/net/dev_snmp6/<interface name>"
> is deleted.
> The function for this is addrconf_ifdown() in the addrconf_notify() and
> it is called by notification, which is NETDEV_UNREGISTER.
> But, if NETDEV_CHANGEMTU is triggered after NETDEV_UNREGISTER,
> this proc file will be created again.
> This recreated proc file will be deleted by netdev_wati_allrefs().
> Before netdev_wait_allrefs() is called, creating a new HSR interface
> routine can be executed and It tries to create a proc file but it will
> find an un-deleted proc file.
> At this point, it warns about it.
> 
> To avoid this situation, it can use ->dellink() instead of
> ->ndo_uninit() to release resources because ->dellink() is called
> before NETDEV_UNREGISTER.
> So, a proc file will not be recreated.
> 
> Test commands
 ...
> Splat looks like:
 ...
> Reported-by: [email protected]
> Fixes: e0a4b99773d3 ("hsr: use upper/lower device infrastructure")
> Signed-off-by: Taehee Yoo <[email protected]>

Applied and queued up for -stable, thank you.

Reply via email to