[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH 00/26] Merge ppc32/ppc64 tcg backends
From: |
Tom Musta |
Subject: |
Re: [Qemu-devel] [PATCH 00/26] Merge ppc32/ppc64 tcg backends |
Date: |
Mon, 05 May 2014 15:32:27 -0500 |
User-agent: |
Mozilla/5.0 (Windows NT 6.1; WOW64; rv:24.0) Gecko/20100101 Thunderbird/24.4.0 |
On 5/2/2014 11:43 AM, Richard Henderson wrote:
> On 05/02/2014 09:30 AM, Ulrich Weigand wrote:
>> Richard Henderson <address@hidden> wrote on 01.05.2014 17:44:21:
>>
>>> Please review, and if you've got an ELFv2 system (nudge nudge), please
>>> give it a try and make sure it works.
>>
>> I ran into illegal instructions due to this patch:
>>
>>> tcg-ppc64: Support mulsh_i32
>> [snip]
>>> case INDEX_op_muluh_i32:
>>> tcg_out32(s, MULHWU | TAB(args[0], args[1], args[2]));
>>> break;
>>> + case INDEX_op_mulsh_i32:
>>> + tcg_out32(s, MULHW | TAB(args[1], args[2], args[3]));
>>> + break;
>>
>> I guess that needs to be args[0], args[1], args[2] as well.
>>
>> With that change, I was able to start both qemu-system-x86_64 and
>> qemu-system-ppc64 and have them run through the respective BIOS/
>> SLOF bootup sequence.
>
> Whoops. That what I get for rearranging the patches at the last minute.
>
>
> r~
>
>
In addition to this, I am seeing an additional anomaly that I did not see with
QEMU git master plus Uli's original patch
(http://lists.nongnu.org/archive/html/qemu-devel/2014-04/msg03411.html). I am
seeing an oops during the linux kernel boot:
#9 SMP Fri Oct 1PCI: Probing PCI hardware
no ibm,pcie-link-speed-stats property
PCI host bridge to bus 0000:00
pci_bus 0000:00: root bus resource [io 0x10000-0x1ffff] (bus address
[0x0000-0xffff])
pci_bus 0000:00: root bus resource [mem 0x100a0000000-0x100bfffffff] (bus
address [0x80000000-0x9fffffff])
pci_bus 0000:00: root bus resource [bus 00-ffffffffff000000]
IOMMU table initialized, virtual merging enabled
opal: Node not found
bio: create slab <bio-0> at 0
Unable to handle kernel paging request for data at address 0xc0000000e0e3ae58
Faulting instruction address: 0xc0000000001c383c
Oops: Kernel access of bad area, sig: 11 [#1]
SMP NR_CPUS=2048 NUMA pSeries
Modules linked in:
CPU: 0 PID: 1 Comm: swapper/0 Not tainted 3.10.9-00001-gbe9e5b1-dirty #9
task: c00000007e500000 ti: c00000007e520000 task.ti: c00000007e520000
NIP: c0000000001c383c LR: c0000000001c3818 CTR: 0000000000000000
REGS: c00000007e5237c0 TRAP: 0300 Not tainted (3.10.9-00001-gbe9e5b1-dirty)
MSR: 8000000000009033 <SF,EE,ME,IR,DR,RI,LE> CR: 24000084 XER: 20000000
SOFTE: 1
CFAR: c0000000003da630
DAR: c0000000e0e3ae58, DSISR: 40000000
GPR00: c0000000001c3818 c00000007e523a40 c000000000cbaa08 0000000000000002
GPR04: c000000000a2c679 0000000000000040 c00000007e072f40 000000000000033f
GPR08: 00000000e00000e8 ffffffff80808081 0000000000000062 0000000000000000
GPR12: 0000000044000084 c00000000fe80000 c00000000000c000 0000000000000000
GPR16: 0000000000000000 0000000000000000 0000000000000000 0000000000000000
GPR20: 0000000000000000 0000000000000000 0000000000000000 0000000000000000
GPR24: 000000000000001d c000000000a2c678 c000000000e3ad70 c00000007e072ee0
GPR28: 0000000000000100 c000000000ba13d0 0000000000000000 000000000000001d
NIP [c0000000001c383c] .__register_chrdev_region+0xfc/0x270
LR [c0000000001c3818] .__register_chrdev_region+0xd8/0x270
PACATMSCRATCH [8000000000009033]
Call Trace:
[c00000007e523a40] [c0000000001c3818] .__register_chrdev_region+0xd8/0x270
(unreliable)
[c00000007e523af0] [c0000000001c3f1c] .__register_chrdev+0x4c/0x160
[c00000007e523ba0] [c000000000b1e3dc] .fbmem_init+0x58/0xe4
[c00000007e523c20] [c00000000000b904] .do_one_initcall+0x164/0x1c0
[c00000007e523cd0] [c000000000ae3dd8] .kernel_init_freeable+0x248/0x320
[c00000007e523da0] [c00000000000c030] .kernel_init+0x30/0x1e0
[c00000007e523e30] [c00000000000a160] .ret_from_kernel_thread+0x5c/0x7c
Instruction dump:
7f24cb78 38a00040 48216d8d 60000000 3d208080 61298081 7d1f4816 5508c9fe
1d0800ff 7d08f850 7d0807b4 79081f24 <7d3a402a> 7d1a4214 2fa90000 409e007c
---[ end trace 77ad1c7792cd7ca5 ]---
swapper/0 (1) used greatest stack depth: 8976 bytes left
Kernel panic - not syncing: Attempted to kill init! exitcode=0x0000000b
Rebooting in 10 seconds..
SLOF **********************************************************************
QEMU Starting
Build Date = Apr 4 2014 11:52:36
FW Version = git-c90b50b5055f976a
- [Qemu-devel] [PATCH 21/26] tcg-ppc: Remove the backend, (continued)
- [Qemu-devel] [PATCH 21/26] tcg-ppc: Remove the backend, Richard Henderson, 2014/05/01
- [Qemu-devel] [PATCH 20/26] tcg-ppc64: Merge ppc32 shifts, Richard Henderson, 2014/05/01
- [Qemu-devel] [PATCH 22/26] tcg-ppc: Rename the tcg/ppc64 backend, Richard Henderson, 2014/05/01
- [Qemu-devel] [PATCH 24/26] tcg-ppc: Merge cache-utils into the backend, Richard Henderson, 2014/05/01
- [Qemu-devel] [PATCH 25/26] tcg-ppc64: Use the return address as a base pointer, Richard Henderson, 2014/05/01
- [Qemu-devel] [PATCH 23/26] qemu/osdep: Remove the need for qemu_init_auxval, Richard Henderson, 2014/05/01
- [Qemu-devel] [PATCH 26/26] tcg-ppc: Streamline USE_DIRECT_JUMP, Richard Henderson, 2014/05/01
- Re: [Qemu-devel] [PATCH 00/26] Merge ppc32/ppc64 tcg backends, Tom Musta, 2014/05/02
- Re: [Qemu-devel] [PATCH 00/26] Merge ppc32/ppc64 tcg backends, Ulrich Weigand, 2014/05/02