[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] PPC TCG host breakage
From: |
Alexander Graf |
Subject: |
[Qemu-devel] PPC TCG host breakage |
Date: |
Sun, 4 Apr 2010 16:55:51 +0200 |
Howdy,
while trying to run a self-compiled ppc32 2.6.34-rc3 kernel in qemu I stumbled
over this host TCG breakage. We're looking at this code: (printks added by me)
lib/lmb.c:lmb_add_region()
153 if (adjacent > 0) {
154 printk("XXX %d - 0x%08llx\n", __LINE__, rgn->region[i].base);
155 rgn->region[i].base -= size;
156 rgn->region[i].size += size;
157 printk("XXX %d - 0x%08llx\n", __LINE__, rgn->region[i].base);
158 coalesced++;
159 break;
I put in a breakpoint at 0xc01f3bb0 and 0xc01f3bc8 where the register state was
as follows:
(gdb) b *0xc01f3bb0
Breakpoint 1 at 0xc01f3bb0: file lib/lmb.c, line 155.
(gdb) b *0xc01f3bc8
Breakpoint 2 at 0xc01f3bc8: file lib/lmb.c, line 155.
(gdb) c
Continuing.
Breakpoint 1, lmb_add_region (rgn=0xc05d7eb8, base=41943040, size=15327232) at
lib/lmb.c:155
155 rgn->region[i].base -= size;
(gdb) info registers
r0 0xc01f3ba0 3223272352
r1 0xc05b9f70 3227230064
r2 0xc058c410 3227042832
r3 0xc04fa4d4 3226445012
r4 0x9d 157
r5 0xffffffff 4294967295
r6 0xc05c5af8 3227278072
r7 0x4000 16384
r8 0xc05c5ee8 3227279080
r9 0xc05b65bc 3227215292
r10 0x3fff 16383
r11 0xc05d7ee8 3227352808
r12 0x42000022 1107296290
r13 0x0 0
r14 0x14dfd94 21888404
r15 0x14d0498 21824664
r16 0x14d048c 21824652
r17 0x1500d00 22023424
r18 0x14d07a0 21825440
r19 0x1 1
r20 0x14d03a8 21824424
r21 0xc04fa4d4 3226445012
r22 0x3 3
r23 0xc05d7eb8 3227352760
r24 0x2 2
r25 0x0 0
r26 0xe9e000 15327232
r27 0x2 2
r28 0x4000 16384
r29 0xc369e028 3278495784
r30 0x0 0
r31 0x2800000 41943040
pc 0xc01f3bb0 0xc01f3bb0 <lmb_add_region+272>
msr 0x3030 12336
cr 0x22000022 570425378
lr 0xc01f3ba0 0xc01f3ba0 <lmb_add_region+256>
ctr 0x1 1
xer 0x20000000 536870912
(gdb) c
Continuing.
Breakpoint 2, 0xc01f3bc8 in lmb_add_region (rgn=0xc05d7eb8, base=41943040,
size=15327232) at lib/lmb.c:155
155 rgn->region[i].base -= size;
(gdb) info registers
r0 0xc01f3ba0 3223272352
r1 0xc05b9f70 3227230064
r2 0xc058c410 3227042832
r3 0xc04fa4d4 3226445012
r4 0x9d 157
r5 0xff162000 4279640064
r6 0x2800000 41943040
r7 0x0 0
r8 0x369e000 57270272
r9 0xc05b65bc 3227215292
r10 0x3fff 16383
r11 0xc05d7ee8 3227352808
r12 0x42000022 1107296290
r13 0x0 0
r14 0x14dfd94 21888404
r15 0x14d0498 21824664
r16 0x14d048c 21824652
r17 0x1500d00 22023424
r18 0x14d07a0 21825440
r19 0x1 1
r20 0x14d03a8 21824424
r21 0xc04fa4d4 3226445012
r22 0x3 3
r23 0xc05d7eb8 3227352760
r24 0x2 2
r25 0x0 0
r26 0xe9e000 15327232
r27 0x2 2
r28 0x0 0
r29 0x4000 16384
r30 0x0 0
r31 0x2800000 41943040
pc 0xc01f3bc8 0xc01f3bc8 <lmb_add_region+296>
msr 0x3030 12336
cr 0x22000022 570425378
lr 0xc01f3ba0 0xc01f3ba0 <lmb_add_region+256>
ctr 0x1 1
xer 0x0 0
Here r5 should be 0, as it substracts 0 from 0. I found that out by
single-stepping over the respective instructions. Unfortunately the correct
values get calculated when single-stepping, so it's probably some sort of
temporary register values not getting cleared properly or so. Below is the dump
when running a block that fails.
---------------- excp: 0201
NIP c01f3bb4 LR c01f3ba0 CTR 00000001 XER 20000000
MSR 00003030 HID0 0010c0ac HF 00002000 idx 1
TB 00000000 00002800 DECR 00000000
GPR00 00000000c01f3ba0 00000000c05b9f70 00000000c058c410 00000000c04fa4d4
GPR04 000000000000009d 00000000ffffffff 00000000c05c5af8 0000000000000000
GPR08 00000000c05c5ee8 00000000c05b65bc 0000000000003fff 00000000c05d7ee8
GPR12 0000000042000022 0000000000000000 00000000014dfd94 00000000014d0498
GPR16 00000000014d048c 0000000001500d00 00000000014d07a0 0000000000000001
GPR20 00000000014d03a8 00000000c04fa4d4 0000000000000003 00000000c05d7eb8
GPR24 0000000000000002 0000000000000000 0000000000e9e000 0000000000000002
GPR28 0000000000004000 00000000c369e028 0000000000000000 0000000002800000
CR 22000022 [ E E - - - - E E ] RES ffffffff
FPR00 0000000000000000 0000000000000000 0000000000000000 0000000000000000
FPR04 0000000000000000 0000000000000000 0000000000000000 0000000000000000
FPR08 0000000000000000 0000000000000000 0000000000000000 0000000000000000
FPR12 0000000000000000 0000000000000000 0000000000000000 0000000000000000
FPR16 0000000000000000 0000000000000000 0000000000000000 0000000000000000
FPR20 0000000000000000 0000000000000000 0000000000000000 0000000000000000
FPR24 0000000000000000 0000000000000000 0000000000000000 0000000000000000
FPR28 0000000000000000 0000000000000000 0000000000000000 0000000000000000
FPSCR 00000000
SRR0 c0003d78 SRR1 00003030 SDR1 1fef0000
IN: lmb_add_region
0xc01f3bb4: lwz r8,4(r11)
0xc01f3bb8: lwz r28,8(r11)
0xc01f3bbc: lwz r29,12(r11)
0xc01f3bc0: subfc r6,r26,r8
0xc01f3bc4: subfe r5,r25,r7
0xc01f3bc8: stw r5,0(r11)
0xc01f3bcc: addc r10,r26,r29
0xc01f3bd0: adde r9,r25,r28
0xc01f3bd4: stw r6,4(r11)
0xc01f3bd8: stw r9,8(r11)
0xc01f3bdc: stw r10,12(r11)
0xc01f3be0: bl 0xc03eb960
OP:
---- 0xc01f3bb4
movi_i32 access_type,$0x20
movi_i32 tmp1,$0x4
add_i32 tmp0,r11,tmp1
qemu_ld32 r8,tmp0,$0x1
---- 0xc01f3bb8
movi_i32 tmp1,$0x8
add_i32 tmp0,r11,tmp1
qemu_ld32 r28,tmp0,$0x1
---- 0xc01f3bbc
movi_i32 tmp1,$0xc
add_i32 tmp0,r11,tmp1
qemu_ld32 r29,tmp0,$0x1
---- 0xc01f3bc0
movi_i32 tmp0,$0xdfffffff
and_i32 xer,xer,tmp0
sub_i32 r6,r8,r26
brcond_i32 r6,r8,gtu,$0x0
movi_i32 tmp0,$0x20000000
or_i32 xer,xer,tmp0
set_label $0x0
---- 0xc01f3bc4
movi_i32 tmp0,$0x20000000
and_i32 loc2,xer,tmp0
movi_i32 tmp0,$0x1d
shr_i32 loc2,loc2,tmp0
movi_i32 tmp0,$0xdfffffff
and_i32 xer,xer,tmp0
not_i32 r5,r25
add_i32 r5,r5,r7
brcond_i32 r5,r7,geu,$0x1
movi_i32 tmp0,$0x20000000
or_i32 xer,xer,tmp0
set_label $0x1
add_i32 r5,r5,loc2
brcond_i32 r5,loc2,geu,$0x2
movi_i32 tmp0,$0x20000000
or_i32 xer,xer,tmp0
set_label $0x2
movi_i32 nip,$0xc01f3bc8
movi_i32 tmp0,$0x10002
movi_i32 tmp1,$raise_exception
call tmp1,$0x0,$0,tmp0
---- 0xc01f3bc8
mov_i32 tmp0,r11
qemu_st32 r5,tmp0,$0x1
---- 0xc01f3bcc
movi_i32 tmp0,$0xdfffffff
and_i32 xer,xer,tmp0
add_i32 r10,r26,r29
brcond_i32 r10,r26,geu,$0x3
movi_i32 tmp0,$0x20000000
or_i32 xer,xer,tmp0
set_label $0x3
---- 0xc01f3bd0
movi_i32 tmp0,$0x20000000
and_i32 loc2,xer,tmp0
movi_i32 tmp0,$0x1d
shr_i32 loc2,loc2,tmp0
movi_i32 tmp0,$0xdfffffff
and_i32 xer,xer,tmp0
add_i32 r9,r25,r28
brcond_i32 r9,r25,geu,$0x4
movi_i32 tmp0,$0x20000000
or_i32 xer,xer,tmp0
set_label $0x4
add_i32 r9,r9,loc2
brcond_i32 r9,loc2,geu,$0x5
movi_i32 tmp0,$0x20000000
or_i32 xer,xer,tmp0
set_label $0x5
---- 0xc01f3bd4
movi_i32 tmp1,$0x4
add_i32 tmp0,r11,tmp1
qemu_st32 r6,tmp0,$0x1
---- 0xc01f3bd8
movi_i32 tmp1,$0x8
add_i32 tmp0,r11,tmp1
qemu_st32 r9,tmp0,$0x1
---- 0xc01f3bdc
movi_i32 tmp1,$0xc
add_i32 tmp0,r11,tmp1
qemu_st32 r10,tmp0,$0x1
---- 0xc01f3be0
movi_i32 lr,$0xc01f3be4
movi_i32 nip,$0xc03eb960
exit_tb $0x0
OP after liveness analysis:
---- 0xc01f3bb4
movi_i32 access_type,$0x20
movi_i32 tmp1,$0x4
add_i32 tmp0,r11,tmp1
qemu_ld32 r8,tmp0,$0x1
---- 0xc01f3bb8
movi_i32 tmp1,$0x8
add_i32 tmp0,r11,tmp1
qemu_ld32 r28,tmp0,$0x1
---- 0xc01f3bbc
movi_i32 tmp1,$0xc
add_i32 tmp0,r11,tmp1
qemu_ld32 r29,tmp0,$0x1
---- 0xc01f3bc0
movi_i32 tmp0,$0xdfffffff
and_i32 xer,xer,tmp0
sub_i32 r6,r8,r26
brcond_i32 r6,r8,gtu,$0x0
movi_i32 tmp0,$0x20000000
or_i32 xer,xer,tmp0
set_label $0x0
---- 0xc01f3bc4
movi_i32 tmp0,$0x20000000
and_i32 loc2,xer,tmp0
movi_i32 tmp0,$0x1d
shr_i32 loc2,loc2,tmp0
movi_i32 tmp0,$0xdfffffff
and_i32 xer,xer,tmp0
not_i32 r5,r25
add_i32 r5,r5,r7
brcond_i32 r5,r7,geu,$0x1
movi_i32 tmp0,$0x20000000
or_i32 xer,xer,tmp0
set_label $0x1
add_i32 r5,r5,loc2
brcond_i32 r5,loc2,geu,$0x2
movi_i32 tmp0,$0x20000000
or_i32 xer,xer,tmp0
set_label $0x2
movi_i32 nip,$0xc01f3bc8
movi_i32 tmp0,$0x10002
movi_i32 tmp1,$raise_exception
call tmp1,$0x0,$0,tmp0
---- 0xc01f3bc8
mov_i32 tmp0,r11
qemu_st32 r5,tmp0,$0x1
---- 0xc01f3bcc
movi_i32 tmp0,$0xdfffffff
and_i32 xer,xer,tmp0
add_i32 r10,r26,r29
brcond_i32 r10,r26,geu,$0x3
movi_i32 tmp0,$0x20000000
or_i32 xer,xer,tmp0
set_label $0x3
---- 0xc01f3bd0
movi_i32 tmp0,$0x20000000
and_i32 loc2,xer,tmp0
movi_i32 tmp0,$0x1d
shr_i32 loc2,loc2,tmp0
movi_i32 tmp0,$0xdfffffff
and_i32 xer,xer,tmp0
add_i32 r9,r25,r28
brcond_i32 r9,r25,geu,$0x4
movi_i32 tmp0,$0x20000000
or_i32 xer,xer,tmp0
set_label $0x4
add_i32 r9,r9,loc2
brcond_i32 r9,loc2,geu,$0x5
movi_i32 tmp0,$0x20000000
or_i32 xer,xer,tmp0
set_label $0x5
---- 0xc01f3bd4
movi_i32 tmp1,$0x4
add_i32 tmp0,r11,tmp1
qemu_st32 r6,tmp0,$0x1
---- 0xc01f3bd8
movi_i32 tmp1,$0x8
add_i32 tmp0,r11,tmp1
qemu_st32 r9,tmp0,$0x1
---- 0xc01f3bdc
movi_i32 tmp1,$0xc
add_i32 tmp0,r11,tmp1
qemu_st32 r10,tmp0,$0x1
---- 0xc01f3be0
movi_i32 lr,$0xc01f3be4
movi_i32 nip,$0xc03eb960
exit_tb $0x0
end
OUT: [size=968]
0xef919000: lwz r14,44(r27)
0xef919004: addi r15,r14,4
0xef919008: li r14,32
0xef91900c: stw r14,608(r27)
0xef919010: rlwinm r3,r15,24,20,27
0xef919014: add r3,r3,r27
0xef919018: lwzu r4,4740(r3)
0xef91901c: rlwinm r0,r15,0,30,19
0xef919020: cmpw cr7,r0,r4
0xef919024: beq- cr7,0xef919048
0xef919028: mr r3,r15
0xef91902c: li r4,1
0xef919030: lis r0,4123
0xef919034: ori r0,r0,31104
0xef919038: mtctr r0
0xef91903c: bctrl
0xef919040: mr r14,r3
0xef919044: b 0xef919054
0xef919048: lwz r3,12(r3)
0xef91904c: add r3,r3,r15
0xef919050: lwzx r14,0,r3
0xef919054: lwz r15,44(r27)
0xef919058: addi r16,r15,8
0xef91905c: stw r14,32(r27)
0xef919060: rlwinm r3,r16,24,20,27
0xef919064: add r3,r3,r27
0xef919068: lwzu r4,4740(r3)
0xef91906c: rlwinm r0,r16,0,30,19
0xef919070: cmpw cr7,r0,r4
0xef919074: beq- cr7,0xef919098
0xef919078: mr r3,r16
0xef91907c: li r4,1
0xef919080: lis r0,4123
0xef919084: ori r0,r0,31104
0xef919088: mtctr r0
0xef91908c: bctrl
0xef919090: mr r14,r3
0xef919094: b 0xef9190a4
0xef919098: lwz r3,12(r3)
0xef91909c: add r3,r3,r16
0xef9190a0: lwzx r14,0,r3
0xef9190a4: lwz r15,44(r27)
0xef9190a8: addi r16,r15,12
0xef9190ac: stw r14,112(r27)
0xef9190b0: rlwinm r3,r16,24,20,27
0xef9190b4: add r3,r3,r27
0xef9190b8: lwzu r4,4740(r3)
0xef9190bc: rlwinm r0,r16,0,30,19
0xef9190c0: cmpw cr7,r0,r4
0xef9190c4: beq- cr7,0xef9190e8
0xef9190c8: mr r3,r16
0xef9190cc: li r4,1
0xef9190d0: lis r0,4123
0xef9190d4: ori r0,r0,31104
0xef9190d8: mtctr r0
0xef9190dc: bctrl
0xef9190e0: mr r14,r3
0xef9190e4: b 0xef9190f4
0xef9190e8: lwz r3,12(r3)
0xef9190ec: add r3,r3,r16
0xef9190f0: lwzx r14,0,r3
0xef9190f4: lwz r15,296(r27)
0xef9190f8: lis r0,-8193
0xef9190fc: ori r0,r0,65535
0xef919100: and r15,r15,r0
0xef919104: lwz r16,32(r27)
0xef919108: lwz r17,104(r27)
0xef91910c: subf r18,r17,r16
0xef919110: stw r18,24(r27)
0xef919114: stw r14,116(r27)
0xef919118: stw r15,296(r27)
0xef91911c: cmplw cr7,r18,r16
0xef919120: bgt- cr7,0xef919130
0xef919124: lwz r14,296(r27)
0xef919128: oris r14,r14,8192
0xef91912c: stw r14,296(r27)
0xef919130: lwz r14,296(r27)
0xef919134: andis. r15,r14,8192
0xef919138: rlwinm r15,r15,3,29,31
0xef91913c: lis r0,-8193
0xef919140: ori r0,r0,65535
0xef919144: and r14,r14,r0
0xef919148: lwz r16,100(r27)
0xef91914c: nor r17,r16,r17
0xef919150: lwz r18,28(r27)
0xef919154: add r17,r17,r18
0xef919158: stw r15,32396(r27)
0xef91915c: stw r17,20(r27)
0xef919160: stw r14,296(r27)
0xef919164: cmplw cr7,r17,r18
0xef919168: bge- cr7,0xef919178
0xef91916c: lwz r14,296(r27)
0xef919170: oris r14,r14,8192
0xef919174: stw r14,296(r27)
0xef919178: lwz r14,20(r27)
0xef91917c: lwz r15,32396(r27)
0xef919180: add r14,r14,r15
0xef919184: stw r14,20(r27)
0xef919188: cmplw cr7,r14,r15
0xef91918c: bge- cr7,0xef91919c
0xef919190: lwz r14,296(r27)
0xef919194: oris r14,r14,8192
0xef919198: stw r14,296(r27)
0xef91919c: lis r3,1
0xef9191a0: ori r3,r3,2
0xef9191a4: lis r14,-16353
0xef9191a8: ori r14,r14,15304
0xef9191ac: stw r14,604(r27)
0xef9191b0: lis r0,4123
0xef9191b4: ori r0,r0,50640
0xef9191b8: mtctr r0
0xef9191bc: bctrl
0xef9191c0: lwz r14,44(r27)
0xef9191c4: lwz r15,20(r27)
0xef9191c8: rlwinm r3,r14,24,20,27
0xef9191cc: add r3,r3,r27
0xef9191d0: lwzu r4,4744(r3)
0xef9191d4: rlwinm r0,r14,0,30,19
0xef9191d8: cmpw cr7,r0,r4
0xef9191dc: beq- cr7,0xef919200
0xef9191e0: mr r3,r14
0xef9191e4: mr r4,r15
0xef9191e8: li r5,1
0xef9191ec: lis r0,4123
0xef9191f0: ori r0,r0,28592
0xef9191f4: mtctr r0
0xef9191f8: bctrl
0xef9191fc: b 0xef91920c
0xef919200: lwz r3,8(r3)
0xef919204: add r3,r3,r14
0xef919208: stwx r15,0,r3
0xef91920c: lwz r14,296(r27)
0xef919210: lis r0,-8193
0xef919214: ori r0,r0,65535
0xef919218: and r14,r14,r0
0xef91921c: lwz r15,104(r27)
0xef919220: lwz r16,116(r27)
0xef919224: add r17,r15,r16
0xef919228: stw r17,40(r27)
0xef91922c: stw r14,296(r27)
0xef919230: cmplw cr7,r17,r15
0xef919234: bge- cr7,0xef919244
0xef919238: lwz r14,296(r27)
0xef91923c: oris r14,r14,8192
0xef919240: stw r14,296(r27)
0xef919244: lwz r14,296(r27)
0xef919248: andis. r15,r14,8192
0xef91924c: rlwinm r15,r15,3,29,31
0xef919250: lis r0,-8193
0xef919254: ori r0,r0,65535
0xef919258: and r14,r14,r0
0xef91925c: lwz r16,100(r27)
0xef919260: lwz r17,112(r27)
0xef919264: add r18,r16,r17
0xef919268: stw r15,32396(r27)
0xef91926c: stw r18,36(r27)
0xef919270: stw r14,296(r27)
0xef919274: cmplw cr7,r18,r16
0xef919278: bge- cr7,0xef919288
0xef91927c: lwz r14,296(r27)
0xef919280: oris r14,r14,8192
0xef919284: stw r14,296(r27)
0xef919288: lwz r14,36(r27)
0xef91928c: lwz r15,32396(r27)
0xef919290: add r14,r14,r15
0xef919294: stw r14,36(r27)
0xef919298: cmplw cr7,r14,r15
0xef91929c: bge- cr7,0xef9192ac
0xef9192a0: lwz r14,296(r27)
0xef9192a4: oris r14,r14,8192
0xef9192a8: stw r14,296(r27)
0xef9192ac: lwz r14,44(r27)
0xef9192b0: addi r15,r14,4
0xef9192b4: lwz r16,24(r27)
0xef9192b8: rlwinm r3,r15,24,20,27
0xef9192bc: add r3,r3,r27
0xef9192c0: lwzu r4,4744(r3)
0xef9192c4: rlwinm r0,r15,0,30,19
0xef9192c8: cmpw cr7,r0,r4
0xef9192cc: beq- cr7,0xef9192f0
0xef9192d0: mr r3,r15
0xef9192d4: mr r4,r16
0xef9192d8: li r5,1
0xef9192dc: lis r0,4123
0xef9192e0: ori r0,r0,28592
0xef9192e4: mtctr r0
0xef9192e8: bctrl
0xef9192ec: b 0xef9192fc
0xef9192f0: lwz r3,8(r3)
0xef9192f4: add r3,r3,r15
0xef9192f8: stwx r16,0,r3
0xef9192fc: lwz r14,44(r27)
0xef919300: addi r15,r14,8
0xef919304: lwz r16,36(r27)
0xef919308: rlwinm r3,r15,24,20,27
0xef91930c: add r3,r3,r27
0xef919310: lwzu r4,4744(r3)
0xef919314: rlwinm r0,r15,0,30,19
0xef919318: cmpw cr7,r0,r4
0xef91931c: beq- cr7,0xef919340
0xef919320: mr r3,r15
0xef919324: mr r4,r16
0xef919328: li r5,1
0xef91932c: lis r0,4123
0xef919330: ori r0,r0,28592
0xef919334: mtctr r0
0xef919338: bctrl
0xef91933c: b 0xef91934c
0xef919340: lwz r3,8(r3)
0xef919344: add r3,r3,r15
0xef919348: stwx r16,0,r3
0xef91934c: lwz r14,44(r27)
0xef919350: addi r15,r14,12
0xef919354: lwz r16,40(r27)
0xef919358: rlwinm r3,r15,24,20,27
0xef91935c: add r3,r3,r27
0xef919360: lwzu r4,4744(r3)
0xef919364: rlwinm r0,r15,0,30,19
0xef919368: cmpw cr7,r0,r4
0xef91936c: beq- cr7,0xef919390
0xef919370: mr r3,r15
0xef919374: mr r4,r16
0xef919378: li r5,1
0xef91937c: lis r0,4123
0xef919380: ori r0,r0,28592
0xef919384: mtctr r0
0xef919388: bctrl
0xef91938c: b 0xef91939c
0xef919390: lwz r3,8(r3)
0xef919394: add r3,r3,r15
0xef919398: stwx r16,0,r3
0xef91939c: lis r14,-16322
0xef9193a0: ori r14,r14,47456
0xef9193a4: stw r14,604(r27)
0xef9193a8: lis r14,-16353
0xef9193ac: ori r14,r14,15332
0xef9193b0: stw r14,256(r27)
0xef9193b4: li r3,0
0xef9193b8: lis r0,4169
0xef9193bc: ori r0,r0,40856
0xef9193c0: mtctr r0
0xef9193c4: bctr
I used to following kernel image and command line to run the VM:
http://alex.csgraf.de/qemu/vmlinux.bz2
address@hidden:/SLES11/home/ppc32/kvm> ~/git/qemu/ppc-softmmu/qemu-system-ppc
-kernel vmlinux -serial mon:stdio -vnc :9 -L ~/git/qemu/pc-bios/ -m 512
-initrd ../initrd.kvm -append "lmb=debug loglevel=9"
Alex
- [Qemu-devel] PPC TCG host breakage,
Alexander Graf <=