Re: [PATCH v5 2/2] perf: Fujitsu: Add the Uncore PCI PMU driver
From: Mark Rutland <mark.rutland@arm.com>
Date: 2025-07-14 13:32:36
Also in:
linux-arm-kernel, lkml
On Tue, Jul 01, 2025 at 06:13:57AM +0000, Koichi Okuno (Fujitsu) wrote:
Hi, Peter Sorry for the late reply.quoted
On Tue, Jun 17, 2025 at 07:27:50PM +0900, Koichi Okuno wrote:quoted
+ pcipmu->pmu = (struct pmu) { + .parent = dev, + .task_ctx_nr = perf_invalid_context, + + .pmu_enable = fujitsu_pci__pmu_enable, + .pmu_disable = fujitsu_pci__pmu_disable, + .event_init = fujitsu_pci__event_init, + .add = fujitsu_pci__event_add, + .del = fujitsu_pci__event_del, + .start = fujitsu_pci__event_start, + .stop = fujitsu_pci__event_stop, + .read = fujitsu_pci__event_read, +quoted
+ .attr_groups = fujitsu_pci_pmu_attr_grps,+ .capabilities = PERF_PMU_CAP_NO_EXCLUDE,Should these drivers not also have PERF_PMU_CAP_NO_INTERRUPT ? Per them being uncore they cannot generate samples.Even now, the fujitsu_pci__event_init() function rejects sampling events before checking PERF_PMU_CAP_NO_INTERRUPT in core.c. However, I think it is correct to have PERF_PMU_CAP_NO_INTERRUPT which means not being able to sample, so I will add NO_INTERRUPT in the next version.
Sorry to give contradictory feeback, but given that the majority of PMU drivers under drivers/perf/ don't set PERF_PMU_CAP_NO_INTERRUPT, and explicitly reject sampling events, I'd prefer to do the same for consistency. Peter, are you happy with that for now? Overall it would be better for PMUs to export a positive "I support sampling" flag, and maybe rename/replace PERF_PMU_CAP_NO_INTERRUPT accordingly, which I'd be happy to look at in future. Mark.