From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jan Kiszka Subject: Re: [PATCH 4/4] Fix task switching. Date: Mon, 30 Mar 2009 18:35:05 +0200 Message-ID: <49D0F4B9.5040008@web.de> References: <20090329141202.30481.91797.stgit@trex.usersys.redhat.com> <20090329141218.30481.92675.stgit@trex.usersys.redhat.com> <49D0ED9D.9080600@web.de> <20090330162155.GI25718@redhat.com> Mime-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="------------enigA63370F9DB8EC72EC9C6F9C7" Cc: avi@redhat.com, kvm@vger.kernel.org, Bernhard Kohl , "Ostler, Thomas (NSN - DE/Munich)" , bliitz@users.sourceforge.net To: Gleb Natapov Return-path: Received: from fmmailgate01.web.de ([217.72.192.221]:39396 "EHLO fmmailgate01.web.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752047AbZC3QfW (ORCPT ); Mon, 30 Mar 2009 12:35:22 -0400 In-Reply-To: <20090330162155.GI25718@redhat.com> Sender: kvm-owner@vger.kernel.org List-ID: This is an OpenPGP/MIME signed message (RFC 2440 and 3156) --------------enigA63370F9DB8EC72EC9C6F9C7 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Gleb Natapov wrote: > On Mon, Mar 30, 2009 at 06:04:45PM +0200, Jan Kiszka wrote: >> Gleb Natapov wrote: >>> The patch fixes two problems with task switching. >>> 1. Back link is written to a wrong TSS. >>> 2. Instruction emulation is not needed if the reason for task switch >>> is a task gate in IDT and access to it is caused by an external ev= en. >>> >>> 2 is currently solved only for VMX since there is not reliable way to= >>> skip an instruction in SVM. We should emulate it instead. >> Does this series fix all issues Bernhard, Thomas and Julian stumbled o= ver? >> > Haven't tried. I wrote my own tests for task switching. How can I check= it? >=20 There is a test case attached to Julian's sourceforge-reported bug: https://sourceforge.net/tracker/?func=3Ddetail&atid=3D893831&aid=3D268144= 2&group_id=3D180599 And I guess Thomas or Bernhard will be happy to give it a try, too... :) There was one issue, the IRQ injection bug [1] which was related to IRQ tasks IIRC. Thomas and I finally suspected after a private chat that there is actually a different reason behind it, something like interrupt.pending should be cleared when the injection took place via an (emulated) task switch. Any news on this, Thomas? Jan [1] http://permalink.gmane.org/gmane.comp.emulators.kvm.devel/29288 --------------enigA63370F9DB8EC72EC9C6F9C7 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.9 (GNU/Linux) Comment: Using GnuPG with SUSE - http://enigmail.mozdev.org iEYEARECAAYFAknQ9MYACgkQniDOoMHTA+kP0wCePmzLcUh1xOMsz+1Qtx0qhj/P v6gAn2Ww/o48UPMMJbO4NEpRKgyS3elX =LCVf -----END PGP SIGNATURE----- --------------enigA63370F9DB8EC72EC9C6F9C7--