[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [PATCH] x86: Convert shadow-paging to Kconfig



On Mon, 2016-01-18 at 18:40 +0000, Andrew Cooper wrote:
> Signed-off-by: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>

Does this have any impact on migration of either PV or HVM guests? What
about nested virt?

Are things which are defined in xen/arch/*/Rules.mk in this way
overrideable from the old top-level .config or does one need to dive deeper
to modify them? If it's not configurable from top-level .config today then
I think it either needs a "depends EXPERT" or for the changelog to make a
convincing argument why this should be made user selectable.

Lastly, Tim is maintainer of the shadow code and should have been CC-d,
also George as maintainer of the mm stuff might have an interest. Both CC-s 
added.

> ---
> CC: Jan Beulich <JBeulich@xxxxxxxx>
> CC: Doug Goldstein <cardoe@xxxxxxxxxx>
> ---
> Âxen/arch/x86/KconfigÂÂÂÂÂÂÂÂÂÂÂÂ| 14 ++++++++++++++
> Âxen/arch/x86/Rules.mkÂÂÂÂÂÂÂÂÂÂÂ|ÂÂ4 ----
> Âxen/arch/x86/mm/shadow/Makefile |ÂÂ2 +-
> Â3 files changed, 15 insertions(+), 5 deletions(-)
> 
> diff --git a/xen/arch/x86/Kconfig b/xen/arch/x86/Kconfig
> index 4781b34..9869630 100644
> --- a/xen/arch/x86/Kconfig
> +++ b/xen/arch/x86/Kconfig
> @@ -27,6 +27,20 @@ menu "Architecture Features"
> Â
> Âsource "arch/Kconfig"
> Â
> +config SHADOW_PAGING
> +ÂÂÂÂÂÂÂÂbool "Shadow Paging"
> +ÂÂÂÂÂÂÂÂdefault y
> +ÂÂÂÂÂÂÂÂ---help---
> +ÂÂÂÂÂÂÂÂÂÂShadow paging is a software alternative to hardware paging
> support
> +ÂÂÂÂÂÂÂÂÂÂ(Intel EPT, AMD NPT) for use with HVM guests.
> +
> +ÂÂÂÂÂÂÂÂÂÂIt is required to run HVM guests for first-generation hardware
> +ÂÂÂÂÂÂÂÂÂÂvirtualisation (Intel VT-x, AMD SVM) which did not include
> hardware
> +ÂÂÂÂÂÂÂÂÂÂpaging support.ÂÂUnder a small number of specific workloads,
> shadow
> +ÂÂÂÂÂÂÂÂÂÂpaging may also be deliberately used as a performance
> improvement.
> +
> +ÂÂÂÂÂÂÂÂÂÂIf unsure, say Y.
> +
> Âconfig BIGMEM
> Â     bool "big memory support"
> Â     default n
> diff --git a/xen/arch/x86/Rules.mk b/xen/arch/x86/Rules.mk
> index a108d24..a1cdae0 100644
> --- a/xen/arch/x86/Rules.mk
> +++ b/xen/arch/x86/Rules.mk
> @@ -22,13 +22,9 @@ $(call as-insn-check,CFLAGS,CC,".equ \"x\"$$(comma)1",
> \
> ÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂ-U__OBJECT_LABEL__ -DHAVE_GAS_QUOTED_SYM \
> ÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂ'-D__OBJECT_LABEL__=$(subst
> $(BASEDIR)/,,$(CURDIR))/$$@')
> Â
> -shadow-paging ?= y
> -
> ÂCFLAGS += -mno-red-zone -mno-sse -fpic
> ÂCFLAGS += -fno-asynchronous-unwind-tables
> Â# -fvisibility=hidden reduces -fpic cost, if it's available
> Âifneq ($(call cc-option,$(CC),-fvisibility=hidden,n),n)
> ÂCFLAGS += -DGCC_HAS_VISIBILITY_ATTRIBUTE
> Âendif
> -
> -CFLAGS-$(shadow-paging) += -DCONFIG_SHADOW_PAGING
> diff --git a/xen/arch/x86/mm/shadow/Makefile
> b/xen/arch/x86/mm/shadow/Makefile
> index a07bc0c..df194ad 100644
> --- a/xen/arch/x86/mm/shadow/Makefile
> +++ b/xen/arch/x86/mm/shadow/Makefile
> @@ -1,4 +1,4 @@
> -ifeq ($(shadow-paging),y)
> +ifdef CONFIG_SHADOW_PAGING
> Âobj-y += common.o guest_2.o guest_3.o guest_4.o
> Âelse
> Âobj-y += none.o

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.