From: "Alex Bennée" <alex.bennee@linaro.org>
To: Pavel Dovgalyuk <dovgaluk@ispras.ru>
Cc: peter.maydell@linaro.org, rth@twiddle.net, pbonzini@redhat.com,
qemu-devel@nongnu.org, mttcg@listserver.greensocs.com,
fred.konrad@greensocs.com, a.rigo@virtualopensystems.com,
cota@braap.org, bobby.prani@gmail.com, nikunj@linux.vnet.ibm.com
Subject: Re: [Qemu-devel] [PATCH v3 00/11] MTTCG fix-ups for 2.9
Date: Tue, 14 Mar 2017 15:18:32 +0000 [thread overview]
Message-ID: <87tw6vq43b.fsf@linaro.org> (raw)
In-Reply-To: <000101d29cbc$b8df1ca0$2a9d55e0$@ru>
Pavel Dovgalyuk <dovgaluk@ispras.ru> writes:
>> From: Alex Bennée [mailto:alex.bennee@linaro.org]
>> Pavel Dovgalyuk <dovgaluk@ispras.ru> writes:
>> >> From: mttcg-request@listserver.greensocs.com [mailto:mttcg-
>> request@listserver.greensocs.com]
>> >>
>> >> The next thing on my list it to look at the icount problems and review
>> >> Paolo's fixes for it. However those fixes should go in a separate
>> >> series and I assume via Paolo's tree.
>> >
>> > Do you mean those problems that completely broke icount?
>>
>> Completely broke is a bit strong. Certainly I tested icount on my
>> patches but I missed the pathological failure mode that led to the
>> interaction between the BQL lock breaking patch and running a real
>> guest. It didn't break icount so much as slow down guests so much they
>> never got round to finishing their IRQ handling.
>
> That might look as slowing down in regular icount mode.
> But it becomes non-deterministic in record/replay mode.
> Therefore none of the recorded scenarios may be replayed.
>
> I tried the simplest command lines:
>
> qemu-system-i386.exe -icount shift=7,rr=record,rrfile=replay.bin -net
> none
Running this against 2421f381dc (pre-merge of MTTCG) from the source
tree generates no output. My command is on Linux:
/x86_64-softmmu/qemu-system-x86_64 -icount shift=7,rr=record,rrfile=replay.bin -net none
Do I need to specify the BIOS manually?
>
> qemu-system-i386.exe -icount shift=7,rr=replay,rrfile=replay.bin -net none
>
> First one was used to record execution until BIOS will print its startup info.
> The second one is for replay, but it can replay about 200000 instructions
> until the problems with icount manifest itself - the execution does
> not proceed.
What error message does it give? How do you know how many instructions
have been executed?
I ran the following test on both pre-mttcg-merge and my current HEAD
which includes Paolo's fix series:
./arm-softmmu/qemu-system-arm -machine type=virt \
-display none -smp 1 -m 4096 -cpu cortex-a15 \
-kernel ../images/aarch32-current-linux-initrd-guest.img
-append "console=ttyAMA0" -serial mon:stdio \
-net none \
-icount shift=7,rr=record,rrfile=replay.bin
And then:
./arm-softmmu/qemu-system-arm -machine type=virt \
-display none -smp 1 -m 4096 -cpu cortex-a15 \
-kernel ../images/aarch32-current-linux-initrd-guest.img
-append "console=ttyAMA0" -serial mon:stdio \
-net none \
-icount shift=7,rr=replay,rrfile=replay.bin
And they both ran the same. However I kept running into:
[ 3.542408] RPC: Registered tcp NFSv4.1 backchannel transport module.
qemu-system-arm: Missing character write event in the replay log
This seems to be a pre-existing
>
>> That certainly seems to be fixed by Paolo's patches.
>>
>> > Are you going to fix it?
>>
>> Yes. It is certainly not intentional to regress icount and it needs to
>> be fixed before we release 2.9.
>>
>> If you can point me towards the record/replay test cases I'll make sure
>> I run them on the updated series.
>
>
> Pavel Dovgalyuk
--
Alex Bennée
next prev parent reply other threads:[~2017-03-14 15:18 UTC|newest]
Thread overview: 38+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-03-07 15:50 [Qemu-devel] [PATCH v3 00/11] MTTCG fix-ups for 2.9 Alex Bennée
2017-03-07 15:50 ` [Qemu-devel] [PATCH v3 01/11] vl/cpus: be smarter with icount and MTTCG Alex Bennée
2017-03-07 15:50 ` [Qemu-devel] [PATCH v3 02/11] target/i386/cpu.h: declare TCG_GUEST_DEFAULT_MO Alex Bennée
2017-03-07 15:50 ` [Qemu-devel] [PATCH v3 03/11] cpus.c: add additional error_report when !TARGET_SUPPORT_MTTCG Alex Bennée
2017-03-07 17:48 ` Philippe Mathieu-Daudé
2017-03-07 15:50 ` [Qemu-devel] [PATCH v3 04/11] sparc/sparc64: grab BQL before calling cpu_check_irqs Alex Bennée
2017-03-07 15:50 ` [Qemu-devel] [PATCH v3 05/11] s390x/misc_helper.c: wrap IO instructions in BQL Alex Bennée
2017-03-07 17:46 ` Philippe Mathieu-Daudé
2017-03-07 15:50 ` [Qemu-devel] [PATCH v3 06/11] target/xtensa: hold BQL for interrupt processing Alex Bennée
2017-03-07 15:50 ` [Qemu-devel] [PATCH v3 07/11] translate-all: exit cpu_restore_state early if translating Alex Bennée
2017-03-07 19:20 ` Richard Henderson
2017-03-07 15:50 ` [Qemu-devel] [PATCH v3 08/11] target/mips: hold BQL for timer interrupts Alex Bennée
2017-03-07 15:50 ` [Qemu-devel] [PATCH v3 09/11] target-i386: defer VMEXIT to do_interrupt Alex Bennée
2017-03-07 19:23 ` Richard Henderson
2017-03-07 15:50 ` [Qemu-devel] [PATCH v3 10/11] target/arm/helper: make it clear the EC field is also in hex Alex Bennée
2017-03-07 17:49 ` [Qemu-devel] [Qemu-arm] " Philippe Mathieu-Daudé
2017-03-07 15:50 ` [Qemu-devel] [PATCH v3 11/11] hw/intc/arm_gic: modernise the DPRINTF Alex Bennée
2017-03-07 17:53 ` [Qemu-devel] [Qemu-arm] " Philippe Mathieu-Daudé
2017-03-07 20:25 ` [Qemu-devel] [PATCH v3 00/11] MTTCG fix-ups for 2.9 Pranith Kumar
[not found] ` <877f40i5e3.fsf@linaro.org>
2017-03-08 14:20 ` Pranith Kumar
2017-03-13 12:32 ` Pavel Dovgalyuk
2017-03-13 13:16 ` Alex Bennée
2017-03-14 12:15 ` Pavel Dovgalyuk
2017-03-14 15:18 ` Alex Bennée [this message]
2017-03-16 8:34 ` Pavel Dovgalyuk
2017-03-16 13:06 ` Alex Bennée
2017-03-16 14:46 ` Pavel Dovgalyuk
2017-03-22 14:17 ` Alex Bennée
2017-03-29 6:06 ` Pavel Dovgalyuk
2017-03-29 9:42 ` Alex Bennée
2017-03-30 11:44 ` Pavel Dovgalyuk
2017-03-30 12:42 ` Alex Bennée
2017-03-31 9:16 ` Pavel Dovgalyuk
2017-03-31 10:16 ` Paolo Bonzini
2017-03-31 11:21 ` Alex Bennée
2017-03-31 11:31 ` Paolo Bonzini
2017-03-31 19:49 ` Alex Bennée
2017-03-31 13:14 ` Alex Bennée
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87tw6vq43b.fsf@linaro.org \
--to=alex.bennee@linaro.org \
--cc=a.rigo@virtualopensystems.com \
--cc=bobby.prani@gmail.com \
--cc=cota@braap.org \
--cc=dovgaluk@ispras.ru \
--cc=fred.konrad@greensocs.com \
--cc=mttcg@listserver.greensocs.com \
--cc=nikunj@linux.vnet.ibm.com \
--cc=pbonzini@redhat.com \
--cc=peter.maydell@linaro.org \
--cc=qemu-devel@nongnu.org \
--cc=rth@twiddle.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).