[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <df361d1c-13e2-4a47-aaf7-c8ffc5b1ad2a@redhat.com>
Date: Tue, 11 Jun 2024 14:32:09 -0400
From: Waiman Long <longman@...hat.com>
To: Fred Griffoul <fgriffo@...zon.co.uk>, griffoul@...il.com
Cc: kernel test robot <lkp@...el.com>,
Catalin Marinas <catalin.marinas@....com>, Will Deacon <will@...nel.org>,
Alex Williamson <alex.williamson@...hat.com>,
Zefan Li <lizefan.x@...edance.com>, Tejun Heo <tj@...nel.org>,
Johannes Weiner <hannes@...xchg.org>, Mark Rutland <mark.rutland@....com>,
Marc Zyngier <maz@...nel.org>, Oliver Upton <oliver.upton@...ux.dev>,
Mark Brown <broonie@...nel.org>, Ard Biesheuvel <ardb@...nel.org>,
Joey Gouly <joey.gouly@....com>, Ryan Roberts <ryan.roberts@....com>,
Jeremy Linton <jeremy.linton@....com>, Jason Gunthorpe <jgg@...pe.ca>,
Yi Liu <yi.l.liu@...el.com>, Kevin Tian <kevin.tian@...el.com>,
Eric Auger <eric.auger@...hat.com>, Stefan Hajnoczi <stefanha@...hat.com>,
Christian Brauner <brauner@...nel.org>, Ankit Agrawal <ankita@...dia.com>,
Reinette Chatre <reinette.chatre@...el.com>, Ye Bin <yebin10@...wei.com>,
linux-arm-kernel@...ts.infradead.org, linux-kernel@...r.kernel.org,
kvm@...r.kernel.org, cgroups@...r.kernel.org
Subject: Re: [PATCH v6 1/2] cgroup/cpuset: export cpuset_cpus_allowed()
On 6/11/24 13:44, Fred Griffoul wrote:
> A subsequent patch calls cpuset_cpus_allowed() in the vfio driver pci
> code. Export the symbol to be able to build the vfio driver as a kernel
> module.
>
> This is not enough, however: when CONFIG_CPUSETS is _not_ defined
> cpuset_cpus_allowed() is an inline function returning
> task_cpu_possible_mask(). For the arm64 architecture this function is
> also inline: it checks the arm64_mismatched_32bit_el0 static key and
> calls system_32bit_el0_cpumask(). We need to export those symbols as
> well.
>
> Signed-off-by: Fred Griffoul <fgriffo@...zon.co.uk>
> Reported-by: kernel test robot <lkp@...el.com>
> Closes: https://lore.kernel.org/oe-kbuild-all/202406060731.L3NSR1Hy-lkp@intel.com/
> Closes: https://lore.kernel.org/oe-kbuild-all/202406070659.pYu6zNrx-lkp@intel.com/
> Closes: https://lore.kernel.org/oe-kbuild-all/202406101154.iaDyTRwZ-lkp@intel.com/
> ---
> arch/arm64/kernel/cpufeature.c | 2 ++
> kernel/cgroup/cpuset.c | 1 +
> 2 files changed, 3 insertions(+)
>
> diff --git a/arch/arm64/kernel/cpufeature.c b/arch/arm64/kernel/cpufeature.c
> index 56583677c1f2..2f1de6343bee 100644
> --- a/arch/arm64/kernel/cpufeature.c
> +++ b/arch/arm64/kernel/cpufeature.c
> @@ -127,6 +127,7 @@ static bool __read_mostly allow_mismatched_32bit_el0;
> * seen at least one CPU capable of 32-bit EL0.
> */
> DEFINE_STATIC_KEY_FALSE(arm64_mismatched_32bit_el0);
> +EXPORT_SYMBOL_GPL(arm64_mismatched_32bit_el0);
>
> /*
> * Mask of CPUs supporting 32-bit EL0.
> @@ -1614,6 +1615,7 @@ const struct cpumask *system_32bit_el0_cpumask(void)
>
> return cpu_possible_mask;
> }
> +EXPORT_SYMBOL_GPL(system_32bit_el0_cpumask);
>
> static int __init parse_32bit_el0_param(char *str)
> {
> diff --git a/kernel/cgroup/cpuset.c b/kernel/cgroup/cpuset.c
> index 4237c8748715..9fd56222aa4b 100644
> --- a/kernel/cgroup/cpuset.c
> +++ b/kernel/cgroup/cpuset.c
> @@ -4764,6 +4764,7 @@ void cpuset_cpus_allowed(struct task_struct *tsk, struct cpumask *pmask)
> rcu_read_unlock();
> spin_unlock_irqrestore(&callback_lock, flags);
> }
> +EXPORT_SYMBOL_GPL(cpuset_cpus_allowed);
>
> /**
> * cpuset_cpus_allowed_fallback - final fallback before complete catastrophe.
Acked-by: Waiman Long <longman@...hat.com>
Powered by blists - more mailing lists