diff options
Diffstat (limited to 'net/wireless/core.c')
| -rw-r--r-- | net/wireless/core.c | 8 | 
1 files changed, 7 insertions, 1 deletions
diff --git a/net/wireless/core.c b/net/wireless/core.c index fdde0d98fde1..a6f3cac8c640 100644 --- a/net/wireless/core.c +++ b/net/wireless/core.c @@ -439,6 +439,8 @@ struct wiphy *wiphy_new_nm(const struct cfg80211_ops *ops, int sizeof_priv,  		if (rv)  			goto use_default_name;  	} else { +		int rv; +  use_default_name:  		/* NOTE:  This is *probably* safe w/out holding rtnl because of  		 * the restrictions on phy names.  Probably this call could @@ -446,7 +448,11 @@ use_default_name:  		 * phyX.  But, might should add some locking and check return  		 * value, and use a different name if this one exists?  		 */ -		dev_set_name(&rdev->wiphy.dev, PHY_NAME "%d", rdev->wiphy_idx); +		rv = dev_set_name(&rdev->wiphy.dev, PHY_NAME "%d", rdev->wiphy_idx); +		if (rv < 0) { +			kfree(rdev); +			return NULL; +		}  	}  	INIT_LIST_HEAD(&rdev->wiphy.wdev_list);  | 
