1. 10 7月, 2012 1 次提交
    • W
      ARM: 7448/1: perf: remove arm_perf_pmu_ids global enumeration · 4295b898
      Will Deacon 提交于
      In order to provide PMU name strings compatible with the OProfile
      user ABI, an enumeration of all PMUs is currently used by perf to
      identify each PMU uniquely. Unfortunately, this does not scale well
      in the presence of multiple PMUs and creates a single, global namespace
      across all PMUs in the system.
      
      This patch removes the enumeration and instead uses the name string
      for the PMU to map onto the OProfile variant. perf_pmu_name is
      implemented for CPU PMUs, which is all that OProfile cares about anyway.
      Signed-off-by: NWill Deacon <will.deacon@arm.com>
      Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
      4295b898
  2. 07 3月, 2012 1 次提交
    • W
      ARM: 7354/1: perf: limit sample_period to half max_period in non-sampling mode · 57273471
      Will Deacon 提交于
      On ARM, the PMU does not stop counting after an overflow and therefore
      IRQ latency affects the new counter value read by the kernel. This is
      significant for non-sampling runs where it is possible for the new value
      to overtake the previous one, causing the delta to be out by up to
      max_period events.
      
      Commit a737823d ("ARM: 6835/1: perf: ensure overflows aren't missed due
      to IRQ latency") attempted to fix this problem by allowing interrupt
      handlers to pass an overflow flag to the event update function, causing
      the overflow calculation to assume that the counter passed through zero
      when going from prev to new. Unfortunately, this doesn't work when
      overflow occurs on the perf_task_tick path because we have the flag
      cleared and end up computing a large negative delta.
      
      This patch removes the overflow flag from armpmu_event_update and
      instead limits the sample_period to half of the max_period for
      non-sampling profiling runs.
      
      Cc: <stable@vger.kernel.org>
      Signed-off-by: NMing Lei <ming.lei@canonical.com>
      Signed-off-by: NWill Deacon <will.deacon@arm.com>
      Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
      57273471
  3. 02 12月, 2011 1 次提交
  4. 16 11月, 2011 1 次提交
  5. 31 8月, 2011 2 次提交
  6. 12 8月, 2011 2 次提交
  7. 29 6月, 2011 1 次提交
    • M
      ARM: 6974/1: pmu: refactor reservation · f12482c9
      Mark Rutland 提交于
      Currently, PMU platform_device reservation relies on some minor abuse
      of the platform_device::id field for determining the type of PMU. This
      is problematic for device tree based probing, where the ID cannot be
      controlled.
      
      This patch removes reliance on the id field, and depends on each PMU's
      platform driver to figure out which type it is. As all PMUs handled by
      the current platform_driver name "arm-pmu" are CPU PMUs, this
      convention is hardcoded. New PMU types can be supported through the use
      of {of,platform}_device_id tables
      Signed-off-by: NMark Rutland <mark.rutland@arm.com>
      Acked-by: NJamie Iles <jamie@jamieiles.com>
      Acked-by: NWill Deacon <will.deacon@arm.com>
      Cc: Rob Herring <rob.herring@calxeda.com>
      Cc: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
      Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
      f12482c9
  8. 17 2月, 2011 1 次提交
  9. 17 5月, 2010 1 次提交
    • W
      ARM: 6064/1: pmu: register IRQs at runtime · 49c006b9
      Will Deacon 提交于
      The current PMU infrastructure for ARM requires that the IRQs for the PMU
      device are fixed at compile time and are selected based on the ARCH_ or MACH_ flags. This has the disadvantage of tying the Kernel down to a
      particular board as far as profiling is concerned.
      
      This patch replaces the compile-time IRQ registration with a runtime mechanism which allows the IRQs to be registered with the framework as
      a platform_device.
      
      A further advantage of this change is that there is scope for registering
      different types of performance counters in the future by changing the id
      of the platform_device and attaching different resources to it.
      Acked-by: NJamie Iles <jamie.iles@picochip.com>
      Signed-off-by: NWill Deacon <will.deacon@arm.com>
      Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
      49c006b9
  10. 30 4月, 2010 1 次提交
  11. 13 2月, 2010 1 次提交