From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([140.186.70.92]:52477) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1R5MiW-0007yC-Oz for qemu-devel@nongnu.org; Sun, 18 Sep 2011 15:07:53 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1R5MiV-0002LW-NI for qemu-devel@nongnu.org; Sun, 18 Sep 2011 15:07:52 -0400 Received: from fmmailgate02.web.de ([217.72.192.227]:52278) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1R5MiV-0002LS-8m for qemu-devel@nongnu.org; Sun, 18 Sep 2011 15:07:51 -0400 Message-ID: <4E764185.8020500@web.de> Date: Sun, 18 Sep 2011 21:07:49 +0200 From: Jan Kiszka MIME-Version: 1.0 References: <4E75E7A4.50702@web.de> <4E75E96E.90101@web.de> <4E761051.9000204@redhat.com> <4E76119F.5040004@web.de> <4E761220.3080707@redhat.com> <4E761C20.4040609@web.de> <4E76212A.20000@redhat.com> In-Reply-To: <4E76212A.20000@redhat.com> Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="------------enigDE56302BDEB0A2305D5E7170" Sender: jan.kiszka@web.de Subject: Re: [Qemu-devel] [PATCH v2 1/2] memory: Fix old portio word accesses List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Avi Kivity Cc: qemu-devel , Richard Henderson This is an OpenPGP/MIME signed message (RFC 2440 and 3156) --------------enigDE56302BDEB0A2305D5E7170 Content-Type: text/plain; charset=ISO-8859-15 Content-Transfer-Encoding: quoted-printable On 2011-09-18 18:49, Avi Kivity wrote: > On 09/18/2011 07:28 PM, Jan Kiszka wrote: >> >> >> >> This is PIO, limited by the x86 address space to 16 bit. Will add = a >> >> comment. >> > >> > x86 PIO is not limited to 16 bits, just ISA, which memory.c knows >> > nothing about. >> >> Confused address and data, the former is limited 16, the latter can be= >> 32 as well. But I guess only ISA models made use of the core's split u= p >> service, and that's why QEMU limited itself accordingly. >=20 > Let's not bury such details in the core. It's already in the core (ioport), and would refrain from changing it in this fix. >=20 >> >> > >> >> > Why not use access_with_adjusted_size()? >> >> >> >> Because of different accessor prototypes. >> >> >> > >> > Can be thunked. There is a different issue, a_w_a_s() can use smal= l >> > accesses to emulate large ones, but not vice versa. It needs fixin= g >> > anyway. >> > >> >> IIRC, that's a feature: Devices not implementing small accesses tend t= o >> refuse them in reality. >=20 > I don't think this holds for pci; there the bus always generates 32-bit= > writes with separate byte enables for each lane. The device need not > even be aware of a sub-word access, for reads. The problem is that once we "enhance" the core with such a support to potentially help one use case, we need to validate all users again if they depend on the old behavior. That's tricky as breakage may only show up with odd guests that issue invalid but so far harmless requests. Jan --------------enigDE56302BDEB0A2305D5E7170 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/ iEYEARECAAYFAk52QYUACgkQitSsb3rl5xSSHACgznqEB8eWbDLJSMR6QJedI/aU Ig0An04ceLnY/9iWGpHqZxMqng9TG6Ga =KMYF -----END PGP SIGNATURE----- --------------enigDE56302BDEB0A2305D5E7170--