qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PULL v5 00/18] tcg queued patches


From: Richard Henderson
Subject: Re: [Qemu-devel] [PULL v5 00/18] tcg queued patches
Date: Thu, 15 Sep 2016 14:01:00 -0700
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.2.0

On 09/15/2016 08:53 AM, Peter Maydell wrote:
On 14 September 2016 at 17:19, Richard Henderson <address@hidden> wrote:
Changes since last:
  * Some cleanup in the size+alignment patch
  * Bug fixed in GETPC patch causing "make check" failure.
    The pc adjustment moved to the (really) very last place,
    where it's now applied during TARGET_HAS_PRECISE_SMC.
  * tcg/mips improved for r6
  * tcg/aarch64 improved for dmb ishld
  * target-arm/aarch64 emits finer grained barriers for dmb

Retested on i686, x64, ppc64, ppc64le, arm, aarch64, s390x.


r~


The following changes since commit 507e4ddc3abf67391bcbc9624fd60b969c159b78:

  Merge remote-tracking branch 'remotes/mjt/tags/trivial-patches-fetch' into 
staging (2016-09-13 17:55:35 +0100)

are available in the git repository at:

  git://github.com/rth7680/qemu.git tags/pull-tcg-20160914

for you to fetch changes up to ff95d7e000739149237d201037d5918439e69626:

  tcg: Optimize fence instructions (2016-09-13 19:15:09 -0700)

----------------------------------------------------------------
tcg queued patches

I see test failures on 64-bit ARM host and 32-bit sparc guest:

QTEST_QEMU_BINARY=sparc-softmmu/qemu-system-sparc
QTEST_QEMU_IMG=qemu-img MALLOC_PERTURB_=${MALLOC_PERTURB_:-$((RANDOM %
255 + 1))} gtester -k --verbose -m=quick tests/prom-env-test
tests/device-introspect-test tests/qom-test
TEST: tests/prom-env-test... (pid=27276)
  /sparc/prom-env/SPARCbook:
Broken pipe
FAIL
GTester: last random seed: R02Sfcf6adec9d89943949516817d43161b3
(pid=27282)
  /sparc/prom-env/Voyager:
Broken pipe
FAIL
GTester: last random seed: R02Sc2b1065bac813ab363f8b2249a2d88f6
(pid=27287)
  /sparc/prom-env/SS-20:
Broken pipe
FAIL
GTester: last random seed: R02S5912644980758b061ac0f744063a69e9
(pid=27292)

Happened both in a test and in a rerun, so I don't *think* this is just an
unhelpful timeout...

No, not just a timeout, like I imagined. It's a weird sign-extension problem, fixed with the following.


r~


diff --git a/tcg/aarch64/tcg-target.inc.c b/tcg/aarch64/tcg-target.inc.c
index 388cd93..1939d35 100644
--- a/tcg/aarch64/tcg-target.inc.c
+++ b/tcg/aarch64/tcg-target.inc.c
@@ -1115,7 +1115,7 @@ static void tcg_out_tlb_read
                      TCG_REG_X3, addr_reg, s_mask - a_mask);
         x3 = TCG_REG_X3;
     }
-    tlb_mask = TARGET_PAGE_MASK | a_mask;
+    tlb_mask = (uint64_t)TARGET_PAGE_MASK | a_mask;

     /* Extract the TLB index from the address into X0.
        X0<CPU_TLB_BITS:0> =





reply via email to

[Prev in Thread] Current Thread [Next in Thread]