linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] fix arm64 build with lack of __cpu_logical_map exported
@ 2020-08-08 12:42 Greg Kroah-Hartman
  2020-08-08 15:05 ` Catalin Marinas
  0 siblings, 1 reply; 6+ messages in thread
From: Greg Kroah-Hartman @ 2020-08-08 12:42 UTC (permalink / raw)
  To: Catalin Marinas, Will Deacon
  Cc: Gavin Shan, Mark Rutland, Sudeep Holla, linux-arm-kernel,
	linux-kernel, kernel-team

Currently Linus's tree fails with the following build error on arm64
makeallmodconfig:
	ERROR: modpost: "__cpu_logical_map" [drivers/cpufreq/tegra194-cpufreq.ko] undefined!

Seems that kernel.ci also notices this for the past 2 days:
	https://lore.kernel.org/r/5f2c97ab.1c69fb81.160f4.0196@mx.google.com
	https://lore.kernel.org/r/5f2ab734.1c69fb81.24b16.8537@mx.google.com

Fix this up by just exporting the symbol.  Don't know if it's the
"right" fix, but it solves the build error for my machines.

Reported-by: "kernelci.org bot" <bot@kernelci.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>


diff --git a/arch/arm64/kernel/setup.c b/arch/arm64/kernel/setup.c
index 87e81d29e6fb..b421a4756793 100644
--- a/arch/arm64/kernel/setup.c
+++ b/arch/arm64/kernel/setup.c
@@ -275,6 +275,7 @@ static int __init reserve_memblock_reserved_regions(void)
 arch_initcall(reserve_memblock_reserved_regions);
 
 u64 __cpu_logical_map[NR_CPUS] = { [0 ... NR_CPUS-1] = INVALID_HWID };
+EXPORT_SYMBOL_GPL(__cpu_logical_map);
 
 void __init __no_sanitize_address setup_arch(char **cmdline_p)
 {


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* Re: [PATCH] fix arm64 build with lack of __cpu_logical_map exported
  2020-08-08 12:42 [PATCH] fix arm64 build with lack of __cpu_logical_map exported Greg Kroah-Hartman
@ 2020-08-08 15:05 ` Catalin Marinas
  2020-08-08 15:29   ` Greg Kroah-Hartman
  2020-08-10  7:45   ` Sudeep Holla
  0 siblings, 2 replies; 6+ messages in thread
From: Catalin Marinas @ 2020-08-08 15:05 UTC (permalink / raw)
  To: Greg Kroah-Hartman
  Cc: Will Deacon, Gavin Shan, Mark Rutland, Sudeep Holla,
	linux-arm-kernel, linux-kernel, kernel-team, Sumit Gupta

Hi Greg,

On Sat, Aug 08, 2020 at 02:42:42PM +0200, Greg Kroah-Hartman wrote:
> diff --git a/arch/arm64/kernel/setup.c b/arch/arm64/kernel/setup.c
> index 87e81d29e6fb..b421a4756793 100644
> --- a/arch/arm64/kernel/setup.c
> +++ b/arch/arm64/kernel/setup.c
> @@ -275,6 +275,7 @@ static int __init reserve_memblock_reserved_regions(void)
>  arch_initcall(reserve_memblock_reserved_regions);
>  
>  u64 __cpu_logical_map[NR_CPUS] = { [0 ... NR_CPUS-1] = INVALID_HWID };
> +EXPORT_SYMBOL_GPL(__cpu_logical_map);

This was still under discussion, Sudeep preferring an alternative in the
driver:

http://lkml.kernel.org/r/20200727172744.GD8003@bogus
http://lkml.kernel.org/r/20200724131059.GB6521@bogus

Sumit came with a new diff inline that fixes the driver instead of
exporting the __cpu_logical_map.

https://lore.kernel.org/linux-arm-kernel/e3a4bc21-c334-4d48-90b5-aab8d187939e@nvidia.com/

Sumit, Sudeep, is the above diff sufficient and can it go upstream?

Thanks.

-- 
Catalin

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH] fix arm64 build with lack of __cpu_logical_map exported
  2020-08-08 15:05 ` Catalin Marinas
@ 2020-08-08 15:29   ` Greg Kroah-Hartman
  2020-08-08 18:29     ` Catalin Marinas
  2020-08-10  7:45   ` Sudeep Holla
  1 sibling, 1 reply; 6+ messages in thread
From: Greg Kroah-Hartman @ 2020-08-08 15:29 UTC (permalink / raw)
  To: Catalin Marinas
  Cc: Will Deacon, Gavin Shan, Mark Rutland, Sudeep Holla,
	linux-arm-kernel, linux-kernel, kernel-team, Sumit Gupta

