All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jan Kiszka <jan.kiszka@web.de>
To: Avi Kivity <avi@redhat.com>
Cc: "Blue Swirl" <blauwirbel@gmail.com>,
	"Andreas Färber" <andreas.faerber@web.de>,
	"qemu-devel@nongnu.org" <qemu-devel@nongnu.org>
Subject: [Qemu-devel] Re: POLL: Why do you use kqemu?
Date: Sun, 07 Jun 2009 11:56:10 +0200	[thread overview]
Message-ID: <4A2B8EBA.3020402@web.de> (raw)
In-Reply-To: <4A2B8DD4.5060500@redhat.com>

[-- Attachment #1: Type: text/plain, Size: 2379 bytes --]

Avi Kivity wrote:
> Jan Kiszka wrote:
>> Avi Kivity wrote:
>>  
>>> Jan Kiszka wrote:
>>>    
>>>>>> Check e.g the diff of hw/vga.c against upstream: All the magic dances
>>>>>>  there are required as qemu-kvm tracking
>>>>>> cpu_register_physical_memory and
>>>>>>  kvm_log_start cannot cope with all the patterns normal qemu code
>>>>>> comes
>>>>>>  up with. Upstream slot management now provides the same features
>>>>>>  (including migration) like qemu-kvm, it just does not deal with
>>>>>> legacy,
>>>>>>  thus it does not have to patch qemu code (rather, we were able to
>>>>>> remove
>>>>>>  some already merged hooks - vga_dirty_log_stop).
>>>>>>                 
>>>>> Still not very restrictive, all this could be encapsulated with for
>>>>> example macro COMPAT_NO_DMRW which could be removed when we don't care
>>>>> anymore. Next?
>>>>>             
>>>> Really, it's not worth the maintenance pain: Every new device emulation
>>>> code that wants to be KVM-legacy-compatible would need to be written
>>>> like that. And unless you are familiar with the slot management
>>>> internals, the "correct" pattern will not be obvious.
>>>>         
>>> Only devices which direct map memory.  Currently VGA and cirrus.
>>>
>>>     
>>
>> --- /data/qemu/hw/piix_pci.c    2009-06-07 09:42:27.000000000 +0200
>> +++ hw/piix_pci.c       2009-06-02 13:00:09.000000000 +0200
>> ...
>> @@ -91,6 +93,10 @@ static void i440fx_update_memory_mapping
>>      int i, r;
>>      uint32_t smram, addr;
>>
>> +    if (kvm_enabled()) {
>> +        /* FIXME: Support remappings and protection changes. */
>> +        return;
>> +    }
>>      update_pam(d, 0xf0000, 0x100000, (d->config[0x59] >> 4) & 3);
>>      for(i = 0; i < 12; i++) {
>>          r = (d->config[(i >> 1) + 0x5a] >> ((i & 1) * 4)) & 3;
>>
>> IIRC, this is at least partially due to the restricted slot management
>> in qemu-kvm - or is this obsolete now?
>>   
> 
> This is from the first days of qemu-kvm, some of this is due to Intel
> real mode issues (can't start at 0xffff ffff ffff fff0), and some I
> never got around to.  It's possible that it requires proper slot
> destruction.  Even if that's the case, we cam simply return here, as the
> code shows.

But we can also get past this point as upstream demonstrates (minus
protection changes).

Jan


[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 257 bytes --]

  reply	other threads:[~2009-06-07  9:56 UTC|newest]

Thread overview: 57+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-06-03 21:57 [Qemu-devel] POLL: Why do you use kqemu? Anthony Liguori
2009-06-04 16:55 ` Anton D Kachalov
2009-06-05  0:44   ` Johannes Schindelin
2009-06-05  7:45     ` Gerd Hoffmann
2009-06-05  8:40       ` Tomasz Chmielewski
2009-06-05  9:08         ` Anton D Kachalov
2009-06-05  9:15         ` Gerd Hoffmann
2009-06-05 20:14   ` Lennart Sorensen
2009-06-05 23:23     ` Johannes Schindelin
2009-06-08  0:13       ` Jamie Lokier
2009-06-08  5:59         ` Avi Kivity
2009-06-08 11:57           ` Jamie Lokier
2009-06-08 12:03             ` Avi Kivity
2009-06-08 12:16               ` Jamie Lokier
2009-06-08 12:28                 ` Avi Kivity
2009-06-08 12:44                   ` [Qemu-devel] " Jan Kiszka
2009-06-08 13:06                     ` Avi Kivity
2009-06-08 13:18                       ` Jan Kiszka
2009-06-08 13:24                         ` Avi Kivity
2009-06-08 13:44                           ` Jan Kiszka
2009-06-08 14:03                             ` Avi Kivity
2009-06-08 12:36               ` Jan Kiszka
2009-06-08 18:25       ` [Qemu-devel] " Lennart Sorensen
2009-06-06 13:27 ` Andreas Färber
2009-06-06 16:02   ` Avi Kivity
2009-06-06 16:29     ` Blue Swirl
2009-06-06 17:02       ` [Qemu-devel] " Jan Kiszka
2009-06-06 17:25         ` Blue Swirl
2009-06-06 17:32           ` Jan Kiszka
2009-06-06 19:15             ` Andreas Färber
2009-06-07  5:43               ` Avi Kivity
2009-06-07  5:01         ` Avi Kivity
2009-06-07  7:35           ` Jan Kiszka
2009-06-07  7:46             ` Avi Kivity
2009-06-07  8:33             ` Blue Swirl
2009-06-07  8:50               ` Jan Kiszka
2009-06-07  9:01                 ` Blue Swirl
2009-06-07  9:25                   ` Jan Kiszka
2009-06-07  9:37                     ` Avi Kivity
2009-06-07  9:47                       ` Jan Kiszka
2009-06-07  9:52                         ` Avi Kivity
2009-06-07  9:56                           ` Jan Kiszka [this message]
2009-06-07 10:06                             ` Avi Kivity
2009-06-07 11:13                     ` Blue Swirl
2009-06-07 11:23                       ` Gleb Natapov
2009-06-07 11:26                         ` Blue Swirl
2009-06-07 11:29                           ` Gleb Natapov
2009-06-07 11:39                           ` Avi Kivity
2009-06-07 12:40                             ` Blue Swirl
2009-06-07 12:43                               ` Avi Kivity
2009-06-07 12:52                                 ` Gleb Natapov
2009-06-07 12:56                                   ` Avi Kivity
2009-06-07 13:18                                 ` Blue Swirl
2009-06-07 13:35                                   ` Jan Kiszka
2009-06-07 13:35                                   ` Avi Kivity
2009-06-07 18:37                                     ` Anthony Liguori
2009-06-07 18:40                                       ` Blue Swirl

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4A2B8EBA.3020402@web.de \
    --to=jan.kiszka@web.de \
    --cc=andreas.faerber@web.de \
    --cc=avi@redhat.com \
    --cc=blauwirbel@gmail.com \
    --cc=qemu-devel@nongnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.