qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH v3 0/9] Third try at fixing sparc register alloc


From: Mark Cave-Ayland
Subject: Re: [Qemu-devel] [PATCH v3 0/9] Third try at fixing sparc register allocation
Date: Fri, 24 Jun 2016 11:31:44 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Icedove/45.1.0

On 24/06/16 04:48, Richard Henderson wrote:

I was unhappy about the complexity of the second try.

Better to convert to normal temps, allowing in rare
occasions, spilling the "globals" to the stack in order
to satisfy register allocation.

I can no longer provoke an allocation failure on i686.
Hopefully this fixes the OpenBSD case that Mark mentioned
re the second attempt.


r~


Richard Henderson (9):
  tcg: Fix name for high-half register
  tcg: Optimize spills of constants
  tcg: Require liveness analysis
  tcg: Compress liveness data to 16 bits
  tcg: Reorg TCGOp chaining
  tcg: Fold life data into TCGOp
  tcg: Compress dead_temps and mem_temps into a single array
  tcg: Include liveness info in the dumps
  tcg: Lower indirect registers in a separate pass

 include/exec/gen-icount.h    |   2 +-
 include/qemu/log.h           |   1 +
 tcg/aarch64/tcg-target.inc.c |  10 +
 tcg/arm/tcg-target.inc.c     |   6 +
 tcg/i386/tcg-target.inc.c    |  21 +-
 tcg/ia64/tcg-target.inc.c    |  10 +
 tcg/mips/tcg-target.inc.c    |  10 +
 tcg/optimize.c               |  37 +--
 tcg/ppc/tcg-target.inc.c     |   6 +
 tcg/s390/tcg-target.inc.c    |   6 +
 tcg/sparc/tcg-target.inc.c   |  10 +
 tcg/tcg-op.c                 |   2 +-
 tcg/tcg.c                    | 690 ++++++++++++++++++++++++++++---------------
 tcg/tcg.h                    |  50 ++--
 tcg/tci/tcg-target.inc.c     |   6 +
 util/log.c                   |   5 +-
 16 files changed, 563 insertions(+), 309 deletions(-)

Hi Richard,

I gave this patchset a quick test, and I see no regressions with most of the images, however while the OpenBSD 5.5 boot gets further I still see (a different type) of panic:


$ ./qemu-system-sparc64 -cdrom /home/build/install55.iso -boot d -nographic
OpenBIOS for Sparc64
Configuration device id QEMU version 1 machine id 0
kernel cmdline
CPUs: 1 x SUNW,UltraSPARC-IIi
UUID: 00000000-0000-0000-0000-000000000000
Welcome to OpenBIOS v1.1 built on Apr 18 2016 08:20
  Type 'help' for detailed information
Trying cdrom:f...
Not a bootable ELF image
Not a bootable a.out image

Loading FCode image...
Loaded 4829 bytes
entry point is 0x4000
OpenBSD IEEE 1275 Bootblock 1.3
..
Jumping to entry point 0000000000100000 for type 0000000000000001...
switching to new context: entry point 0x100000 stack 0x00000000ffe84a09
>> OpenBSD BOOT 1.6
Trying bsd...
open /address@hidden,0/address@hidden/address@hidden/address@hidden:f/etc/random.seed: No such file or directory
Booting /address@hidden,0/address@hidden/address@hidden/address@hidden:f/bsd
address@hidden@address@hidden@0x1b1c620
symbols @ 0xffc5a300 119 start=0x1000000

Unexpected client interface exception: -1
console is /address@hidden,0/address@hidden/su
Copyright (c) 1982, 1986, 1989, 1991, 1993
        The Regents of the University of California.  All rights reserved.
Copyright (c) 1995-2014 OpenBSD. All rights reserved. http://www.OpenBSD.org

OpenBSD 5.5 (RAMDISK) #153: Tue Mar  4 15:12:10 MST 2014
    address@hidden:/usr/src/sys/arch/sparc64/compile/RAMDISK
