From mboxrd@z Thu Jan 1 00:00:00 1970 From: Dario Faggioli Subject: Re: [PATCH] xen: credit2: clear bit instead of skip step in runq_tickle() Date: Thu, 26 Jan 2017 02:00:15 +0100 Message-ID: <1485392415.32103.138.camel@citrix.com> References: <148469943088.19533.8330155575788944646.stgit@Solace.fritz.box> <2f67b539-463c-ab71-1299-62f521d3e9b6@citrix.com> <587F51C402000078001312AE@prv-mh.provo.novell.com> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="===============5190450082620669723==" Return-path: Received: from mail6.bemta6.messagelabs.com ([193.109.254.103]) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1cWYQN-0004d7-HB for xen-devel@lists.xenproject.org; Thu, 26 Jan 2017 01:00:27 +0000 In-Reply-To: <587F51C402000078001312AE@prv-mh.provo.novell.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: George Dunlap Cc: George Dunlap , xen-devel@lists.xenproject.org, Jan Beulich List-Id: xen-devel@lists.xenproject.org --===============5190450082620669723== Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="=-TXosq3JWN/zWqh603/LN" --=-TXosq3JWN/zWqh603/LN Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Wed, 2017-01-18 at 03:30 -0700, Jan Beulich wrote: > > > > On 18.01.17 at 11:21, wrote: > > On 18/01/17 00:30, Dario Faggioli wrote: > > > index ef8e0d8..d086264 100644 > > > --- a/xen/common/sched_credit2.c > > > +++ b/xen/common/sched_credit2.c > > > @@ -985,7 +985,7 @@ runq_tickle(const struct scheduler *ops, > > > struct csched2_vcpu *new, s_time_t now) > > > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0cpumask_andnot(&mask, &rqd->active, &rq= d->idle); > > > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0cpumask_andnot(&mask, &mask, &rqd->tick= led); > > > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0cpumask_and(&mask, &mask, new->vcpu->cp= u_hard_affinity); > > > -=C2=A0=C2=A0=C2=A0=C2=A0if ( cpumask_test_cpu(cpu, &mask) ) > > > +=C2=A0=C2=A0=C2=A0=C2=A0if ( __cpumask_test_and_clear_cpu(cpu, &mask= ) ) > >=20 > > Since we're micro-optimizing -- isn't test-and-clear a locked > > operation? > > =C2=A0Would that be more expensive than the if() statement below? >=20 > cpumask_test_and_clear_cpu() is, but __cpumask_test_and_clear_cpu() > isn't. >=20 George, ping? Thanks and Regards, Dario --=20 <> (Raistlin Majere) ----------------------------------------------------------------- Dario Faggioli, Ph.D, http://about.me/dario.faggioli Senior Software Engineer, Citrix Systems R&D Ltd., Cambridge (UK) --=-TXosq3JWN/zWqh603/LN 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 iQIcBAABCAAGBQJYiUofAAoJEBZCeImluHPu4hMP/ixr6nqY1TlFfg6OqZIrRR4f M2e1mszHV9XE2NtB0Hf94bWGAgPLgHNN1aPEjp9WXldmXEpRB4CYDVYek32JFWZ8 5vjc5yInYxuTaALN3NJeJ5gZaTERbPmEqk4xM+VZFE2oD3ZheBo/gJXFG3AzpmwM 6T4UPJkACv31URchlJL/Yu/1KbDJMapIX895v8AYBylZtFjP5VudPmS1b7wct1Hc rKbbY4XXLhzobC6JYqNU2dphf9QdtzZwxuat2oAQJWuSZv3SrC3g6qcHzU2QX/7y LbG12LZeg4NvAu3Obep3IWX84T/zj7e7SeRo6Tv5wUEudQbkAAdLeBlu9WNJWCoj I+Qu5z0BD1t6H+OHG3KqPDyhq28/nRylZh+LeV4Z4ekT+mSuz+oqDYA6GUZhwdMx 63FEBeyqvMT3Rl0UP8umVRAvBRIEmOtF2qbKFIOiKc6/eRmw7gf2+aeoAElsH8AQ Cqx5kYV0Bbcbc6/ofy40z+reGCvP5peEKCkDfa9uSa0F1yM1TUbpuY3vnejouTFU qiVf+Q21rzSdy71bOWqSIhka0dQ5BLxNQIuWZub/s3k9VByVW1v+Lz4rFIK/4J4o NzU2urgVmqQj9ylsopfQVWGhM0CtuwJ0NDhQ/89OlBVi6C/WMotCkt5U0EITknUX RHS3CD7usgFA+71e8kkp =xsYS -----END PGP SIGNATURE----- --=-TXosq3JWN/zWqh603/LN-- --===============5190450082620669723== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: inline X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KWGVuLWRldmVs IG1haWxpbmcgbGlzdApYZW4tZGV2ZWxAbGlzdHMueGVuLm9yZwpodHRwczovL2xpc3RzLnhlbi5v cmcveGVuLWRldmVsCg== --===============5190450082620669723==--