Hi, Julien Grall. Thank you for checking it out. I'm sorry I forgot to attach the make log as well.
My build configuration (include CFLGAS) export ARCH=arm64 export XEN_TARGET_ARCH=arm64 export $(dpkg-architecture -aarm64); export CROSS_COMPILE=aarch64-linux-gnu- export CFLAGS="-g -Wall -Wextra -Wno-unused-parameter" And i did make dist-xen my arm64 compiler information are here. gcc version 9.4.0 (Ubuntu 9.4.0-1ubuntu1~20.04.1) ~/xen$ aarch64-linux-gnu-gcc -v Using built-in specs. COLLECT_GCC=aarch64-linux-gnu-gcc COLLECT_LTO_WRAPPER=/usr/lib/gcc-cross/aarch64-linux-gnu/9/lto-wrapper Target: aarch64-linux-gnu Configured with: ../src/configure -v --with-pkgversion='Ubuntu 9.4.0-1ubuntu1~20.04.1' --with-bugurl=file:///usr/share/doc/gcc-9/README.Bugs --enable-languages=c,ada,c++,go,d,fortran,objc,obj-c++,gm2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-9 --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --with-sysroot=/ --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-libquadmath --disable-libquadmath-support --enable-plugin --enable-default-pie --with-system-zlib --without-target-system-zlib --enable-libpth-m2 --enable-multiarch --enable-fix-cortex-a53-843419 --disable-werror --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=aarch64-linux-gnu --program-prefix=aarch64-linux-gnu- --includedir=/usr/aarch64-linux-gnu/include Thread model: posix gcc version 9.4.0 (Ubuntu 9.4.0-1ubuntu1~20.04.1) In arch/arm/gic-v3.c files. arch/arm/gic-v3.c: In function ‘gicv3_compute_target_list’: arch/arm/gic-v3.c:926:17: error: comparison of integer expressions of different signedness: ‘int’ and ‘unsigned int’ [-Werror=sign-compare] 926 | while ( cpu < nr_cpu_ids ) | ^ arch/arm/gic-v3.c:936:18: error: comparison of integer expressions of different signedness: ‘int’ and ‘unsigned int’ [-Werror=sign-compare] 936 | if ( cpu == nr_cpu_ids ) | ^~ ^ In arch/arm/setup.c files. arch/arm/setup.c: In function ‘start_xen’: ./include/xen/cpumask.h:374:13: error: comparison of integer expressions of different signedness: ‘int’ and ‘unsigned int’ [-Werror=sign-compare] 374 | (cpu) < nr_cpu_ids; \ | ^ ./include/xen/cpumask.h:459:36: note: in expansion of macro ‘for_each_cpu’ 459 | #define for_each_present_cpu(cpu) for_each_cpu(cpu, &cpu_present_map) | ^~~~~~~~~~~~ arch/arm/setup.c:989:5: note: in expansion of macro ‘for_each_present_cpu’ 989 | for_each_present_cpu ( i ) | ^~~~~~~~~~~~~~~~~~~~ ^ Thank you! 2022-04-20 오전 12:50에 Julien Grall 이(가) 쓴 글: > Hi, > > On Tue, 19 Apr 2022, 15:41 Paran Lee, <p4ran...@gmail.com> wrote: > >> GCC with "-g -Wall -Wextra" option throws warning message as below: > > > Which version of the compiler? Also you specify the exact cflags, did you > tweak Xen? > > >> error: comparison of integer expressions of different signedness: >> ‘int’ and ‘unsigned int’ [-Werror=sign-compare] >> > > GCC should give you a line/file. Can you provide it? > > Cheers, > > >> Silence the warning by correcting the integer type. >> >> Signed-off-by: Paran Lee <p4ran...@gmail.com> >> --- >> xen/arch/arm/gic-v3.c | 5 +++-- >> xen/arch/arm/setup.c | 2 +- >> 2 files changed, 4 insertions(+), 3 deletions(-) >> >> diff --git a/xen/arch/arm/gic-v3.c b/xen/arch/arm/gic-v3.c >> index 3c472ed768..81ac25f528 100644 >> --- a/xen/arch/arm/gic-v3.c >> +++ b/xen/arch/arm/gic-v3.c >> @@ -916,7 +916,8 @@ static void gicv3_hyp_disable(void) >> isb(); >> } >> >> -static u16 gicv3_compute_target_list(int *base_cpu, const struct cpumask >> *mask, >> +static u16 gicv3_compute_target_list(unsigned int *base_cpu, >> + const struct cpumask *mask, >> uint64_t cluster_id) >> { >> int cpu = *base_cpu; >> @@ -953,7 +954,7 @@ out: >> >> static void gicv3_send_sgi_list(enum gic_sgi sgi, const cpumask_t >> *cpumask) >> { >> - int cpu = 0; >> + unsigned int cpu = 0; >> uint64_t val; >> >> for_each_cpu(cpu, cpumask) >> diff --git a/xen/arch/arm/setup.c b/xen/arch/arm/setup.c >> index d5d0792ed4..5ab2aaecaf 100644 >> --- a/xen/arch/arm/setup.c >> +++ b/xen/arch/arm/setup.c >> @@ -862,7 +862,7 @@ void __init start_xen(unsigned long boot_phys_offset, >> unsigned long fdt_paddr) >> { >> size_t fdt_size; >> - int cpus, i; >> + unsigned int cpus, i; >> const char *cmdline; >> struct bootmodule *xen_bootmodule; >> struct domain *d; >> -- >> 2.25.1 >> >> >