2024-02-05 21:33:56

by Nathan Chancellor

[permalink] [raw]
Subject: [PATCH] wifi: ath12k: Fix uninitialized use of ret in ath12k_mac_allocate()

Clang warns (or errors with CONFIG_WERROR=y):

drivers/net/wireless/ath/ath12k/mac.c:8060:9: error: variable 'ret' is uninitialized when used here [-Werror,-Wuninitialized]
8060 | return ret;
| ^~~
drivers/net/wireless/ath/ath12k/mac.c:8022:9: note: initialize the variable 'ret' to silence this warning
8022 | int ret, i, j;
| ^
| = 0
1 error generated.

Commit 6db6e70a17f6 ("wifi: ath12k: Introduce the container for mac80211
hw") added a completely uninitialized use of ret. Prior to that change,
-ENOMEM was returned to the callers of ath12k_mac_allocate() whenever
ath12k_mac_hw_allocate() failed. Assign that value to ret to make sure
it is always initialized when used and clear up the warning.

Closes: https://github.com/ClangBuiltLinux/linux/issues/1989i
Fixes: 6db6e70a17f6 ("wifi: ath12k: Introduce the container for mac80211 hw")
Signed-off-by: Nathan Chancellor <[email protected]>
---
drivers/net/wireless/ath/ath12k/mac.c | 1 +
1 file changed, 1 insertion(+)

diff --git a/drivers/net/wireless/ath/ath12k/mac.c b/drivers/net/wireless/ath/ath12k/mac.c
index fb5bf500ed87..4b0521e8fb26 100644
--- a/drivers/net/wireless/ath/ath12k/mac.c
+++ b/drivers/net/wireless/ath/ath12k/mac.c
@@ -8038,6 +8038,7 @@ int ath12k_mac_allocate(struct ath12k_base *ab)
if (!ah) {
ath12k_warn(ab, "failed to allocate mac80211 hw device for hw_idx %d\n",
i);
+ ret = -ENOMEM;
goto err;
}


---
base-commit: b82fb7ef690bd929b88d9aab1d191ff502ed9029
change-id: 20240205-ath12k-mac-wuninitialized-1bc5faf17d29

Best regards,
--
Nathan Chancellor <[email protected]>



2024-02-05 22:03:47

by Jeff Johnson

[permalink] [raw]
Subject: Re: [PATCH] wifi: ath12k: Fix uninitialized use of ret in ath12k_mac_allocate()

On 2/5/2024 11:49 AM, Nathan Chancellor wrote:
> Clang warns (or errors with CONFIG_WERROR=y):
>
> drivers/net/wireless/ath/ath12k/mac.c:8060:9: error: variable 'ret' is uninitialized when used here [-Werror,-Wuninitialized]
> 8060 | return ret;
> | ^~~
> drivers/net/wireless/ath/ath12k/mac.c:8022:9: note: initialize the variable 'ret' to silence this warning
> 8022 | int ret, i, j;
> | ^
> | = 0
> 1 error generated.
>
> Commit 6db6e70a17f6 ("wifi: ath12k: Introduce the container for mac80211
> hw") added a completely uninitialized use of ret. Prior to that change,
> -ENOMEM was returned to the callers of ath12k_mac_allocate() whenever
> ath12k_mac_hw_allocate() failed. Assign that value to ret to make sure
> it is always initialized when used and clear up the warning.
>
> Closes: https://github.com/ClangBuiltLinux/linux/issues/1989i
> Fixes: 6db6e70a17f6 ("wifi: ath12k: Introduce the container for mac80211 hw")
> Signed-off-by: Nathan Chancellor <[email protected]>
Acked-by: Jeff Johnson <[email protected]>


2024-02-07 15:08:25

by Kalle Valo

[permalink] [raw]
Subject: Re: [PATCH] wifi: ath12k: Fix uninitialized use of ret in ath12k_mac_allocate()

Nathan Chancellor <[email protected]> wrote:

> Clang warns (or errors with CONFIG_WERROR=y):
>
> drivers/net/wireless/ath/ath12k/mac.c:8060:9: error: variable 'ret' is uninitialized when used here [-Werror,-Wuninitialized]
> 8060 | return ret;
> | ^~~
> drivers/net/wireless/ath/ath12k/mac.c:8022:9: note: initialize the variable 'ret' to silence this warning
> 8022 | int ret, i, j;
> | ^
> | = 0
> 1 error generated.
>
> Commit 6db6e70a17f6 ("wifi: ath12k: Introduce the container for mac80211
> hw") added a completely uninitialized use of ret. Prior to that change,
> -ENOMEM was returned to the callers of ath12k_mac_allocate() whenever
> ath12k_mac_hw_allocate() failed. Assign that value to ret to make sure
> it is always initialized when used and clear up the warning.
>
> Closes: https://github.com/ClangBuiltLinux/linux/issues/1989i
> Fixes: 6db6e70a17f6 ("wifi: ath12k: Introduce the container for mac80211 hw")
> Signed-off-by: Nathan Chancellor <[email protected]>
> Acked-by: Jeff Johnson <[email protected]>
> Signed-off-by: Kalle Valo <[email protected]>

Patch applied to ath-next branch of ath.git, thanks.

04edb5dc68f4 wifi: ath12k: Fix uninitialized use of ret in ath12k_mac_allocate()

--
https://patchwork.kernel.org/project/linux-wireless/patch/[email protected]/

https://wireless.wiki.kernel.org/en/developers/documentation/submittingpatches


2024-02-21 18:00:33

by Nathan Chancellor

[permalink] [raw]
Subject: Re: [PATCH] wifi: ath12k: Fix uninitialized use of ret in ath12k_mac_allocate()

Hi Kalle,

On Wed, Feb 07, 2024 at 03:08:14PM +0000, Kalle Valo wrote:
> Nathan Chancellor <[email protected]> wrote:
>
> > Clang warns (or errors with CONFIG_WERROR=y):
> >
> > drivers/net/wireless/ath/ath12k/mac.c:8060:9: error: variable 'ret' is uninitialized when used here [-Werror,-Wuninitialized]
> > 8060 | return ret;
> > | ^~~
> > drivers/net/wireless/ath/ath12k/mac.c:8022:9: note: initialize the variable 'ret' to silence this warning
> > 8022 | int ret, i, j;
> > | ^
> > | = 0
> > 1 error generated.
> >
> > Commit 6db6e70a17f6 ("wifi: ath12k: Introduce the container for mac80211
> > hw") added a completely uninitialized use of ret. Prior to that change,
> > -ENOMEM was returned to the callers of ath12k_mac_allocate() whenever
> > ath12k_mac_hw_allocate() failed. Assign that value to ret to make sure
> > it is always initialized when used and clear up the warning.
> >
> > Closes: https://github.com/ClangBuiltLinux/linux/issues/1989i
> > Fixes: 6db6e70a17f6 ("wifi: ath12k: Introduce the container for mac80211 hw")
> > Signed-off-by: Nathan Chancellor <[email protected]>
> > Acked-by: Jeff Johnson <[email protected]>
> > Signed-off-by: Kalle Valo <[email protected]>
>
> Patch applied to ath-next branch of ath.git, thanks.
>
> 04edb5dc68f4 wifi: ath12k: Fix uninitialized use of ret in ath12k_mac_allocate()

It doesn't seem like this tree or branch flows into -next on its own, so
this patch is not present in and the build still breaks on
next-20240221. Can this be fixed so that this warning stops breaking our
builds?

Cheers,
Nathan

2024-02-21 18:21:10

by Kalle Valo

[permalink] [raw]
Subject: Re: [PATCH] wifi: ath12k: Fix uninitialized use of ret in ath12k_mac_allocate()

Nathan Chancellor <[email protected]> writes:

> Hi Kalle,
>
> On Wed, Feb 07, 2024 at 03:08:14PM +0000, Kalle Valo wrote:
>> Nathan Chancellor <[email protected]> wrote:
>>
>> > Clang warns (or errors with CONFIG_WERROR=y):
>> >
>> > drivers/net/wireless/ath/ath12k/mac.c:8060:9: error: variable 'ret' is uninitialized when used here [-Werror,-Wuninitialized]
>> > 8060 | return ret;
>> > | ^~~
>> > drivers/net/wireless/ath/ath12k/mac.c:8022:9: note: initialize
>> > the variable 'ret' to silence this warning
>> > 8022 | int ret, i, j;
>> > | ^
>> > | = 0
>> > 1 error generated.
>> >
>> > Commit 6db6e70a17f6 ("wifi: ath12k: Introduce the container for mac80211
>> > hw") added a completely uninitialized use of ret. Prior to that change,
>> > -ENOMEM was returned to the callers of ath12k_mac_allocate() whenever
>> > ath12k_mac_hw_allocate() failed. Assign that value to ret to make sure
>> > it is always initialized when used and clear up the warning.
>> >
>> > Closes: https://github.com/ClangBuiltLinux/linux/issues/1989i
>> > Fixes: 6db6e70a17f6 ("wifi: ath12k: Introduce the container for mac80211 hw")
>> > Signed-off-by: Nathan Chancellor <[email protected]>
>> > Acked-by: Jeff Johnson <[email protected]>
>> > Signed-off-by: Kalle Valo <[email protected]>
>>
>> Patch applied to ath-next branch of ath.git, thanks.
>>
>> 04edb5dc68f4 wifi: ath12k: Fix uninitialized use of ret in ath12k_mac_allocate()
>
> It doesn't seem like this tree or branch flows into -next on its own, so
> this patch is not present in and the build still breaks on
> next-20240221. Can this be fixed so that this warning stops breaking our
> builds?

Yeah, ath-next is not pulled to linux-next because of "reasons". We are
planning to send ath-next pull request to wireless-next in the next few
days.

--
https://patchwork.kernel.org/project/linux-wireless/list/

https://wireless.wiki.kernel.org/en/developers/documentation/submittingpatches