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 <[email protected]>
---
 drivers/net/wireless/mac80211_hwsim.c | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)

diff --git a/drivers/net/wireless/mac80211_hwsim.c 
b/drivers/net/wireless/mac80211_hwsim.c
index e9c92f70b97d..8baf61dea961 100644
--- a/drivers/net/wireless/mac80211_hwsim.c
+++ b/drivers/net/wireless/mac80211_hwsim.c
@@ -2796,8 +2796,13 @@ 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)
+                       pr_debug("mac80211_hwsim: radio index %d already 
present\n",
+                                idx);
+               else
+                       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;
        }
-- 
2.15.1


Reply via email to