Re: [Suggestion] arch: arm64: xen: "ln -s" the paravirt.h from arm.

From: Catalin Marinas
Date: Tue Jun 25 2013 - 09:26:14 EST


On Mon, Jun 24, 2013 at 05:50:46PM +0100, Stefano Stabellini wrote:
> On Mon, 24 Jun 2013, Stefano Stabellini wrote:
> > On Mon, 24 Jun 2013, Chen Gang wrote:
> > > Hello Maintainers:
> > >
> > > if 'CONFIG_XEN'
> > >
> > > CC arch/arm64/xen/../../arm/xen/enlighten.o
> > > arch/arm64/xen/../../arm/xen/enlighten.c:19:26: fatal error: asm/paravirt.h: No such file or directory
> > >
> > > The related .config file for next-20130624 is in attachment.
> > >
> > >
> > > If "ln -s ../../../arm/include/asm/paravirt.h paravirt.h", it can pass
> > > compiling, but I do not know how to make a patch for it ("ln -s ..."),
> > > Do we have another more suitable ways for it (or another fixing ways) ?
> > >
> > > Welcome any suggestions or completions.
> >
> > The problem is caused by:
> >
> > commit 3a885582a366caf868b0782041c44854ff4c3568
> > Author: Stefano Stabellini <stefano.stabellini@xxxxxxxxxxxxx>
> > Date: Wed May 29 10:56:34 2013 +0000
> >
> > xen/arm: account for stolen ticks
> >
> > that is in my tree for linux-next (even though I have not received any
> > replies from the ARM maintainers so I don't know when and if it is going
> > to go upstream).
> >
> > I think that the best thing to do would be to add a couple of ifdef
> > CONFIG_PARAVIRT in arch/arm/xen/enlighten.c. I'll add them to my tree.
>
> Actually now that we have XEN support under arm64, we can just introduce the
> same pv_time_op struct and paravirt header that this patch
>
> http://marc.info/?l=linux-arm-kernel&m=136992435301890&w=2
>
> is introducing under arm.

I'm not sure whether I replied to your Xen pull request but the patches
have been merged into my 'upstream' branch on git.kernel.org and they'll
be going in for 3.11-rc1.

> diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
> index 19c1cde..47bd26b 100644
> --- a/arch/arm64/Kconfig
> +++ b/arch/arm64/Kconfig
> @@ -207,6 +207,25 @@ config FORCE_MAX_ZONEORDER
> default "14" if (ARM64_64K_PAGES && TRANSPARENT_HUGEPAGE)
> default "11"
>
> +config PARAVIRT
> + bool "Enable paravirtualization code"
> + ---help---
> + This changes the kernel so it can modify itself when it is run
> + under a hypervisor, potentially improving performance significantly
> + over full virtualization.
> +
> +config PARAVIRT_TIME_ACCOUNTING
> + bool "Paravirtual steal time accounting"
> + select PARAVIRT
> + default n

No need for "default n".

If you want, I can apply this patch on top (or send me another pull
request but don't rebase your original Xen branch which I merged).

--
Catalin
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/