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 for Android: free password hash cracker in your pocket
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20150420101553.GE15875@leverpostej>
Date:	Mon, 20 Apr 2015 11:15:53 +0100
From:	Mark Rutland <mark.rutland@....com>
To:	Andi Kleen <andi@...stfloor.org>
Cc:	Kan Liang <kan.liang@...el.com>,
	"acme@...nel.org" <acme@...nel.org>,
	"a.p.zijlstra@...llo.nl" <a.p.zijlstra@...llo.nl>,
	"eranian@...gle.com" <eranian@...gle.com>,
	"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH V2 1/6] perf,core: allow invalid context events to be
 part of sw/hw groups

On Sat, Apr 18, 2015 at 01:47:06AM +0100, Andi Kleen wrote:
> > ... which would give you arbitrary skew, because one counter is
> > free-running and the other is not (when scheduling a context in or out we stop
> > the PMU)
> 
> Everyone just reads the counter and subtracts it from
> the last value they've seen.
> 
> That's the same how any other shared free running counter work,
> such as the standard timer.
> 
> The only thing that perf needs to enforce is that the counters
> are running with the same event. 
> 
> It also wouldn't work for sampling, but the uncore doesn't do
> sampling anyways.

If you don't care about sampling and only care about totals, then you
can just open the events concurrently *without* grouping them, as I
stated previously.

> > From my PoV that violates group semantics, because now the events aren't
> > always counting at the same time (which would be the reason I grouped
> > them in the first place).
> 
> You never use the absolute value, just differences. The differences 
> effectively count only when the group runs.

Except that the uncore PMU is counting during the periods the CPU PMU is
disabled (e.g. when it is being programmed, read, or written). There's a
race there that you cannot solve given the two are indepedent agents.

> > However, it is the case that you cannot offer group semantics.
> 
> I don't think that's true.

I believe that it is. I also believe it doesn't matter since you don't
care about those semantics anyway. Given that you can just open
independent events, which is already possible.

Mark.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