From: Simon Horman <horms@kernel.org>
To: michael.nemanov@ti.com
Cc: Sabeeh Khan <sabeeh-khan@ti.com>, Kalle Valo <kvalo@kernel.org>,
Johannes Berg <johannes.berg@intel.com>,
"David S . Miller" <davem@davemloft.net>,
Eric Dumazet <edumazet@google.com>,
Jakub Kicinski <kuba@kernel.org>, Paolo Abeni <pabeni@redhat.com>,
Rob Herring <robh@kernel.org>,
Krzysztof Kozlowski <krzk+dt@kernel.org>,
Conor Dooley <conor+dt@kernel.org>,
linux-wireless@vger.kernel.org, netdev@vger.kernel.org,
devicetree@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH v2 11/17] wifi: cc33xx: Add init.c, init.h
Date: Sat, 15 Jun 2024 09:51:33 +0100 [thread overview]
Message-ID: <20240615085133.GA234885@kernel.org> (raw)
In-Reply-To: <20240609182102.2950457-12-michael.nemanov@ti.com>
On Sun, Jun 09, 2024 at 09:20:56PM +0300, michael.nemanov@ti.com wrote:
> From: Michael Nemanov <Michael.Nemanov@ti.com>
>
> High-level init code for new vifs
> ---
> drivers/net/wireless/ti/cc33xx/init.c | 236 ++++++++++++++++++++++++++
> drivers/net/wireless/ti/cc33xx/init.h | 15 ++
> 2 files changed, 251 insertions(+)
> create mode 100644 drivers/net/wireless/ti/cc33xx/init.c
> create mode 100644 drivers/net/wireless/ti/cc33xx/init.h
>
> diff --git a/drivers/net/wireless/ti/cc33xx/init.c b/drivers/net/wireless/ti/cc33xx/init.c
...
> +int cc33xx_init_vif_specific(struct cc33xx *cc, struct ieee80211_vif *vif)
> +{
> + struct cc33xx_vif *wlvif = cc33xx_vif_to_data(vif);
> + struct conf_tx_ac_category *conf_ac;
> + struct conf_tx_ac_category ac_conf[4];
> + struct conf_tx_tid tid_conf[8];
> + struct conf_tx_settings *tx_settings = &cc->conf.host_conf.tx;
> + struct conf_tx_ac_category *p_wl_host_ac_conf = &tx_settings->ac_conf0;
> + struct conf_tx_tid *p_wl_host_tid_conf = &tx_settings->tid_conf0;
> + bool is_ap = (wlvif->bss_type == BSS_TYPE_AP_BSS);
> + u8 ps_scheme = cc->conf.mac.ps_scheme;
> + int ret, i;
...
> + /* Default TID/AC configuration */
> + WARN_ON(tx_settings->tid_conf_count != tx_settings->ac_conf_count);
> + memcpy(ac_conf, p_wl_host_ac_conf, 4 * sizeof(struct conf_tx_ac_category));
> + memcpy(tid_conf, p_wl_host_tid_conf, 8 * sizeof(struct conf_tx_tid));
Hi Michael,
allmodconfig builds on x86_64 with gcc-13 flag the following:
In file included from ./include/linux/string.h:374,
from ./include/linux/bitmap.h:13,
from ./include/linux/cpumask.h:13,
from ./arch/x86/include/asm/paravirt.h:21,
from ./arch/x86/include/asm/irqflags.h:60,
from ./include/linux/irqflags.h:18,
from ./include/linux/spinlock.h:59,
from ./include/linux/mmzone.h:8,
from ./include/linux/gfp.h:7,
from ./include/linux/firmware.h:8,
from drivers/net/wireless/ti/cc33xx/init.c:6:
In function 'fortify_memcpy_chk',
inlined from 'cc33xx_init_vif_specific' at drivers/net/wireless/ti/cc33xx/init.c:156:2:
./include/linux/fortify-string.h:580:25: warning: call to '__read_overflow2_field' declared with attribute warning: detected read beyond size of field (2nd parameter); maybe use struct_group()? [-Wattribute-warning]
580 | __read_overflow2_field(q_size_field, size);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In function 'fortify_memcpy_chk',
inlined from 'cc33xx_init_vif_specific' at drivers/net/wireless/ti/cc33xx/init.c:157:2:
./include/linux/fortify-string.h:580:25: warning: call to '__read_overflow2_field' declared with attribute warning: detected read beyond size of field (2nd parameter); maybe use struct_group()? [-Wattribute-warning]
580 | __read_overflow2_field(q_size_field, size);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
CC [M] drivers/net/wireless/ti/cc33xx/rx.o
I believe that this is because the destination for each of the two memcpy()
calls immediately above is too narrow - 1 structure wide instead of 4 or 8.
I think this can be resolved by either using:
1. struct_group in .../cc33xx/conf.h:struct conf_tx_settings
to wrap ac_conf0 ... ac_conf3, and separately tid_conf0 ... tid_conf7.
2. Using arrays for ac_conf and tid_conf in
.../cc33xx/conf.h:struct conf_tx_settings, in which case perhaps
.../wlcore/conf.h:struct conf_tx_settings can be reused somehow
(I did not check closely)?
Similar errors are flagged elsewhere in this series.
Please take a look at allmodconfig builds and make sure
no warnings are introduced.
Lastly, more related to the series as a whole than this patch in
particular, please consider running checkpatch.pl --codespell
Thanks!
...
next prev parent reply other threads:[~2024-06-15 8:51 UTC|newest]
Thread overview: 25+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-06-09 18:20 [PATCH v2 00/17] wifi: cc33xx: Add driver for new TI CC33xx wireless device family michael.nemanov
2024-06-09 18:20 ` [PATCH v2 01/17] wifi: cc33xx: Add cc33xx.h, cc33xx_i.h michael.nemanov
2024-06-09 18:20 ` [PATCH v2 02/17] wifi: cc33xx: Add debug.h michael.nemanov
2024-06-09 18:20 ` [PATCH v2 03/17] wifi: cc33xx: Add sdio.c, io.c, io.h michael.nemanov
2024-06-09 18:20 ` [PATCH v2 04/17] wifi: cc33xx: Add cmd.c, cmd.h michael.nemanov
2024-06-09 18:20 ` [PATCH v2 05/17] wifi: cc33xx: Add acx.c, acx.h michael.nemanov
2024-06-09 18:20 ` [PATCH v2 06/17] wifi: cc33xx: Add event.c, event.h michael.nemanov
2024-06-09 18:20 ` [PATCH v2 07/17] wifi: cc33xx: Add boot.c, boot.h michael.nemanov
2024-06-09 18:20 ` [PATCH v2 08/17] wifi: cc33xx: Add main.c michael.nemanov
2024-06-09 18:20 ` [PATCH v2 09/17] wifi: cc33xx: Add rx.c, rx.h michael.nemanov
2024-06-09 18:20 ` [PATCH v2 10/17] wifi: cc33xx: Add tx.c, tx.h michael.nemanov
2024-06-09 18:20 ` [PATCH v2 11/17] wifi: cc33xx: Add init.c, init.h michael.nemanov
2024-06-15 8:51 ` Simon Horman [this message]
2024-06-20 8:40 ` Nemanov, Michael
2024-06-20 16:30 ` Simon Horman
2024-06-20 16:52 ` Nemanov, Michael
2024-06-09 18:20 ` [PATCH v2 12/17] wifi: cc33xx: Add scan.c, scan.h michael.nemanov
2024-06-09 18:20 ` [PATCH v2 13/17] wifi: cc33xx: Add conf.h michael.nemanov
2024-06-09 18:20 ` [PATCH v2 14/17] wifi: cc33xx: Add ps.c, ps.h michael.nemanov
2024-06-09 18:21 ` [PATCH v2 15/17] wifi: cc33xx: Add testmode.c, testmode.h michael.nemanov
2024-06-09 18:21 ` [PATCH v2 16/17] wifi: cc33xx: Add Kconfig, Makefile Integrate cc33xx into wireless/ti folder michael.nemanov
2024-06-09 18:21 ` [PATCH v2 17/17] dt-bindings: net: wireless: cc33xx: Add ti,cc33xx.yaml michael.nemanov
2024-06-10 8:16 ` Krzysztof Kozlowski
2024-06-10 8:17 ` Krzysztof Kozlowski
2024-06-13 7:39 ` Nemanov, Michael
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20240615085133.GA234885@kernel.org \
--to=horms@kernel.org \
--cc=conor+dt@kernel.org \
--cc=davem@davemloft.net \
--cc=devicetree@vger.kernel.org \
--cc=edumazet@google.com \
--cc=johannes.berg@intel.com \
--cc=krzk+dt@kernel.org \
--cc=kuba@kernel.org \
--cc=kvalo@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-wireless@vger.kernel.org \
--cc=michael.nemanov@ti.com \
--cc=netdev@vger.kernel.org \
--cc=pabeni@redhat.com \
--cc=robh@kernel.org \
--cc=sabeeh-khan@ti.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).