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]
Date:   Tue, 11 Jul 2017 21:07:27 +0800
From:   "Jin, Yao" <yao.jin@...ux.intel.com>
To:     Ingo Molnar <mingo@...nel.org>, Kyle Huey <me@...ehuey.com>
Cc:     Mark Rutland <mark.rutland@....com>, gregkh@...uxfoundation.org,
        Peter Zijlstra <peterz@...radead.org>,
        Vince Weaver <vincent.weaver@...ne.edu>,
        stable@...r.kernel.org,
        Alexander Shishkin <alexander.shishkin@...ux.intel.com>,
        Arnaldo Carvalho de Melo <acme@...hat.com>,
        Jiri Olsa <jolsa@...hat.com>,
        Linus Torvalds <torvalds@...ux-foundation.org>,
        Namhyung Kim <namhyung@...nel.org>,
        Stephane Eranian <eranian@...gle.com>,
        Thomas Gleixner <tglx@...utronix.de>, acme@...nel.org,
        jolsa@...nel.org, kan.liang@...el.com,
        Will Deacon <will.deacon@....com>,
        open list <linux-kernel@...r.kernel.org>,
        Robert O'Callahan <robert@...llahan.org>
Subject: Re: [PATCH] perf/core: generate overflow signal when samples are
 dropped (WAS: Re: [REGRESSION] perf/core: PMU interrupts dropped if we
 entered the kernel in the "skid" region)



On 7/11/2017 5:03 PM, Ingo Molnar wrote:
> * Kyle Huey <me@...ehuey.com> wrote:
>
>> On Wed, Jul 5, 2017 at 10:07 PM, Robert O'Callahan <robert@...llahan.org> wrote:
>>> On Tue, Jul 4, 2017 at 3:21 AM, Mark Rutland <mark.rutland@....com> wrote:
>>>> Should any of those be moved into the "should be dropped" pile?
>>> Why not be conservative and clear every sample you're not sure about?
>>>
>>> We'd appreciate a fix sooner rather than later here, since rr is
>>> currently broken on every stable Linux kernel and our attempts to
>>> implement a workaround have failed.
>>>
>>> (We have separate "interrupt" and "measure" counters, and I thought we
>>> might work around this regression by programming the "interrupt"
>>> counter to count kernel events as well as user events (interrupting
>>> early is OK), but that caused our (completely separate) "measure"
>>> counter to report off-by-one results (!), which seems to be a
>>> different bug present on a range of older kernels.)
>> This seems to have stalled out here unfortunately.
>>
>> Can we get a consensus (from ingo or peterz?) on Mark's question?  Or,
>> alternatively, can we move the patch at the top of this thread forward
>> on the stable branches until we do reach an answer to that question?
>>
>> We've abandoned hope of working around this problem in rr and are
>> currently broken for all of our users with an up-to-date kernel, so
>> the situation for us is rather dire at the moment I'm afraid.
> Sorry about that - I've queued up a revert for the original commit and will send
> the fix to Linus later today. I've added a -stable tag as well so it can be
> forwarded to Greg the moment it hits upstream.
>
> We should do the original fix as well, but in a version that does not skip the
> sample but zeroes out the RIP and registers (or sets them all to -1LL) - and also
> covers other possible places where skid-RIP is exposed, such as LBR.
>
> Thanks,
>
> 	Ingo

Could we provide 2 options in user space when enabling the event sampling?

One option is for the use case like rr debugger which only cares the PMI 
interrupt but doesn't care the skid. The skid samples doesn't need to be 
dropped.

The other option is for the use case which needs the accurate sample 
data. For this option, the skid samples are dropped.

I would suggest to let the user space make the decision to choose which 
option.

Thanks
Jin Yao


Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