Please sign in to comment.
tun: call dev_get_valid_name() before register_netdevice()
register_netdevice() could fail early when we have an invalid dev name, in which case ->ndo_uninit() is not called. For tun device, this is a problem because a timer etc. are already initialized and it expects ->ndo_uninit() to clean them up. We could move these initializations into a ->ndo_init() so that register_netdevice() knows better, however this is still complicated due to the logic in tun_detach(). Therefore, I choose to just call dev_get_valid_name() before register_netdevice(), which is quicker and much easier to audit. And for this specific case, it is already enough. Fixes: 96442e4 ("tuntap: choose the txq based on rxq") Reported-by: Dmitry Alexeev <firstname.lastname@example.org> Cc: Jason Wang <email@example.com> Cc: "Michael S. Tsirkin" <firstname.lastname@example.org> Signed-off-by: Cong Wang <email@example.com> Signed-off-by: David S. Miller <firstname.lastname@example.org>
- Loading branch information...
Showing with 9 additions and 3 deletions.