On Sat, Aug 08, 2020 at 04:05:00PM +0100, Catalin Marinas wrote:
> Hi Greg,
> 
> On Sat, Aug 08, 2020 at 02:42:42PM +0200, Greg Kroah-Hartman wrote:
> > diff --git a/arch/arm64/kernel/setup.c b/arch/arm64/kernel/setup.c
> > index 87e81d29e6fb..b421a4756793 100644
> > --- a/arch/arm64/kernel/setup.c
> > +++ b/arch/arm64/kernel/setup.c
> > @@ -275,6 +275,7 @@ static int __init reserve_memblock_reserved_regions(void)
> >  arch_initcall(reserve_memblock_reserved_regions);
> >  
> >  u64 __cpu_logical_map[NR_CPUS] = { [0 ... NR_CPUS-1] = INVALID_HWID };
> > +EXPORT_SYMBOL_GPL(__cpu_logical_map);
> 
> This was still under discussion, Sudeep preferring an alternative in the
> driver:
> 
> http://lkml.kernel.org/r/20200727172744.GD8003@bogus
> http://lkml.kernel.org/r/20200724131059.GB6521@bogus
> 
> Sumit came with a new diff inline that fixes the driver instead of
> exporting the __cpu_logical_map.
> 
> https://lore.kernel.org/linux-arm-kernel/e3a4bc21-c334-4d48-90b5-aab8d187939e@nvidia.com/

Ok, but having a broken tree is not nice, how did this survive
linux-next testing?

> Sumit, Sudeep, is the above diff sufficient and can it go upstream?

Note that MIPS already export this symbol, so perhaps the drivers that
need it on that platform should also be fixed the same way?

thanks,

greg k-h

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH] fix arm64 build with lack of __cpu_logical_map exported
  2020-08-08 15:29   ` Greg Kroah-Hartman
@ 2020-08-08 18:29     ` Catalin Marinas
  2020-08-09  7:14       ` Greg Kroah-Hartman
  0 siblings, 1 reply; 6+ messages in thread
From: Catalin Marinas @ 2020-08-08 18:29 UTC (permalink / raw)
  To: Greg Kroah-Hartman
  Cc: Will Deacon, Gavin Shan, Mark Rutland, Sudeep Holla,
	linux-arm-kernel, linux-kernel, kernel-team, Sumit Gupta

On Sat, Aug 08, 2020 at 05:29:58PM +0200, Greg Kroah-Hartman wrote:
> On Sat, Aug 08, 2020 at 04:05:00PM +0100, Catalin Marinas wrote:
> > On Sat, Aug 08, 2020 at 02:42:42PM +0200, Greg Kroah-Hartman wrote:
> > > diff --git a/arch/arm64/kernel/setup.c b/arch/arm64/kernel/setup.c
> > > index 87e81d29e6fb..b421a4756793 100644
> > > --- a/arch/arm64/kernel/setup.c
> > > +++ b/arch/arm64/kernel/setup.c
> > > @@ -275,6 +275,7 @@ static int __init reserve_memblock_reserved_regions(void)
> > >  arch_initcall(reserve_memblock_reserved_regions);
> > >  
> > >  u64 __cpu_logical_map[NR_CPUS] = { [0 ... NR_CPUS-1] = INVALID_HWID };
> > > +EXPORT_SYMBOL_GPL(__cpu_logical_map);
> > 
> > This was still under discussion, Sudeep preferring an alternative in the
> > driver:
> > 
> > http://lkml.kernel.org/r/20200727172744.GD8003@bogus
> > http://lkml.kernel.org/r/20200724131059.GB6521@bogus
> > 
> > Sumit came with a new diff inline that fixes the driver instead of
> > exporting the __cpu_logical_map.
> > 
> > https://lore.kernel.org/linux-arm-kernel/e3a4bc21-c334-4d48-90b5-aab8d187939e@nvidia.com/
> 
> Ok, but having a broken tree is not nice, how did this survive
> linux-next testing?

I guess defconfig worked ok since tegra194-cpufreq is not a module so we
didn't bother much. The fault was reported for allmodconfig but the
discussion didn't conclude.

> > Sumit, Sudeep, is the above diff sufficient and can it go upstream?
> 
> Note that MIPS already export this symbol, so perhaps the drivers that
> need it on that platform should also be fixed the same way?

I push Kefeng's patch to the arm64 for-next/core branch which exports
cpu_logical_map() as a function. We can revert it later is the Tegra
driver is fixed.

I'll send Linus a pull request in a bit, once I finish testing the
branch.

-- 
Catalin

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH] fix arm64 build with lack of __cpu_logical_map exported
  2020-08-08 18:29     ` Catalin Marinas
