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

Re: [PATCH] xen/arm: fix the build error for GIC



Hello,

On 22/12/2021 09:38, Dongjiu Geng wrote:
when enable CONFIG_NEW_VGIC in ARM64 QEMU Platform, it will build failed.
so fix it and make it can select GICV2.

Last time I checked QEMU, it was only able to support GICv3 virtualization. Has it changed since?


Signed-off-by: Dongjiu Geng <gengdongjiu1@xxxxxxxxx>
---
$ make dist-xen XEN_TARGET_ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- -j10
make -C xen install
make[1]: Entering directory 
'/home/workspace/gengdongjiu/old_machine/XEN/xen/xen'
make -f /home/workspace/gengdongjiu/old_machine/XEN/xen/xen/tools/kconfig/Makefile.kconfig 
ARCH=arm64 SRCARCH=arm HOSTCC="gcc" HOSTCXX="g++" syncconfig
make[2]: Entering directory 
'/home/workspace/gengdongjiu/old_machine/XEN/xen/xen'
gcc -Wp,-MD,tools/kconfig/.conf.o.d      -c -o tools/kconfig/conf.o 
tools/kconfig/conf.c
gcc -Wp,-MD,tools/kconfig/.confdata.o.d      -c -o tools/kconfig/confdata.o 
tools/kconfig/confdata.c
gcc -Wp,-MD,tools/kconfig/.expr.o.d      -c -o tools/kconfig/expr.o 
tools/kconfig/expr.c
flex -otools/kconfig/lexer.lex.c -L tools/kconfig/lexer.l
bison -o tools/kconfig/parser.tab.c --defines=tools/kconfig/parser.tab.h -t -l 
tools/kconfig/parser.y
gcc -Wp,-MD,tools/kconfig/.preprocess.o.d      -c -o tools/kconfig/preprocess.o 
tools/kconfig/preprocess.c
gcc -Wp,-MD,tools/kconfig/.symbol.o.d      -c -o tools/kconfig/symbol.o 
tools/kconfig/symbol.c
gcc -Wp,-MD,tools/kconfig/.lexer.lex.o.d     -I 
/home/workspace/gengdongjiu/old_machine/XEN/xen/xen/tools/kconfig -c -o 
tools/kconfig/lexer.lex.o tools/kconfig/lexer.lex.c
gcc -Wp,-MD,tools/kconfig/.parser.tab.o.d     -I 
/home/workspace/gengdongjiu/old_machine/XEN/xen/xen/tools/kconfig -c -o 
tools/kconfig/parser.tab.o tools/kconfig/parser.tab.c
gcc  -o tools/kconfig/conf tools/kconfig/conf.o tools/kconfig/confdata.o 
tools/kconfig/expr.o tools/kconfig/lexer.lex.o tools/kconfig/parser.tab.o 
tools/kconfig/preprocess.o tools/kconfig/symbol.o
tools/kconfig/conf  --syncconfig Kconfig

WARNING: unmet direct dependencies detected for GICV3
   Depends on [n]: ARM_64 [=y] && !NEW_VGIC [=y]
   Selected by [y]:
   - QEMU [=y] && <choice> && ARM_64 [=y]

WARNING: unmet direct dependencies detected for GICV3
   Depends on [n]: ARM_64 [=y] && !NEW_VGIC [=y]
   Selected by [y]:
   - QEMU [=y] && <choice> && ARM_64 [=y]

WARNING: unmet direct dependencies detected for GICV3
   Depends on [n]: ARM_64 [=y] && !NEW_VGIC [=y]
   Selected by [y]:
   - QEMU [=y] && <choice> && ARM_64 [=y]
make[2]: Leaving directory '/home/workspace/gengdongjiu/old_machine/XEN/xen/xen'
make -f Rules.mk _install
make[2]: Entering directory 
'/home/workspace/gengdongjiu/old_machine/XEN/xen/xen'
---
  xen/arch/arm/platforms/Kconfig | 1 -
  1 file changed, 1 deletion(-)

diff --git a/xen/arch/arm/platforms/Kconfig b/xen/arch/arm/platforms/Kconfig
index c93a6b2756..6d3ee99456 100644
--- a/xen/arch/arm/platforms/Kconfig
+++ b/xen/arch/arm/platforms/Kconfig
@@ -15,7 +15,6 @@ config ALL_PLAT
  config QEMU
        bool "QEMU aarch virt machine support"
        depends on ARM_64
-       select GICV3

Assuming you can use Xen with GICv2 on QEMU, then this change is OK. But we are at risk to expose it again via another platform.

So I think it would be better to also to add a dependency !GICV3 for NEW_VGIC.

Cheers,

--
Julien Grall



 


Rackspace

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