From mboxrd@z Thu Jan 1 00:00:00 1970 From: Dario Faggioli Subject: Re: [PATCH 0/3] VMX: Properly handle pi descriptor and per-cpu blocking list Date: Fri, 24 Jun 2016 12:27:42 +0200 Message-ID: <1466764062.18398.93.camel@citrix.com> References: <1463734431-22353-1-git-send-email-feng.wu@intel.com> <573F02B102000078000ED304@prv-mh.provo.novell.com> <5742D6BB02000078000EDA57@prv-mh.provo.novell.com> <5742E0BE02000078000EDABD@prv-mh.provo.novell.com> <1464007152.21930.55.camel@citrix.com> <1464098547.21930.107.camel@citrix.com> <1466694703.18398.69.camel@citrix.com> <1466752952.18398.81.camel@citrix.com> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="===============2659086927399189337==" Return-path: In-Reply-To: List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: "Wu, Feng" , Jan Beulich Cc: "george.dunlap@eu.citrix.com" , "andrew.cooper3@citrix.com" , "Tian, Kevin" , "keir@xen.org" , "xen-devel@lists.xen.org" List-Id: xen-devel@lists.xenproject.org --===============2659086927399189337== Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="=-vFOBNi/2qtGf6L5Yuo7s" --=-vFOBNi/2qtGf6L5Yuo7s Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Fri, 2016-06-24 at 07:59 +0000, Wu, Feng wrote: > > -----Original Message----- > > From: Dario Faggioli [mailto:dario.faggioli@citrix.com] > > So, vCPU 3 was running, but then some called stop_machine_run(), > > which > > causes the descheduling of vCPU 3, and the execution of the > > stopmachine > > tasklet. > Thanks for your replay. Yes, I think this is point. Here descheduling > of vCPU3 > happens, and the reason we will choose the tasklet as the next > running > unit for sure (not choosing another vCPU or vCPU3 itself as the next > running unit) is because tasklet will overrides all other choose as > stated in csched_schedule() as below, right? >=20 Exactly, tasklets preempt the running vcpu and take precedence of runnable vcpus. Then, in this case, the reason why we are sure that all the pcpus are executing the body of the tasklet, is indeed the structure of stop_machine_run() and stopmachine_action() themselves, which are built to make sure of that, much rather than just the fact that tasklet are higher priority. But yes, this is what happens. Regards, Dario --=20 <> (Raistlin Majere) ----------------------------------------------------------------- Dario Faggioli, Ph.D, http://about.me/dario.faggioli Senior Software Engineer, Citrix Systems R&D Ltd., Cambridge (UK) --=-vFOBNi/2qtGf6L5Yuo7s 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 v2 iQIcBAABCAAGBQJXbQsfAAoJEBZCeImluHPu/oQQALQ+/nKVEQgQyUeYF3bbDi7D YfXwn8ldk3o222iHkGDI5K27Oj1CZ2QmWK/OkS/M890puu4Agbq6PcOhTcmeDHEP fc6qnmtuldiYswYNkDFGwX5ET+clj1pfAlzGwjFMuxQifcUAXnq+9PXE2FDQbkjY FPodqtb7WfHlC/I1qEfsivxKi4uy70sbsllK++YGVSq3vWUUrvngHFwMyfe5VUOi UjW/z20gSdcp/FqSvvQW47GnjwmODr74DkbFaYeuByC/87+/B5rMOjeHH0xE9kKi 490zRuiL4rZUQzmMsAl2xxoug6PdSpnsqZsyfiroU5QDT6PDst63b7z9vZ9U6tx2 aredOc3isbthDbVCB2LDDderZq6jdUCUWh2NWeVLeoJ3LHolHAseUKDwvVPnxO9r zP54qoWEOuYM5FvX3tNune5Z2M0uvjCkCfJlm64SoJQvPTXfrNLvF5vstxzC+KjC ECQn5HpMcg9yH5fzp7cyRbqXtnAyWc86daknP7VLuuab/wrOJ81UrNWY4ylyJC42 1OFOAMosixNzzGqyzkbZJE+E7tFNZQd1DDNT91ajsNfhsLpIsQIn9pUKbnLxXvA+ u2Mxj9ZKUQeMX/8vjWczJfZftUfe2MxYgqEr/wyVmwAQF5mD7Fb/EV2D7AMmHSpg iB91yyiM2UkZZxmniu4O =kDm6 -----END PGP SIGNATURE----- --=-vFOBNi/2qtGf6L5Yuo7s-- --===============2659086927399189337== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: inline X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KWGVuLWRldmVs IG1haWxpbmcgbGlzdApYZW4tZGV2ZWxAbGlzdHMueGVuLm9yZwpodHRwOi8vbGlzdHMueGVuLm9y Zy94ZW4tZGV2ZWwK --===============2659086927399189337==--