2024-04-29 19:21:51

by Kalle Valo

[permalink] [raw]
Subject: Re: [PATCH v2][next] wifi: wil6210: wmi: Use __counted_by() in struct wmi_set_link_monitor_cmd and avoid -Wfamnae warning

Kees Cook <[email protected]> writes:

> On Mon, Apr 29, 2024 at 08:25:56PM +0300, Kalle Valo wrote:
>
>> Kees Cook <[email protected]> writes:
>>
>> > On Thu, Apr 04, 2024 at 10:12:28AM +0000, Kalle Valo wrote:
>> >
>> >> "Gustavo A. R. Silva" <[email protected]> wrote:
>> >>
>> >> > Prepare for the coming implementation by GCC and Clang of the
>> >> > __counted_by attribute. Flexible array members annotated with
>> >> > __counted_by can have their accesses bounds-checked at run-time
>> >> > via CONFIG_UBSAN_BOUNDS (for array indexing) and CONFIG_FORTIFY_SOURCE
>> >> > (for strcpy/memcpy-family functions).
>> >> >
>> >> > Also, -Wflex-array-member-not-at-end is coming in GCC-14, and we are
>> >> > getting ready to enable it globally.
>> >> >
>> >> > So, use the `DEFINE_FLEX()` helper for an on-stack definition of
>> >> > a flexible structure where the size of the flexible-array member
>> >> > is known at compile-time, and refactor the rest of the code,
>> >> > accordingly.
>> >> >
>> >> > So, with these changes, fix the following warning:
>> >> > drivers/net/wireless/ath/wil6210/wmi.c:4018:49: warning: structure
>> >> > containing a flexible array member is not at the end of another
>> >> > structure [-Wflex-array-member-not-at-end]
>> >> >
>> >> > Link: https://github.com/KSPP/linux/issues/202
>> >> > Signed-off-by: Gustavo A. R. Silva <[email protected]>
>> >> > Reviewed-by: Jeff Johnson <[email protected]>
>> >> > Signed-off-by: Kalle Valo <[email protected]>
>> >>
>> >> Patch applied to ath-next branch of ath.git, thanks.
>> >>
>> >> cbb0697e0ded wifi: wil6210: wmi: Use __counted_by() in struct
>> >> wmi_set_link_monitor_cmd and avoid -Wfamnae warning
>> >
>> > Hi,
>> >
>> > I was just walking through our patch tracker and noticed that I don't
>> > see this patch include in -next yet (as of next-20240429). Is there a
>> > flush of the ath-next queue planned soon? Or did I miss some change?
>>
>> Yeah, wireless-next was pulled last week so most likely we will create
>> ath-next pull request this week.
>>
>> BTW we are planning to move ath.git to a new location, rename branches
>> etc. I think we'll see if we can also setup it so that it can be pulled
>> to linux-next, so that you don't need to ask this every time ;)
>>
>> (Just joking of course, there a lot of benefits from having the tree in
>> linux-next)
>
> Ah-ha! Thanks. Yeah, sorry if I keep asking about that. It's different
> from other trees, so it doesn't stick in my head. :) I should keep
> better notes!

BTW I think all vendor specific wireless driver trees are not pulled to
linux-next: iwlwifi, mt76, rtw (Realtek) and ath. So with all of these it will
take a while before the commit is in linux-next.

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

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


2024-04-29 19:52:59

by Kees Cook

[permalink] [raw]
Subject: Re: [PATCH v2][next] wifi: wil6210: wmi: Use __counted_by() in struct wmi_set_link_monitor_cmd and avoid -Wfamnae warning

On Mon, Apr 29, 2024 at 10:21:32PM +0300, Kalle Valo wrote:
> Kees Cook <[email protected]> writes:
>
> > On Mon, Apr 29, 2024 at 08:25:56PM +0300, Kalle Valo wrote:
> >
> >> Kees Cook <[email protected]> writes:
> >>
> >> > On Thu, Apr 04, 2024 at 10:12:28AM +0000, Kalle Valo wrote:
> >> >
> >> >> "Gustavo A. R. Silva" <[email protected]> wrote:
> >> >>
> >> >> > Prepare for the coming implementation by GCC and Clang of the
> >> >> > __counted_by attribute. Flexible array members annotated with
> >> >> > __counted_by can have their accesses bounds-checked at run-time
> >> >> > via CONFIG_UBSAN_BOUNDS (for array indexing) and CONFIG_FORTIFY_SOURCE
> >> >> > (for strcpy/memcpy-family functions).
> >> >> >
> >> >> > Also, -Wflex-array-member-not-at-end is coming in GCC-14, and we are
> >> >> > getting ready to enable it globally.
> >> >> >
> >> >> > So, use the `DEFINE_FLEX()` helper for an on-stack definition of
> >> >> > a flexible structure where the size of the flexible-array member
> >> >> > is known at compile-time, and refactor the rest of the code,
> >> >> > accordingly.
> >> >> >
> >> >> > So, with these changes, fix the following warning:
> >> >> > drivers/net/wireless/ath/wil6210/wmi.c:4018:49: warning: structure
> >> >> > containing a flexible array member is not at the end of another
> >> >> > structure [-Wflex-array-member-not-at-end]
> >> >> >
> >> >> > Link: https://github.com/KSPP/linux/issues/202
> >> >> > Signed-off-by: Gustavo A. R. Silva <[email protected]>
> >> >> > Reviewed-by: Jeff Johnson <[email protected]>
> >> >> > Signed-off-by: Kalle Valo <[email protected]>
> >> >>
> >> >> Patch applied to ath-next branch of ath.git, thanks.
> >> >>
> >> >> cbb0697e0ded wifi: wil6210: wmi: Use __counted_by() in struct
> >> >> wmi_set_link_monitor_cmd and avoid -Wfamnae warning
> >> >
> >> > Hi,
> >> >
> >> > I was just walking through our patch tracker and noticed that I don't
> >> > see this patch include in -next yet (as of next-20240429). Is there a
> >> > flush of the ath-next queue planned soon? Or did I miss some change?
> >>
> >> Yeah, wireless-next was pulled last week so most likely we will create
> >> ath-next pull request this week.
> >>
> >> BTW we are planning to move ath.git to a new location, rename branches
> >> etc. I think we'll see if we can also setup it so that it can be pulled
> >> to linux-next, so that you don't need to ask this every time ;)
> >>
> >> (Just joking of course, there a lot of benefits from having the tree in
> >> linux-next)
> >
> > Ah-ha! Thanks. Yeah, sorry if I keep asking about that. It's different
> > from other trees, so it doesn't stick in my head. :) I should keep
> > better notes!
>
> BTW I think all vendor specific wireless driver trees are not pulled to
> linux-next: iwlwifi, mt76, rtw (Realtek) and ath. So with all of these it will
> take a while before the commit is in linux-next.

How long is "a while"? And if the latency can be reduced for these, it'd
be nice since it would allow for longer bake-time in -next.

--
Kees Cook