On Mon, Nov 30, 2020 at 12:21:29PM -0800, Stephen Hemminger wrote: > if device is in a private list (in bond device), the way to handle > this is to use dev_hold() to keep a ref count.
Correct, dev_hold is a tool that can also be used. But it is a tool that does not solve the general problem - only particular ones. See the other interesting callers of dev_get_stats in parisc, appldata, net_failover. We can't ignore that RTNL is used for write-side locking forever.