android_kernel_motorola_sm6225/arch/x86/kernel/cpu
Robert Richter 1e2ad28f80 perf, x86: Implement event scheduler helper functions
This patch introduces x86 perf scheduler code helper functions. We
need this to later add more complex functionality to support
overlapping counter constraints (next patch).

The algorithm is modified so that the range of weight values is now
generated from the constraints. There shouldn't be other functional
changes.

With the helper functions the scheduler is controlled. There are
functions to initialize, traverse the event list, find unused counters
etc. The scheduler keeps its own state.

V3:
* Added macro for_each_set_bit_cont().
* Changed functions interfaces of perf_sched_find_counter() and
  perf_sched_next_event() to use bool as return value.
* Added some comments to make code better understandable.

V4:
* Fix broken event assignment if weight of the first event is not
  wmin (perf_sched_init()).

Signed-off-by: Robert Richter <robert.richter@amd.com>
Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Stephane Eranian <eranian@google.com>
Link: http://lkml.kernel.org/r/1321616122-1533-2-git-send-email-robert.richter@amd.com
Signed-off-by: Ingo Molnar <mingo@elte.hu>
2011-12-06 08:33:54 +01:00
..
mcheck Merge branch 'modsplit-Oct31_2011' of git://git.kernel.org/pub/scm/linux/kernel/git/paulg/linux 2011-11-06 19:44:47 -08:00
mtrr mtrr: fix UP breakage caused during switch to stop_machine 2011-08-25 11:02:29 -07:00
.gitignore
amd.c x86: Fix files explicitly requiring export.h for EXPORT_SYMBOL/THIS_MODULE 2011-10-31 19:30:35 -04:00
bugs.c x86-32, fpu: Fix DNA exception during check_fpu() 2011-06-30 17:29:47 -07:00
bugs_64.c
centaur.c
common.c Merge branch 'x86-rdrand-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2011-10-28 05:29:07 -07:00
cpu.h x86: Add a BSP cpu_dev helper 2011-08-05 12:26:49 -07:00
cyrix.c
hypervisor.c x86, hyper: Change hypervisor detection order 2011-07-08 16:22:29 -07:00
intel.c x86, intel: Use c->microcode for Atom errata check 2011-10-14 13:16:38 +02:00
intel_cacheinfo.c x86: cache_info: Update calculation of AMD L3 cache indices 2011-09-12 19:29:03 +02:00
Makefile Merge branch 'x86-rdrand-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2011-10-28 05:29:07 -07:00
mkcapflags.pl
mshyperv.c x86: Hyper-V: Integrate the clocksource with Hyper-V detection code 2011-09-08 10:33:59 +02:00
perf_event.c perf, x86: Implement event scheduler helper functions 2011-12-06 08:33:54 +01:00
perf_event.h perf, intel: Use GO/HO bits in perf-ctr 2011-10-10 06:56:42 +02:00
perf_event_amd.c perf, x86: Share IBS macros between perf and oprofile 2011-10-10 06:57:11 +02:00
perf_event_amd_ibs.c perf, x86: Force IBS LVT offset assignment for family 10h 2011-12-05 09:32:59 +01:00
perf_event_intel.c perf, x86: Disable PEBS on SandyBridge chips 2011-12-05 09:32:38 +01:00
perf_event_intel_ds.c perf/x86: Fix PEBS instruction unwind 2011-11-14 13:01:20 +01:00
perf_event_intel_lbr.c x86, perf: Clean up perf_event cpu code 2011-09-26 12:58:00 +02:00
perf_event_p4.c perf: Don't use -ENOSPC for out of PMU resources 2011-11-14 13:01:24 +01:00
perf_event_p6.c x86, perf: Clean up perf_event cpu code 2011-09-26 12:58:00 +02:00
perfctr-watchdog.c perf, x86: Add new AMD family 15h msrs to perfctr reservation code 2011-02-16 13:30:50 +01:00
powerflags.c
proc.c x86, microcode: Correct microcode revision format 2011-10-19 15:47:48 +02:00
rdrand.c x86, random: Verify RDRAND functionality and allow it to be disabled 2011-07-31 14:02:19 -07:00
scattered.c Merge branch 'x86-amd-nb-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip 2010-10-21 13:01:08 -07:00
sched.c
topology.c x86, cpu: Split addon_cpuid_features.c 2010-07-19 19:02:41 -07:00
transmeta.c
umc.c
vmware.c x86: Fix common misspellings 2011-03-18 10:39:30 +01:00