From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([140.186.70.92]:34363) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1RGFgT-00029B-P8 for qemu-devel@nongnu.org; Tue, 18 Oct 2011 15:50:46 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1RGFgS-0003vW-MV for qemu-devel@nongnu.org; Tue, 18 Oct 2011 15:50:45 -0400 Received: from fmmailgate03.web.de ([217.72.192.234]:43897) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1RGFgS-0003vR-7v for qemu-devel@nongnu.org; Tue, 18 Oct 2011 15:50:44 -0400 Received: from moweb002.kundenserver.de (moweb002.kundenserver.de [172.19.20.108]) by fmmailgate03.web.de (Postfix) with ESMTP id AAF3F1A4BA100 for ; Tue, 18 Oct 2011 21:50:42 +0200 (CEST) Message-ID: <4E9DD88D.2090004@web.de> Date: Tue, 18 Oct 2011 21:50:37 +0200 From: Jan Kiszka MIME-Version: 1.0 References: <4E859A72.9040007@siemens.com> <4E9D8698.3060608@redhat.com> <4E9D87B0.5070009@siemens.com> <4E9D884B.30309@redhat.com> <4E9D88C9.1010804@siemens.com> <4E9D8D81.308@redhat.com> <4E9DAC02.4040208@redhat.com> <4E9DAE35.4010003@siemens.com> <4E9DB892.5060602@redhat.com> In-Reply-To: <4E9DB892.5060602@redhat.com> Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="------------enig92FE995535CE2F00A293C6A1" Subject: Re: [Qemu-devel] [PATCH 1/2] Move graphic-related coalesced MMIO flushes to affected device models List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Avi Kivity Cc: Anthony Liguori , qemu-devel , David Gibson This is an OpenPGP/MIME signed message (RFC 2440 and 3156) --------------enig92FE995535CE2F00A293C6A1 Content-Type: text/plain; charset=ISO-8859-15 Content-Transfer-Encoding: quoted-printable On 2011-10-18 19:34, Avi Kivity wrote: > On 10/18/2011 06:49 PM, Jan Kiszka wrote: >> On 2011-10-18 18:40, Avi Kivity wrote: >>> On 10/18/2011 04:30 PM, Avi Kivity wrote: >>>> This takes a while to reproduce, let me talk to gdb for a bit. >>>> >>> >>> a vcpu exit causes kvm_flush_coalesced_mmio_buffer() to run, which do= es >>> a bitblt, which is cirrus_do_copy(), which goes to vga_hw_update, whi= ch >> >> Why does it have to do vga_hw_update? Why can't it set some flag for t= he >> next requested screen update or so? Just thinking, haven't looked at t= he >> code yet. >=20 > Maybe it's a remnant from the days where it asked the host hardware to > do the blt. If it's no longer needed - drop it? Already for other reasons like efficiency. >=20 >> Do you think that only cirrus is affected by this pattern? >=20 > It's also possible for hotunplug: >=20 > - hotunplug > - unregister coalesced regions > - flush mmios > - call back into same device Which device triggers hotunplug via a coalesced mmio region? Anyway, if we want to avoid other surprises like that, better make kvm_flush_coalesced_mmio_buffer reentrance-safe. If we think that this remains an odd scenario, issue a warning to the console that some device may require fixing. Jan --------------enig92FE995535CE2F00A293C6A1 Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.16 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAk6d2I0ACgkQitSsb3rl5xSsbACg1eBmA4i7Mxnqga+u1WNsdQYC xe4An20X5eGrWZ3ly/NfVxXvNZ+qYK25 =nTGe -----END PGP SIGNATURE----- --------------enig92FE995535CE2F00A293C6A1--