2018-05-28 15:45:57

by Arnd Bergmann

[permalink] [raw]
Subject: [PATCH] ARM: mcpm, perf/arm-cci: export mcpm_is_available

Now that the ARM CCI PMU driver can be built as a loadable module,
we get a link failure when MCPM is enabled:

ERROR: "mcpm_is_available" [drivers/perf/arm-cci.ko] undefined!

The simplest fix is to export that helper function.

Fixes: 8b0c93c20ef7 ("perf/arm-cci: Allow building as a module")
Signed-off-by: Arnd Bergmann <[email protected]>
---
The patch that caused this is currently part of the arm-perf/for-next/perf
branch, it would be good to have the fix there as well.
---
arch/arm/common/mcpm_entry.c | 2 ++
1 file changed, 2 insertions(+)

diff --git a/arch/arm/common/mcpm_entry.c b/arch/arm/common/mcpm_entry.c
index ed9e87ddbb06..037a4479b8c3 100644
--- a/arch/arm/common/mcpm_entry.c
+++ b/arch/arm/common/mcpm_entry.c
@@ -9,6 +9,7 @@
* published by the Free Software Foundation.
*/

+#include <linux/export.h>
#include <linux/kernel.h>
#include <linux/init.h>
#include <linux/irqflags.h>
@@ -174,6 +175,7 @@ bool mcpm_is_available(void)
{
return (platform_ops) ? true : false;
}
+EXPORT_SYMBOL_GPL(mcpm_is_available);

