From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Jan Beulich" Subject: Re: [PATCH 13/14] xen/mm: Convert {s, g}et_gpfn_from_mfn() to use typesafe MFN Date: Fri, 10 May 2019 07:21:48 -0600 Message-ID: <5CD57AEC020000780022D885@prv1-mh.provo.novell.com> References: <20190507151458.29350-1-julien.grall@arm.com> <20190507151458.29350-14-julien.grall@arm.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from all-amaz-eas1.inumbo.com ([34.197.232.57] helo=us1-amaz-eas2.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1hP5TE-0002zO-Rp for xen-devel@lists.xenproject.org; Fri, 10 May 2019 13:21:52 +0000 In-Reply-To: <20190507151458.29350-14-julien.grall@arm.com> Content-Disposition: inline List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" To: Julien Grall , George Dunlap Cc: Stefano Stabellini , Wei Liu , Konrad Rzeszutek Wilk , Andrew Cooper , Ian Jackson , Tim Deegan , Tamas K Lengyel , xen-devel , Roger Pau Monne List-Id: xen-devel@lists.xenproject.org Pj4+IE9uIDA3LjA1LjE5IGF0IDE3OjE0LCA8anVsaWVuLmdyYWxsQGFybS5jb20+IHdyb3RlOgo+ IC0tLSBhL3hlbi9hcmNoL3g4Ni9tbS9tZW1fc2hhcmluZy5jCj4gKysrIGIveGVuL2FyY2gveDg2 L21tL21lbV9zaGFyaW5nLmMKPiBAQCAtMzkxLDExICszOTEsMTIgQEAgc3RhdGljIGlubGluZSB2 b2lkIG1lbV9zaGFyaW5nX2dmbl9kZXN0cm95KHN0cnVjdCBwYWdlX2luZm8gKnBhZ2UsCj4gICAg ICB4ZnJlZShnZm5faW5mbyk7Cj4gIH0KPiAgCj4gLXN0YXRpYyBzdHJ1Y3QgcGFnZV9pbmZvKiBt ZW1fc2hhcmluZ19sb29rdXAodW5zaWduZWQgbG9uZyBtZm4pCj4gK3N0YXRpYyBzdHJ1Y3QgcGFn ZV9pbmZvKiBtZW1fc2hhcmluZ19sb29rdXAobWZuX3QgbWZuKQoKQ291bGQgeW91IGZpeCB0aGUg c3R5bGUgaXNzdWUgKHN3YXBwZWQgKiBhbmQgYmxhbmspIGhlcmUgYXQgdGhlIHNhbWUgdGltZT8K Cj4gQEAgLTEwMzAsMTkgKzEwMzEsMTkgQEAgbG9uZyBwMm1fcHRfYXVkaXRfcDJtKHN0cnVjdCBw Mm1fZG9tYWluICpwMm0pCj4gICAgICAgICAgICAgICAgICAvKiBjaGVjayBmb3IgMUdCIHN1cGVy IHBhZ2UgKi8KPiAgICAgICAgICAgICAgICAgIGlmICggbDNlX2dldF9mbGFncyhsM2VbaTNdKSAm IF9QQUdFX1BTRSApCj4gICAgICAgICAgICAgICAgICB7Cj4gLSAgICAgICAgICAgICAgICAgICAg bWZuID0gbDNlX2dldF9wZm4obDNlW2kzXSk7Cj4gLSAgICAgICAgICAgICAgICAgICAgQVNTRVJU KG1mbl92YWxpZChfbWZuKG1mbikpKTsKPiArICAgICAgICAgICAgICAgICAgICBtZm4gPSBsM2Vf Z2V0X21mbihsM2VbaTNdKTsKPiArICAgICAgICAgICAgICAgICAgICBBU1NFUlQobWZuX3ZhbGlk KG1mbikpOwo+ICAgICAgICAgICAgICAgICAgICAgIC8qIHdlIGhhdmUgdG8gY292ZXIgNTEyeDUx MiA0SyBwYWdlcyAqLwo+ICAgICAgICAgICAgICAgICAgICAgIGZvciAoIGkyID0gMDsgCj4gICAg ICAgICAgICAgICAgICAgICAgICAgICAgaTIgPCAoTDJfUEFHRVRBQkxFX0VOVFJJRVMgKiBMMV9Q QUdFVEFCTEVfRU5UUklFUyk7Cj4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaTIrKykKPiAg ICAgICAgICAgICAgICAgICAgICB7Cj4gLSAgICAgICAgICAgICAgICAgICAgICAgIG0ycGZuID0g Z2V0X2dwZm5fZnJvbV9tZm4obWZuK2kyKTsKPiArICAgICAgICAgICAgICAgICAgICAgICAgbTJw Zm4gPSBnZXRfcGZuX2Zyb21fbWZuKG1mbl9hZGQobWZuLCBpMikpOwo+ICAgICAgICAgICAgICAg ICAgICAgICAgICBpZiAoIG0ycGZuICE9IChnZm4gKyBpMikgKQo+ICAgICAgICAgICAgICAgICAg ICAgICAgICB7Cj4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwbWJhZCsrOwo+IC0gICAg ICAgICAgICAgICAgICAgICAgICAgICAgUDJNX1BSSU5USygibWlzbWF0Y2g6IGdmbiAlI2x4IC0+ IG1mbiAlI2x4Igo+IC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiIC0+ IGdmbiAlI2x4XG4iLCBnZm4raTIsIG1mbitpMiwKPiArICAgICAgICAgICAgICAgICAgICAgICAg ICAgIFAyTV9QUklOVEsoIm1pc21hdGNoOiBnZm4gJSNseCAtPiBtZm4gJSJQUklfbWZuIiBnZm4g JSNseFxuIiwKPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2ZuICsg aTIsIG1mbl94KG1mbl9hZGQobWZuLCBpMikpLAoKSSB0aGluayB0aGUgc2hvcnRlciBtZm5feCht Zm4pICsgaTIgd291bGQgYmUgcHJlZmVyYWJsZSBoZXJlIChhbmQKc2ltaWxhcmx5IGJlbG93KS4K Cj4gQEAgLTEwOTksMTkgKzExMDAsMTkgQEAgbG9uZyBwMm1fcHRfYXVkaXRfcDJtKHN0cnVjdCBw Mm1fZG9tYWluICpwMm0pCj4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZW50cnlf Y291bnQrKzsKPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlOwo+ICAgICAg ICAgICAgICAgICAgICAgICAgICB9Cj4gLSAgICAgICAgICAgICAgICAgICAgICAgIG1mbiA9IGwx ZV9nZXRfcGZuKGwxZVtpMV0pOwo+IC0gICAgICAgICAgICAgICAgICAgICAgICBBU1NFUlQobWZu X3ZhbGlkKF9tZm4obWZuKSkpOwo+IC0gICAgICAgICAgICAgICAgICAgICAgICBtMnBmbiA9IGdl dF9ncGZuX2Zyb21fbWZuKG1mbik7Cj4gKyAgICAgICAgICAgICAgICAgICAgICAgIG1mbiA9IGwx ZV9nZXRfbWZuKGwxZVtpMV0pOwo+ICsgICAgICAgICAgICAgICAgICAgICAgICBBU1NFUlQobWZu X3ZhbGlkKG1mbikpOwo+ICsgICAgICAgICAgICAgICAgICAgICAgICBtMnBmbiA9IGdldF9wZm5f ZnJvbV9tZm4obWZuKTsKPiAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCBtMnBmbiAhPSBn Zm4gJiYKPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlICE9IHAybV9tbWlvX2Rp cmVjdCAmJgo+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICFwMm1faXNfZ3JhbnQodHlw ZSkgJiYKPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAhcDJtX2lzX3NoYXJlZCh0eXBl KSApCj4gICAgICAgICAgICAgICAgICAgICAgICAgIHsKPiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIHBtYmFkKys7Cj4gLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcmludGsoIm1p c21hdGNoOiBnZm4gJSNseCAtPiBtZm4gJSNseCIKPiAtICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAiIC0+IGdmbiAlI2x4XG4iLCBnZm4sIG1mbiwgbTJwZm4pOwo+IC0gICAgICAg ICAgICAgICAgICAgICAgICAgICAgUDJNX1BSSU5USygibWlzbWF0Y2g6IGdmbiAlI2x4IC0+IG1m biAlI2x4Igo+IC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiIC0+IGdm biAlI2x4XG4iLCBnZm4sIG1mbiwgbTJwZm4pOwo+ICsgICAgICAgICAgICAgICAgICAgICAgICAg ICAgcHJpbnRrKCJtaXNtYXRjaDogZ2ZuICUjbHggLT4gbWZuICUiUFJJX21mbiIgLT4gZ2ZuICUj bHhcbiIsCj4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2ZuLCBtZm5feCht Zm4pLCBtMnBmbik7Cj4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBQMk1fUFJJTlRLKCJt aXNtYXRjaDogZ2ZuICUjbHggLT4gbWZuICUiUFJJX21mbiIgLT4gZ2ZuICUjbHhcbiIsCj4gKyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdmbiwgbWZuX3gobWZuKSwgbTJw Zm4pOwoKR2VvcmdlLCBkbyB3ZSByZWFsbHkgbWVhbiB0byBoYXZlIHByaW50aygpIGFuZCBQMk1f UFJJTlRLKCkgaGVyZT8KCj4gQEAgLTI3OTUsNTQgKzI3OTUsNTQgQEAgdm9pZCBhdWRpdF9wMm0o c3RydWN0IGRvbWFpbiAqZCwKPiAgICAgIHNwaW5fbG9jaygmZC0+cGFnZV9hbGxvY19sb2NrKTsK PiAgICAgIHBhZ2VfbGlzdF9mb3JfZWFjaCAoIHBhZ2UsICZkLT5wYWdlX2xpc3QgKQo+ICAgICAg ewo+IC0gICAgICAgIG1mbiA9IG1mbl94KHBhZ2VfdG9fbWZuKHBhZ2UpKTsKPiArICAgICAgICBt Zm4gPSBwYWdlX3RvX21mbihwYWdlKTsKPiAgCj4gLSAgICAgICAgUDJNX1BSSU5USygiYXVkaXRp bmcgZ3Vlc3QgcGFnZSwgbWZuPSUjbHhcbiIsIG1mbik7Cj4gKyAgICAgICAgUDJNX1BSSU5USygi YXVkaXRpbmcgZ3Vlc3QgcGFnZSwgbWZuPSUiUFJJX21mbiJcbiIsIG1mbl94KG1mbikpOwo+ICAK PiAgICAgICAgICBvZCA9IHBhZ2VfZ2V0X293bmVyKHBhZ2UpOwo+ICAKPiAgICAgICAgICBpZiAo IG9kICE9IGQgKQo+ICAgICAgICAgIHsKPiAtICAgICAgICAgICAgUDJNX1BSSU5USygid3Jvbmcg b3duZXIgJSNseCAtPiAlcCgldSkgIT0gJXAoJXUpXG4iLAo+IC0gICAgICAgICAgICAgICAgICAg ICAgIG1mbiwgb2QsIChvZD9vZC0+ZG9tYWluX2lkOi0xKSwgZCwgZC0+ZG9tYWluX2lkKTsKPiAr ICAgICAgICAgICAgUDJNX1BSSU5USygid3Jvbmcgb3duZXIgJSJQUklfbWZuIiAtPiAlcCgldSkg IT0gJXAoJXUpXG4iLAo+ICsgICAgICAgICAgICAgICAgICAgICAgIG1mbl94KG1mbiksIG9kLCAo b2Q/b2QtPmRvbWFpbl9pZDotMSksIGQsIGQtPmRvbWFpbl9pZCk7CgpQbGVhc2UgYmUgY2FyZWZ1 bCBub3QgdG8gZHJvcCAweCBwcmVmaXhlcyBmcm9tIHRoZSByZXN1bHRpbmcgb3V0cHV0Cih3aGlj aCBhcmUgYW4gZWZmZWN0IG9mIHRoZSAjIGZsYWcgdGhhdCB5b3UgZGVsZXRlKSwgYXQgbGVhc3Qg d2hlbgpsb2cgbWVzc2FnZXMgY29udGFpbiBhIG1peCBvZiBoZXggYW5kIGRlYyBudW1iZXJzLiAo SSBhbSwgYnR3LApub3QgY29udmluY2VkIHRoYXQgc3dpdGNoaW5nIHRvIFBSSV9tZm4gaGVyZSBp cyBoZWxwZnVsLikKCkFsc28gd291bGQgeW91IG1pbmQgZml4aW5nIHRoZSBmb3JtYXR0aW5nICht aXNzaW5nIGJsYW5rcykgaGVyZT8KCj4gLS0tIGEveGVuL2FyY2gveDg2L3g4Nl82NC90cmFwcy5j Cj4gKysrIGIveGVuL2FyY2gveDg2L3g4Nl82NC90cmFwcy5jCj4gQEAgLTE4NCw3ICsxODQsOCBA QCB2b2lkIHZjcHVfc2hvd19yZWdpc3RlcnMoY29uc3Qgc3RydWN0IHZjcHUgKnYpCj4gIAo+ICB2 b2lkIHNob3dfcGFnZV93YWxrKHVuc2lnbmVkIGxvbmcgYWRkcikKPiAgewo+IC0gICAgdW5zaWdu ZWQgbG9uZyBwZm4sIG1mbiA9IHJlYWRfY3IzKCkgPj4gUEFHRV9TSElGVDsKPiArICAgIHVuc2ln bmVkIGxvbmcgcGZuOwo+ICsgICAgbWZuX3QgbWZuID0gbWFkZHJfdG9fbWZuKHJlYWRfY3IzKCkp OwoKSSByZWFsaXplIHlvdSBzaW1wbHkgdGFrZSB3aGF0IGhhcyBiZWVuIHRoZXJlIGFuZCB0cmFu c2Zvcm0gaXQsIGJ1dAptYWRkcl90b19tZm4oKSAob3RoZXIgdGhhbiBzaGlmdGluZyBieSBQQUdF X1NISUZUKSBpcyBub3QgdHJ1bHkKYXBwbGljYWJsZSBoZXJlOiBXaGF0IHRoZSBDUjMgcmVnaXN0 ZXIgaG9sZHMgaXMgbm90IGEgcGh5c2ljYWwgYWRkcmVzcywKYm90aCB0aGUgbG93IHR3ZWx2ZSBi aXRzIGFzIHdlbGwgYXMgdGhlIGhpZ2ggdHdlbHZlIG9uZXMgaGF2ZSBkaWZmZXJlbnQKbWVhbmlu Zy4gVGhlIHNoaWZ0IGlzIGNvcnJlY3QgY3VycmVudGx5IGJlY2F1c2UgdGhlIGhpZ2ggb25lcyBh cmUKKHJpZ2h0IG5vdykgemVybyBvbiByZWFkcy4gUGxlYXNlIGNvbnNpZGVyIEFORC1pbmcgd2l0 aApYODZfQ1IzX0FERFJfTUFTSyAob3Iga2VlcGluZyB0aGUgc2hpZnQpLgoKPiAtLS0gYS94ZW4v Y29tbW9uL3BhZ2VfYWxsb2MuYwo+ICsrKyBiL3hlbi9jb21tb24vcGFnZV9hbGxvYy5jCj4gQEAg LTE0MjQsNyArMTQyNCw3IEBAIHN0YXRpYyB2b2lkIGZyZWVfaGVhcF9wYWdlcygKPiAgCj4gICAg ICAgICAgLyogVGhpcyBwYWdlIGlzIG5vdCBhIGd1ZXN0IGZyYW1lIGFueSBtb3JlLiAqLwo+ICAg ICAgICAgIHBhZ2Vfc2V0X293bmVyKCZwZ1tpXSwgTlVMTCk7IC8qIHNldF9ncGZuX2Zyb21fbWZu IHNub29wcyBwZyBvd25lciAqLwo+IC0gICAgICAgIHNldF9ncGZuX2Zyb21fbWZuKG1mbl94KG1m bikgKyBpLCBJTlZBTElEX00yUF9FTlRSWSk7Cj4gKyAgICAgICAgc2V0X3Bmbl9mcm9tX21mbiht Zm5fYWRkKG1mbiwgKyBpKSwgSU5WQUxJRF9NMlBfRU5UUlkpOwoKU3RyYXkgbGVmdG92ZXIgKyA/ Cgo+IC0tLSBhL3hlbi9pbmNsdWRlL2FzbS14ODYvbW0uaAo+ICsrKyBiL3hlbi9pbmNsdWRlL2Fz bS14ODYvbW0uaAo+IEBAIC00OTIsMjIgKzQ5MiwyNiBAQCBleHRlcm4gc3RydWN0IGRvbWFpbiAq ZG9tX3hlbiwgKmRvbV9pbywgKmRvbV9jb3c7CS8qIGZvciB2bWNvcmVpbmZvICovCj4gICAqLwo+ ICBleHRlcm4gYm9vbCBtYWNoaW5lX3RvX3BoeXNfbWFwcGluZ192YWxpZDsKPiAgCj4gLXN0YXRp YyBpbmxpbmUgdm9pZCBzZXRfZ3Bmbl9mcm9tX21mbih1bnNpZ25lZCBsb25nIG1mbiwgdW5zaWdu ZWQgbG9uZyBwZm4pCj4gK3N0YXRpYyBpbmxpbmUgdm9pZCBzZXRfcGZuX2Zyb21fbWZuKG1mbl90 IG1mbiwgdW5zaWduZWQgbG9uZyBwZm4pCj4gIHsKPiAtICAgIHN0cnVjdCBkb21haW4gKmQgPSBw YWdlX2dldF9vd25lcihtZm5fdG9fcGFnZShfbWZuKG1mbikpKTsKPiArICAgIGNvbnN0IHVuc2ln bmVkIGxvbmcgbWZuXyA9IG1mbl94KG1mbik7CgpJJ20gbm90IG92ZXJseSBoYXBweSB0byBzZWUg YSB0cmFpbGluZyB1bmRlcnNjb3JlIHVzZWQgb3V0c2lkZSBhIG1hY3JvCmRlZmluaXRpb24sIGJ1 dCBvdGhlciB0aGFuIHBlcmhhcHMgImZyYW1lIiB0aGlzIG1heSBpbmRlZWQgYmUgdGhlIGJlc3QK dGhpbmcgdG8gZG8gaGVyZS4KCkphbgoKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fClhlbi1kZXZlbCBtYWlsaW5nIGxpc3QKWGVuLWRldmVsQGxpc3RzLnhl bnByb2plY3Qub3JnCmh0dHBzOi8vbGlzdHMueGVucHJvamVjdC5vcmcvbWFpbG1hbi9saXN0aW5m by94ZW4tZGV2ZWw= From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-1.0 required=3.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 7646EC04A6B for ; Fri, 10 May 2019 13:22:16 +0000 (UTC) Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 531CC2175B for ; Fri, 10 May 2019 13:22:16 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 531CC2175B Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=suse.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=xen-devel-bounces@lists.xenproject.org Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1hP5TG-0002zT-AH; Fri, 10 May 2019 13:21:54 +0000 Received: from all-amaz-eas1.inumbo.com ([34.197.232.57] helo=us1-amaz-eas2.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1hP5TE-0002zO-Rp for xen-devel@lists.xenproject.org; Fri, 10 May 2019 13:21:52 +0000 X-Inumbo-ID: 90b70eca-7326-11e9-9039-f790f7af6edd Received: from prv1-mh.provo.novell.com (unknown [137.65.248.33]) by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS id 90b70eca-7326-11e9-9039-f790f7af6edd; Fri, 10 May 2019 13:21:49 +0000 (UTC) Received: from INET-PRV1-MTA by prv1-mh.provo.novell.com with Novell_GroupWise; Fri, 10 May 2019 07:21:47 -0600 Message-Id: <5CD57AEC020000780022D885@prv1-mh.provo.novell.com> X-Mailer: Novell GroupWise Internet Agent 18.1.0 Date: Fri, 10 May 2019 07:21:48 -0600 From: "Jan Beulich" To: "Julien Grall" , "George Dunlap" References: <20190507151458.29350-1-julien.grall@arm.com> <20190507151458.29350-14-julien.grall@arm.com> In-Reply-To: <20190507151458.29350-14-julien.grall@arm.com> Mime-Version: 1.0 Content-Disposition: inline Subject: Re: [Xen-devel] [PATCH 13/14] xen/mm: Convert {s, g}et_gpfn_from_mfn() to use typesafe MFN X-BeenThere: xen-devel@lists.xenproject.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Cc: Stefano Stabellini , Wei Liu , Konrad Rzeszutek Wilk , Andrew Cooper , Ian Jackson , Tim Deegan , Tamas K Lengyel , xen-devel , Roger Pau Monne Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: base64 Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" Message-ID: <20190510132148.zMupdAyDGTP-_B78Is1fUnKfRyZHRCHE2o5HilUC674@z> Pj4+IE9uIDA3LjA1LjE5IGF0IDE3OjE0LCA8anVsaWVuLmdyYWxsQGFybS5jb20+IHdyb3RlOgo+ IC0tLSBhL3hlbi9hcmNoL3g4Ni9tbS9tZW1fc2hhcmluZy5jCj4gKysrIGIveGVuL2FyY2gveDg2 L21tL21lbV9zaGFyaW5nLmMKPiBAQCAtMzkxLDExICszOTEsMTIgQEAgc3RhdGljIGlubGluZSB2 b2lkIG1lbV9zaGFyaW5nX2dmbl9kZXN0cm95KHN0cnVjdCBwYWdlX2luZm8gKnBhZ2UsCj4gICAg ICB4ZnJlZShnZm5faW5mbyk7Cj4gIH0KPiAgCj4gLXN0YXRpYyBzdHJ1Y3QgcGFnZV9pbmZvKiBt ZW1fc2hhcmluZ19sb29rdXAodW5zaWduZWQgbG9uZyBtZm4pCj4gK3N0YXRpYyBzdHJ1Y3QgcGFn ZV9pbmZvKiBtZW1fc2hhcmluZ19sb29rdXAobWZuX3QgbWZuKQoKQ291bGQgeW91IGZpeCB0aGUg c3R5bGUgaXNzdWUgKHN3YXBwZWQgKiBhbmQgYmxhbmspIGhlcmUgYXQgdGhlIHNhbWUgdGltZT8K Cj4gQEAgLTEwMzAsMTkgKzEwMzEsMTkgQEAgbG9uZyBwMm1fcHRfYXVkaXRfcDJtKHN0cnVjdCBw Mm1fZG9tYWluICpwMm0pCj4gICAgICAgICAgICAgICAgICAvKiBjaGVjayBmb3IgMUdCIHN1cGVy IHBhZ2UgKi8KPiAgICAgICAgICAgICAgICAgIGlmICggbDNlX2dldF9mbGFncyhsM2VbaTNdKSAm IF9QQUdFX1BTRSApCj4gICAgICAgICAgICAgICAgICB7Cj4gLSAgICAgICAgICAgICAgICAgICAg bWZuID0gbDNlX2dldF9wZm4obDNlW2kzXSk7Cj4gLSAgICAgICAgICAgICAgICAgICAgQVNTRVJU KG1mbl92YWxpZChfbWZuKG1mbikpKTsKPiArICAgICAgICAgICAgICAgICAgICBtZm4gPSBsM2Vf Z2V0X21mbihsM2VbaTNdKTsKPiArICAgICAgICAgICAgICAgICAgICBBU1NFUlQobWZuX3ZhbGlk KG1mbikpOwo+ICAgICAgICAgICAgICAgICAgICAgIC8qIHdlIGhhdmUgdG8gY292ZXIgNTEyeDUx MiA0SyBwYWdlcyAqLwo+ICAgICAgICAgICAgICAgICAgICAgIGZvciAoIGkyID0gMDsgCj4gICAg ICAgICAgICAgICAgICAgICAgICAgICAgaTIgPCAoTDJfUEFHRVRBQkxFX0VOVFJJRVMgKiBMMV9Q QUdFVEFCTEVfRU5UUklFUyk7Cj4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaTIrKykKPiAg ICAgICAgICAgICAgICAgICAgICB7Cj4gLSAgICAgICAgICAgICAgICAgICAgICAgIG0ycGZuID0g Z2V0X2dwZm5fZnJvbV9tZm4obWZuK2kyKTsKPiArICAgICAgICAgICAgICAgICAgICAgICAgbTJw Zm4gPSBnZXRfcGZuX2Zyb21fbWZuKG1mbl9hZGQobWZuLCBpMikpOwo+ICAgICAgICAgICAgICAg ICAgICAgICAgICBpZiAoIG0ycGZuICE9IChnZm4gKyBpMikgKQo+ICAgICAgICAgICAgICAgICAg ICAgICAgICB7Cj4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwbWJhZCsrOwo+IC0gICAg ICAgICAgICAgICAgICAgICAgICAgICAgUDJNX1BSSU5USygibWlzbWF0Y2g6IGdmbiAlI2x4IC0+ IG1mbiAlI2x4Igo+IC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiIC0+ IGdmbiAlI2x4XG4iLCBnZm4raTIsIG1mbitpMiwKPiArICAgICAgICAgICAgICAgICAgICAgICAg ICAgIFAyTV9QUklOVEsoIm1pc21hdGNoOiBnZm4gJSNseCAtPiBtZm4gJSJQUklfbWZuIiBnZm4g JSNseFxuIiwKPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2ZuICsg aTIsIG1mbl94KG1mbl9hZGQobWZuLCBpMikpLAoKSSB0aGluayB0aGUgc2hvcnRlciBtZm5feCht Zm4pICsgaTIgd291bGQgYmUgcHJlZmVyYWJsZSBoZXJlIChhbmQKc2ltaWxhcmx5IGJlbG93KS4K Cj4gQEAgLTEwOTksMTkgKzExMDAsMTkgQEAgbG9uZyBwMm1fcHRfYXVkaXRfcDJtKHN0cnVjdCBw Mm1fZG9tYWluICpwMm0pCj4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZW50cnlf Y291bnQrKzsKPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlOwo+ICAgICAg ICAgICAgICAgICAgICAgICAgICB9Cj4gLSAgICAgICAgICAgICAgICAgICAgICAgIG1mbiA9IGwx ZV9nZXRfcGZuKGwxZVtpMV0pOwo+IC0gICAgICAgICAgICAgICAgICAgICAgICBBU1NFUlQobWZu X3ZhbGlkKF9tZm4obWZuKSkpOwo+IC0gICAgICAgICAgICAgICAgICAgICAgICBtMnBmbiA9IGdl dF9ncGZuX2Zyb21fbWZuKG1mbik7Cj4gKyAgICAgICAgICAgICAgICAgICAgICAgIG1mbiA9IGwx ZV9nZXRfbWZuKGwxZVtpMV0pOwo+ICsgICAgICAgICAgICAgICAgICAgICAgICBBU1NFUlQobWZu X3ZhbGlkKG1mbikpOwo+ICsgICAgICAgICAgICAgICAgICAgICAgICBtMnBmbiA9IGdldF9wZm5f ZnJvbV9tZm4obWZuKTsKPiAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCBtMnBmbiAhPSBn Zm4gJiYKPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlICE9IHAybV9tbWlvX2Rp cmVjdCAmJgo+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICFwMm1faXNfZ3JhbnQodHlw ZSkgJiYKPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAhcDJtX2lzX3NoYXJlZCh0eXBl KSApCj4gICAgICAgICAgICAgICAgICAgICAgICAgIHsKPiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIHBtYmFkKys7Cj4gLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcmludGsoIm1p c21hdGNoOiBnZm4gJSNseCAtPiBtZm4gJSNseCIKPiAtICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAiIC0+IGdmbiAlI2x4XG4iLCBnZm4sIG1mbiwgbTJwZm4pOwo+IC0gICAgICAg ICAgICAgICAgICAgICAgICAgICAgUDJNX1BSSU5USygibWlzbWF0Y2g6IGdmbiAlI2x4IC0+IG1m biAlI2x4Igo+IC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiIC0+IGdm biAlI2x4XG4iLCBnZm4sIG1mbiwgbTJwZm4pOwo+ICsgICAgICAgICAgICAgICAgICAgICAgICAg ICAgcHJpbnRrKCJtaXNtYXRjaDogZ2ZuICUjbHggLT4gbWZuICUiUFJJX21mbiIgLT4gZ2ZuICUj bHhcbiIsCj4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2ZuLCBtZm5feCht Zm4pLCBtMnBmbik7Cj4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBQMk1fUFJJTlRLKCJt aXNtYXRjaDogZ2ZuICUjbHggLT4gbWZuICUiUFJJX21mbiIgLT4gZ2ZuICUjbHhcbiIsCj4gKyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdmbiwgbWZuX3gobWZuKSwgbTJw Zm4pOwoKR2VvcmdlLCBkbyB3ZSByZWFsbHkgbWVhbiB0byBoYXZlIHByaW50aygpIGFuZCBQMk1f UFJJTlRLKCkgaGVyZT8KCj4gQEAgLTI3OTUsNTQgKzI3OTUsNTQgQEAgdm9pZCBhdWRpdF9wMm0o c3RydWN0IGRvbWFpbiAqZCwKPiAgICAgIHNwaW5fbG9jaygmZC0+cGFnZV9hbGxvY19sb2NrKTsK PiAgICAgIHBhZ2VfbGlzdF9mb3JfZWFjaCAoIHBhZ2UsICZkLT5wYWdlX2xpc3QgKQo+ICAgICAg ewo+IC0gICAgICAgIG1mbiA9IG1mbl94KHBhZ2VfdG9fbWZuKHBhZ2UpKTsKPiArICAgICAgICBt Zm4gPSBwYWdlX3RvX21mbihwYWdlKTsKPiAgCj4gLSAgICAgICAgUDJNX1BSSU5USygiYXVkaXRp bmcgZ3Vlc3QgcGFnZSwgbWZuPSUjbHhcbiIsIG1mbik7Cj4gKyAgICAgICAgUDJNX1BSSU5USygi YXVkaXRpbmcgZ3Vlc3QgcGFnZSwgbWZuPSUiUFJJX21mbiJcbiIsIG1mbl94KG1mbikpOwo+ICAK PiAgICAgICAgICBvZCA9IHBhZ2VfZ2V0X293bmVyKHBhZ2UpOwo+ICAKPiAgICAgICAgICBpZiAo IG9kICE9IGQgKQo+ICAgICAgICAgIHsKPiAtICAgICAgICAgICAgUDJNX1BSSU5USygid3Jvbmcg b3duZXIgJSNseCAtPiAlcCgldSkgIT0gJXAoJXUpXG4iLAo+IC0gICAgICAgICAgICAgICAgICAg ICAgIG1mbiwgb2QsIChvZD9vZC0+ZG9tYWluX2lkOi0xKSwgZCwgZC0+ZG9tYWluX2lkKTsKPiAr ICAgICAgICAgICAgUDJNX1BSSU5USygid3Jvbmcgb3duZXIgJSJQUklfbWZuIiAtPiAlcCgldSkg IT0gJXAoJXUpXG4iLAo+ICsgICAgICAgICAgICAgICAgICAgICAgIG1mbl94KG1mbiksIG9kLCAo b2Q/b2QtPmRvbWFpbl9pZDotMSksIGQsIGQtPmRvbWFpbl9pZCk7CgpQbGVhc2UgYmUgY2FyZWZ1 bCBub3QgdG8gZHJvcCAweCBwcmVmaXhlcyBmcm9tIHRoZSByZXN1bHRpbmcgb3V0cHV0Cih3aGlj aCBhcmUgYW4gZWZmZWN0IG9mIHRoZSAjIGZsYWcgdGhhdCB5b3UgZGVsZXRlKSwgYXQgbGVhc3Qg d2hlbgpsb2cgbWVzc2FnZXMgY29udGFpbiBhIG1peCBvZiBoZXggYW5kIGRlYyBudW1iZXJzLiAo SSBhbSwgYnR3LApub3QgY29udmluY2VkIHRoYXQgc3dpdGNoaW5nIHRvIFBSSV9tZm4gaGVyZSBp cyBoZWxwZnVsLikKCkFsc28gd291bGQgeW91IG1pbmQgZml4aW5nIHRoZSBmb3JtYXR0aW5nICht aXNzaW5nIGJsYW5rcykgaGVyZT8KCj4gLS0tIGEveGVuL2FyY2gveDg2L3g4Nl82NC90cmFwcy5j Cj4gKysrIGIveGVuL2FyY2gveDg2L3g4Nl82NC90cmFwcy5jCj4gQEAgLTE4NCw3ICsxODQsOCBA QCB2b2lkIHZjcHVfc2hvd19yZWdpc3RlcnMoY29uc3Qgc3RydWN0IHZjcHUgKnYpCj4gIAo+ICB2 b2lkIHNob3dfcGFnZV93YWxrKHVuc2lnbmVkIGxvbmcgYWRkcikKPiAgewo+IC0gICAgdW5zaWdu ZWQgbG9uZyBwZm4sIG1mbiA9IHJlYWRfY3IzKCkgPj4gUEFHRV9TSElGVDsKPiArICAgIHVuc2ln bmVkIGxvbmcgcGZuOwo+ICsgICAgbWZuX3QgbWZuID0gbWFkZHJfdG9fbWZuKHJlYWRfY3IzKCkp OwoKSSByZWFsaXplIHlvdSBzaW1wbHkgdGFrZSB3aGF0IGhhcyBiZWVuIHRoZXJlIGFuZCB0cmFu c2Zvcm0gaXQsIGJ1dAptYWRkcl90b19tZm4oKSAob3RoZXIgdGhhbiBzaGlmdGluZyBieSBQQUdF X1NISUZUKSBpcyBub3QgdHJ1bHkKYXBwbGljYWJsZSBoZXJlOiBXaGF0IHRoZSBDUjMgcmVnaXN0 ZXIgaG9sZHMgaXMgbm90IGEgcGh5c2ljYWwgYWRkcmVzcywKYm90aCB0aGUgbG93IHR3ZWx2ZSBi aXRzIGFzIHdlbGwgYXMgdGhlIGhpZ2ggdHdlbHZlIG9uZXMgaGF2ZSBkaWZmZXJlbnQKbWVhbmlu Zy4gVGhlIHNoaWZ0IGlzIGNvcnJlY3QgY3VycmVudGx5IGJlY2F1c2UgdGhlIGhpZ2ggb25lcyBh cmUKKHJpZ2h0IG5vdykgemVybyBvbiByZWFkcy4gUGxlYXNlIGNvbnNpZGVyIEFORC1pbmcgd2l0 aApYODZfQ1IzX0FERFJfTUFTSyAob3Iga2VlcGluZyB0aGUgc2hpZnQpLgoKPiAtLS0gYS94ZW4v Y29tbW9uL3BhZ2VfYWxsb2MuYwo+ICsrKyBiL3hlbi9jb21tb24vcGFnZV9hbGxvYy5jCj4gQEAg LTE0MjQsNyArMTQyNCw3IEBAIHN0YXRpYyB2b2lkIGZyZWVfaGVhcF9wYWdlcygKPiAgCj4gICAg ICAgICAgLyogVGhpcyBwYWdlIGlzIG5vdCBhIGd1ZXN0IGZyYW1lIGFueSBtb3JlLiAqLwo+ICAg ICAgICAgIHBhZ2Vfc2V0X293bmVyKCZwZ1tpXSwgTlVMTCk7IC8qIHNldF9ncGZuX2Zyb21fbWZu IHNub29wcyBwZyBvd25lciAqLwo+IC0gICAgICAgIHNldF9ncGZuX2Zyb21fbWZuKG1mbl94KG1m bikgKyBpLCBJTlZBTElEX00yUF9FTlRSWSk7Cj4gKyAgICAgICAgc2V0X3Bmbl9mcm9tX21mbiht Zm5fYWRkKG1mbiwgKyBpKSwgSU5WQUxJRF9NMlBfRU5UUlkpOwoKU3RyYXkgbGVmdG92ZXIgKyA/ Cgo+IC0tLSBhL3hlbi9pbmNsdWRlL2FzbS14ODYvbW0uaAo+ICsrKyBiL3hlbi9pbmNsdWRlL2Fz bS14ODYvbW0uaAo+IEBAIC00OTIsMjIgKzQ5MiwyNiBAQCBleHRlcm4gc3RydWN0IGRvbWFpbiAq ZG9tX3hlbiwgKmRvbV9pbywgKmRvbV9jb3c7CS8qIGZvciB2bWNvcmVpbmZvICovCj4gICAqLwo+ ICBleHRlcm4gYm9vbCBtYWNoaW5lX3RvX3BoeXNfbWFwcGluZ192YWxpZDsKPiAgCj4gLXN0YXRp YyBpbmxpbmUgdm9pZCBzZXRfZ3Bmbl9mcm9tX21mbih1bnNpZ25lZCBsb25nIG1mbiwgdW5zaWdu ZWQgbG9uZyBwZm4pCj4gK3N0YXRpYyBpbmxpbmUgdm9pZCBzZXRfcGZuX2Zyb21fbWZuKG1mbl90 IG1mbiwgdW5zaWduZWQgbG9uZyBwZm4pCj4gIHsKPiAtICAgIHN0cnVjdCBkb21haW4gKmQgPSBw YWdlX2dldF9vd25lcihtZm5fdG9fcGFnZShfbWZuKG1mbikpKTsKPiArICAgIGNvbnN0IHVuc2ln bmVkIGxvbmcgbWZuXyA9IG1mbl94KG1mbik7CgpJJ20gbm90IG92ZXJseSBoYXBweSB0byBzZWUg YSB0cmFpbGluZyB1bmRlcnNjb3JlIHVzZWQgb3V0c2lkZSBhIG1hY3JvCmRlZmluaXRpb24sIGJ1 dCBvdGhlciB0aGFuIHBlcmhhcHMgImZyYW1lIiB0aGlzIG1heSBpbmRlZWQgYmUgdGhlIGJlc3QK dGhpbmcgdG8gZG8gaGVyZS4KCkphbgoKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fClhlbi1kZXZlbCBtYWlsaW5nIGxpc3QKWGVuLWRldmVsQGxpc3RzLnhl bnByb2plY3Qub3JnCmh0dHBzOi8vbGlzdHMueGVucHJvamVjdC5vcmcvbWFpbG1hbi9saXN0aW5m by94ZW4tZGV2ZWw=