Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1397222

Re: [RFC 2/2] perf/core: change errno for sampling event not supported in hardware

From Vineet Gupta <vgupta@synopsys.com>
Newsgroups linux.kernel
Subject Re: [RFC 2/2] perf/core: change errno for sampling event not supported in hardware
Date 2016-05-09 19:30 +0200
Message-ID <rwXal-1D1-73@gated-at.bofh.it> (permalink)
References <rwPPr-2FZ-5@gated-at.bofh.it> <rwPPt-2FZ-35@gated-at.bofh.it> <rwTT3-6II-1@gated-at.bofh.it>
Organization Synopsys

Show all headers | View raw


On Monday 09 May 2016 07:24 PM, Vince Weaver wrote:
> On Mon, 9 May 2016, Vineet Gupta wrote:
> 
>> This allows userspace to identify this case specifically from the
>> catch all error msg it prints currently.
>>
>> This is an ABI change
> 
> An ABI change which will probably break things.


Right thats what I feared. But hold on, I don't think we need to change the ABI to
achieve what we want. Gosh why did I even take that path.

Currently the errno switch case in perf_evsel__open_strerror() in doesn't handle
ENOTSUPP. So how about we add that - augmented with the same sample_period !0
check to barf for lack of sampling support.

Do you see anything wrong with that ?

-Vineet

> 
> The original change from ENODEV to ENOTSUPP managed to break things 
> although it took four kernel releases before anyone noticed.
> 
> The usage of ENOTSUPP was my fault, though I feel like at the time I was 
> told that ENOTSUPP is for internal kernel usage and would be converted to 
> EOPNOTSUPP when returning an error to userspace.  But now I 
> can't find any sort of reference for that at all, except the fact that
> 
> 	/usr/include/x86_64-linux-gnu/bits/errno.h
> 
> has
> 	/* Linux has no ENOTSUP error code.  */
> 	# define ENOTSUP EOPNOTSUPP
> 
> in it... but wait, that's ENOTSUP not ENOTSUPP.  Blargh.
> 
> Vince
> 

Back to linux.kernel | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

[RFC 0/2] report perf sampling failing due to PMU lacking overflow intr support Vineet Gupta <Vineet.Gupta1@synopsys.com> - 2016-05-09 11:40 +0200
  [RFC 2/2] perf/core: change errno for sampling event not supported in hardware Vineet Gupta <Vineet.Gupta1@synopsys.com> - 2016-05-09 11:40 +0200
    Re: [RFC 2/2] perf/core: change errno for sampling event not supported  in hardware Vince Weaver <vincent.weaver@maine.edu> - 2016-05-09 16:00 +0200
      Re: [RFC 2/2] perf/core: change errno for sampling event not  supported in hardware Vineet Gupta <vgupta@synopsys.com> - 2016-05-09 19:30 +0200
        Re: [RFC 2/2] perf/core: change errno for sampling event not supported  in hardware Vince Weaver <vincent.weaver@maine.edu> - 2016-05-11 05:40 +0200
        Re: [RFC 2/2] perf/core: change errno for sampling event not  supported in hardware Peter Zijlstra <peterz@infradead.org> - 2016-05-11 21:40 +0200
          Re: [RFC 2/2] perf/core: change errno for sampling event not  supported in hardware Vineet Gupta <Vineet.Gupta1@synopsys.com> - 2016-05-12 08:30 +0200
            Re: [RFC 2/2] perf/core: change errno for sampling event not  supported in hardware Peter Zijlstra <peterz@infradead.org> - 2016-05-12 08:50 +0200
              Re: [RFC 2/2] perf/core: change errno for sampling event not  supported in hardware Vineet Gupta <Vineet.Gupta1@synopsys.com> - 2016-05-12 09:00 +0200
                Re: [RFC 2/2] perf/core: change errno for sampling event not  supported in hardware Peter Zijlstra <peterz@infradead.org> - 2016-05-12 09:30 +0200

csiph-web