/*
* We can't use regular spinlocks. In the switcher case, it is possible
--
2.9.0



2018-05-29 15:31:26

by Will Deacon

[permalink] [raw]
Subject: Re: [PATCH] ARM: mcpm, perf/arm-cci: export mcpm_is_available

Hi Arnd, Russell, [+Nico and Robin]

On Mon, May 28, 2018 at 05:44:36PM +0200, Arnd Bergmann wrote:
> Now that the ARM CCI PMU driver can be built as a loadable module,
> we get a link failure when MCPM is enabled:
>
> ERROR: "mcpm_is_available" [drivers/perf/arm-cci.ko] undefined!
>
> The simplest fix is to export that helper function.
>
> Fixes: 8b0c93c20ef7 ("perf/arm-cci: Allow building as a module")
> Signed-off-by: Arnd Bergmann <[email protected]>
> ---
> The patch that caused this is currently part of the arm-perf/for-next/perf
> branch, it would be good to have the fix there as well.
> ---
> arch/arm/common/mcpm_entry.c | 2 ++
> 1 file changed, 2 insertions(+)

I'm happy to take this via the arm perf tree if others are ok with that.
Alternatively, I can revert the offending commit if there are objections
to exporting the symbol.

Russell: do you any preference?

Thanks,

Will

> diff --git a/arch/arm/common/mcpm_entry.c b/arch/arm/common/mcpm_entry.c
> index ed9e87ddbb06..037a4479b8c3 100644
> --- a/arch/arm/common/mcpm_entry.c
> +++ b/arch/arm/common/mcpm_entry.c
> @@ -9,6 +9,7 @@
> * published by the Free Software Foundation.
> */
>
> +#include <linux/export.h>
> #include <linux/kernel.h>
> #include <linux/init.h>
> #include <linux/irqflags.h>
> @@ -174,6 +175,7 @@ bool mcpm_is_available(void)
> {
> return (platform_ops) ? true : false;
> }
> +EXPORT_SYMBOL_GPL(mcpm_is_available);
>
> /*
> * We can't use regular spinlocks. In the switcher case, it is possible
> --
> 2.9.0
>

2018-05-29 15:34:24

by Russell King (Oracle)

[permalink] [raw]
Subject: Re: [PATCH] ARM: mcpm, perf/arm-cci: export mcpm_is_available

On Tue, May 29, 2018 at 04:30:14PM +0100, Will Deacon wrote:
> Hi Arnd, Russell, [+Nico and Robin]
>
> On Mon, May 28, 2018 at 05:44:36PM +0200, Arnd Bergmann wrote:
> > Now that the ARM CCI PMU driver can be built as a loadable module,
> > we get a link failure when MCPM is enabled:
> >
> > ERROR: "mcpm_is_available" [drivers/perf/arm-cci.ko] undefined!
> >
> > The simplest fix is to export that helper function.
> >
> > Fixes: 8b0c93c20ef7 ("perf/arm-cci: Allow building as a module")
> > Signed-off-by: Arnd Bergmann <[email protected]>
> > ---
> > The patch that caused this is currently part of the arm-perf/for-next/perf
> > branch, it would be good to have the fix there as well.
> > ---
> > arch/arm/common/mcpm_entry.c | 2 ++
> > 1 file changed, 2 insertions(+)
>
> I'm happy to take this via the arm perf tree if others are ok with that.
> Alternatively, I can revert the offending commit if there are objections
> to exporting the symbol.
>
> Russell: do you any preference?

As it claims to fix 8b0c93c20ef7, which I don't have, I can't take this
patch. Do we know which tree has this?

--
RMK's Patch system: http://www.armlinux.org.uk/developer/patches/
FTTC broadband for 0.8mile line in suburbia: sync at 8.8Mbps down 630kbps up
According to speedtest.net: 8.21Mbps down 510kbps up

2018-05-29 15:41:34

by Will Deacon

[permalink] [raw]
Subject: Re: [PATCH] ARM: mcpm, perf/arm-cci: export mcpm_is_available

Hi Russell,

On Tue, May 29, 2018 at 04:33:24PM +0100, Russell King - ARM Linux wrote:
> On Tue, May 29, 2018 at 04:30:14PM +0100, Will Deacon wrote:
> > Hi Arnd, Russell, [+Nico and Robin]
> >
> > On Mon, May 28, 2018 at 05:44:36PM +0200, Arnd Bergmann wrote:
> > > Now that the ARM CCI PMU driver can be built as a loadable module,
> > > we get a link failure when MCPM is enabled:
> > >
> > > ERROR: "mcpm_is_available" [drivers/perf/arm-cci.ko] undefined!
> > >
> > > The simplest fix is to export that helper function.
> > >
> > > Fixes: 8b0c93c20ef7 ("perf/arm-cci: Allow building as a module")
> > > Signed-off-by: Arnd Bergmann <[email protected]>
> > > ---
> > > The patch that caused this is currently part of the arm-perf/for-next/perf
> > > branch, it would be good to have the fix there as well.
> > > ---
> > > arch/arm/common/mcpm_entry.c | 2 ++
> > > 1 file changed, 2 insertions(+)
> >
> > I'm happy to take this via the arm perf tree if others are ok with that.
> > Alternatively, I can revert the offending commit if there are objections
> > to exporting the symbol.
> >
> > Russell: do you any preference?
>
> As it claims to fix 8b0c93c20ef7, which I don't have, I can't take this
> patch. Do we know which tree has this?

Yes, sorry, it's in my for-next/perf branch:

https://git.kernel.org/pub/scm/linux/kernel/git/will/linux.git/commit/?h=for-next/perf&id=8b0c93c20ef78f15d8b760964ff79bda7f68c610

which is now in -next.

I'm happy to take the mcpm patch on top with your ack, but if you have
conflicting changes (or would prefer not to export the symbol to modules)
then I can just revert the patch in my tree for now.

Will

2018-05-29 15:44:21

by Russell King (Oracle)

[permalink] [raw]
Subject: Re: [PATCH] ARM: mcpm, perf/arm-cci: export mcpm_is_available

On Tue, May 29, 2018 at 04:41:20PM +0100, Will Deacon wrote:
> Hi Russell,
>
> On Tue, May 29, 2018 at 04:33:24PM +0100, Russell King - ARM Linux wrote:
> > On Tue, May 29, 2018 at 04:30:14PM +0100, Will Deacon wrote:
> > > Hi Arnd, Russell, [+Nico and Robin]
> > >
> > > On Mon, May 28, 2018 at 05:44:36PM +0200, Arnd Bergmann wrote:
> > > > Now that the ARM CCI PMU driver can be built as a loadable module,
> > > > we get a link failure when MCPM is enabled:
> > > >
> > > > ERROR: "mcpm_is_available" [drivers/perf/arm-cci.ko] undefined!
> > > >
> > > > The simplest fix is to export that helper function.
> > > >
> > > > Fixes: 8b0c93c20ef7 ("perf/arm-cci: Allow building as a module")
> > > > Signed-off-by: Arnd Bergmann <[email protected]>
> > > > ---
> > > > The patch that caused this is currently part of the arm-perf/for-next/perf
> > > > branch, it would be good to have the fix there as well.
> > > > ---
> > > > arch/arm/common/mcpm_entry.c | 2 ++
> > > > 1 file changed, 2 insertions(+)
> > >
> > > I'm happy to take this via the arm perf tree if others are ok with that.
> > > Alternatively, I can revert the offending commit if there are objections
> > > to exporting the symbol.
> > >
> > > Russell: do you any preference?
> >
> > As it claims to fix 8b0c93c20ef7, which I don't have, I can't take this
> > patch. Do we know which tree has this?
>
> Yes, sorry, it's in my for-next/perf branch:
>
> https://git.kernel.org/pub/scm/linux/kernel/git/will/linux.git/commit/?h=for-next/perf&id=8b0c93c20ef78f15d8b760964ff79bda7f68c610
>
> which is now in -next.
>
> I'm happy to take the mcpm patch on top with your ack, but if you have
> conflicting changes (or would prefer not to export the symbol to modules)
> then I can just revert the patch in my tree for now.

I have no changes to that file, so:

Acked-by: Russell King <[email protected]>

Thanks.

--
RMK's Patch system: http://www.armlinux.org.uk/developer/patches/
FTTC broadband for 0.8mile line in suburbia: sync at 8.8Mbps down 630kbps up
According to speedtest.net: 8.21Mbps down 510kbps up

2018-05-29 15:49:19

by Will Deacon

[permalink] [raw]
Subject: Re: [PATCH] ARM: mcpm, perf/arm-cci: export mcpm_is_available

On Tue, May 29, 2018 at 04:42:51PM +0100, Russell King - ARM Linux wrote:
> On Tue, May 29, 2018 at 04:41:20PM +0100, Will Deacon wrote:
> > Hi Russell,
> >
> > On Tue, May 29, 2018 at 04:33:24PM +0100, Russell King - ARM Linux wrote:
> > > On Tue, May 29, 2018 at 04:30:14PM +0100, Will Deacon wrote:
> > > > Hi Arnd, Russell, [+Nico and Robin]
> > > >
> > > > On Mon, May 28, 2018 at 05:44:36PM +0200, Arnd Bergmann wrote:
> > > > > Now that the ARM CCI PMU driver can be built as a loadable module,
> > > > > we get a link failure when MCPM is enabled:
> > > > >
> > > > > ERROR: "mcpm_is_available" [drivers/perf/arm-cci.ko] undefined!
> > > > >
> > > > > The simplest fix is to export that helper function.
> > > > >
> > > > > Fixes: 8b0c93c20ef7 ("perf/arm-cci: Allow building as a module")
> > > > > Signed-off-by: Arnd Bergmann <[email protected]>
> > > > > ---
> > > > > The patch that caused this is currently part of the arm-perf/for-next/perf
> > > > > branch, it would be good to have the fix there as well.
> > > > > ---
> > > > > arch/arm/common/mcpm_entry.c | 2 ++
> > > > > 1 file changed, 2 insertions(+)
> > > >
> > > > I'm happy to take this via the arm perf tree if others are ok with that.
> > > > Alternatively, I can revert the offending commit if there are objections
> > > > to exporting the symbol.
> > > >
> > > > Russell: do you any preference?
> > >
> > > As it claims to fix 8b0c93c20ef7, which I don't have, I can't take this
> > > patch. Do we know which tree has this?
> >
> > Yes, sorry, it's in my for-next/perf branch:
> >
> > https://git.kernel.org/pub/scm/linux/kernel/git/will/linux.git/commit/?h=for-next/perf&id=8b0c93c20ef78f15d8b760964ff79bda7f68c610
> >
> > which is now in -next.
> >
> > I'm happy to take the mcpm patch on top with your ack, but if you have
> > conflicting changes (or would prefer not to export the symbol to modules)
> > then I can just revert the patch in my tree for now.
>
> I have no changes to that file, so:
>
> Acked-by: Russell King <[email protected]>

Thanks, I've picked up the fix from Arnd with your Ack and will push out
this evening.

Will

2018-05-29 15:53:50

by Nicolas Pitre

[permalink] [raw]
Subject: Re: [PATCH] ARM: mcpm, perf/arm-cci: export mcpm_is_available

On Tue, 29 May 2018, Will Deacon wrote:

> Hi Arnd, Russell, [+Nico and Robin]
>
> On Mon, May 28, 2018 at 05:44:36PM +0200, Arnd Bergmann wrote:
> > Now that the ARM CCI PMU driver can be built as a loadable module,
> > we get a link failure when MCPM is enabled:
> >
> > ERROR: "mcpm_is_available" [drivers/perf/arm-cci.ko] undefined!
> >
> > The simplest fix is to export that helper function.
> >
> > Fixes: 8b0c93c20ef7 ("perf/arm-cci: Allow building as a module")
> > Signed-off-by: Arnd Bergmann <[email protected]>
> > ---
> > The patch that caused this is currently part of the arm-perf/for-next/perf
> > branch, it would be good to have the fix there as well.
> > ---
> > arch/arm/common/mcpm_entry.c | 2 ++
> > 1 file changed, 2 insertions(+)
>
> I'm happy to take this via the arm perf tree if others are ok with that.
> Alternatively, I can revert the offending commit if there are objections
> to exporting the symbol.

Looks fine to me.

Acked-by: Nicolas Pitre <[email protected]>


Nicolas