diff options
Diffstat (limited to 'net/core/net-sysfs.c')
| -rw-r--r-- | net/core/net-sysfs.c | 4 | 
1 files changed, 3 insertions, 1 deletions
diff --git a/net/core/net-sysfs.c b/net/core/net-sysfs.c index 6ac29a46e23e..484f58750eba 100644 --- a/net/core/net-sysfs.c +++ b/net/core/net-sysfs.c @@ -77,7 +77,9 @@ static ssize_t netdev_store(struct device *dev, struct device_attribute *attr,  	if (endp == buf)  		goto err; -	rtnl_lock(); +	if (!rtnl_trylock()) +		return -ERESTARTSYS; +  	if (dev_isalive(net)) {  		if ((ret = (*set)(net, new)) == 0)  			ret = len;  |