All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] tracing: initialize variable in create_dyn_event()
@ 2019-01-25  2:17 frowand.list
  2019-03-14 21:05 ` Frank Rowand
  0 siblings, 1 reply; 5+ messages in thread
From: frowand.list @ 2019-01-25  2:17 UTC (permalink / raw)
  To: Steven Rostedt; +Cc: linux-kernel, Ingo Molnar, Tom Zanussi, Ravi Bangoria

From: Frank Rowand <frank.rowand@sony.com>

Fix compile warning in create_dyn_event(): 'ret' may be used uninitialized
in this function [-Wuninitialized].

Fixes: 5448d44c3855 ("tracing: Add unified dynamic event framework")

Signed-off-by: Frank Rowand <frank.rowand@sony.com>
---

Compile and boot tested only.  Please verify the initialization value
of zero is correct.

There is also a sparse warning you might want to check into (when
ARCH=arm, so 32 bit):

   include/uapi/linux/perf_event.h:147:56: warning: cast truncates bits from constant value (8000000000000000 becomes 0)


 kernel/trace/trace_dynevent.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/kernel/trace/trace_dynevent.c b/kernel/trace/trace_dynevent.c
index dd1f43588d70..4f633476c307 100644
--- a/kernel/trace/trace_dynevent.c
+++ b/kernel/trace/trace_dynevent.c
@@ -74,7 +74,7 @@ int dyn_event_release(int argc, char **argv, struct dyn_event_operations *type)
 static int create_dyn_event(int argc, char **argv)
 {
 	struct dyn_event_operations *ops;
-	int ret;
+	int ret = 0;
 
 	if (argv[0][0] == '-' || argv[0][0] == '!')
 		return dyn_event_release(argc, argv, NULL);
-- 
Frank Rowand <frank.rowand@sony.com>


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* Re: [PATCH] tracing: initialize variable in create_dyn_event()
  2019-01-25  2:17 [PATCH] tracing: initialize variable in create_dyn_event() frowand.list
@ 2019-03-14 21:05 ` Frank Rowand
  2019-03-14 22:19   ` Steven Rostedt
  0 siblings, 1 reply; 5+ messages in thread
From: Frank Rowand @ 2019-03-14 21:05 UTC (permalink / raw)
  To: Steven Rostedt; +Cc: linux-kernel, Ingo Molnar, Tom Zanussi, Ravi Bangoria

Hi Steve,

Ping.

-Frank


On 1/24/19 6:17 PM, frowand.list@gmail.com wrote:
> From: Frank Rowand <frank.rowand@sony.com>
> 
> Fix compile warning in create_dyn_event(): 'ret' may be used uninitialized
> in this function [-Wuninitialized].
> 
> Fixes: 5448d44c3855 ("tracing: Add unified dynamic event framework")
> 
> Signed-off-by: Frank Rowand <frank.rowand@sony.com>
> ---
> 
> Compile and boot tested only.  Please verify the initialization value
> of zero is correct.
> 
> There is also a sparse warning you might want to check into (when
> ARCH=arm, so 32 bit):
> 
>    include/uapi/linux/perf_event.h:147:56: warning: cast truncates bits from constant value (8000000000000000 becomes 0)
> 
> 
>  kernel/trace/trace_dynevent.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/kernel/trace/trace_dynevent.c b/kernel/trace/trace_dynevent.c
> index dd1f43588d70..4f633476c307 100644
> --- a/kernel/trace/trace_dynevent.c
> +++ b/kernel/trace/trace_dynevent.c
> @@ -74,7 +74,7 @@ int dyn_event_release(int argc, char **argv, struct dyn_event_operations *type)
>  static int create_dyn_event(int argc, char **argv)
>  {
>  	struct dyn_event_operations *ops;
> -	int ret;
> +	int ret = 0;
>  
>  	if (argv[0][0] == '-' || argv[0][0] == '!')
>  		return dyn_event_release(argc, argv, NULL);
> 


^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH] tracing: initialize variable in create_dyn_event()
  2019-03-14 21:05 ` Frank Rowand
@ 2019-03-14 22:19   ` Steven Rostedt
  2019-03-14 23:26     ` Masami Hiramatsu
  0 siblings, 1 reply; 5+ messages in thread
From: Steven Rostedt @ 2019-03-14 22:19 UTC (permalink / raw)
  To: Frank Rowand
  Cc: linux-kernel, Ingo Molnar, Tom Zanussi, Ravi Bangoria, Masami Hiramatsu

