From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:58008) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZwjeP-0000bY-Ii for qemu-devel@nongnu.org; Wed, 11 Nov 2015 23:38:40 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ZwjeI-0001ES-5J for qemu-devel@nongnu.org; Wed, 11 Nov 2015 23:38:21 -0500 Date: Thu, 12 Nov 2015 15:30:47 +1100 From: David Gibson Message-ID: <20151112043047.GO5852@voom.redhat.com> References: <20151111171135.4328.41819.stgit@aravindap> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="4ZQ/M1iA+qg8otEW" Content-Disposition: inline In-Reply-To: <20151111171135.4328.41819.stgit@aravindap> Subject: Re: [Qemu-devel] [PATCH 0/4] target-ppc/spapr: Add FWNMI support in QEMU for PowerKVM guests List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Aravinda Prasad Cc: benh@au1.ibm.com, aik@ozlabs.ru, agraf@suse.de, qemu-devel@nongnu.org, qemu-ppc@nongnu.org, paulus@samba.org, sam.bobroff@au1.ibm.com --4ZQ/M1iA+qg8otEW Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Wed, Nov 11, 2015 at 10:45:00PM +0530, Aravinda Prasad wrote: > This series of patches add support for FWNMI in PowerKVM guests. >=20 > Memory error such as bit flips that cannot be corrected > by hardware is passed on to the kernel for handling > by raising machine check exception (an NMI). Upon such > machine check exception, if the address in error belongs > to guest then KVM causes a guest exit with KVM_EXIT_NMI > exit reason [1]. >=20 > This patch series adds functionality to pass on such > machine check exception to the guest kernel by suitably > handling KVM_EXIT_NMI exit and building the error log. > This patch series explores the alternate design > discussed in the QEMU mailing list [2], [3]. >=20 > In earlier design [2] KVM invoked guest's NMI interrupt > vector 0x200 upon machine check exception, while QEMU > patched 0x200 vector to issue hcall to facilitate > building and copying of error log into RTAS space. >=20 > The new design simplifies couple of things. Thanks to > David Gibson for the suggestion: >=20 > - Eliminates patching of 0x200 interrupt vector from > QEMU, hence, trampoline not required > - Avoids introducing a new private hcall to be called > from guest's 0x200 vector to enable QEMU to build > error log > - Simplifies re-trying by other processors when one > of the processor is consuming/processing the error > log. >=20 > [1] http://marc.info/?l=3Dkvm-ppc&m=3D144726114408289 > [2] https://lists.nongnu.org/archive/html/qemu-devel/2014-11/msg00813.html > [3] > https://lists.nongnu.org/archive/html/qemu-devel/2015-08/msg00898.html This looks basically good, although I have some concerns noted in replies to patches 3 & 4. We can't merge this, though, until the prerequisite kernel and SLOF patches are merged, so this won't make it into 2.5 (hard freeze today). --=20 David Gibson | I'll have my music baroque, and my code david AT gibson.dropbear.id.au | minimalist, thank you. NOT _the_ _other_ | _way_ _around_! http://www.ozlabs.org/~dgibson --4ZQ/M1iA+qg8otEW Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG v1 iQIcBAEBAgAGBQJWRBX3AAoJEGw4ysog2bOSs8gQAIacvW1GmX2NtxMbzwDAkEoR 4jYhNSeMrEESglJJtYA2T1HoBaNEBO90gOz2cDxdFlAh5FbxHiiWn1AgmV+su0eo N/OCwKnp9Ja7zU1HMB3PeWxU9bKu1vgWXPzjgW4nKIqC3GUV/5Wv0JF/Vf30kOTd TEaaMw76gJNQy8bHtO+KuSTpaEH852ovCMP60x+WVsqefvNEhUglFD1eUk7686sm wmd3qtapFpI9EykYFNiHgmUMaMsx3VJAe+C9Yd4S6sXBXnZNVemcuKcr8XT98cc5 YKfm8ztwYbiuW9os3enDZr4O7jczLuYkZH0zYF+fXzaMstg7pjQ7GVlaQkIxTPhl KG5gypYa+QMBw03/PvkGlHZx/iYBFYCGTk+C6Ak+rfFj5ZELtJcNN6fvuscAt5tw 1T5neJn2lh8LFzE+diN/du+UoZ9C6gAvi+BlsCY14YgkEY0rp55GI4robnleaIl/ ceK3mOtapUlawx0xGIBx9kmBvlwyUWy6L9GX1RtgnksijjLz5OId507bYZj+9e04 FlM6MSiMB8vrdrJ/p8SL/RCgqDMPdt0JV6DDOsQW4q2xhgeveEHJxM0m/hzFU6Hu KxHJrfLg0SIgzStlJRhP0Lo+Gp0/knPTtzRIjgliEetXFj90cSo0FBYsEcK1EjIf Nz+fYz1ns3EILOiaprAj =V8fk -----END PGP SIGNATURE----- --4ZQ/M1iA+qg8otEW--