diff options
Diffstat (limited to 'package/mac80211/patches/417-cfg80211-fix-rename.patch')
-rw-r--r-- | package/mac80211/patches/417-cfg80211-fix-rename.patch | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/package/mac80211/patches/417-cfg80211-fix-rename.patch b/package/mac80211/patches/417-cfg80211-fix-rename.patch new file mode 100644 index 0000000000..3cfab61325 --- /dev/null +++ b/package/mac80211/patches/417-cfg80211-fix-rename.patch @@ -0,0 +1,32 @@ +Subject: cfg80211: fix debugfs error handling + +If something goes wrong creating the debugfs dir or when +debugfs is not compiled in, the current code might lead to +trouble; make it more robust. + +Signed-off-by: Johannes Berg <johannes@sipsolutions.net> +--- + net/wireless/core.c | 5 ++++- + 1 file changed, 4 insertions(+), 1 deletion(-) + +--- everything.orig/net/wireless/core.c 2008-10-08 10:13:49.000000000 +0200 ++++ everything/net/wireless/core.c 2008-10-08 10:19:10.000000000 +0200 +@@ -185,7 +185,8 @@ int cfg80211_dev_rename(struct cfg80211_ + if (result) + goto out_unlock; + +- if (!debugfs_rename(rdev->wiphy.debugfsdir->d_parent, ++ if (rdev->wiphy.debugfsdir && ++ !debugfs_rename(rdev->wiphy.debugfsdir->d_parent, + rdev->wiphy.debugfsdir, + rdev->wiphy.debugfsdir->d_parent, + newname)) +@@ -318,6 +319,8 @@ int wiphy_register(struct wiphy *wiphy) + drv->wiphy.debugfsdir = + debugfs_create_dir(wiphy_name(&drv->wiphy), + ieee80211_debugfs_dir); ++ if (IS_ERR(drv->wiphy.debugfsdir)) ++ drv->wiphy.debugfsdir = NULL; + + res = 0; + out_unlock: |