This is the third revision of a patchset allowing multiple sources to select the same sink for a session which is a prerequisite for the support of CoreSight CPU-wide trace scenarios. The sink ID is communicated to the kernel by way of the event's configuration attribute (event::attr:config2). The ID itself is an hash of the sink's name, something that is readily available and unique. With this set the mechanic to communicate sink selection to the kernel via sysfs is no longer needed and removed. Applies cleanly and tested on 5.0-rc4. Thanks, Mathieu Changes for V3: * Rebased to rc4. * Fixed a perf tools command line problem (reported by Suzuki). * Enhanced error handling in etm_perf_add_symlink_sink(). * Modified memory allocation to used devm_xyx() API. * Went from using struct device_attribute to struct dev_ext_attribute. Changes for V2: * Addressed memory leak in etm_perf_add_symlink_sink() * Keep track of device attribute for future removal. * Added PMU attribure for config2. * Fixed email address signature. Mathieu Poirier (7): perf/aux: Make perf_event accessible to setup_aux() coresight: perf: Add "sinks" group to PMU directory coresight: Use event attributes for sink selection perf pmu: Moving EVENT_SOURCE_DEVICE_PATH to PMU header file perf tools: Use event attributes to send sink information to kernel perf tools: Removing CoreSight set_drv_config() API perf tools: Remove PMU::set_drv_config API arch/s390/kernel/perf_cpum_sf.c | 6 +- arch/x86/events/intel/bts.c | 4 +- arch/x86/events/intel/pt.c | 5 +- .../hwtracing/coresight/coresight-etm-perf.c | 112 +++++++++++++++--- .../hwtracing/coresight/coresight-etm-perf.h | 6 +- drivers/hwtracing/coresight/coresight-priv.h | 1 + drivers/hwtracing/coresight/coresight.c | 60 ++++++++++ drivers/perf/arm_spe_pmu.c | 6 +- include/linux/coresight.h | 7 +- include/linux/perf_event.h | 2 +- kernel/events/ring_buffer.c | 2 +- tools/perf/arch/arm/util/cs-etm.c | 98 +++++++-------- tools/perf/arch/arm/util/cs-etm.h | 3 - tools/perf/arch/arm/util/pmu.c | 2 - tools/perf/builtin-record.c | 10 -- tools/perf/builtin-stat.c | 9 -- tools/perf/builtin-top.c | 13 -- tools/perf/util/Build | 1 - tools/perf/util/drv_configs.c | 78 ------------ tools/perf/util/drv_configs.h | 26 ---- tools/perf/util/pmu.c | 2 - tools/perf/util/pmu.h | 2 +- 22 files changed, 227 insertions(+), 228 deletions(-) delete mode 100644 tools/perf/util/drv_configs.c delete mode 100644 tools/perf/util/drv_configs.h -- 2.17.1