Re: [PATCH RFC v1 0/4] perf: Introduce extended syscall error reporting

Peter Zijlstra
2015-08-05T17:01:25Z

On Fri, Jul 24, 2015 at 02:45:55PM +0300, Alexander Shishkin wrote:
> Hi Peter and Ingo and everybody,
>
> Here's my second stab at improving perf's error reporting by attaching
> arbitrary strings to the integer error codes. This is largely based
> off of the previous email thread [1].
>
> This time around, I employed a linker trick to convert the structures
> containing extended error information into integers, which are then
> made to look just like normal error codes so that IS_ERR_VALUE() and
> friends would still work correctly on them. So no extra pointers in
> the struct perf_event or anywhere else; the extended error codes are
> passed around like normal error codes. They only need to be converted
> in syscalls' topmost return statements. This is done in 1/4.
>
> Then, 2/4 illustrates how error sites can be extended to include more
> information such as file names and line numbers [1].
>
> The other two patches add perf_err() annotation to a few semi-randomly
> picked places in perf core (3/4) and x86 bits (4/4).

Looks generally ok to me. Thanks for doing this.