qemu-ppc
[Top][All Lists]
Advanced

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

ppc/translate patch causing segfaults


From: Paul A. Clarke
Subject: ppc/translate patch causing segfaults
Date: Tue, 4 May 2021 15:01:41 -0500
User-agent: Mutt/1.10.1 (2018-07-13)

I built QEMU top-of-tree, and saw applications occasionally crashing while
running full-system emulation of ppc64le/POWER9, and unable to reproduce
on hardware.  It had been a while since I had pulled.  I don't recall
exactly, but git pull reported:
```
>From https://git.qemu.org/git/qemu
   b1cffefa1b16..3e13d8e34b53  master     -> origin/master
 + efb596d8ec4f...87c6cef605a0 staging    -> origin/staging  (forced update)
 * [new tag]                   v6.0.0     -> v6.0.0
 * [new tag]                   v6.0.0-rc5 -> v6.0.0-rc5
Updating b1cffefa1b16..3e13d8e34b53
Fast-forward
```

I bisected to this commit:
```
commit bcb0b7b1a1c05707304f80ca6f523d557816f85c
Author: Giuseppe Musacchio <thatlemon@gmail.com>
Date:   Mon Nov 9 10:17:11 2020 +0100

    ppc/translate: Rewrite gen_lxvdsx to use gvec primitives
    
    Make the implementation match the lxvwsx one.
    The code is now shorter smaller and potentially faster as the
    translation will use the host SIMD capabilities if available.
    
    No functional change.
    
    Signed-off-by: Giuseppe Musacchio <thatlemon@gmail.com>
```

The symptoms range from a fairly straightforward segfault (here,
with a gdb from the IBM Advance Toolchain):
```
$ /opt/at14.0/bin/gdb 
/opt/at14.0/lib/gcc/powerpc64le-linux-gnu/10.2.1/../../../../powerpc64le-linux-gnu/bin/as
Segmentation fault (core dumped)
```

To a weird one where a segfault is followed by an odd message about
disk space:
```
$ 
/opt/at14.0/lib/gcc/powerpc64le-linux-gnu/10.2.1/../../../../powerpc64le-linux-gnu/bin/as
 -v -a64 -mpower8 -many -mlittle -o denbcdq.o denbcdq.s
GNU assembler version 2.35.1 (powerpc64le-linux-gnu) using BFD version (GNU 
Binutils) 2.35.1.20210110
denbcdq.s: Assembler messages:
denbcdq.s: Internal error (Segmentation fault).
Please report this bug.
/opt/at14.0/lib/gcc/powerpc64le-linux-gnu/10.2.1/../../../../powerpc64le-linux-gnu/bin/as:
 BFD (GNU Binutils) 2.35.1.20210110 assertion fail 
/build/at14.0_RHEL8_ppc64le-ppc64le/14/at14.0-2.redhat-8_ppc64le_ppc64le/sources/binutils/bfd/elf.c:3163
/opt/at14.0/lib/gcc/powerpc64le-linux-gnu/10.2.1/../../../../powerpc64le-linux-gnu/bin/as:
 BFD (GNU Binutils) 2.35.1.20210110 assertion fail 
/build/at14.0_RHEL8_ppc64le-ppc64le/14/at14.0-2.redhat-8_ppc64le_ppc64le/sources/binutils/bfd/elf.c:3163
denbcdq.s: Fatal error: can't close denbcdq.o: No space left on device
```

(The denbcdq testcase is the code I was using to report and now verify
that https://bugs.launchpad.net/qemu/+bug/1841990 is fixed.)

Let me know next steps, which may include opening a bug report?

PC




reply via email to

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