xen drivers fail to link on ARM with v3.12-9888-gf63c482
Stefano Stabellini
stefano.stabellini at eu.citrix.com
Sun Nov 17 11:18:29 EST 2013
On Sat, 16 Nov 2013, Josh Boyer wrote:
> On Sat, Nov 16, 2013 at 9:56 AM, Josh Boyer <jwboyer at fedoraproject.org> wrote:
> > Hi All,
> >
> > The xen-gntalloc, xen-netfront, xen-blkfront, and xen-netback drivers
> > fail to link on ARM today with the following error:
> >
> > ERROR: "phys_to_mach" [drivers/xen/xen-gntalloc.ko] undefined!
> > ERROR: "phys_to_mach" [drivers/net/xen-netfront.ko] undefined!
> > ERROR: "phys_to_mach" [drivers/net/xen-netback/xen-netback.ko] undefined!
> > ERROR: "phys_to_mach" [drivers/block/xen-blkfront.ko] undefined!
> >
> > This is with Linus' tree as of this morning.
> >
> > I'm guessing this is because the mfn_to_pfn and pfn_to_mfn functions
> > are inlined and reference phys_to_mach directly, and that isn't
> > exported to modules. Thoughts?
>
> The patch below seems to fix this, but I'm not sure it's the desired
> approach. I added the export for mach_to_phys just in case.
>
Thank you for letting me know of the problem and thank you for the
patch!
> diff --git a/arch/arm/xen/p2m.c b/arch/arm/xen/p2m.c
> index 23732cd..7772fa8 100644
> --- a/arch/arm/xen/p2m.c
> +++ b/arch/arm/xen/p2m.c
> @@ -27,7 +27,9 @@ struct xen_p2m_entry {
>
> rwlock_t p2m_lock;
> struct rb_root phys_to_mach = RB_ROOT;
> +EXPORT_SYMBOL_GPL(phys_to_mach);
> static struct rb_root mach_to_phys = RB_ROOT;
> +EXPORT_SYMBOL_GPL(mach_to_phys);
>
The approach is OK but mach_to_phys should not be exported.
Can you please resent the patch only exporting phys_to_mach and with
your signed-off-by line so that I can send it to Linus as soon as
possible?
More information about the linux-arm-kernel
mailing list