On Thu, 14 Mar 2019 14:05:02 -0700
Frank Rowand <frowand.list@gmail.com> wrote:

> Hi Steve,
> 
> Ping.

Thanks, this got buried.

> >  static int create_dyn_event(int argc, char **argv)
> >  {
> >  	struct dyn_event_operations *ops;
> > -	int ret;
> > +	int ret = 0;

Probably should be ret = -ENODEV;

As if ret doesn't get set, then no dynamic code has been registered,
and something is truly wrong.

-- Steve


> >  
> >  	if (argv[0][0] == '-' || argv[0][0] == '!')
> >  		return dyn_event_release(argc, argv, NULL);
> >   


^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH] tracing: initialize variable in create_dyn_event()
  2019-03-14 22:19   ` Steven Rostedt
@ 2019-03-14 23:26     ` Masami Hiramatsu
  2019-03-15 15:56       ` Frank Rowand
  0 siblings, 1 reply; 5+ messages in thread
From: Masami Hiramatsu @ 2019-03-14 23:26 UTC (permalink / raw)
  To: Steven Rostedt
  Cc: Frank Rowand, linux-kernel, Ingo Molnar, Tom Zanussi,
	Ravi Bangoria, Masami Hiramatsu

Hi Frank and Steve,

Thank you for pointing it out :)

On Thu, 14 Mar 2019 18:19:08 -0400
Steven Rostedt <rostedt@goodmis.org> wrote:

> On Thu, 14 Mar 2019 14:05:02 -0700
> Frank Rowand <frowand.list@gmail.com> wrote:
> 
> > Hi Steve,
> > 
> > Ping.
> 
> Thanks, this got buried.
> 
> > >  static int create_dyn_event(int argc, char **argv)
> > >  {
> > >  	struct dyn_event_operations *ops;
> > > -	int ret;
> > > +	int ret = 0;
> 
> Probably should be ret = -ENODEV;
> 
> As if ret doesn't get set, then no dynamic code has been registered,
> and something is truly wrong.

I Agreed to return -ENODEV instead of 0.

Thank you,

> 
> -- Steve
> 
> 
> > >  
> > >  	if (argv[0][0] == '-' || argv[0][0] == '!')
> > >  		return dyn_event_release(argc, argv, NULL);
> > >   
> 


-- 
Masami Hiramatsu <mhiramat@kernel.org>

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH] tracing: initialize variable in create_dyn_event()
  2019-03-14 23:26     ` Masami Hiramatsu
@ 2019-03-15 15:56       ` Frank Rowand
  0 siblings, 0 replies; 5+ messages in thread
From: Frank Rowand @ 2019-03-15 15:56 UTC (permalink / raw)
  To: Masami Hiramatsu, Steven Rostedt
  Cc: linux-kernel, Ingo Molnar, Tom Zanussi, Ravi Bangoria

On 3/14/19 4:26 PM, Masami Hiramatsu wrote:
> Hi Frank and Steve,
> 
> Thank you for pointing it out :)
> 
> On Thu, 14 Mar 2019 18:19:08 -0400
> Steven Rostedt <rostedt@goodmis.org> wrote:
> 
>> On Thu, 14 Mar 2019 14:05:02 -0700
>> Frank Rowand <frowand.list@gmail.com> wrote:
>>
>>> Hi Steve,
>>>
>>> Ping.
>>
>> Thanks, this got buried.
>>
>>>>  static int create_dyn_event(int argc, char **argv)
>>>>  {
>>>>  	struct dyn_event_operations *ops;
>>>> -	int ret;
>>>> +	int ret = 0;
>>
>> Probably should be ret = -ENODEV;
>>
>> As if ret doesn't get set, then no dynamic code has been registered,
>> and something is truly wrong.
> 
> I Agreed to return -ENODEV instead of 0.
> 
> Thank you,
> 
>>
>> -- Steve
>>
>>
>>>>  
>>>>  	if (argv[0][0] == '-' || argv[0][0] == '!')
>>>>  		return dyn_event_release(argc, argv, NULL);
>>>>   
>>
> 
> 

Thanks, I'll fix and resend.

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2019-03-15 15:56 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-01-25  2:17 [PATCH] tracing: initialize variable in create_dyn_event() frowand.list
2019-03-14 21:05 ` Frank Rowand
2019-03-14 22:19   ` Steven Rostedt
2019-03-14 23:26     ` Masami Hiramatsu
2019-03-15 15:56       ` Frank Rowand

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.