On 2011-03-11 08:26, Alexander Graf wrote: > > On 11.03.2011, at 08:13, Jan Kiszka wrote: > >> On 2011-03-11 07:50, Alexander Graf wrote: >>> >>> On 04.03.2011, at 11:20, Jan Kiszka wrote: >>> >>>> Make the return code of kvm_arch_handle_exit directly usable for >>>> kvm_cpu_exec. This is straightforward for x86 and ppc, just s390 >>>> would require more work. Avoid this for now by pushing the return code >>>> translation logic into s390's kvm_arch_handle_exit. >>>> >>>> Signed-off-by: Jan Kiszka <jan.kiszka@xxxxxxxxxxx> >>>> CC: Alexander Graf <agraf@xxxxxxx> >>> >>> Looks good, haven't tested it though. Do you have a git tree for all this? >>> >> >> See >> >> git://git.kiszka.org/qemu-kvm.git queues/kvm-upstream > > With the following patch s390x-softmmu compiles and runs the bootloader code just fine, breaks in early Linux boot code though. I haven't quite figured out why yet. > > > diff --git a/Makefile.target b/Makefile.target > index 220589e..21106c6 100644 > --- a/Makefile.target > +++ b/Makefile.target > @@ -209,7 +209,7 @@ QEMU_CFLAGS += $(VNC_PNG_CFLAGS) > obj-$(CONFIG_XEN) += xen_machine_pv.o xen_domainbuild.o > > # Inter-VM PCI shared memory > -obj-$(CONFIG_KVM) += ivshmem.o > +obj-i386-$(CONFIG_KVM) += ivshmem.o Looks like s390 hasn't been built for a while - or what makes this workaround necessary? > > # Hardware support > obj-i386-y += vga.o > diff --git a/exec.c b/exec.c > index 0b7a7b2..10e6528 100644 > --- a/exec.c > +++ b/exec.c > @@ -2963,7 +2963,7 @@ void qemu_ram_remap(ram_addr_t addr, ram_addr_t length) > RAMBlock *block; > ram_addr_t offset; > int flags; > - void *area, *vaddr; > + void *area = NULL, *vaddr; > > QLIST_FOREACH(block, &ram_list.blocks, next) { > offset = addr - block->offset; > > Yeah, we should abort() on mem_path != 0 for unsupported targets. Jan
Attachment:
signature.asc
Description: OpenPGP digital signature