All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v9 00/10] Enable PMUs in ACPI systems
@ 2016-09-14 22:32 ` Jeremy Linton
  0 siblings, 0 replies; 42+ messages in thread
From: Jeremy Linton @ 2016-09-14 22:32 UTC (permalink / raw)
  To: linux-arm-kernel
  Cc: mark.rutland, will.deacon, punit.agrawal, linux-acpi, mlangsdorf,
	steve.capper

This patch expands and reworks the patches published by Mark Salter
in order to clean up a few of the previous review comments, as well as
add support for newer CPUs and big/little configurations.

v9:
Add/cleanup an additional hotplug patch I've had sitting around. This
patch brings the ACPI PMU mostly on par with the DT functionality with
respect to having CPUs offline during boot. This should help clarify
some of the code structuring.
Cleanup the list of PMU types early if we fail to allocate memory for an
additional pmu type.

v8:
Rebase to 4.8rc4
Assorted minor comment/hunk placement/etc tweaks per Punit Agrawal

v7:
Rebase to 4.8rc3
Remove cpu affinity sysfs entry. While providing a CPU mask for
ARMv8 PMU's is really helpful in big/little environments, reworking
the PMU code to support the cpumask attribute for !arm64 PMUs is out
of the scope of this patch set.
Fix CPU miscount problem where an alloc failure followed by successfully
allocating the structure can result in under counting the CPUs associated
with the PMU. This bug was created in v6 with the conversion to a linked
list.
Remove initial platform device creation code by Mark Salter, and re-squash
multiple platform device creation code together with helper routines.
Other minor tweakage.

v6:
Added cpu affinity sysfs entry
Converted pmu_types array, to linked list
Restrict use of the armv8_pmu_probe_table to ACPI systems
Rename MADT parsing routines in smp.c
Convert sysfs PMU name to use index rather than partnum
Remove pr_devel statements
Other Minor cleanups
Add Partial Ack-by Will Deacon

v5:
Remove list of CPU types for ACPI systems. We now match a generic
event list, and use the PMCIED[01] to select events which exist on
the given PMU. This avoids the need to update the kernel every time
a new CPU is released.
Update the maintainers list to include the new file.

v4:
Correct build issues with ARM (!ARM64) kernels.
Add ThunderX to list of PMU types.

v3:
Enable ARM performance monitoring units on ACPI/arm64 machines.

Jeremy Linton (8):
  arm64: pmu: Probe default hw/cache counters
  arm64: pmu: Hoist pmu platform device name
  arm64: Rename the common MADT parse routine
  arm: arm64: Add routine to determine cpuid of other cpus
  arm: arm64: pmu: Assign platform PMU CPU affinity
  arm64: pmu: Detect and enable multiple PMUs in an ACPI system
  arm: pmu: Add PMU definitions for hot-plugged CPUs
  MAINTAINERS: Tweak ARM PMU maintainers

Mark Salter (2):
  arm64: pmu: add fallback probe table
  arm64: pmu: Cache PMU interrupt numbers from MADT parse

 MAINTAINERS                      |   3 +-
 arch/arm/include/asm/cputype.h   |   2 +
 arch/arm64/include/asm/cputype.h |   3 +
 arch/arm64/kernel/perf_event.c   |  58 ++++++++-
 arch/arm64/kernel/smp.c          |  18 ++-
 drivers/perf/Kconfig             |   4 +
 drivers/perf/Makefile            |   1 +
 drivers/perf/arm_pmu.c           | 110 ++++++++++++++--
 drivers/perf/arm_pmu_acpi.c      | 264 +++++++++++++++++++++++++++++++++++++++
 include/linux/perf/arm_pmu.h     |  13 ++
 10 files changed, 452 insertions(+), 24 deletions(-)
 create mode 100644 drivers/perf/arm_pmu_acpi.c

-- 
2.5.5


^ permalink raw reply	[flat|nested] 42+ messages in thread

end of thread, other threads:[~2016-09-20 16:12 UTC | newest]

Thread overview: 42+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-09-14 22:32 [PATCH v9 00/10] Enable PMUs in ACPI systems Jeremy Linton
2016-09-14 22:32 ` Jeremy Linton
2016-09-14 22:32 ` [PATCH v9 01/10] arm64: pmu: add fallback probe table Jeremy Linton
2016-09-14 22:32   ` Jeremy Linton
2016-09-14 22:32 ` [PATCH v9 02/10] arm64: pmu: Probe default hw/cache counters Jeremy Linton
2016-09-14 22:32   ` Jeremy Linton
2016-09-14 22:32 ` [PATCH v9 03/10] arm64: pmu: Hoist pmu platform device name Jeremy Linton
2016-09-14 22:32   ` Jeremy Linton
2016-09-14 22:32 ` [PATCH v9 04/10] arm64: Rename the common MADT parse routine Jeremy Linton
2016-09-14 22:32   ` Jeremy Linton
2016-09-14 22:32 ` [PATCH v9 05/10] arm: arm64: Add routine to determine cpuid of other cpus Jeremy Linton
2016-09-14 22:32   ` Jeremy Linton
2016-09-14 22:32 ` [PATCH v9 06/10] arm64: pmu: Cache PMU interrupt numbers from MADT parse Jeremy Linton
2016-09-14 22:32   ` Jeremy Linton
2016-09-14 22:32 ` [PATCH v9 07/10] arm: arm64: pmu: Assign platform PMU CPU affinity Jeremy Linton
2016-09-14 22:32   ` Jeremy Linton
2016-09-16 13:29   ` Will Deacon
2016-09-16 13:29     ` Will Deacon
2016-09-16 15:35     ` Jeremy Linton
2016-09-16 15:35       ` Jeremy Linton
2016-09-16 15:48       ` Will Deacon
2016-09-16 15:48         ` Will Deacon
2016-09-16 16:37   ` Punit Agrawal
2016-09-16 16:37     ` Punit Agrawal
2016-09-14 22:32 ` [PATCH v9 08/10] arm64: pmu: Detect and enable multiple PMUs in an ACPI system Jeremy Linton
2016-09-14 22:32   ` Jeremy Linton
2016-09-16 13:33   ` Punit Agrawal
2016-09-16 13:33     ` Punit Agrawal
2016-09-16 16:32     ` Jeremy Linton
2016-09-16 16:32       ` Jeremy Linton
2016-09-16 17:07       ` Punit Agrawal
2016-09-16 17:07         ` Punit Agrawal
2016-09-16 17:57         ` Jeremy Linton
2016-09-16 17:57           ` Jeremy Linton
2016-09-20 16:11           ` Punit Agrawal
2016-09-20 16:11             ` Punit Agrawal
2016-09-14 22:32 ` [PATCH v9 09/10] arm: pmu: Add PMU definitions for hot-plugged CPUs Jeremy Linton
2016-09-14 22:32   ` Jeremy Linton
2016-09-14 22:32 ` [PATCH v9 10/10] MAINTAINERS: Tweak ARM PMU maintainers Jeremy Linton
2016-09-14 22:32   ` Jeremy Linton
2016-09-16 17:13 ` [PATCH v9 00/10] Enable PMUs in ACPI systems Punit Agrawal
2016-09-16 17:13   ` Punit Agrawal

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.