From mboxrd@z Thu Jan 1 00:00:00 1970 From: Dario Faggioli Subject: Re: [PATCH 2/5] xen: credit2: never consider CPUs outside of our cpupool. Date: Thu, 9 Feb 2017 11:32:53 +0100 Message-ID: <1486636373.3042.28.camel@citrix.com> References: <148467379229.27920.2367500429219327194.stgit@Solace.fritz.box> <148467400670.27920.10444838852821010432.stgit@Solace.fritz.box> <5894505C02000078001366A3@prv-mh.provo.novell.com> <1486135653.16676.5.camel@citrix.com> <5894B27B02000078001368EC@prv-mh.provo.novell.com> <1486572516.3042.15.camel@citrix.com> <589B5D460200007800137E42@prv-mh.provo.novell.com> <1486580125.3042.22.camel@citrix.com> <589C41BA020000780013816B@prv-mh.provo.novell.com> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="===============5484559531834994620==" Return-path: Received: from mail6.bemta3.messagelabs.com ([195.245.230.39]) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1cbm2B-0003nl-TU for xen-devel@lists.xenproject.org; Thu, 09 Feb 2017 10:33:04 +0000 In-Reply-To: <589C41BA020000780013816B@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: Jan Beulich Cc: George Dunlap , xen-devel@lists.xenproject.org, Juergen Gross List-Id: xen-devel@lists.xenproject.org --===============5484559531834994620== Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="=-aLEucVOr53mZQm4j5k05" --=-aLEucVOr53mZQm4j5k05 Content-Type: multipart/mixed; boundary="=-XzXZoc+lhRiDT2wdvcL7" --=-XzXZoc+lhRiDT2wdvcL7 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Thu, 2017-02-09 at 02:17 -0700, Jan Beulich wrote: > > > > On 08.02.17 at 19:55, wrote: > I'm going to commit what I have later today, and > I'll pull in the one extra backport next time round. >=20 Ok, patch attached. I've tested it on top of current tip of staging-4.7. Regards, Dario --=C2=A0 <> (Raistlin Majere) ----------------------------------------------------------------- Dario Faggioli, Ph.D, http://about.me/dario.faggioli Senior Software Engineer, Citrix Systems R&D Ltd., Cambridge (UK) --=-XzXZoc+lhRiDT2wdvcL7 Content-Disposition: attachment; filename="xen-credit2-never-consider-cpus-outside-cpupool-4.7.patch" Content-Type: text/x-patch; name="xen-credit2-never-consider-cpus-outside-cpupool-4.7.patch"; charset="UTF-8" Content-Transfer-Encoding: base64 Y29tbWl0IDA5NzI1ZjhhZjM3NDE1YzMwYTFhNTNkNGEzNGU2N2ZhYmNiYTEwNWQKQXV0aG9yOiBE YXJpbyBGYWdnaW9saSA8ZGFyaW8uZmFnZ2lvbGlAY2l0cml4LmNvbT4KRGF0ZTogICBXZWQgRmVi IDggMTk6MDE6NTMgMjAxNyArMDEwMAoKICAgIHhlbjogY3JlZGl0MjogbmV2ZXIgY29uc2lkZXIg Q1BVcyBvdXRzaWRlIG9mIG91ciBjcHVwb29sLgogICAgCiAgICBJbiBmYWN0LCByZWx5aW5nIG9u IHRoZSBtYXNrIG9mIHdoYXQgcENQVXMgYmVsb25nIHRvCiAgICB3aGljaCBDcmVkaXQyIHJ1bnF1 ZXVlIGlzIG5vdCBlbm91Z2guIElmIHdlIG9ubHkgZG8gdGhhdCwKICAgIHdoZW4gQ3JlZGl0MiBp cyB0aGUgYm9vdCBzY2hlZHVsZXIsIHdlIG1heSBBU1NFUlQoKSBvcgogICAgcGFuaWMgd2hlbiBt b3ZpbmcgYSBwQ1BVIGZyb20gUG9vbC0wIHRvIGFub3RoZXIgY3B1cG9vbC4KICAgIAogICAgVGhp cyBpcyBiZWNhdXNlIHBDUFVzIG91dHNpZGUgb2YgYW55IHBvb2wgYXJlIGNvbnNpZGVyZWQKICAg IHBhcnQgb2YgY3B1cG9vbDAuIFRoaXMgcHV0cyB1cyBhdCByaXNrIG9mIGNyYXNoIHdoZW4gdGhv c2UKICAgIHNhbWUgcENQVXMgYXJlIGFkZGVkIHRvIGFub3RoZXIgcG9vbCBhbmQgc29tZXRoaW5n CiAgICBkaWZmZXJlbnQgdGhhbiB0aGUgaWRsZSBkb21haW4gaXMgZm91bmQgdG8gYmUgcnVubmlu ZwogICAgb24gdGhlbS4KICAgIAogICAgTm90ZSB0aGF0LCBldmVuIGlmIHdlIHByZXZlbnQgdGhl IGFib3ZlIHRvIGhhcHBlbiAod2hpY2gKICAgIGlzIHRoZSBwdXJwb3NlIG9mIHRoaXMgcGF0Y2gp LCB0aGlzIGlzIHN0aWxsIHByZXR0eSBiYWQsCiAgICBpbiBmYWN0LCB3aGVuIHdlIHJlbW92ZSBh IHBDUFUgZnJvbSBQb29sLTA6CiAgICAtIGluIENyZWRpdDEsIGFzIHdlIGRvICpub3QqIHVwZGF0 ZSBwcnYtPm5jcHVzIGFuZAogICAgICBwcnYtPmNyZWRpdCwgd2hpY2ggbWVhbnMgd2UncmUgY29u c2lkZXJpbmcgdGhlIHdyb25nCiAgICAgIHRvdGFsIGNyZWRpdHMgd2hlbiBkb2luZyBhY2NvdW50 aW5nOwogICAgLSBpbiBDcmVkaXQyLCB0aGUgcENQVSByZW1haW5zIHBhcnQgb2Ygb25lIHJ1bnF1 ZXVlLAogICAgICBhbmQgaXMgaGVuY2UgYXQgbGVhc3QgY29uc2lkZXJlZCBkdXJpbmcgbG9hZCBi YWxhbmNpbmcsCiAgICAgIGV2ZW4gaWYgbm8gdkNQVSBzaG91bGQgcmVhbGx5IHJ1biB0aGVyZS4K ICAgIAogICAgSW4gQ3JlZGl0MSwgdGhpcyAib25seSIgY2F1c2VzIHNrZXdlZCBhY2NvdW50aW5n IGFuZAogICAgbm8gY3Jhc2hlcyBiZWNhdXNlIHRoZXJlIGlzIGEgbG90IG9mIGBjcHVtYXNrX2Fu ZGBpbmcKICAgIGdvaW5nIG9uIHdpdGggdGhlIGNwdW1hc2sgb2YgdGhlIGRvbWFpbnMnIGNwdXBv b2wKICAgICh3aGljaCwgQlRXLCBjb21lcyBhdCBhIHByaWNlKS4KICAgIAogICAgQSBxdWljayBh bmQgbm90IHRvIGludm9sdmVkIChhbmQgZWFzaWx5IGJhY2twb3J0YWJsZSkKICAgIHNvbHV0aW9u IGZvciBDcmVkaXQyLCBpcyB0byBkbyBleGFjdGx5IHRoZSBzYW1lLgogICAgCiAgICBTaWduZWQt b2ZmLWJ5OiBEYXJpbyBGYWdnaW9saSA8ZGFyaW8uZmFnZ2lvbGlAY2l0cml4LmNvbQogICAgLS0t CiAgICBDYzogR2VvcmdlIER1bmxhcCA8Z2VvcmdlLmR1bmxhcEBldS5jaXRyaXguY29tPgogICAg Q2M6IEphbiBCZXVsaWNoIDxqYmV1bGljaEBzdXNlLmNvbT4KCmRpZmYgLS1naXQgYS94ZW4vY29t bW9uL3NjaGVkX2NyZWRpdDIuYyBiL3hlbi9jb21tb24vc2NoZWRfY3JlZGl0Mi5jCmluZGV4IDI1 YjRjOTEuLjM1ZGFkMTUgMTAwNjQ0Ci0tLSBhL3hlbi9jb21tb24vc2NoZWRfY3JlZGl0Mi5jCisr KyBiL3hlbi9jb21tb24vc2NoZWRfY3JlZGl0Mi5jCkBAIC0zMzEsMTkgKzMzMSwyMiBAQCBzdGF0 aWMgaW50IGNzY2hlZDJfY3B1X3BpY2soY29uc3Qgc3RydWN0IHNjaGVkdWxlciAqb3BzLCBzdHJ1 Y3QgdmNwdSAqdmMpOwogICovCiBzdGF0aWMgaW50IGdldF9mYWxsYmFja19jcHUoc3RydWN0IGNz Y2hlZDJfdmNwdSAqc3ZjKQogewotICAgIGludCBmYWxsYmFja19jcHUsIGNwdSA9IHN2Yy0+dmNw dS0+cHJvY2Vzc29yOworICAgIHN0cnVjdCB2Y3B1ICp2ID0gc3ZjLT52Y3B1OworICAgIGludCBj cHUgPSB2LT5wcm9jZXNzb3I7CiAKLSAgICBpZiAoIGxpa2VseShjcHVtYXNrX3Rlc3RfY3B1KGNw dSwgc3ZjLT52Y3B1LT5jcHVfaGFyZF9hZmZpbml0eSkpICkKLSAgICAgICAgcmV0dXJuIGNwdTsK KyAgICBjcHVtYXNrX2FuZChjcHVtYXNrX3NjcmF0Y2hfY3B1KGNwdSksIHYtPmNwdV9oYXJkX2Fm ZmluaXR5LAorICAgICAgICAgICAgICAgIGNwdXBvb2xfZG9tYWluX2NwdW1hc2sodi0+ZG9tYWlu KSk7CiAKLSAgICBjcHVtYXNrX2FuZChjcHVtYXNrX3NjcmF0Y2hfY3B1KGNwdSksIHN2Yy0+dmNw dS0+Y3B1X2hhcmRfYWZmaW5pdHksCi0gICAgICAgICAgICAgICAgJnN2Yy0+cnFkLT5hY3RpdmUp OwotICAgIGZhbGxiYWNrX2NwdSA9IGNwdW1hc2tfZmlyc3QoY3B1bWFza19zY3JhdGNoX2NwdShj cHUpKTsKLSAgICBpZiAoIGxpa2VseShmYWxsYmFja19jcHUgPCBucl9jcHVfaWRzKSApCi0gICAg ICAgIHJldHVybiBmYWxsYmFja19jcHU7CisgICAgaWYgKCBsaWtlbHkoY3B1bWFza190ZXN0X2Nw dShjcHUsIGNwdW1hc2tfc2NyYXRjaF9jcHUoY3B1KSkpICkKKyAgICAgICAgcmV0dXJuIGNwdTsK IAotICAgIGNwdW1hc2tfYW5kKGNwdW1hc2tfc2NyYXRjaCwgc3ZjLT52Y3B1LT5jcHVfaGFyZF9h ZmZpbml0eSwKLSAgICAgICAgICAgICAgICBjcHVwb29sX2RvbWFpbl9jcHVtYXNrKHN2Yy0+dmNw dS0+ZG9tYWluKSk7CisgICAgaWYgKCBsaWtlbHkoY3B1bWFza19pbnRlcnNlY3RzKGNwdW1hc2tf c2NyYXRjaF9jcHUoY3B1KSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJnN2 Yy0+cnFkLT5hY3RpdmUpKSApCisgICAgeworICAgICAgICBjcHVtYXNrX2FuZChjcHVtYXNrX3Nj cmF0Y2hfY3B1KGNwdSksICZzdmMtPnJxZC0+YWN0aXZlLAorICAgICAgICAgICAgICAgICAgICBj cHVtYXNrX3NjcmF0Y2hfY3B1KGNwdSkpOworICAgICAgICByZXR1cm4gY3B1bWFza19maXJzdChj cHVtYXNrX3NjcmF0Y2hfY3B1KGNwdSkpOworICAgIH0KIAogICAgIEFTU0VSVCghY3B1bWFza19l bXB0eShjcHVtYXNrX3NjcmF0Y2hfY3B1KGNwdSkpKTsKIApAQCAtNTgyLDkgKzU4NSwxMiBAQCBy dW5xX3RpY2tsZShjb25zdCBzdHJ1Y3Qgc2NoZWR1bGVyICpvcHMsIHVuc2lnbmVkIGludCBjcHUs IHN0cnVjdCBjc2NoZWQyX3ZjcHUgKgogICAgICAgICBnb3RvIHRpY2tsZTsKICAgICB9CiAgICAg CisgICAgY3B1bWFza19hbmQoY3B1bWFza19zY3JhdGNoX2NwdShjcHUpLCBuZXctPnZjcHUtPmNw dV9oYXJkX2FmZmluaXR5LAorICAgICAgICAgICAgICAgIGNwdXBvb2xfZG9tYWluX2NwdW1hc2so bmV3LT52Y3B1LT5kb21haW4pKTsKKwogICAgIC8qIEdldCBhIG1hc2sgb2YgaWRsZSwgYnV0IG5v dCB0aWNrbGVkLCB0aGF0IG5ldyBpcyBhbGxvd2VkIHRvIHJ1biBvbi4gKi8KICAgICBjcHVtYXNr X2FuZG5vdCgmbWFzaywgJnJxZC0+aWRsZSwgJnJxZC0+dGlja2xlZCk7Ci0gICAgY3B1bWFza19h bmQoJm1hc2ssICZtYXNrLCBuZXctPnZjcHUtPmNwdV9oYXJkX2FmZmluaXR5KTsKKyAgICBjcHVt YXNrX2FuZCgmbWFzaywgJm1hc2ssIGNwdW1hc2tfc2NyYXRjaF9jcHUoY3B1KSk7CiAgICAgCiAg ICAgLyogSWYgaXQncyBub3QgZW1wdHksIGNob29zZSBvbmUgKi8KICAgICBpID0gY3B1bWFza19j eWNsZShjcHUsICZtYXNrKTsKQEAgLTU5OSw3ICs2MDUsNyBAQCBydW5xX3RpY2tsZShjb25zdCBz dHJ1Y3Qgc2NoZWR1bGVyICpvcHMsIHVuc2lnbmVkIGludCBjcHUsIHN0cnVjdCBjc2NoZWQyX3Zj cHUgKgogICAgICAqIHRoYXQgbmV3IGlzIGFsbG93ZWQgdG8gcnVuIG9uLiAqLwogICAgIGNwdW1h c2tfYW5kbm90KCZtYXNrLCAmcnFkLT5hY3RpdmUsICZycWQtPmlkbGUpOwogICAgIGNwdW1hc2tf YW5kbm90KCZtYXNrLCAmbWFzaywgJnJxZC0+dGlja2xlZCk7Ci0gICAgY3B1bWFza19hbmQoJm1h c2ssICZtYXNrLCBuZXctPnZjcHUtPmNwdV9oYXJkX2FmZmluaXR5KTsKKyAgICBjcHVtYXNrX2Fu ZCgmbWFzaywgJm1hc2ssIGNwdW1hc2tfc2NyYXRjaF9jcHUoY3B1KSk7CiAKICAgICBmb3JfZWFj aF9jcHUoaSwgJm1hc2spCiAgICAgewpAQCAtMTE2MCw2ICsxMTY2LDkgQEAgY2hvb3NlX2NwdShj b25zdCBzdHJ1Y3Qgc2NoZWR1bGVyICpvcHMsIHN0cnVjdCB2Y3B1ICp2YykKICAgICAgICAgcmV0 dXJuIGdldF9mYWxsYmFja19jcHUoc3ZjKTsKICAgICB9CiAKKyAgICBjcHVtYXNrX2FuZChjcHVt YXNrX3NjcmF0Y2hfY3B1KGNwdSksIHZjLT5jcHVfaGFyZF9hZmZpbml0eSwKKyAgICAgICAgICAg ICAgICBjcHVwb29sX2RvbWFpbl9jcHVtYXNrKHZjLT5kb21haW4pKTsKKwogICAgIC8qIEZpcnN0 IGNoZWNrIHRvIHNlZSBpZiB3ZSdyZSBoZXJlIGJlY2F1c2Ugc29tZW9uZSBlbHNlIHN1Z2dlc3Rl ZCBhIHBsYWNlCiAgICAgICogZm9yIHVzIHRvIG1vdmUuICovCiAgICAgaWYgKCB0ZXN0X2FuZF9j bGVhcl9iaXQoX19DU0ZMQUdfcnVucV9taWdyYXRlX3JlcXVlc3QsICZzdmMtPmZsYWdzKSApCkBA IC0xMTY5LDE2ICsxMTc4LDE0IEBAIGNob29zZV9jcHUoY29uc3Qgc3RydWN0IHNjaGVkdWxlciAq b3BzLCBzdHJ1Y3QgdmNwdSAqdmMpCiAgICAgICAgICAgICBwcmludGsoIiVzOiBSdW5xdWV1ZSBt aWdyYXRlIGFib3J0ZWQgYmVjYXVzZSB0YXJnZXQgcnVucXVldWUgZGlzYXBwZWFyZWQhXG4iLAog ICAgICAgICAgICAgICAgICAgIF9fZnVuY19fKTsKICAgICAgICAgfQotICAgICAgICBlbHNlCisg ICAgICAgIGVsc2UgaWYgKCBjcHVtYXNrX2ludGVyc2VjdHMoY3B1bWFza19zY3JhdGNoX2NwdShj cHUpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZzdmMtPm1pZ3JhdGVf cnFkLT5hY3RpdmUpICkKICAgICAgICAgewotICAgICAgICAgICAgY3B1bWFza19hbmQoY3B1bWFz a19zY3JhdGNoX2NwdShjcHUpLCB2Yy0+Y3B1X2hhcmRfYWZmaW5pdHksCisgICAgICAgICAgICBj cHVtYXNrX2FuZChjcHVtYXNrX3NjcmF0Y2hfY3B1KGNwdSksIGNwdW1hc2tfc2NyYXRjaF9jcHUo Y3B1KSwKICAgICAgICAgICAgICAgICAgICAgICAgICZzdmMtPm1pZ3JhdGVfcnFkLT5hY3RpdmUp OwogICAgICAgICAgICAgbmV3X2NwdSA9IGNwdW1hc2tfYW55KGNwdW1hc2tfc2NyYXRjaF9jcHUo Y3B1KSk7Ci0gICAgICAgICAgICBpZiAoIG5ld19jcHUgPCBucl9jcHVfaWRzICkKLSAgICAgICAg ICAgIHsKLSAgICAgICAgICAgICAgICBkMnByaW50aygiJXB2ICtcbiIsIHN2Yy0+dmNwdSk7Ci0g ICAgICAgICAgICAgICAgZ290byBvdXRfdXA7Ci0gICAgICAgICAgICB9CisgICAgICAgICAgICBk MnByaW50aygiJXB2ICtcbiIsIHN2Yy0+dmNwdSk7CisgICAgICAgICAgICBnb3RvIG91dF91cDsK ICAgICAgICAgfQogICAgICAgICAvKiBGYWxsLXRocm91Z2ggdG8gbm9ybWFsIGNwdSBwaWNrICov CiAgICAgfQpAQCAtMTIwOCwxMiArMTIxNSwxMiBAQCBjaG9vc2VfY3B1KGNvbnN0IHN0cnVjdCBz Y2hlZHVsZXIgKm9wcywgc3RydWN0IHZjcHUgKnZjKQogICAgICAgICAgKi8KICAgICAgICAgaWYg KCBycWQgPT0gc3ZjLT5ycWQgKQogICAgICAgICB7Ci0gICAgICAgICAgICBpZiAoIGNwdW1hc2tf aW50ZXJzZWN0cyh2Yy0+Y3B1X2hhcmRfYWZmaW5pdHksICZycWQtPmFjdGl2ZSkgKQorICAgICAg ICAgICAgaWYgKCBjcHVtYXNrX2ludGVyc2VjdHMoY3B1bWFza19zY3JhdGNoX2NwdShjcHUpLCAm cnFkLT5hY3RpdmUpICkKICAgICAgICAgICAgICAgICBycWRfYXZnbG9hZCA9IHJxZC0+Yl9hdmds b2FkIC0gc3ZjLT5hdmdsb2FkOwogICAgICAgICB9CiAgICAgICAgIGVsc2UgaWYgKCBzcGluX3Ry eWxvY2soJnJxZC0+bG9jaykgKQogICAgICAgICB7Ci0gICAgICAgICAgICBpZiAoIGNwdW1hc2tf aW50ZXJzZWN0cyh2Yy0+Y3B1X2hhcmRfYWZmaW5pdHksICZycWQtPmFjdGl2ZSkgKQorICAgICAg ICAgICAgaWYgKCBjcHVtYXNrX2ludGVyc2VjdHMoY3B1bWFza19zY3JhdGNoX2NwdShjcHUpLCAm cnFkLT5hY3RpdmUpICkKICAgICAgICAgICAgICAgICBycWRfYXZnbG9hZCA9IHJxZC0+Yl9hdmds b2FkOwogCiAgICAgICAgICAgICBzcGluX3VubG9jaygmcnFkLT5sb2NrKTsKQEAgLTEyMzEsNyAr MTIzOCw3IEBAIGNob29zZV9jcHUoY29uc3Qgc3RydWN0IHNjaGVkdWxlciAqb3BzLCBzdHJ1Y3Qg dmNwdSAqdmMpCiAgICAgICAgIG5ld19jcHUgPSBnZXRfZmFsbGJhY2tfY3B1KHN2Yyk7CiAgICAg ZWxzZQogICAgIHsKLSAgICAgICAgY3B1bWFza19hbmQoY3B1bWFza19zY3JhdGNoX2NwdShjcHUp LCB2Yy0+Y3B1X2hhcmRfYWZmaW5pdHksCisgICAgICAgIGNwdW1hc2tfYW5kKGNwdW1hc2tfc2Ny YXRjaF9jcHUoY3B1KSwgY3B1bWFza19zY3JhdGNoX2NwdShjcHUpLAogICAgICAgICAgICAgICAg ICAgICAmcHJ2LT5ycWRbbWluX3JxaV0uYWN0aXZlKTsKICAgICAgICAgbmV3X2NwdSA9IGNwdW1h c2tfYW55KGNwdW1hc2tfc2NyYXRjaF9jcHUoY3B1KSk7CiAgICAgICAgIEJVR19PTihuZXdfY3B1 ID49IG5yX2NwdV9pZHMpOwpAQCAtMTMxOCw2ICsxMzI1LDggQEAgc3RhdGljIHZvaWQgbWlncmF0 ZShjb25zdCBzdHJ1Y3Qgc2NoZWR1bGVyICpvcHMsCiAgICAgICAgIF9fcnVucV9kZWFzc2lnbihz dmMpOwogCiAgICAgICAgIGNwdW1hc2tfYW5kKGNwdW1hc2tfc2NyYXRjaF9jcHUoY3B1KSwgc3Zj LT52Y3B1LT5jcHVfaGFyZF9hZmZpbml0eSwKKyAgICAgICAgICAgICAgICAgICAgY3B1cG9vbF9k b21haW5fY3B1bWFzayhzdmMtPnZjcHUtPmRvbWFpbikpOworICAgICAgICBjcHVtYXNrX2FuZChj cHVtYXNrX3NjcmF0Y2hfY3B1KGNwdSksIGNwdW1hc2tfc2NyYXRjaF9jcHUoY3B1KSwKICAgICAg ICAgICAgICAgICAgICAgJnRycWQtPmFjdGl2ZSk7CiAgICAgICAgIHN2Yy0+dmNwdS0+cHJvY2Vz c29yID0gY3B1bWFza19hbnkoY3B1bWFza19zY3JhdGNoX2NwdShjcHUpKTsKICAgICAgICAgQlVH X09OKHN2Yy0+dmNwdS0+cHJvY2Vzc29yID49IG5yX2NwdV9pZHMpOwpAQCAtMTM0Myw4ICsxMzUy LDE0IEBAIHN0YXRpYyB2b2lkIG1pZ3JhdGUoY29uc3Qgc3RydWN0IHNjaGVkdWxlciAqb3BzLAog c3RhdGljIGJvb2xfdCB2Y3B1X2lzX21pZ3JhdGVhYmxlKHN0cnVjdCBjc2NoZWQyX3ZjcHUgKnN2 YywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJ1Y3QgY3NjaGVkMl9ydW5x dWV1ZV9kYXRhICpycWQpCiB7CisgICAgc3RydWN0IHZjcHUgKnYgPSBzdmMtPnZjcHU7CisgICAg aW50IGNwdSA9IHN2Yy0+dmNwdS0+cHJvY2Vzc29yOworCisgICAgY3B1bWFza19hbmQoY3B1bWFz a19zY3JhdGNoX2NwdShjcHUpLCB2LT5jcHVfaGFyZF9hZmZpbml0eSwKKyAgICAgICAgICAgICAg ICBjcHVwb29sX2RvbWFpbl9jcHVtYXNrKHYtPmRvbWFpbikpOworCiAgICAgcmV0dXJuICEoc3Zj LT5mbGFncyAmIENTRkxBR19ydW5xX21pZ3JhdGVfcmVxdWVzdCkgJiYKLSAgICAgICAgICAgY3B1 bWFza19pbnRlcnNlY3RzKHN2Yy0+dmNwdS0+Y3B1X2hhcmRfYWZmaW5pdHksICZycWQtPmFjdGl2 ZSk7CisgICAgICAgICAgIGNwdW1hc2tfaW50ZXJzZWN0cyhjcHVtYXNrX3NjcmF0Y2hfY3B1KGNw dSksICZycWQtPmFjdGl2ZSk7CiB9CiAKIHN0YXRpYyB2b2lkIGJhbGFuY2VfbG9hZChjb25zdCBz dHJ1Y3Qgc2NoZWR1bGVyICpvcHMsIGludCBjcHUsIHNfdGltZV90IG5vdykK --=-XzXZoc+lhRiDT2wdvcL7-- --=-aLEucVOr53mZQm4j5k05 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 iQIcBAABCAAGBQJYnEVWAAoJEBZCeImluHPu/SoP/RQgc9WfvhUdaC2z8MNtJ+ce GL52eixUHx8vm2mh020YTZwtTDpO1ybRjPhljvn0AACuIih8V1gbiR8cCE1KpO7B 0XLYXg/4Am/F7PijXGbV754/8Q8+KOLnulHCkzYcfbMk5DwsBIZfEw2U+yx7Mpl2 M19WLnSEpPeJxs4NgLdcEsERgFfZLExPNH+WXzY8hyolPHD+p6CatTQwsYuw4dnH DPfn3o6E8nAJ4ObkS9BkmIN+hRonuc4FrmciR4V9/UpX7bDYoW67JaYYKyS9mrtH ANm/UrG3Jx36dPubAnmbln/tDcJH90GMMdPzsMYOB3QenaTEMrY1jnDYBUJQ1Q9P lmxHeuwrVqQiBqBRD43hVWnXnjrfNmAe7RE+cuDzgQh7Yg8XqKtPrpXt0O/CrsG3 5RWa+TT394eQNMIEDvesltuK+uFUtejbBfikqUQYDjyQ8hD8NZXnoTwLjznoyX9D NRLgi2o/TELz17zSMMHnDYDTEmPUKEci3FfajgwgM1hZPmIhKVlyqvm3uS9oxTVy CouAe9Fk4UOk68rzTBOKa+vMvkx0J7ZCPZ6gt2e7WHb4VDSwBlCGsi3u+EfukgM5 +t4SGwkNphwFxPP3lFcafyX1nrCkug54uaTmdm6sDV0698ccPZl8G34u4krja3Vb rrSMqn2qgIZUYTfVr8Aa =AoW8 -----END PGP SIGNATURE----- --=-aLEucVOr53mZQm4j5k05-- --===============5484559531834994620== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: inline X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KWGVuLWRldmVs IG1haWxpbmcgbGlzdApYZW4tZGV2ZWxAbGlzdHMueGVuLm9yZwpodHRwczovL2xpc3RzLnhlbi5v cmcveGVuLWRldmVsCg== --===============5484559531834994620==--