mac80211_hwsim: add nl_err_msg in hwsim_new_radio in netlink case
authorBenjamin Beichler <benjamin.beichler@uni-rostock.de>
Mon, 22 Jan 2018 17:04:36 +0000 (18:04 +0100)
committerJohannes Berg <johannes.berg@intel.com>
Wed, 31 Jan 2018 11:46:39 +0000 (12:46 +0100)
Add a NL_ERR_MSG in case of creating a radio by a netlink message to give
clear output to the creating process instead of creating only a debug
message in kernel log. The same function is used for the creation while
module load, so keep the old message, although it should never be thrown
while load, because the module controls all mac addresses.

Signed-off-by: Benjamin Beichler <benjamin.beichler@uni-rostock.de>
[remove message, add missing braces]
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
drivers/net/wireless/mac80211_hwsim.c

index 12b727ba9dec6b973298743404d00e1da0f7aa4a..6996dad24e7110f15c9dc952bca4983ecea074ff 100644 (file)
@@ -2797,8 +2797,11 @@ static int mac80211_hwsim_new_radio(struct genl_info *info,
        err = rhashtable_insert_fast(&hwsim_radios_rht, &data->rht,
                                     hwsim_rht_params);
        if (err < 0) {
-               pr_debug("mac80211_hwsim: radio index %d already present\n",
-                        idx);
+               if (info) {
+                       GENL_SET_ERR_MSG(info, "perm addr already present");
+                       NL_SET_BAD_ATTR(info->extack,
+                                       info->attrs[HWSIM_ATTR_PERM_ADDR]);
+               }
                spin_unlock_bh(&hwsim_radio_lock);
                goto failed_final_insert;
        }