On Wed, Apr 03, 2024 at 08:50:59PM +0800, Dawei Li wrote: > Hi all, Hi, > This is v2 of [1] and [2] which basically eliminate cpumask var allocation > on stack for perf subsystem. > > Change since v1: > - Change from dynamic allocation to a temporary var free helper: > cpumask_any_and_but(). [Mark] > > - Some minor coding style improvements, reverse chrismas tree e.g. > > - For cpumask_any_and_but() itself: > - Moved to cpumask.h, just like other helpers. > - Return value converted to unsigned int. > - Remove EXPORT_SYMBOL, for obvious reason. Thanks for this! The logic all looks good; if you can spin a v3 with the updated commit messages I reckon we can queue this up shortly. Mark. > > [1]: > https://lore.kernel.org/lkml/20240402105610.1695644-1-dawei.li@xxxxxxxxxxxx/ > > [2]: > https://lore.kernel.org/lkml/1486381132-5610-1-git-send-email-mark.rutland@xxxxxxx/ > > Dawei Li (9): > perf/alibaba_uncore_drw: Avoid placing cpumask var on stack > perf/arm-cmn: Avoid placing cpumask var on stack > perf/arm_cspmu: Avoid placing cpumask var on stack > perf/arm_dsu: Avoid placing cpumask var on stack > perf/dwc_pcie: Avoid placing cpumask var on stack > perf/hisi_pcie: Avoid placing cpumask var on stack > perf/hisi_uncore: Avoid placing cpumask var on stack > perf/qcom_l2: Avoid placing cpumask var on stack > perf/thunderx2: Avoid placing cpumask var on stack > > Mark Rutland (1): > cpumask: add cpumask_any_and_but() > > drivers/perf/alibaba_uncore_drw_pmu.c | 10 +++------- > drivers/perf/arm-cmn.c | 10 +++++----- > drivers/perf/arm_cspmu/arm_cspmu.c | 8 +++----- > drivers/perf/arm_dsu_pmu.c | 19 ++++++------------- > drivers/perf/dwc_pcie_pmu.c | 10 ++++------ > drivers/perf/hisilicon/hisi_pcie_pmu.c | 9 ++++----- > drivers/perf/hisilicon/hisi_uncore_pmu.c | 6 ++---- > drivers/perf/qcom_l2_pmu.c | 8 +++----- > drivers/perf/thunderx2_pmu.c | 10 +++------- > include/linux/cpumask.h | 23 +++++++++++++++++++++++ > 10 files changed, 56 insertions(+), 57 deletions(-) > > Thanks, > > Dawei > > -- > 2.27.0 >