[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH v3 23/46] tests/tcg/x86_64: add Makefile.target
From: |
Alex Bennée |
Subject: |
Re: [Qemu-devel] [PATCH v3 23/46] tests/tcg/x86_64: add Makefile.target |
Date: |
Wed, 25 Apr 2018 09:43:06 +0100 |
User-agent: |
mu4e 1.1.0; emacs 26.1 |
Philippe Mathieu-Daudé <address@hidden> writes:
> On 04/24/2018 12:23 PM, Alex Bennée wrote:
>> The sources for x86_64 are shared in the i386 directory which will be
>> included thanks to TARGET_BASE_ARCH. However not all sources build so
>> we need to filter out the ones we can't build in the 64 bit world.
>>
>> Signed-off-by: Alex Bennée <address@hidden>
>> ---
>> tests/tcg/i386/Makefile.target | 2 +-
>> tests/tcg/x86_64/Makefile.target | 15 +++++++++++++++
>> 2 files changed, 16 insertions(+), 1 deletion(-)
>> create mode 100644 tests/tcg/x86_64/Makefile.target
>>
>> diff --git a/tests/tcg/i386/Makefile.target b/tests/tcg/i386/Makefile.target
>> index 80ccad3d7b..27086c3f2b 100644
>> --- a/tests/tcg/i386/Makefile.target
>> +++ b/tests/tcg/i386/Makefile.target
>> @@ -7,7 +7,7 @@ VPATH += $(I386_SRC)
>>
>> I386_SRCS=$(notdir $(wildcard $(I386_SRC)/*.c))
>> I386_TESTS=$(I386_SRCS:.c=)
>> -
>> +I386_ONLY_TESTS=$(filter-out test-i386-ssse3, $(I386_TESTS))
>> # Update TESTS
>> TESTS+=$(I386_ONLY_TESTS)
>>
>> diff --git a/tests/tcg/x86_64/Makefile.target
>> b/tests/tcg/x86_64/Makefile.target
>> new file mode 100644
>> index 0000000000..74f170b9ed
>> --- /dev/null
>> +++ b/tests/tcg/x86_64/Makefile.target
>> @@ -0,0 +1,15 @@
>> +# -*- Mode: makefile -*-
>> +#
>> +# x86_64 tests - included from tests/tcg/Makefile.target
>> +#
>> +# Currently we only build test-x86_64 and test-i386-ssse3 from
>> +# $(SRC)/tests/tcg/i386/
>> +#
>> +
>> +X86_64_TESTS=$(filter-out $(I386_ONLY_TESTS), $(TESTS))
>> +X86_64_TESTS+=test-x86_64
>
> The linux-test is taking looooong... I canceled it after ~15min on a i7
> 2GHz. Maybe it also belongs to the "BROKEN TEST" series on x86_64?
> Currently it is only skipped if $(TARGET_NAME) == i386.
Hmm it runs pretty quickly for me:
time ./qemu-x86_64 ./tests/linux-test
0.02user 0.03system 0:00.08elapsed 72%CPU (0avgtext+0avgdata 7384maxresident)k
0inputs+0outputs (0major+1207minor)pagefaults 0swaps
I wonder if the failure mode you are seeing is the same as the others
which basically hang, which is why I added them to the broken test patch.
>
> Reviewed-by: Philippe Mathieu-Daudé <address@hidden>
>
>> +TESTS:=$(X86_64_TESTS)
>> +
>> +test-x86_64: LDFLAGS+=-lm -lc
>> +test-x86_64: test-i386.c test-i386.h test-i386-shift.h test-i386-muldiv.h
>> + $(CC) $(CFLAGS) $< -o $@ $(LDFLAGS)
>>
>
> $ make run-tcg-tests-x86_64-linux-user
> RUN-TESTS for x86_64
> TEST test-mmap (default) on x86_64
> TEST test-mmap (8k pages) on x86_64
> ASAN:DEADLYSIGNAL
> =================================================================
> ==5717==ERROR: AddressSanitizer: SEGV on unknown address 0x7fcba47fc000
> (pc 0x7fcba8a3bf4d bp 0x7ffd19d74700 sp 0x7ffd19d73e88 T0)
> ==5717==The signal is caused by a WRITE memory access.
> #0 0x7fcba8a3bf4c (/lib/x86_64-linux-gnu/libc.so.6+0x159f4c)
> #1 0x7fcbab33f891 (/usr/lib/x86_64-linux-gnu/libasan.so.4+0x5c891)
> #2 0x55dd3ae4a7e0 in mmap_frag /source/qemu/linux-user/mmap.c:189
> #3 0x55dd3ae4bbce in target_mmap /source/qemu/linux-user/mmap.c:533
> #4 0x55dd3ae4b8cb in target_mmap /source/qemu/linux-user/mmap.c:501
> #5 0x55dd3ae3895c in do_syscall /source/qemu/linux-user/syscall.c:9448
> #6 0x55dd3adfaa57 in cpu_loop /source/qemu/linux-user/main.c:258
> #7 0x55dd3ae005f5 in main /source/qemu/linux-user/main.c:5147
> #8 0x7fcba8903a86 in __libc_start_main
> (/lib/x86_64-linux-gnu/libc.so.6+0x21a86)
> #9 0x55dd3ad34a89 in _start
> (/source/qemu/build/full/x86_64-linux-user/qemu-x86_64+0x350a89)
> AddressSanitizer can not provide additional info.
> SUMMARY: AddressSanitizer: SEGV (/lib/x86_64-linux-gnu/libc.so.6+0x159f4c)
> ==5717==ABORTING
> make[2]: ***
> [/home/phil/source/qemu/tests/tcg/multiarch/Makefile.target:27:
> run-test-mmap] Error 1
>
> Tested-by: Philippe Mathieu-Daudé <address@hidden>
This is only with ASAN enabled right?
--
Alex Bennée
- [Qemu-devel] [PATCH v3 07/46] Makefile: Rename TARGET_DIRS to TARGET_LIST, (continued)
- [Qemu-devel] [PATCH v3 07/46] Makefile: Rename TARGET_DIRS to TARGET_LIST, Alex Bennée, 2018/04/24
- [Qemu-devel] [PATCH v3 09/46] docker: extend "cc" command to accept compiler, Alex Bennée, 2018/04/24
- [Qemu-devel] [PATCH v3 11/46] docker: Makefile.include introduce DOCKER_SCRIPT, Alex Bennée, 2018/04/24
- [Qemu-devel] [PATCH v3 08/46] docker: Add "cc" subcommand, Alex Bennée, 2018/04/24
- [Qemu-devel] [PATCH v3 10/46] docker: allow "cc" command to run in user context, Alex Bennée, 2018/04/24
- [Qemu-devel] [PATCH v3 34/46] tests/tcg: enable building for ppc64, Alex Bennée, 2018/04/24
- [Qemu-devel] [PATCH v3 12/46] tests/tcg: move architecture independent tests into subdir, Alex Bennée, 2018/04/24
- [Qemu-devel] [PATCH v3 33/46] tests/tcg: enable building for s390x, Alex Bennée, 2018/04/24
- [Qemu-devel] [PATCH v3 23/46] tests/tcg/x86_64: add Makefile.target, Alex Bennée, 2018/04/24
- [Qemu-devel] [PATCH v3 21/46] tests/tcg/i386: fix test-i386-fprem, Alex Bennée, 2018/04/24
- [Qemu-devel] [PATCH v3 28/46] tests/tcg/aarch64: add Makefile.target, Alex Bennée, 2018/04/24