@ 2020-08-09  7:14       ` Greg Kroah-Hartman
  0 siblings, 0 replies; 6+ messages in thread
From: Greg Kroah-Hartman @ 2020-08-09  7:14 UTC (permalink / raw)
  To: Catalin Marinas
  Cc: Will Deacon, Gavin Shan, Mark Rutland, Sudeep Holla,
	linux-arm-kernel, linux-kernel, kernel-team, Sumit Gupta

On Sat, Aug 08, 2020 at 07:29:08PM +0100, Catalin Marinas wrote:
> On Sat, Aug 08, 2020 at 05:29:58PM +0200, Greg Kroah-Hartman wrote:
> > On Sat, Aug 08, 2020 at 04:05:00PM +0100, Catalin Marinas wrote:
> > > On Sat, Aug 08, 2020 at 02:42:42PM +0200, Greg Kroah-Hartman wrote:
> > > > diff --git a/arch/arm64/kernel/setup.c b/arch/arm64/kernel/setup.c
> > > > index 87e81d29e6fb..b421a4756793 100644
> > > > --- a/arch/arm64/kernel/setup.c
> > > > +++ b/arch/arm64/kernel/setup.c
> > > > @@ -275,6 +275,7 @@ static int __init reserve_memblock_reserved_regions(void)
> > > >  arch_initcall(reserve_memblock_reserved_regions);
> > > >  
> > > >  u64 __cpu_logical_map[NR_CPUS] = { [0 ... NR_CPUS-1] = INVALID_HWID };
> > > > +EXPORT_SYMBOL_GPL(__cpu_logical_map);
> > > 
> > > This was still under discussion, Sudeep preferring an alternative in the
> > > driver:
> > > 
> > > http://lkml.kernel.org/r/20200727172744.GD8003@bogus
> > > http://lkml.kernel.org/r/20200724131059.GB6521@bogus
> > > 
> > > Sumit came with a new diff inline that fixes the driver instead of
> > > exporting the __cpu_logical_map.
> > > 
> > > https://lore.kernel.org/linux-arm-kernel/e3a4bc21-c334-4d48-90b5-aab8d187939e@nvidia.com/
> > 
> > Ok, but having a broken tree is not nice, how did this survive
> > linux-next testing?
> 
> I guess defconfig worked ok since tegra194-cpufreq is not a module so we
> didn't bother much. The fault was reported for allmodconfig but the
> discussion didn't conclude.
> 
> > > Sumit, Sudeep, is the above diff sufficient and can it go upstream?
> > 
> > Note that MIPS already export this symbol, so perhaps the drivers that
> > need it on that platform should also be fixed the same way?
> 
> I push Kefeng's patch to the arm64 for-next/core branch which exports
> cpu_logical_map() as a function. We can revert it later is the Tegra
> driver is fixed.
> 
> I'll send Linus a pull request in a bit, once I finish testing the
> branch.

Thanks, I see it's now in Linus's tree so all should be good.

Now to figure out the arm32 build mess...

greg k-h

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH] fix arm64 build with lack of __cpu_logical_map exported
  2020-08-08 15:05 ` Catalin Marinas
  2020-08-08 15:29   ` Greg Kroah-Hartman
@ 2020-08-10  7:45   ` Sudeep Holla
  1 sibling, 0 replies; 6+ messages in thread
From: Sudeep Holla @ 2020-08-10  7:45 UTC (permalink / raw)
  To: Catalin Marinas
  Cc: Greg Kroah-Hartman, Will Deacon, Gavin Shan, Mark Rutland,
	linux-arm-kernel, linux-kernel, kernel-team, Sumit Gupta,
	Sudeep Holla

Hi Catalin,

On Sat, Aug 08, 2020 at 04:05:00PM +0100, Catalin Marinas wrote:
> Hi Greg,
> 
> On Sat, Aug 08, 2020 at 02:42:42PM +0200, Greg Kroah-Hartman wrote:
> > diff --git a/arch/arm64/kernel/setup.c b/arch/arm64/kernel/setup.c
> > index 87e81d29e6fb..b421a4756793 100644
> > --- a/arch/arm64/kernel/setup.c
> > +++ b/arch/arm64/kernel/setup.c
> > @@ -275,6 +275,7 @@ static int __init reserve_memblock_reserved_regions(void)
> >  arch_initcall(reserve_memblock_reserved_regions);
> >  
> >  u64 __cpu_logical_map[NR_CPUS] = { [0 ... NR_CPUS-1] = INVALID_HWID };
> > +EXPORT_SYMBOL_GPL(__cpu_logical_map);
> 
> This was still under discussion, Sudeep preferring an alternative in the
> driver:
> 
> http://lkml.kernel.org/r/20200727172744.GD8003@bogus
> http://lkml.kernel.org/r/20200724131059.GB6521@bogus
> 
> Sumit came with a new diff inline that fixes the driver instead of
> exporting the __cpu_logical_map.
> 
> https://lore.kernel.org/linux-arm-kernel/e3a4bc21-c334-4d48-90b5-aab8d187939e@nvidia.com/
> 
> Sumit, Sudeep, is the above diff sufficient and can it go upstream?
> 

Yes I prefer the above in above thread. I will reply on that thread. Sorry
for missing, been a week.

-- 
Regards,
Sudeep

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2020-08-10  7:45 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-08-08 12:42 [PATCH] fix arm64 build with lack of __cpu_logical_map exported Greg Kroah-Hartman
2020-08-08 15:05 ` Catalin Marinas
2020-08-08 15:29   ` Greg Kroah-Hartman
2020-08-08 18:29     ` Catalin Marinas
2020-08-09  7:14       ` Greg Kroah-Hartman
2020-08-10  7:45   ` Sudeep Holla

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).