From mboxrd@z Thu Jan 1 00:00:00 1970 From: Tamas K Lengyel Subject: Re: [PATCH v2] x86/mm: Suppresses vm_events caused by page-walks Date: Fri, 23 Feb 2018 15:06:17 -0700 Message-ID: References: <1515415784-28744-1-git-send-email-aisaila@bitdefender.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1515415784-28744-1-git-send-email-aisaila@bitdefender.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" To: Alexandru Isaila Cc: tim@xen.org, Stefano Stabellini , wei.liu2@citrix.com, Razvan Cojocaru , George Dunlap , Andrew Cooper , Ian Jackson , Xen-devel , Jan Beulich List-Id: xen-devel@lists.xenproject.org T24gTW9uLCBKYW4gOCwgMjAxOCBhdCA1OjQ5IEFNLCBBbGV4YW5kcnUgSXNhaWxhCjxhaXNhaWxh QGJpdGRlZmVuZGVyLmNvbT4gd3JvdGU6Cj4gVGhpcyBwYXRjaCBpcyBhZGRpbmcgYSB3YXkgdG8g ZW5hYmxlL2Rpc2FibGUgbmVzdGVkIHBhZ2VmYXVsdAo+IGV2ZW50cy4gSXQgaW50cm9kdWNlcyB0 aGUgeGNfbW9uaXRvcl9uZXN0ZWRfcGFnZWZhdWx0IGZ1bmN0aW9uCj4gYW5kIGFkZHMgdGhlIG5l c3RlZF9wYWdlZmF1bHRfZGlzYWJsZWQgaW4gdGhlIG1vbml0b3Igc3RydWN0dXJlLgo+IFRoaXMg aXMgbmVlZGVkIGJ5IHRoZSBpbnRyb3NwZWN0aW9uIHNvIGl0IHdpbGwgb25seSBnZXQgZ2xhCj4g ZmF1bHRzIGFuZCBub3QgZ2V0IHNwYW1tZWQgd2l0aCBvdGhlciBmYXVsdHMuCj4gSW4gcDJtX3Nl dF9hZF9iaXRzIHRoZSB2LT5hcmNoLnNzZV9wZ19kaXJ0eS5laXAgYW5kCj4gdi0+YXJjaC5zc2Vf cGdfZGlydHkuZ2xhIGFyZSB1c2VkIHRvIG1hcmsgdGhhdCB0aGlzIGlzIHRoZQo+IHNlY29uZCB0 aW1lIGEgZmF1bHQgb2NjdXJzIGFuZCB0aGUgZGlydHkgYml0IGlzIHNldC4KPgo+IFNpZ25lZC1v ZmYtYnk6IEFsZXhhbmRydSBJc2FpbGEgPGFpc2FpbGFAYml0ZGVmZW5kZXIuY29tPgo+Cj4gLS0t Cj4gQ2hhbmdlcyBzaW5jZSBWMToKPiAgICAgICAgIC0gUmIgVjEKPiAgICAgICAgIC0gQWRkIGNv bW1lbnQgaW4gZG9tY3RsLmgKPiAtLS0KPiAgdG9vbHMvbGlieGMvaW5jbHVkZS94ZW5jdHJsLmgg fCAgMiArKwo+ICB0b29scy9saWJ4Yy94Y19tb25pdG9yLmMgICAgICB8IDE0ICsrKysrKysrKysr KysrCj4gIHhlbi9hcmNoL3g4Ni9tbS9tZW1fYWNjZXNzLmMgIHwgMjcgKysrKysrKysrKysrKysr KysrKysrKysrKysrCj4gIHhlbi9hcmNoL3g4Ni9tb25pdG9yLmMgICAgICAgIHwgMTMgKysrKysr KysrKysrKwo+ICB4ZW4vaW5jbHVkZS9hc20teDg2L2RvbWFpbi5oICB8ICA2ICsrKysrKwo+ICB4 ZW4vaW5jbHVkZS9hc20teDg2L21vbml0b3IuaCB8ICAzICsrLQo+ICB4ZW4vaW5jbHVkZS9wdWJs aWMvZG9tY3RsLmggICB8ICAyICsrCj4gIDcgZmlsZXMgY2hhbmdlZCwgNjYgaW5zZXJ0aW9ucygr KSwgMSBkZWxldGlvbigtKQo+Cj4gZGlmZiAtLWdpdCBhL3Rvb2xzL2xpYnhjL2luY2x1ZGUveGVu Y3RybC5oIGIvdG9vbHMvbGlieGMvaW5jbHVkZS94ZW5jdHJsLmgKPiBpbmRleCAwOWUxMzYzLi4x MTJjOTc0IDEwMDY0NAo+IC0tLSBhL3Rvb2xzL2xpYnhjL2luY2x1ZGUveGVuY3RybC5oCj4gKysr IGIvdG9vbHMvbGlieGMvaW5jbHVkZS94ZW5jdHJsLmgKPiBAQCAtMjA1Niw2ICsyMDU2LDggQEAg aW50IHhjX21vbml0b3JfZGVzY3JpcHRvcl9hY2Nlc3MoeGNfaW50ZXJmYWNlICp4Y2gsIHVpbnQz Ml90IGRvbWFpbl9pZCwKPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9vbCBl bmFibGUpOwo+ICBpbnQgeGNfbW9uaXRvcl9ndWVzdF9yZXF1ZXN0KHhjX2ludGVyZmFjZSAqeGNo LCB1aW50MzJfdCBkb21haW5faWQsCj4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9v bCBlbmFibGUsIGJvb2wgc3luYywgYm9vbCBhbGxvd191c2Vyc3BhY2UpOwo+ICtpbnQgeGNfbW9u aXRvcl9uZXN0ZWRfcGFnZWZhdWx0KHhjX2ludGVyZmFjZSAqeGNoLCB1aW50MzJfdCBkb21haW5f aWQsCj4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9vbCBkaXNhYmxlKTsKPiAg aW50IHhjX21vbml0b3JfZGVidWdfZXhjZXB0aW9ucyh4Y19pbnRlcmZhY2UgKnhjaCwgdWludDMy X3QgZG9tYWluX2lkLAo+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvb2wgZW5h YmxlLCBib29sIHN5bmMpOwo+ICBpbnQgeGNfbW9uaXRvcl9jcHVpZCh4Y19pbnRlcmZhY2UgKnhj aCwgdWludDMyX3QgZG9tYWluX2lkLCBib29sIGVuYWJsZSk7Cj4gZGlmZiAtLWdpdCBhL3Rvb2xz L2xpYnhjL3hjX21vbml0b3IuYyBiL3Rvb2xzL2xpYnhjL3hjX21vbml0b3IuYwo+IGluZGV4IDAy MzNiODcuLmU5NmM1NmQgMTAwNjQ0Cj4gLS0tIGEvdG9vbHMvbGlieGMveGNfbW9uaXRvci5jCj4g KysrIGIvdG9vbHMvbGlieGMveGNfbW9uaXRvci5jCj4gQEAgLTE2Myw2ICsxNjMsMjAgQEAgaW50 IHhjX21vbml0b3JfZ3Vlc3RfcmVxdWVzdCh4Y19pbnRlcmZhY2UgKnhjaCwgdWludDMyX3QgZG9t YWluX2lkLCBib29sIGVuYWJsZSwKPiAgICAgIHJldHVybiBkb19kb21jdGwoeGNoLCAmZG9tY3Rs KTsKPiAgfQo+Cj4gK2ludCB4Y19tb25pdG9yX25lc3RlZF9wYWdlZmF1bHQoeGNfaW50ZXJmYWNl ICp4Y2gsIHVpbnQzMl90IGRvbWFpbl9pZCwKPiArICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBib29sIGRpc2FibGUpCj4gK3sKPiArICAgIERFQ0xBUkVfRE9NQ1RMOwo+ICsKPiArICAg IGRvbWN0bC5jbWQgPSBYRU5fRE9NQ1RMX21vbml0b3Jfb3A7Cj4gKyAgICBkb21jdGwuZG9tYWlu ID0gZG9tYWluX2lkOwo+ICsgICAgZG9tY3RsLnUubW9uaXRvcl9vcC5vcCA9IGRpc2FibGUgPyBY RU5fRE9NQ1RMX01PTklUT1JfT1BfRU5BQkxFCj4gKyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIDogWEVOX0RPTUNUTF9NT05JVE9SX09QX0RJU0FCTEU7Cj4gKyAgICBkb21jdGwu dS5tb25pdG9yX29wLmV2ZW50ID0gWEVOX0RPTUNUTF9NT05JVE9SX0VWRU5UX05FU1RFRF9QQUdF RkFVTFQ7Cj4gKwo+ICsgICAgcmV0dXJuIGRvX2RvbWN0bCh4Y2gsICZkb21jdGwpOwo+ICt9Cj4g Kwo+ICBpbnQgeGNfbW9uaXRvcl9lbXVsYXRlX2VhY2hfcmVwKHhjX2ludGVyZmFjZSAqeGNoLCB1 aW50MzJfdCBkb21haW5faWQsCj4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9v bCBlbmFibGUpCj4gIHsKPiBkaWZmIC0tZ2l0IGEveGVuL2FyY2gveDg2L21tL21lbV9hY2Nlc3Mu YyBiL3hlbi9hcmNoL3g4Ni9tbS9tZW1fYWNjZXNzLmMKPiBpbmRleCBjMGNkMDE3Li4wN2EzMzRi IDEwMDY0NAo+IC0tLSBhL3hlbi9hcmNoL3g4Ni9tbS9tZW1fYWNjZXNzLmMKPiArKysgYi94ZW4v YXJjaC94ODYvbW0vbWVtX2FjY2Vzcy5jCj4gQEAgLTEzNyw2ICsxMzcsMjMgQEAgYm9vbCBwMm1f bWVtX2FjY2Vzc19lbXVsYXRlX2NoZWNrKHN0cnVjdCB2Y3B1ICp2LAo+ICAgICAgcmV0dXJuIHZp b2xhdGlvbjsKPiAgfQo+Cj4gK3N0YXRpYyB2b2lkIHAybV9zZXRfYWRfYml0cyhzdHJ1Y3QgdmNw dSAqdiwgcGFkZHJfdCBnYSkKPiArewo+ICsgICAgc3RydWN0IGh2bV9od19jcHUgY3R4dDsKPiAr ICAgIHVpbnQzMl90IHBmZWMgPSAwOwo+ICsKPiArICAgIGh2bV9mdW5jcy5zYXZlX2NwdV9jdHh0 KHYsICZjdHh0KTsKPiArCj4gKyAgICBpZiAoIGd1ZXN0X2NwdV91c2VyX3JlZ3MoKS0+ZWlwID09 IHYtPmFyY2gucGdfZGlydHkuZWlwCj4gKyAgICAgICAgICYmIGdhID09IHYtPmFyY2gucGdfZGly dHkuZ2xhICkKPiArICAgICAgICBwZmVjID0gUEZFQ193cml0ZV9hY2Nlc3M7Cj4gKwo+ICsgICAg cGFnaW5nX2dhX3RvX2dmbl9jcjModiwgY3R4dC5jcjMsIGdhLCAmcGZlYywgTlVMTCk7Cj4gKwo+ ICsgICAgdi0+YXJjaC5wZ19kaXJ0eS5laXAgPSBndWVzdF9jcHVfdXNlcl9yZWdzKCktPmVpcDsK PiArICAgIHYtPmFyY2gucGdfZGlydHkuZ2xhID0gZ2E7Cj4gK30KPiArCj4gIGJvb2wgcDJtX21l bV9hY2Nlc3NfY2hlY2socGFkZHJfdCBncGEsIHVuc2lnbmVkIGxvbmcgZ2xhLAo+ICAgICAgICAg ICAgICAgICAgICAgICAgICAgIHN0cnVjdCBucGZlYyBucGZlYywKPiAgICAgICAgICAgICAgICAg ICAgICAgICAgICB2bV9ldmVudF9yZXF1ZXN0X3QgKipyZXFfcHRyKQo+IEBAIC0yMDgsNiArMjI1 LDE2IEBAIGJvb2wgcDJtX21lbV9hY2Nlc3NfY2hlY2socGFkZHJfdCBncGEsIHVuc2lnbmVkIGxv bmcgZ2xhLAo+ICAgICAgICAgIH0KPiAgICAgIH0KPgo+ICsgICAgaWYgKCB2bV9ldmVudF9jaGVj a19yaW5nKGQtPnZtX2V2ZW50X21vbml0b3IpICYmCj4gKyAgICAgICAgIGQtPmFyY2gubW9uaXRv ci5uZXN0ZWRfcGFnZWZhdWx0X2Rpc2FibGVkICYmCj4gKyAgICAgICAgIG5wZmVjLmtpbmQgIT0g bnBmZWNfa2luZF93aXRoX2dsYSApIC8qIGRvbid0IHNlbmQgYSBtZW1fZXZlbnQgKi8KPiArICAg IHsKPiArICAgICAgICB2LT5hcmNoLnZtX2V2ZW50LT5lbXVsYXRlX2ZsYWdzID0gMDsKPiArICAg ICAgICBwMm1fc2V0X2FkX2JpdHModiwgZ2xhKTsKPiArCj4gKyAgICAgICAgcmV0dXJuIHRydWU7 Cj4gKyAgICB9Cj4gKwo+ICAgICAgKnJlcV9wdHIgPSBOVUxMOwo+ICAgICAgcmVxID0geHphbGxv Yyh2bV9ldmVudF9yZXF1ZXN0X3QpOwo+ICAgICAgaWYgKCByZXEgKQo+IGRpZmYgLS1naXQgYS94 ZW4vYXJjaC94ODYvbW9uaXRvci5jIGIveGVuL2FyY2gveDg2L21vbml0b3IuYwo+IGluZGV4IGYy MjllNjkuLmUzNWI2MTkgMTAwNjQ0Cj4gLS0tIGEveGVuL2FyY2gveDg2L21vbml0b3IuYwo+ICsr KyBiL3hlbi9hcmNoL3g4Ni9tb25pdG9yLmMKPiBAQCAtMjQxLDYgKzI0MSwxOSBAQCBpbnQgYXJj aF9tb25pdG9yX2RvbWN0bF9ldmVudChzdHJ1Y3QgZG9tYWluICpkLAo+ICAgICAgICAgIGJyZWFr Owo+ICAgICAgfQo+Cj4gKyAgICBjYXNlIFhFTl9ET01DVExfTU9OSVRPUl9FVkVOVF9ORVNURURf UEFHRUZBVUxUOgo+ICsgICAgewo+ICsgICAgICAgIGJvb2wgb2xkX3N0YXR1cyA9IGFkLT5tb25p dG9yLm5lc3RlZF9wYWdlZmF1bHRfZGlzYWJsZWQ7Cj4gKwo+ICsgICAgICAgIGlmICggdW5saWtl bHkob2xkX3N0YXR1cyA9PSByZXF1ZXN0ZWRfc3RhdHVzKSApCj4gKyAgICAgICAgICAgIHJldHVy biAtRUVYSVNUOwo+ICsKPiArICAgICAgICBkb21haW5fcGF1c2UoZCk7Cj4gKyAgICAgICAgYWQt Pm1vbml0b3IubmVzdGVkX3BhZ2VmYXVsdF9kaXNhYmxlZCA9IHJlcXVlc3RlZF9zdGF0dXM7Cj4g KyAgICAgICAgZG9tYWluX3VucGF1c2UoZCk7Cj4gKyAgICAgICAgYnJlYWs7Cj4gKyAgICB9Cj4g Kwo+ICAgICAgY2FzZSBYRU5fRE9NQ1RMX01PTklUT1JfRVZFTlRfREVTQ19BQ0NFU1M6Cj4gICAg ICB7Cj4gICAgICAgICAgYm9vbCBvbGRfc3RhdHVzID0gYWQtPm1vbml0b3IuZGVzY3JpcHRvcl9h Y2Nlc3NfZW5hYmxlZDsKPiBkaWZmIC0tZ2l0IGEveGVuL2luY2x1ZGUvYXNtLXg4Ni9kb21haW4u aCBiL3hlbi9pbmNsdWRlL2FzbS14ODYvZG9tYWluLmgKPiBpbmRleCA0Njc5ZDU0Li4wOTlhZjdj IDEwMDY0NAo+IC0tLSBhL3hlbi9pbmNsdWRlL2FzbS14ODYvZG9tYWluLmgKPiArKysgYi94ZW4v aW5jbHVkZS9hc20teDg2L2RvbWFpbi5oCj4gQEAgLTQxMiw2ICs0MTIsNyBAQCBzdHJ1Y3QgYXJj aF9kb21haW4KPiAgICAgICAgICB1bnNpZ25lZCBpbnQgZGVzY3JpcHRvcl9hY2Nlc3NfZW5hYmxl ZCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiAxOwo+ICAgICAgICAgIHVuc2lnbmVkIGlu dCBndWVzdF9yZXF1ZXN0X3VzZXJzcGFjZV9lbmFibGVkICAgICAgICAgICAgICAgICAgICAgICA6 IDE7Cj4gICAgICAgICAgdW5zaWduZWQgaW50IGVtdWxfdW5pbXBsZW1lbnRlZF9lbmFibGVkICAg ICAgICAgICAgICAgICAgICAgICAgICAgIDogMTsKPiArICAgICAgICB1bnNpZ25lZCBpbnQgbmVz dGVkX3BhZ2VmYXVsdF9kaXNhYmxlZCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiAxOwoK QWxsIG90aGVyIG9wdGlvbnMgYXJlICJfZW5hYmxlZCIgaGVyZSwgc28gYWRkaW5nIG9uZSB0aGF0 J3MgZmxpcHBlZApqdXN0IGxvb2tzIG91dCBvZiBwbGFjZS4gQW55IG9iamVjdGlvbnMgdG8gbWFr aW5nIHRoaXMgbWF0Y2ggdGhlIHJlc3Q/CkFsc28sIG5hbWluZyBpdCAibmVzdGVkIiBqdXN0IG1h a2VzIG1lIHRoaW5rIHRoaXMgaXMgc29tZWhvdyB3b3VsZCBiZQpyZWxhdGVkIHRvIG5lc3RlZCB2 aXJ0dWFsaXphdGlvbiwgYnV0IHRoYXQncyBub3QgdGhlIGNhc2UuIFRoZXNlIHdvdWxkCmJlIGp1 c3QgcmVndWxhciBwYWdlZmF1bHRzIGluIHRoZSBndWVzdCwgc28gbmFtaW5nIHRoZSBtb25pdG9y IG9wdGlvbgpzaW1wbHkgInBhZ2VmYXVsdCIgd291bGQgbG9vayBiZXR0ZXIgdG8gbWUgaW4gZ2Vu ZXJhbC4KCj4gICAgICAgICAgc3RydWN0IG1vbml0b3JfbXNyX2JpdG1hcCAqbXNyX2JpdG1hcDsK PiAgICAgICAgICB1aW50NjRfdCB3cml0ZV9jdHJscmVnX21hc2tbNF07Cj4gICAgICB9IG1vbml0 b3I7Cj4gQEAgLTU3OSw2ICs1ODAsMTEgQEAgc3RydWN0IGFyY2hfdmNwdQo+ICAgICAgLyogQSBz ZWNvbmRhcnkgY29weSBvZiB0aGUgdmNwdSB0aW1lIGluZm8uICovCj4gICAgICBYRU5fR1VFU1Rf SEFORExFKHZjcHVfdGltZV9pbmZvX3QpIHRpbWVfaW5mb19ndWVzdDsKPgo+ICsgICAgc3RydWN0 IHsKPiArICAgICAgICB1bnNpZ25lZCBsb25nIGVpcDsKPiArICAgICAgICB1bnNpZ25lZCBsb25n IGdsYTsKPiArICAgIH0gcGdfZGlydHk7Cj4gKwo+ICAgICAgc3RydWN0IGFyY2hfdm1fZXZlbnQg KnZtX2V2ZW50Owo+Cj4gICAgICBzdHJ1Y3QgbXNyX3ZjcHVfcG9saWN5ICptc3I7Cj4gZGlmZiAt LWdpdCBhL3hlbi9pbmNsdWRlL2FzbS14ODYvbW9uaXRvci5oIGIveGVuL2luY2x1ZGUvYXNtLXg4 Ni9tb25pdG9yLmgKPiBpbmRleCBhMDQ0NGQxLi5hN2EwYjU2IDEwMDY0NAo+IC0tLSBhL3hlbi9p bmNsdWRlL2FzbS14ODYvbW9uaXRvci5oCj4gKysrIGIveGVuL2luY2x1ZGUvYXNtLXg4Ni9tb25p dG9yLmgKPiBAQCAtODQsNyArODQsOCBAQCBzdGF0aWMgaW5saW5lIHVpbnQzMl90IGFyY2hfbW9u aXRvcl9nZXRfY2FwYWJpbGl0aWVzKHN0cnVjdCBkb21haW4gKmQpCj4gICAgICAgICAgICAgICAg ICAgICAoMVUgPDwgWEVOX0RPTUNUTF9NT05JVE9SX0VWRU5UX0RFQlVHX0VYQ0VQVElPTikgfAo+ ICAgICAgICAgICAgICAgICAgICAgKDFVIDw8IFhFTl9ET01DVExfTU9OSVRPUl9FVkVOVF9DUFVJ RCkgfAo+ICAgICAgICAgICAgICAgICAgICAgKDFVIDw8IFhFTl9ET01DVExfTU9OSVRPUl9FVkVO VF9JTlRFUlJVUFQpIHwKPiAtICAgICAgICAgICAgICAgICAgICgxVSA8PCBYRU5fRE9NQ1RMX01P TklUT1JfRVZFTlRfRU1VTF9VTklNUExFTUVOVEVEKTsKPiArICAgICAgICAgICAgICAgICAgICgx VSA8PCBYRU5fRE9NQ1RMX01PTklUT1JfRVZFTlRfRU1VTF9VTklNUExFTUVOVEVEKSB8Cj4gKyAg ICAgICAgICAgICAgICAgICAoMVUgPDwgWEVOX0RPTUNUTF9NT05JVE9SX0VWRU5UX05FU1RFRF9Q QUdFRkFVTFQpOwo+Cj4gICAgICAvKiBTaW5jZSB3ZSBrbm93IHRoaXMgaXMgb24gVk1YLCB3ZSBj YW4ganVzdCBjYWxsIHRoZSBodm0gZnVuYyAqLwo+ICAgICAgaWYgKCBodm1faXNfc2luZ2xlc3Rl cF9zdXBwb3J0ZWQoKSApCj4gZGlmZiAtLWdpdCBhL3hlbi9pbmNsdWRlL3B1YmxpYy9kb21jdGwu aCBiL3hlbi9pbmNsdWRlL3B1YmxpYy9kb21jdGwuaAo+IGluZGV4IDlhZTcyOTU5Li43MDZjNmVh IDEwMDY0NAo+IC0tLSBhL3hlbi9pbmNsdWRlL3B1YmxpYy9kb21jdGwuaAo+ICsrKyBiL3hlbi9p bmNsdWRlL3B1YmxpYy9kb21jdGwuaAo+IEBAIC0xMDE0LDYgKzEwMTQsOCBAQCBzdHJ1Y3QgeGVu X2RvbWN0bF9wc3JfY210X29wIHsKPiAgI2RlZmluZSBYRU5fRE9NQ1RMX01PTklUT1JfRVZFTlRf SU5URVJSVVBUICAgICAgICAgICAgIDgKPiAgI2RlZmluZSBYRU5fRE9NQ1RMX01PTklUT1JfRVZF TlRfREVTQ19BQ0NFU1MgICAgICAgICAgIDkKPiAgI2RlZmluZSBYRU5fRE9NQ1RMX01PTklUT1Jf RVZFTlRfRU1VTF9VTklNUExFTUVOVEVEICAgIDEwCj4gKy8qIEVuYWJsZWQgYnkgZGVmYXVsdCAq Lwo+ICsjZGVmaW5lIFhFTl9ET01DVExfTU9OSVRPUl9FVkVOVF9ORVNURURfUEFHRUZBVUxUICAg ICAgMTEKPgo+ICBzdHJ1Y3QgeGVuX2RvbWN0bF9tb25pdG9yX29wIHsKPiAgICAgIHVpbnQzMl90 IG9wOyAvKiBYRU5fRE9NQ1RMX01PTklUT1JfT1BfKiAqLwo+IC0tCj4gMi43LjQKCl9fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fClhlbi1kZXZlbCBtYWlsaW5n IGxpc3QKWGVuLWRldmVsQGxpc3RzLnhlbnByb2plY3Qub3JnCmh0dHBzOi8vbGlzdHMueGVucHJv amVjdC5vcmcvbWFpbG1hbi9saXN0aW5mby94ZW4tZGV2ZWw=