From mboxrd@z Thu Jan 1 00:00:00 1970 From: Dario Faggioli Subject: Re: [PATCH v8 01/17] VT-d Posted-intterrupt (PI) design Date: Thu, 29 Oct 2015 16:56:42 +0100 Message-ID: <1446134202.28782.78.camel@citrix.com> References: <1444640103-4685-1-git-send-email-feng.wu@intel.com> <1444640103-4685-2-git-send-email-feng.wu@intel.com> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="===============0490680024542943030==" Return-path: In-Reply-To: <1444640103-4685-2-git-send-email-feng.wu@intel.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xen.org Errors-To: xen-devel-bounces@lists.xen.org To: Feng Wu , xen-devel@lists.xen.org Cc: Kevin Tian , Keir Fraser , George Dunlap , Andrew Cooper , Jan Beulich , Yang Zhang List-Id: xen-devel@lists.xenproject.org --===============0490680024542943030== Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="=-lqbWNJbGnPGmNZIn8IGY" --=-lqbWNJbGnPGmNZIn8IGY Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Mon, 2015-10-12 at 16:54 +0800, Feng Wu wrote: > diff --git a/docs/misc/vtd-pi.txt b/docs/misc/vtd-pi.txt > new file mode 100644 > index 0000000..af5409a > --- /dev/null > +++ b/docs/misc/vtd-pi.txt > @@ -0,0 +1,332 @@ > +Authors: Feng Wu > + > +VT-d Posted-interrupt (PI) design for XEN > + And one thing about this too... > +- Update posted-interrupt descriptor during vCPU scheduling > + > +The basic idea here is: > +1. When vCPU's state is RUNSTATE_running, > + - Set 'NV' to 'posted_intr_vector'. > + - Clear 'SN' to accept posted-interrupts. > + - Set 'NDST' to the pCPU on which the vCPU will be running. > +2. When vCPU's state is RUNSTATE_blocked, > + - Set 'NV' to ' pi_wakeup_vector ', so we can wake up the > + related vCPU when posted-interrupt happens for it. > + Please refer to the above section about the new global > vector. > + - Clear 'SN' to accept posted-interrupts > +3. When vCPU's state is RUNSTATE_runnable/RUNSTATE_offline, > + - Set 'SN' to suppress non-urgent interrupts > + (Currently, we only support non-urgent interrupts) > + When vCPU is in RUNSTATE_runnable or RUNSTATE_offline > + It is not needed to accept posted-interrupt notification > event > + since we don't change the behavior of scheduler when the > interrupt > + occurs, we still need wait for the next scheduling of the > vCPU. > + When external interrupts from assigned devices occur, the > interrupts > + are recorded in PIR, and will be synced to IRR before VM > -Entry. > + - Set 'NV' to 'posted_intr_vector'. > + This still describe the old structure, based on RUNSTATEs, from which we've moved away. Please, either make it more general, or update it so that it reflects the actual implementation (hooks and VMX enrty/exit handlers), or both. :-) Regards, Dario --=20 <> (Raistlin Majere) ----------------------------------------------------------------- Dario Faggioli, Ph.D, http://about.me/dario.faggioli Senior Software Engineer, Citrix Systems R&D Ltd., Cambridge (UK) --=-lqbWNJbGnPGmNZIn8IGY Content-Type: application/pgp-signature; name="signature.asc" Content-Description: This is a digitally signed message part Content-Transfer-Encoding: 7bit -----BEGIN PGP SIGNATURE----- Version: GnuPG v1 iEYEABECAAYFAlYyQboACgkQk4XaBE3IOsTMnACfSO/fIj675FVJnqppGpJMb9yR UC8Anj0rkaybTX+MHE6z1nq5hOALxMxy =mByD -----END PGP SIGNATURE----- --=-lqbWNJbGnPGmNZIn8IGY-- --===============0490680024542943030== Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ Xen-devel mailing list Xen-devel@lists.xen.org http://lists.xen.org/xen-devel --===============0490680024542943030==--