Hi Suzuki,
-----Original Message----- From: Suzuki K Poulose suzuki.poulose@arm.com Sent: Wednesday, November 16, 2022 7:26 AM To: Will Deacon will@kernel.org; kernelci.org bot bot@kernelci.org; Besar Wicaksono bwicaksono@nvidia.com Cc: catalin.marinas@arm.com; linux-arm-kernel@lists.infradead.org; kernel- build-reports@lists.linaro.org; kernelci-results@groups.io Subject: Re: arm64/for-kernelci build: 2 builds: 1 failed, 1 passed (v6.1-rc5-63- g9500fc6e9e60)
External email: Use caution opening links or attachments
On 16/11/2022 12:20, Will Deacon wrote:
Besar, Suzuki,
On Tue, Nov 15, 2022 at 05:49:06PM -0800, kernelci.org bot wrote:
arm64/for-kernelci build: 2 builds: 1 failed, 1 passed (v6.1-rc5-63-
g9500fc6e9e60)
Full Build Summary: https://kernelci.org/build/arm64/branch/for-
kernelci/kernel/v6.1-rc5-63-g9500fc6e9e60/
Tree: arm64 Branch: for-kernelci Git Describe: v6.1-rc5-63-g9500fc6e9e60 Git Commit: 9500fc6e9e6077616c0dea0f7eb33138be94ed0c Git URL: https://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git Built: 1 unique architecture
Build Failure Detected:
arm64: allmodconfig: (gcc-10) FAIL
This is caused by the new arm_cspmu modules:
| depmod: ERROR: Cycle detected: arm_cspmu -> nvidia_cspmu ->
arm_cspmu
| depmod: ERROR: Found 2 modules in dependency cycles!
Please can you send patches to fix this and the other build issue reported by Stephen Rothwell?
Sigh ! Apologies, I didn't spot this. A proper fix is too invasive, with addition of a provision for individual backend drivers to register an "impl_match" with generic arm_cspmu driver.
Until we get this, we could fold the nvidia_cspmu driver into the arm_csmpu module. Something like :
diff --git a/drivers/perf/arm_cspmu/Makefile b/drivers/perf/arm_cspmu/Makefile index 641db85c018b..169bc64334d4 100644 --- a/drivers/perf/arm_cspmu/Makefile +++ b/drivers/perf/arm_cspmu/Makefile @@ -2,6 +2,5 @@ # # SPDX-License-Identifier: GPL-2.0
-obj-$(CONFIG_ARM_CORESIGHT_PMU_ARCH_SYSTEM_PMU) += \
arm_cspmu.o \
nvidia_cspmu.o
+obj-$(CONFIG_ARM_CORESIGHT_PMU_ARCH_SYSTEM_PMU) += arm_cspmu_core.o +arm_cspmu_core-y := arm_cspmu.o nvidia_cspmu.o
Besar,
Please could you add a separate patch (for fixing it in later versions) as mentioned above ?
Thoughts ?
Sorry I did not check this. The arm_cspmu code is intended to have the functions to operate the PMU and the vendor code (currently just Nvidia) is an extension that have just the attributes. So, I think there is only one module to be built here and folding both arm_cspmu and nvidia_cspmu together is the proper fix.
Regards, Besar
Suzuki
Cheers,
Will