Message ID | d45a3acc0911241716i7bf218c4y71c75d9841695dfe@mail.gmail.com |
---|---|
State | Accepted, archived |
Delegated to: | David Miller |
Headers | show |
--- a/net/x25/x25_route.c 2009-11-25 09:30:52.003038597 +1100 +++ b/net/x25/x25_route.c 2009-11-25 09:33:37.627093701 +1100 @@ -136,8 +136,10 @@ struct net_device *x25_dev_get(char *dev #if defined(CONFIG_LLC) || defined(CONFIG_LLC_MODULE) && dev->type != ARPHRD_ETHER #endif - ))) + ))){ dev_put(dev); + dev = NULL; + } return dev; }
Calls to x25_dev_get check for dev = NULL which was not set. It allowed x25 to set routes and ioctls on down interfaces. This caused oopses and refcnt problems on device_unregister. Signed-off-by: Andrew Hendry <andrew.hendry@gmail.com> -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html