Thread (10 messages) 10 messages, 5 authors, 2021-11-30

Re: [PATCH v5] nl80211: reset regdom when reloading regdb

From: Nathan Chancellor <nathan@kernel.org>
Date: 2021-11-30 18:32:21
Also in: llvm

On Tue, Nov 30, 2021 at 05:50:58PM +0100, Finn Behrens wrote:
quoted
On 30. Nov 2021, at 17:02, Nathan Chancellor [off-list ref] wrote:
On Sat, Nov 27, 2021 at 11:28:53AM +0100, Finn Behrens wrote:
quoted
this reloads the regdom when the regulatory db is reloaded.
Without this patch the user had to change the regulatoy domain to a
different, and then reset it to the one the user is in, to have the new
regulatory db take effect

Signed-off-by: Finn Behrens <redacted>
This patch as commit 1eda919126b4 ("nl80211: reset regdom when reloading
regdb") in -next causes the following clang warning/error:

net/wireless/reg.c:1137:23: error: implicit conversion from enumeration type 'enum nl80211_user_reg_hint_type' to different enumeration type 'enum nl80211_reg_initiator' [-Werror,-Wenum-conversion]
       request->initiator = NL80211_USER_REG_HINT_USER;
                          ~ ^~~~~~~~~~~~~~~~~~~~~~~~~~
1 error generated.

Should that be NL80211_REGDOM_SET_BY_CORE (same value, 0) or something
different?
I think It should have been NL80211_REGDOM_SET_BY_USER, as the reload
flag check is currently implemented in the user hint function. But If
I see it correctly right now. We could remove the reload flag, and
NL80211_REGDOM_SET_BY_CORE should work as well. As the
reg_query_database function is called unconditionally there.
If you tested the current version of your patch and it worked fine, then
it seems like you should just revert the addition of the reload flag and
change

request->initiator = NL80211_USER_REG_HINT_USER;

to

request->initiator = NL80211_REGDOM_SET_BY_CORE;

given that is what is happening right now. The warning is basically
pointing out that reg_process_hint() is calling reg_process_hint_core()
instead of reg_process_hint_user() because NL80211_USER_REG_HINT_USER =
NL80211_REGDOM_SET_BY_CORE = 0. Hopefully that makes sense.

Cheers,
Nathan
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help