Re: [REGRESSION] stable-rc/linux-6.12.y: (build) variable 'val' is uninitialized when passed as a const pointer arg...
Greg Kroah-Hartman <[email protected]> Thu, 27 Nov 2025 14:22:46 +0100
| Newsgroups | dev.linux.lists.kernelci,dev.linux.lists.linux-staging,org.kernel.vger.stable |
|---|---|
| Message-ID | <2025112730-sterilize-roaming-5c71@gregkh> |
On Mon, Nov 24, 2025 at 03:40:46PM -0700, Nathan Chancellor wrote: > On Mon, Nov 24, 2025 at 02:35:26PM -0800, Guenter Roeck wrote: > > On Mon, Nov 24, 2025 at 2:04 PM Nathan Chancellor <[email protected]> wrote: > > > > > > On Mon, Nov 24, 2025 at 12:59:08PM -0000, KernelCI bot wrote: > > > > Hello, > > > > > > > > New build issue found on stable-rc/linux-6.12.y: > > > > > > > > --- > > > > variable 'val' is uninitialized when passed as a const pointer argument here [-Werror,-Wuninitialized-const-pointer] in drivers/staging/rtl8712/rtl8712_cmd.o (drivers/staging/rtl8712/rtl8712_cmd.c) [logspec:kbuild,kbuild.compiler.error] > > > > --- > > > > > > > > - dashboard: https://d.kernelci.org/i/maestro:5b83acc62508c670164c5fceb3079a2d7d74e154 > > > > - giturl: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git > > > > - commit HEAD: d5dc97879a97b328a89ec092271faa3db9f2bff3 > > > > - tags: v6.12.59 > > > > > > > > > > > > Log excerpt: > > > > ===================================================== > > > > drivers/staging/rtl8712/rtl8712_cmd.c:148:28: error: variable 'val' is uninitialized when passed as a const pointer argument here [-Werror,-Wuninitialized-const-pointer] > > > > 148 | memcpy(pcmd->rsp, (u8 *)&val, pcmd->rspsz); > > > > | ^~~ > > > > 1 error generated. > > > > > > This comes from a new subwarning of -Wuninitialized introduced in > > > clang-21: > > > > > > https://github.com/llvm/llvm-project/commit/00dacf8c22f065cb52efb14cd091d441f19b319e > > > > > > This driver was removed upstream in commit 41e883c137eb ("staging: > > > rtl8712: Remove driver using deprecated API wext") in 6.13 so this only > > > impacts stable. > > > > > > This certainly does look broken... > > > > > > static u8 read_rfreg_hdl(struct _adapter *padapter, u8 *pbuf) > > > { > > > u32 val; > > > void (*pcmd_callback)(struct _adapter *dev, struct cmd_obj *pcmd); > > > struct cmd_obj *pcmd = (struct cmd_obj *)pbuf; > > > > > > if (pcmd->rsp && pcmd->rspsz > 0) > > > memcpy(pcmd->rsp, (u8 *)&val, pcmd->rspsz); > > > > > > Presumably this is never actually hit? It is rather hard to follow the > > > indirection in this driver but it does not seem like _Read_RFREG is ever > > > set as a cmdcode? Unfortunately, the only maintainer I see listed for > > > this file is Florian Schilhabel but a glance at lore shows no recent > > > activity so that probably won't be too much help. At the very least, we > > > could just zero initialize val, it cannot be any worse than what it is > > > currently doing and copying stack garbage? > > > > > > > Or backport the patch removing the driver ? It is in staging, after > > all, so I don't know if there is value in trying to keep it alive in > > 6.12.y. > > That would likely not be the end of the world for 6.12.y but this > warning appears all the way back to at least 5.15 (the point I start > caring about warnings because of CONFIG_WERROR). No objection from me to delete the driver from all of the stable trees :) thanks, greg k-h