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: <20250107181921.2ba79257@gandalf.local.home>
Date: Tue, 7 Jan 2025 18:19:21 -0500
From: Steven Rostedt <rostedt@...dmis.org>
To: Shiju Jose <shiju.jose@...wei.com>
Cc: "mhiramat@...nel.org" <mhiramat@...nel.org>,
 "mathieu.desnoyers@...icios.com" <mathieu.desnoyers@...icios.com>,
 "linux-trace-kernel@...r.kernel.org" <linux-trace-kernel@...r.kernel.org>,
 "linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>, Linuxarm
 <linuxarm@...wei.com>, Jonathan Cameron <jonathan.cameron@...wei.com>,
 tanxiaofei <tanxiaofei@...wei.com>, "Zengtao (B)"
 <prime.zeng@...ilicon.com>
Subject: Re: [PATCH 1/1] tracing: Support reading trace event format file
 larger than PAGE_SIZE

On Tue, 7 Jan 2025 18:02:24 -0500
Steven Rostedt <rostedt@...dmis.org> wrote:

> diff --git a/src/event-parse.c b/src/event-parse.c
> index 33ed7fb47fff..f2e50b0e8992 100644
> --- a/src/event-parse.c
> +++ b/src/event-parse.c
> @@ -7841,7 +7841,7 @@ static enum tep_errno parse_format(struct tep_event **eventp,
>  	ret = event_read_format(event);
>  	if (ret < 0) {
>  		ret = TEP_ERRNO__READ_FORMAT_FAILED;
> -		goto event_parse_failed;
> +		goto event_alloc_failed;
>  	}
>  
>  	/*
> 
> 
> As it's OK if it returns that it failed to parse the print format, as it
> can still read the event. But if it fails to read the fields, then it is
> basically useless.

And the event you posted would still succeed. And it should succeed
actually. It just failed to parse the print format. There's a lot of events
that do as the print format is pretty much full C code, and libtraceveent
is not a full C parser. It can also call functions that it doesn't know
about which means even if it were a full C parser it would still fail to
parse.

But it does flag the event as "TEP_EVENT_FL_FAILED", and should display
"[FAILED_TO_PARSE]" when printing the generic output.

I still think failing to parse the fields is more of a critical error
though. That shouldn't happen, and if it does, it should be corrected.

-- Steve

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