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 12b727b..6996dad 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;
        }