* [PATCH] video: fbdev: pvr2fb: initialize variables
@ 2020-07-20 19:18 trix
2020-07-20 19:27 ` Arnd Bergmann
2020-08-03 19:44 ` Sam Ravnborg
0 siblings, 2 replies; 3+ messages in thread
From: trix @ 2020-07-20 19:18 UTC (permalink / raw)
To: b.zolnierkie, jhubbard, sam, daniel.vetter, gustavo, arnd, jani.nikula
Cc: dri-devel, linux-fbdev, linux-kernel, Tom Rix
From: Tom Rix <trix@redhat.com>
clang static analysis reports this repesentative error
pvr2fb.c:1049:2: warning: 1st function call argument
is an uninitialized value [core.CallAndMessage]
if (*cable_arg)
^~~~~~~~~~~~~~~
Problem is that cable_arg depends on the input loop to
set the cable_arg[0]. If it does not, then some random
value from the stack is used.
A similar problem exists for output_arg.
So initialize cable_arg and output_arg.
Signed-off-by: Tom Rix <trix@redhat.com>
---
drivers/video/fbdev/pvr2fb.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/drivers/video/fbdev/pvr2fb.c b/drivers/video/fbdev/pvr2fb.c
index 2d9f69b93392..f4add36cb5f4 100644
--- a/drivers/video/fbdev/pvr2fb.c
+++ b/drivers/video/fbdev/pvr2fb.c
@@ -1028,6 +1028,8 @@ static int __init pvr2fb_setup(char *options)
if (!options || !*options)
return 0;
+ cable_arg[0] = output_arg[0] = 0;
+
while ((this_opt = strsep(&options, ","))) {
if (!*this_opt)
continue;
--
2.18.1
^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [PATCH] video: fbdev: pvr2fb: initialize variables
2020-07-20 19:18 [PATCH] video: fbdev: pvr2fb: initialize variables trix
@ 2020-07-20 19:27 ` Arnd Bergmann
2020-08-03 19:44 ` Sam Ravnborg
1 sibling, 0 replies; 3+ messages in thread
From: Arnd Bergmann @ 2020-07-20 19:27 UTC (permalink / raw)
To: trix
Cc: Bartlomiej Zolnierkiewicz, John Hubbard, Sam Ravnborg,
Daniel Vetter, Gustavo A. R. Silva, Jani Nikula, dri-devel,
Linux Fbdev development list, linux-kernel
On Mon, Jul 20, 2020 at 9:19 PM <trix@redhat.com> wrote:
>
> From: Tom Rix <trix@redhat.com>
>
> clang static analysis reports this repesentative error
>
> pvr2fb.c:1049:2: warning: 1st function call argument
> is an uninitialized value [core.CallAndMessage]
> if (*cable_arg)
> ^~~~~~~~~~~~~~~
>
> Problem is that cable_arg depends on the input loop to
> set the cable_arg[0]. If it does not, then some random
> value from the stack is used.
>
> A similar problem exists for output_arg.
>
> So initialize cable_arg and output_arg.
Adding a zero-initialization is almost never the correct way to
deal with these warnings, so one has to be careful doing this.
I checked this file, and your patch is absolutely correct here. ;-)
> Signed-off-by: Tom Rix <trix@redhat.com>
Acked-by: Arnd Bergmann <arnd@arndb.de>
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH] video: fbdev: pvr2fb: initialize variables
2020-07-20 19:18 [PATCH] video: fbdev: pvr2fb: initialize variables trix
2020-07-20 19:27 ` Arnd Bergmann
@ 2020-08-03 19:44 ` Sam Ravnborg
1 sibling, 0 replies; 3+ messages in thread
From: Sam Ravnborg @ 2020-08-03 19:44 UTC (permalink / raw)
To: trix
Cc: b.zolnierkie, jhubbard, daniel.vetter, gustavo, arnd,
jani.nikula, linux-fbdev, linux-kernel, dri-devel
Hi Tom,
On Mon, Jul 20, 2020 at 12:18:45PM -0700, trix@redhat.com wrote:
> From: Tom Rix <trix@redhat.com>
>
> clang static analysis reports this repesentative error
>
> pvr2fb.c:1049:2: warning: 1st function call argument
> is an uninitialized value [core.CallAndMessage]
> if (*cable_arg)
> ^~~~~~~~~~~~~~~
>
> Problem is that cable_arg depends on the input loop to
> set the cable_arg[0]. If it does not, then some random
> value from the stack is used.
>
> A similar problem exists for output_arg.
>
> So initialize cable_arg and output_arg.
>
> Signed-off-by: Tom Rix <trix@redhat.com>
Thanks, applied to drm-misc-next.
Sam
> ---
> drivers/video/fbdev/pvr2fb.c | 2 ++
> 1 file changed, 2 insertions(+)
>
> diff --git a/drivers/video/fbdev/pvr2fb.c b/drivers/video/fbdev/pvr2fb.c
> index 2d9f69b93392..f4add36cb5f4 100644
> --- a/drivers/video/fbdev/pvr2fb.c
> +++ b/drivers/video/fbdev/pvr2fb.c
> @@ -1028,6 +1028,8 @@ static int __init pvr2fb_setup(char *options)
> if (!options || !*options)
> return 0;
>
> + cable_arg[0] = output_arg[0] = 0;
> +
> while ((this_opt = strsep(&options, ","))) {
> if (!*this_opt)
> continue;
> --
> 2.18.1
>
> _______________________________________________
> dri-devel mailing list
> dri-devel@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/dri-devel
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2020-08-03 19:45 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-07-20 19:18 [PATCH] video: fbdev: pvr2fb: initialize variables trix
2020-07-20 19:27 ` Arnd Bergmann
2020-08-03 19:44 ` Sam Ravnborg
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).