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:   Sat, 17 Mar 2018 10:34:38 +0100
From:   Peter Zijlstra <peterz@...radead.org>
To:     kan.liang@...el.com
Cc:     tglx@...utronix.de, mingo@...hat.com, linux-kernel@...r.kernel.org,
        acme@...nel.org, eranian@...gle.com, ak@...ux.intel.com
Subject: Re: [PATCH V6 5/8] perf/x86/intel/uncore: add infrastructure for
 free running counter

On Thu, Jan 25, 2018 at 12:13:45PM -0800, kan.liang@...el.com wrote:
> @@ -512,6 +538,17 @@ static int uncore_pmu_event_add(struct perf_event *event, int flags)
>  	if (!box)
>  		return -ENODEV;
>  
> +	/*
> +	 * The free funning counter is assigned in event_init().
> +	 * The free running counter event and free running counter
> +	 * are 1:1 mapped. It doesn't need to be tracked in event_list.
> +	 */
> +	if (uncore_pmc_freerunning(hwc->idx)) {
> +		if (flags & PERF_EF_START)
> +			uncore_pmu_event_start(event, 0);
> +		return 0;
> +	}
> +
>  	ret = n = uncore_collect_events(box, event, false);
>  	if (ret < 0)
>  		return ret;

This will result in some (probably) unexpected scheduling artifacts.
Probably the only way to really cure that is to have the free running
counters in their own PMU and not share with the GP counters of this
box.

Powered by blists - more mailing lists