real mem = 134217728 (128MB)
avail mem = 122011648 (116MB)
mainbus0 at root: OpenBiosTeam,OpenBIOS
cpu0 at mainbus0: SUNW,UltraSPARC-IIi (rev 9.1) @ 100 MHz
cpu0: physical 256K instruction (64 b/l), 16K data (32 b/l), 256K external (64 b/l)
psycho0 at mainbus0: SUNW,sabre, impl 0, version 0, ign 7c0
psycho0: bus range 0-2, PCI bus 0
psycho0: dvma map c0000000-dfffffff
pci0 at psycho0
ppb0 at pci0 dev 1 function 0 "Sun Simba" rev 0x11
pci1 at ppb0 bus 1
ppb1 at pci0 dev 1 function 1 "Sun Simba" rev 0x11
pci2 at ppb1 bus 2
unknown vendor 0x1234 product 0x1111 (class display subclass VGA, rev 0x02) at pci0 dev 2 function 0 not configured
ebus0 at pci0 dev 3 function 0 "Sun PCIO EBus2" rev 0x01
clock1 at ebus0 addr 2000-3fff: mk48t59
"fdthree" at ebus0 addr 0-ffffffff not configured
com0 at ebus0 addr 3f8-3ff ivec 0x2b: ns16550a, 16 byte fifo
com0: console
"kb_ps2" at ebus0 addr 60-67 not configured
"Realtek 8029" rev 0x00 at pci0 dev 4 function 0 not configured
pciide0 at pci0 dev 5 function 0 "CMD Technology PCI0646" rev 0x07: DMA, channel 0 configured to native-PCI, channel 1 configured to native-PCI
pciide0: using ivec 0x7d4 for native-PCI interrupt
pciide0: channel 0 disabled (no drives)
atapiscsi0 at pciide0 channel 1 drive 0
scsibus0 at atapiscsi0: 2 targets
cd0 at scsibus0 targ 0 lun 0: <QEMU, QEMU DVD-ROM, 2.5+> ATAPI 5/cdrom removable
cd0(pciide0:1:0): using PIO mode 4, Ultra-DMA mode 2
softraid0 at root
scsibus1 at softraid0: 256 targets
bootpath: /address@hidden,0/address@hidden,0/address@hidden,0/address@hidden,0:f
root on rd0a swap on rd0b dump on rd0b
erase ^?, weraseqemu: fatal: Trap 0x0030 while trap level (5) >= MAXTL (5), Error state
pc: 0000000001011d9c  npc: 0000000001011da0
%g0-3: 0000000000000000 fffffc00d9d49470 0000000000000000 0000000000000000
%g4-7: fffffc00d9d48000 00000400e0017619 00000400e0017619 0000000000000017
%o0-3: 00000400e0016000 0000000000000030 0000000000000000 0000000000000000
%o4-7: 00000400e0016000 000000000000082d 00000400062ce391 0000000001011d9c
%l0-3: 00000400026a9970 00000000008e7000 00000000008e7000 00000000008e7000
%l4-7: 00000400062cfbf0 0000000000000000 000004000269a770 0000000000767b80
%i0-3: 00000400e0016000 0000000000000030 0000000000000000 0000000000000000
%i4-7: 00000400e0016000 000000000000082d 00000400062ce571 0000000001011d9c
%f00:  0000000000000000 0000000000000000 0000000000000000 0000000000000000
%f08:  0000000000000000 0000000000000000 0000000000000000 0000000000000000
%f16:  0000000000000000 0000000000000000 0000000000000000 0000000000000000
%f24:  0000000000000000 0000000000000000 0000000000000000 0000000000000000
%f32:  0000000000000000 0000000000000000 0000000000000000 0000000000000000
%f40:  0000000000000000 0000000000000000 0000000000000000 0000000000000000
%f48:  0000000000000000 0000000000000000 0000000000000000 0000000000000000
%f56:  0000000000000000 0000000000000000 0000000000000000 0000000000000000
pstate: 00000015 ccr: 00 (icc: ---- xcc: ----) asi: 82 tl: 5 pil: 0
cansave: 6 canrestore: 0 otherwin: 0 wstate: 23 cleanwin: 6 cwp: 5
fsr: 0000000000000000 y: 00000000000000b3 fprs: 0000000000000004

Aborted


I'm starting to wonder if there is something wrong with my i386 VM I spun up to test this...


ATB,

Mark.




reply via email to

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