From: Benjamin Berg Date: Wed, 20 Sep 2023 18:25:28 +0000 (+0300) Subject: wifi: mac80211: report per-link error during association X-Git-Tag: v6.7-rc1~160^2~207^2~47 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=4aa064484504fba48b3c71321940893ca7cebc84;p=thirdparty%2Fkernel%2Flinux.git wifi: mac80211: report per-link error during association With this cfg80211 can report the link that caused the error to userspace which is then able to react to it by e.g. removing the link from the association and retrying. Signed-off-by: Benjamin Berg Signed-off-by: Gregory Greenman Link: https://lore.kernel.org/r/20230920211508.275fc7f5c426.I8086c0fdbbf92537d6a8b8e80b33387fcfd5553d@changeid Signed-off-by: Johannes Berg --- diff --git a/net/mac80211/mlme.c b/net/mac80211/mlme.c index 663ea7430b739..509ddfd99cbfb 100644 --- a/net/mac80211/mlme.c +++ b/net/mac80211/mlme.c @@ -7866,8 +7866,10 @@ int ieee80211_mgd_assoc(struct ieee80211_sub_if_data *sdata, /* only calculate the flags, hence link == NULL */ err = ieee80211_prep_channel(sdata, NULL, assoc_data->link[i].bss, &assoc_data->link[i].conn_flags); - if (err) + if (err) { + req->links[i].error = err; goto err_clear; + } } /* needed for transmitting the assoc frames properly */