2021-07-13 15:12:23

by Naresh Kamboju

[permalink] [raw]
Subject: perf: bench/sched-messaging.c:73:13: error: 'dummy' may be used uninitialized

LKFT have noticed these warnings / errors when we have updated gcc version from
gcc-9 to gcc-11 on stable-rc linux-5.4.y branch. I have provided the steps to
reproduce in this email below.

Following perf builds failed with gcc-11 with linux-5.4.y branch.
- build-arm-gcc-11-perf
- build-arm64-gcc-11-perf
- build-i386-gcc-11-perf
- build-x86-gcc-11-perf

Build error log:
--------------------
find: 'x86_64-linux-gnu-gcc/arch': No such file or directory
error: Found argument '-I' which wasn't expected, or isn't valid in this context
USAGE:
sccache [FLAGS] [OPTIONS] [cmd]...
For more information try --help
error: Found argument '-I' which wasn't expected, or isn't valid in this context
USAGE:
sccache [FLAGS] [OPTIONS] [cmd]...
For more information try --help

In function 'ready',
inlined from 'sender' at bench/sched-messaging.c:87:2:
bench/sched-messaging.c:73:13: error: 'dummy' may be used
uninitialized [-Werror=maybe-uninitialized]
73 | if (write(ready_out, &dummy, 1) != 1)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from bench/sched-messaging.c:22:
bench/sched-messaging.c: In function 'sender':
/usr/x86_64-linux-gnu/include/unistd.h:366:16: note: by argument 2 of
type 'const void *' to 'write' declared here
366 | extern ssize_t write (int __fd, const void *__buf, size_t __n) __wur;
| ^~~~~
bench/sched-messaging.c:69:14: note: 'dummy' declared here
69 | char dummy;
| ^~~~~
cc1: all warnings being treated as errors

ref:
https://builds.tuxbuild.com/1vEIWryaujwVtL4wmodXkz1djUa/
https://builds.tuxbuild.com/1vEIX7NTo5OpaN9nrs2UvO74oxB/

Reported-by: Linux Kernel Functional Testing <[email protected]>

Steps to reproduce:
---------------------------
tuxmake --runtime podman --target-arch x86_64 --toolchain gcc-11
--kconfig defconfig --kconfig-add
https://builds.tuxbuild.com/1vEIWryaujwVtL4wmodXkz1djUa/config headers
kernel modules perf

--
Linaro LKFT
https://lkft.linaro.org


2021-07-13 15:20:50

by Greg Kroah-Hartman

[permalink] [raw]
Subject: Re: perf: bench/sched-messaging.c:73:13: error: 'dummy' may be used uninitialized

On Tue, Jul 13, 2021 at 08:40:28PM +0530, Naresh Kamboju wrote:
> LKFT have noticed these warnings / errors when we have updated gcc version from
> gcc-9 to gcc-11 on stable-rc linux-5.4.y branch. I have provided the steps to
> reproduce in this email below.
>
> Following perf builds failed with gcc-11 with linux-5.4.y branch.
> - build-arm-gcc-11-perf
> - build-arm64-gcc-11-perf
> - build-i386-gcc-11-perf
> - build-x86-gcc-11-perf
>
> Build error log:
> --------------------

<snip>

I imagine this is fixed in newer kernel versions, so if you could
provide the git ids of the patches needed to fix this up in 5.4, that
would be great!

thanks,

greg k-h

2021-07-13 15:34:50

by Anders Roxell

[permalink] [raw]
Subject: Re: perf: bench/sched-messaging.c:73:13: error: 'dummy' may be used uninitialized

On Tue, 13 Jul 2021 at 17:18, Greg Kroah-Hartman
<[email protected]> wrote:
>
> On Tue, Jul 13, 2021 at 08:40:28PM +0530, Naresh Kamboju wrote:
> > LKFT have noticed these warnings / errors when we have updated gcc version from
> > gcc-9 to gcc-11 on stable-rc linux-5.4.y branch. I have provided the steps to
> > reproduce in this email below.
> >
> > Following perf builds failed with gcc-11 with linux-5.4.y branch.
> > - build-arm-gcc-11-perf
> > - build-arm64-gcc-11-perf
> > - build-i386-gcc-11-perf
> > - build-x86-gcc-11-perf
> >
> > Build error log:
> > --------------------
>
> <snip>
>
> I imagine this is fixed in newer kernel versions, so if you could
> provide the git ids of the patches needed to fix this up in 5.4, that
> would be great!

You were correct, I did a bisect [1] and found
d493720581a6 ("perf bench: Fix 2 memory sanitizer warnings").

commit d2c73501a767514b6c85c7feff9457a165d51057 upstream.

Cherry picked it and I was able to build it on arm64 and x86.

Cheers,
Anders
[1] http://ix.io/3sS6

2021-07-15 15:56:39

by Greg Kroah-Hartman

[permalink] [raw]
Subject: Re: perf: bench/sched-messaging.c:73:13: error: 'dummy' may be used uninitialized

On Tue, Jul 13, 2021 at 05:32:17PM +0200, Anders Roxell wrote:
> On Tue, 13 Jul 2021 at 17:18, Greg Kroah-Hartman
> <[email protected]> wrote:
> >
> > On Tue, Jul 13, 2021 at 08:40:28PM +0530, Naresh Kamboju wrote:
> > > LKFT have noticed these warnings / errors when we have updated gcc version from
> > > gcc-9 to gcc-11 on stable-rc linux-5.4.y branch. I have provided the steps to
> > > reproduce in this email below.
> > >
> > > Following perf builds failed with gcc-11 with linux-5.4.y branch.
> > > - build-arm-gcc-11-perf
> > > - build-arm64-gcc-11-perf
> > > - build-i386-gcc-11-perf
> > > - build-x86-gcc-11-perf
> > >
> > > Build error log:
> > > --------------------
> >
> > <snip>
> >
> > I imagine this is fixed in newer kernel versions, so if you could
> > provide the git ids of the patches needed to fix this up in 5.4, that
> > would be great!
>
> You were correct, I did a bisect [1] and found
> d493720581a6 ("perf bench: Fix 2 memory sanitizer warnings").
>
> commit d2c73501a767514b6c85c7feff9457a165d51057 upstream.
>
> Cherry picked it and I was able to build it on arm64 and x86.

Great, now queued up, thanks.

greg k-h