|
From: | Lucas Meneghel Rodrigues |
Subject: | Re: [Qemu-devel] qemu-kvm: remove "boot=on|off" drive parameter compatibility |
Date: | Thu, 04 Oct 2012 14:21:17 -0300 |
User-agent: | Mozilla/5.0 (X11; Linux x86_64; rv:15.0) Gecko/20120911 Thunderbird/15.0.1 |
On 10/04/2012 09:27 AM, Jan Kiszka wrote:
On 2012-10-04 14:10, Lucas Meneghel Rodrigues wrote:On 10/04/2012 07:48 AM, Jan Kiszka wrote:On 2012-10-03 15:19, Paolo Bonzini wrote:Il 03/10/2012 12:57, Lucas Meneghel Rodrigues ha scritto:Yep, I did send patches with the testdev device present on qemu-kvm.git to qemu.git a while ago, but there were many comments on the review, I ended up not implementing everything that was asked and the patches were archived. If nobody wants to step up to port it, I'll re-read the original thread and will spin up new patches (and try to go through the end with it). Executing the KVM unittests is something that we can't afford to lose, so I'd say it's important on this last mile effort to get rid of qemu-kvm.Absolutely, IIRC the problem was that testdev did a little bit of everything... let's see what's the functionality of testdev: - write (port 0xf1), can be replaced in autotest with: -device isa-debugcon,iobase=0xf1,chardev=... - exit code (port 0xf4), see this series: http://lists.gnu.org/archive/html/qemu-devel/2012-07/msg00818.html - ram size (port 0xd1). If we can also patch kvm-unittests, the memory is available in the CMOS or in fwcfg. Here is the SeaBIOS code: u32 rs = ((inb_cmos(0x34) << 16) | (inb_cmos(0x35) << 24)); if (rs) rs += 16 * 1024 * 1024; else rs = (((inb_cmos(0x30) << 10) | (inb_cmos(0x31) << 18)) + 1 * 1024 * 1024); The rest (ports 0xe0..0xe7, 0x2000..0x2017, MMIO) can be left in testdev.IIRC, one of the biggest problem with testdev was its hack to inject interrupts.Jan, I assume this commit helps to fix this, right? commit b334ec567f1de9a60349991e7b75083d569ddb0a Author: Jan Kiszka <address@hidden> Date: Fri Mar 2 10:30:47 2012 +0100 qemu-kvm: Use upstream kvm-i8259 Drop the qemu-kvm version in favor of the equivalent upstream implementation. This allows to move the i8259 back into the hwlib. Note that this also drops the testdev hack and restores proper isa_get_irq. If testdev scripts exist that inject > IRQ15, they need fixing. Testing for these interrupts on the PIIX3 makes no practical sense anyway as those lines are unused. Signed-off-by: Jan Kiszka <address@hidden> Signed-off-by: Avi Kivity <address@hidden>Yes, this improved it a lot as we no longer depend on additional changes. I'm not sure if there was resistance beyond that. When cleaning up the code: register_ioport_read must be replaced with the memory API.
I did look at the MemoryRegionOps/memory_region_init_io and still did not figure out how to port things. I'll send a v2 addressing all the comments made so far but this one, just to see if people are OK with the direction of the full patch, then if you could give me some pointers of how to do this conversion, it'd be great.
[Prev in Thread] | Current Thread | [Next in Thread] |