lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <11672c6d-e021-eeda-5907-3fefb307ce9d@linux.intel.com>
Date:   Fri, 15 Sep 2023 13:46:45 +0300
From:   Tero Kristo <tero.kristo@...ux.intel.com>
To:     "Masami Hiramatsu (Google)" <mhiramat@...nel.org>
Cc:     rostedt@...dmis.org, artem.bityutskiy@...ux.intel.com,
        linux-trace-kernel@...r.kernel.org, linux-kernel@...r.kernel.org,
        stable@...r.kernel.org
Subject: Re: [PATCH] tracing/synthetic: Print out u64 values properly

Hi Masami,

On 15/09/2023 09:01, Masami Hiramatsu (Google) wrote:
> Hi Tero,
>
> On Mon, 11 Sep 2023 17:17:04 +0300
> Tero Kristo <tero.kristo@...ux.intel.com> wrote:
>
>> The synth traces incorrectly print pointer to the synthetic event values
>> instead of the actual value when using u64 type. Fix by addressing the
>> contents of the union properly.
> Thanks for pointing it out.
> But I would like to see a new "case 8:" print code instead of changing
> "default". Can you keep the default as it is and add "case 8:" case there?

Are you sure about that? I think keeping the default as is would just 
print out a useless pointer value to the synth event itself (which is 
what happened with u64 type.)

Anyways, that requires a new patch to be created on top as this has hit 
the mainline as a fix already.

-Tero


>
> Thanks,
>
>> Fixes: ddeea494a16f ("tracing/synthetic: Use union instead of casts")
>> Cc: stable@...r.kernel.org
>> Signed-off-by: Tero Kristo <tero.kristo@...ux.intel.com>
>> ---
>>   kernel/trace/trace_events_synth.c | 2 +-
>>   1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/kernel/trace/trace_events_synth.c b/kernel/trace/trace_events_synth.c
>> index 7fff8235075f..070365959c0a 100644
>> --- a/kernel/trace/trace_events_synth.c
>> +++ b/kernel/trace/trace_events_synth.c
>> @@ -337,7 +337,7 @@ static void print_synth_event_num_val(struct trace_seq *s,
>>   		break;
>>   
>>   	default:
>> -		trace_seq_printf(s, print_fmt, name, val, space);
>> +		trace_seq_printf(s, print_fmt, name, val->as_u64, space);
>>   		break;
>>   	}
>>   }
>> -- 
>> 2.40.1
>>
>

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