Received: by 10.223.176.5 with SMTP id f5csp2367529wra; Sun, 28 Jan 2018 19:02:08 -0800 (PST) X-Google-Smtp-Source: AH8x227koP6EegGpqDK3JI9W9qcHZXwmRR82efX5WMTxLM9WaauQx2gVaHDYEkI5PaohpNbQUZPR X-Received: by 10.98.214.129 with SMTP id a1mr24963061pfl.221.1517194928833; Sun, 28 Jan 2018 19:02:08 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1517194928; cv=none; d=google.com; s=arc-20160816; b=U4PbMOWUl9xNUIzO292bwR7XYnjHxIIZc5UrvSivh+8ehbXkCO/icN6/iAiVibyc0i hSxoQeW7N+q/ZMAHa1ZtpSrqgbHr9ICeS6Ryws36XqNeEoL1vV0OUEp4GCYi20yQ2Xes 4xnqmnFwjJdQ+kVNXULenI6cJMYwb+ijd5M1X3qYy5ber6u1/vAyt0pZYh25fjYZ4IOD 1bAk/+JsMQ+qMCSNnhID2e0b5CwLBrREUawfOmQwNJAASTUoWuLZN/5e4vp3KyRBRTJq SndKMuAQg91W466t8x1lw4dBZ2gB66ozP8TWf2vi65iKVtNCoTVFTbrJsVv9n4rPX1LW +QYQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding :content-language:in-reply-to:mime-version:user-agent:date :message-id:from:references:cc:to:subject:dkim-signature :arc-authentication-results; bh=mGnd3FEANzikBEeRWk9YBzWhKeQRTy0Sket1E9cgM44=; b=uvbgfbMJmaKtY66UaPAjHkfRLiRTBj8Cl1dmTWkxPV84ybZkaFvIbJVQvmHiqJmSp6 vax22D0yuk91H+QxMyRNHyn9WI4TDn4zcDhC9NHtUTpoAGL2DHc8KcUCbTektW1Ll2x2 N2Qdyr92wrCpYJaLUXGaMxBEQHvmaOXafem8axmPr2SjnOpYh/el4rKgXA4XmVp+uYZo uV/4nQk5N0/UdiHOL8DKToxEMYBtGTaYT6AdTzxzI6lM8jAH1ZLGDGq5kt+IVEqW6dte z8ZrT8sQKKO+G+/tASuRZ3F5R/evy8UnQjWmcZWdtl9ulh/wmuEYr1NstOJ2rhVKbDDH NsWQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@amazon.com header.s=amazon201209 header.b=r4PBRMeP; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=amazon.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id x8si6526248pgp.381.2018.01.28.19.01.54; Sun, 28 Jan 2018 19:02:08 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@amazon.com header.s=amazon201209 header.b=r4PBRMeP; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=amazon.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754596AbeA2BHT (ORCPT + 99 others); Sun, 28 Jan 2018 20:07:19 -0500 Received: from smtp-fw-4101.amazon.com ([72.21.198.25]:10366 "EHLO smtp-fw-4101.amazon.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753617AbeA2BHR (ORCPT ); Sun, 28 Jan 2018 20:07:17 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amazon.com; i=@amazon.com; q=dns/txt; s=amazon201209; t=1517188037; x=1548724037; h=subject:to:cc:references:from:message-id:date: mime-version:in-reply-to:content-transfer-encoding; bh=mGnd3FEANzikBEeRWk9YBzWhKeQRTy0Sket1E9cgM44=; b=r4PBRMePETXELVkhlPEr4Z26yN7kLmCGg1iqrryUAdV+7MjKiMnWZ3Xc zVb/1yl74JyO4mKR7zKb64moxAHp2D4lbQJCaKPPdwZaRaYf4GoBdPOR/ NMq7azT5NTklswYC0XJhzLF5blw7LEVp1vaoLdeOwLLEk8y9jFRD9gX3+ M=; X-IronPort-AV: E=Sophos;i="5.46,428,1511827200"; d="scan'208";a="705643187" Received: from iad6-co-svc-p1-lb1-vlan3.amazon.com (HELO email-inbound-relay-1e-303d0b0e.us-east-1.amazon.com) ([10.124.125.6]) by smtp-border-fw-out-4101.iad4.amazon.com with ESMTP/TLS/DHE-RSA-AES256-SHA; 29 Jan 2018 01:07:16 +0000 Received: from EX13MTAUEA001.ant.amazon.com (iad55-ws-svc-p15-lb9-vlan2.iad.amazon.com [10.40.159.162]) by email-inbound-relay-1e-303d0b0e.us-east-1.amazon.com (8.14.7/8.14.7) with ESMTP id w0T172ja100864 (version=TLSv1/SSLv3 cipher=AES256-SHA bits=256 verify=FAIL); Mon, 29 Jan 2018 01:07:10 GMT Received: from EX13D01EUB003.ant.amazon.com (10.43.166.248) by EX13MTAUEA001.ant.amazon.com (10.43.61.82) with Microsoft SMTP Server (TLS) id 15.0.1236.3; Mon, 29 Jan 2018 01:06:56 +0000 Received: from [10.85.103.125] (10.43.161.222) by EX13D01EUB003.ant.amazon.com (10.43.166.248) with Microsoft SMTP Server (TLS) id 15.0.1236.3; Mon, 29 Jan 2018 01:06:47 +0000 Subject: Re: [PATCH] x86: vmx: Allow direct access to MSR_IA32_SPEC_CTRL To: Konrad Rzeszutek Wilk , KarimAllah Ahmed , , CC: Asit Mallick , Arjan Van De Ven , Dave Hansen , Andi Kleen , Andrea Arcangeli , Linus Torvalds , Tim Chen , Thomas Gleixner , Dan Williams , Jun Nakajima , "Paolo Bonzini" , David Woodhouse , Greg KH , Andy Lutomirski , Ashok Raj , References: <1517167750-23485-1-git-send-email-karahmed@amazon.de> <4DCAF18F-C86A-4CBC-A9CC-CC01BF63313F@oracle.com> From: KarimAllah Ahmed Message-ID: Date: Mon, 29 Jan 2018 02:06:41 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.5.0 MIME-Version: 1.0 In-Reply-To: <4DCAF18F-C86A-4CBC-A9CC-CC01BF63313F@oracle.com> Content-Language: en-US X-Originating-IP: [10.43.161.222] X-ClientProxiedBy: EX13D10UWA003.ant.amazon.com (10.43.160.248) To EX13D01EUB003.ant.amazon.com (10.43.166.248) Content-Type: text/plain; charset="utf-8"; format="flowed" Content-Transfer-Encoding: base64 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org T24gMDEvMjgvMjAxOCAwOToyMSBQTSwgS29ucmFkIFJ6ZXN6dXRlayBXaWxrIHdyb3RlOgo+IE9u IEphbnVhcnkgMjgsIDIwMTggMjoyOToxMCBQTSBFU1QsIEthcmltQWxsYWggQWhtZWQgPGthcmFo bWVkQGFtYXpvbi5kZT4gd3JvdGU6Cj4+IEFkZCBkaXJlY3QgYWNjZXNzIHRvIE1TUl9JQTMyX1NQ RUNfQ1RSTCBmb3IgZ3Vlc3RzLiBUaGlzIGlzIG5lZWRlZCBmb3IKPj4gZ3Vlc3RzCj4+IHRoYXQg d2lsbCBvbmx5IG1pdGlnYXRlIFNwZWN0cmUgVjIgdGhyb3VnaCBJQlJTK0lCUEIgYW5kIHdpbGwg bm90IGJlCj4+IHVzaW5nIGEKPj4gcmV0cG9saW5lK0lCUEIgYmFzZWQgYXBwcm9hY2guCj4+Cj4+ IFRvIGF2b2lkIHRoZSBvdmVyaGVhZCBvZiBhdG9taWNhbGx5IHNhdmluZyBhbmQgcmVzdG9yaW5n IHRoZQo+PiBNU1JfSUEzMl9TUEVDX0NUUkwKPj4gZm9yIGd1ZXN0cyB0aGF0IGRvIG5vdCBhY3R1 YWxseSB1c2UgdGhlIE1TUiwgb25seSBhZGRfYXRvbWljX3N3aXRjaF9tc3IKPj4gd2hlbiBhCj4+ IG5vbi16ZXJvIGlzIHdyaXR0ZW4gdG8gaXQuCj4gCj4gCj4gV2UgdHJpZWQgdGhpcyBhbmQgZm91 bmQgdGhhdCBpdCB3YXMgYWJvdXQgMyUgc2xvd2VyIHRoYXQgZG9pbmcgdGhlIG9sZCB3YXkgb2Yg cmRtc3IgYW5kIHdybXNyLgoKSSBhY3R1YWxseSBoYXZlIG5vdCBtZWFzdXJlZCB0aGUgcGVyZm9y bWFuY2UgZGlmZmVyZW5jZSBiZXR3ZWVuIHVzaW5nIAp0aGUgYXRvbWljX3N3aXRjaCB2cyBqdXN0 IGp1c3QgZG9pbmcgcmRtc3Ivd3Jtc3IuIEkgd2FzIG1vc3RseSBmb2N1c2VkIApvbiBub3Qgc2F2 aW5nIGFuZCByZXN0b3Jpbmcgd2hlbiB0aGUgZ3Vlc3QgZG9lcyBub3QgYWN0dWFsbHkgdXNlIHRo ZSBNU1JzLgoKSW50ZXJlc3RpbmcgZGF0YSBwb2ludCB0aG91Z2gsIEkgd2lsbCB1cGRhdGUgdGhl IGNvZGUgdG8gdXNlIHJkbXNyL3dybXNyIAphbmQgc2VlIGlmIEkgc2VlIGl0IGluIG15IGhhcmR3 YXJlIChJIGFtIHVzaW5nIGEgc2t5bGFrZSBwcm9jZXNzb3IpLgoKPiAKPiBCdXQgdGhhdCB3YXMg YWxzbyB3aXRoIHRoZSBob3N0IGRvaW5nIElCUlMgIGFzIHdlbGwuCj4gCj4gT24gd2hhdCB0eXBl IG9mIGhhcmR3YXJlIGRpZCB5b3UgcnVuIHRoaXM/Cj4gCj4gQ2NpbmcgRGFuaWVsLgo+Pgo+PiBD YzogQXNpdCBNYWxsaWNrIDxhc2l0LmsubWFsbGlja0BpbnRlbC5jb20+Cj4+IENjOiBBcmphbiBW YW4gRGUgVmVuIDxhcmphbi52YW4uZGUudmVuQGludGVsLmNvbT4KPj4gQ2M6IERhdmUgSGFuc2Vu IDxkYXZlLmhhbnNlbkBpbnRlbC5jb20+Cj4+IENjOiBBbmRpIEtsZWVuIDxha0BsaW51eC5pbnRl bC5jb20+Cj4+IENjOiBBbmRyZWEgQXJjYW5nZWxpIDxhYXJjYW5nZUByZWRoYXQuY29tPgo+PiBD YzogTGludXMgVG9ydmFsZHMgPHRvcnZhbGRzQGxpbnV4LWZvdW5kYXRpb24ub3JnPgo+PiBDYzog VGltIENoZW4gPHRpbS5jLmNoZW5AbGludXguaW50ZWwuY29tPgo+PiBDYzogVGhvbWFzIEdsZWl4 bmVyIDx0Z2x4QGxpbnV0cm9uaXguZGU+Cj4+IENjOiBEYW4gV2lsbGlhbXMgPGRhbi5qLndpbGxp YW1zQGludGVsLmNvbT4KPj4gQ2M6IEp1biBOYWthamltYSA8anVuLm5ha2FqaW1hQGludGVsLmNv bT4KPj4gQ2M6IFBhb2xvIEJvbnppbmkgPHBib256aW5pQHJlZGhhdC5jb20+Cj4+IENjOiBEYXZp ZCBXb29kaG91c2UgPGR3bXdAYW1hem9uLmNvLnVrPgo+PiBDYzogR3JlZyBLSCA8Z3JlZ2toQGxp bnV4Zm91bmRhdGlvbi5vcmc+Cj4+IENjOiBBbmR5IEx1dG9taXJza2kgPGx1dG9Aa2VybmVsLm9y Zz4KPj4gU2lnbmVkLW9mZi1ieTogS2FyaW1BbGxhaCBBaG1lZCA8a2FyYWhtZWRAYW1hem9uLmRl Pgo+PiBTaWduZWQtb2ZmLWJ5OiBBc2hvayBSYWogPGFzaG9rLnJhakBpbnRlbC5jb20+Cj4+IC0t LQo+PiBhcmNoL3g4Ni9rdm0vY3B1aWQuYyB8ICA0ICsrKy0KPj4gYXJjaC94ODYva3ZtL2NwdWlk LmggfCAgMSArCj4+IGFyY2gveDg2L2t2bS92bXguYyAgIHwgNjMKPj4gKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKwo+PiAzIGZpbGVzIGNoYW5nZWQs IDY3IGluc2VydGlvbnMoKyksIDEgZGVsZXRpb24oLSkKPj4KPj4gZGlmZiAtLWdpdCBhL2FyY2gv eDg2L2t2bS9jcHVpZC5jIGIvYXJjaC94ODYva3ZtL2NwdWlkLmMKPj4gaW5kZXggMDA5OWUxMC4u ZGM3ODA5NSAxMDA2NDQKPj4gLS0tIGEvYXJjaC94ODYva3ZtL2NwdWlkLmMKPj4gKysrIGIvYXJj aC94ODYva3ZtL2NwdWlkLmMKPj4gQEAgLTcwLDYgKzcwLDcgQEAgdTY0IGt2bV9zdXBwb3J0ZWRf eGNyMCh2b2lkKQo+PiAvKiBUaGVzZSBhcmUgc2NhdHRlcmVkIGZlYXR1cmVzIGluIGNwdWZlYXR1 cmVzLmguICovCj4+ICNkZWZpbmUgS1ZNX0NQVUlEX0JJVF9BVlg1MTJfNFZOTklXICAgICAyCj4+ ICNkZWZpbmUgS1ZNX0NQVUlEX0JJVF9BVlg1MTJfNEZNQVBTICAgICAzCj4+ICsjZGVmaW5lIEtW TV9DUFVJRF9CSVRfU1BFQ19DVFJMICAgICAgICAgMjYKPj4gI2RlZmluZSBLRih4KSBiaXQoS1ZN X0NQVUlEX0JJVF8jI3gpCj4+Cj4+IGludCBrdm1fdXBkYXRlX2NwdWlkKHN0cnVjdCBrdm1fdmNw dSAqdmNwdSkKPj4gQEAgLTM5Miw3ICszOTMsOCBAQCBzdGF0aWMgaW5saW5lIGludCBfX2RvX2Nw dWlkX2VudChzdHJ1Y3QKPj4ga3ZtX2NwdWlkX2VudHJ5MiAqZW50cnksIHUzMiBmdW5jdGlvbiwK Pj4KPj4gCS8qIGNwdWlkIDcuMC5lZHgqLwo+PiAJY29uc3QgdTMyIGt2bV9jcHVpZF83XzBfZWR4 X3g4Nl9mZWF0dXJlcyA9Cj4+IC0JCUtGKEFWWDUxMl80Vk5OSVcpIHwgS0YoQVZYNTEyXzRGTUFQ Uyk7Cj4+ICsJCUtGKEFWWDUxMl80Vk5OSVcpIHwgS0YoQVZYNTEyXzRGTUFQUykgfCBcCj4+ICsJ CShib290X2NwdV9oYXMoWDg2X0ZFQVRVUkVfU1BFQ19DVFJMKSA/IEtGKFNQRUNfQ1RSTCkgOiAw KTsKPj4KPj4gCS8qIGFsbCBjYWxscyB0byBjcHVpZF9jb3VudCgpIHNob3VsZCBiZSBtYWRlIG9u IHRoZSBzYW1lIGNwdSAqLwo+PiAJZ2V0X2NwdSgpOwo+PiBkaWZmIC0tZ2l0IGEvYXJjaC94ODYv a3ZtL2NwdWlkLmggYi9hcmNoL3g4Ni9rdm0vY3B1aWQuaAo+PiBpbmRleCBjZGM3MGEzLi5kY2Zl MjI3IDEwMDY0NAo+PiAtLS0gYS9hcmNoL3g4Ni9rdm0vY3B1aWQuaAo+PiArKysgYi9hcmNoL3g4 Ni9rdm0vY3B1aWQuaAo+PiBAQCAtNTQsNiArNTQsNyBAQCBzdGF0aWMgY29uc3Qgc3RydWN0IGNw dWlkX3JlZyByZXZlcnNlX2NwdWlkW10gPSB7Cj4+IAlbQ1BVSURfODAwMF8wMDBBX0VEWF0gPSB7 MHg4MDAwMDAwYSwgMCwgQ1BVSURfRURYfSwKPj4gCVtDUFVJRF83X0VDWF0gICAgICAgICA9IHsg ICAgICAgICA3LCAwLCBDUFVJRF9FQ1h9LAo+PiAJW0NQVUlEXzgwMDBfMDAwN19FQlhdID0gezB4 ODAwMDAwMDcsIDAsIENQVUlEX0VCWH0sCj4+ICsJW0NQVUlEXzdfRURYXSAgICAgICAgID0geyAg ICAgICAgIDcsIDAsIENQVUlEX0VEWH0sCj4+IH07Cj4+Cj4+IHN0YXRpYyBfX2Fsd2F5c19pbmxp bmUgc3RydWN0IGNwdWlkX3JlZyB4ODZfZmVhdHVyZV9jcHVpZCh1bnNpZ25lZAo+PiB4ODZfZmVh dHVyZSkKPj4gZGlmZiAtLWdpdCBhL2FyY2gveDg2L2t2bS92bXguYyBiL2FyY2gveDg2L2t2bS92 bXguYwo+PiBpbmRleCBhYTg2MzhhLi4xYjc0M2EwIDEwMDY0NAo+PiAtLS0gYS9hcmNoL3g4Ni9r dm0vdm14LmMKPj4gKysrIGIvYXJjaC94ODYva3ZtL3ZteC5jCj4+IEBAIC05MjAsNiArOTIwLDkg QEAgc3RhdGljIHZvaWQgdm14X3NldF9ubWlfbWFzayhzdHJ1Y3Qga3ZtX3ZjcHUgKnZjcHUsCj4+ IGJvb2wgbWFza2VkKTsKPj4gc3RhdGljIGJvb2wgbmVzdGVkX3ZteF9pc19wYWdlX2ZhdWx0X3Zt ZXhpdChzdHJ1Y3Qgdm1jczEyICp2bWNzMTIsCj4+IAkJCQkJICAgIHUxNiBlcnJvcl9jb2RlKTsK Pj4gc3RhdGljIHZvaWQgdm14X3VwZGF0ZV9tc3JfYml0bWFwKHN0cnVjdCBrdm1fdmNwdSAqdmNw dSk7Cj4+ICtzdGF0aWMgdm9pZCBfX2Fsd2F5c19pbmxpbmUgdm14X2Rpc2FibGVfaW50ZXJjZXB0 X2Zvcl9tc3IodW5zaWduZWQKPj4gbG9uZyAqbXNyX2JpdG1hcCwKPj4gKwkJCQkJCQkgIHUzMiBt c3IsIGludCB0eXBlKTsKPj4gKwo+Pgo+PiBzdGF0aWMgREVGSU5FX1BFUl9DUFUoc3RydWN0IHZt Y3MgKiwgdm14YXJlYSk7Cj4+IHN0YXRpYyBERUZJTkVfUEVSX0NQVShzdHJ1Y3Qgdm1jcyAqLCBj dXJyZW50X3ZtY3MpOwo+PiBAQCAtMjAwNyw2ICsyMDEwLDI4IEBAIHN0YXRpYyB2b2lkIGFkZF9h dG9taWNfc3dpdGNoX21zcihzdHJ1Y3QKPj4gdmNwdV92bXggKnZteCwgdW5zaWduZWQgbXNyLAo+ PiAJbS0+aG9zdFtpXS52YWx1ZSA9IGhvc3RfdmFsOwo+PiB9Cj4+Cj4+ICsvKiBkbyBub3QgdG91 Y2ggZ3Vlc3RfdmFsIGFuZCBob3N0X3ZhbCBpZiB0aGUgbXNyIGlzIG5vdCBmb3VuZCAqLwo+PiAr c3RhdGljIGludCByZWFkX2F0b21pY19zd2l0Y2hfbXNyKHN0cnVjdCB2Y3B1X3ZteCAqdm14LCB1 bnNpZ25lZCBtc3IsCj4+ICsJCQkJICB1NjQgKmd1ZXN0X3ZhbCwgdTY0ICpob3N0X3ZhbCkKPj4g K3sKPj4gKwl1bnNpZ25lZCBpOwo+PiArCXN0cnVjdCBtc3JfYXV0b2xvYWQgKm0gPSAmdm14LT5t c3JfYXV0b2xvYWQ7Cj4+ICsKPj4gKwlmb3IgKGkgPSAwOyBpIDwgbS0+bnI7ICsraSkKPj4gKwkJ aWYgKG0tPmd1ZXN0W2ldLmluZGV4ID09IG1zcikKPj4gKwkJCWJyZWFrOwo+PiArCj4+ICsJaWYg KGkgPT0gbS0+bnIpCj4+ICsJCXJldHVybiAxOwo+PiArCj4+ICsJaWYgKGd1ZXN0X3ZhbCkKPj4g KwkJKmd1ZXN0X3ZhbCA9IG0tPmd1ZXN0W2ldLnZhbHVlOwo+PiArCWlmIChob3N0X3ZhbCkKPj4g KwkJKmhvc3RfdmFsID0gbS0+aG9zdFtpXS52YWx1ZTsKPj4gKwo+PiArCXJldHVybiAwOwo+PiAr fQo+PiArCj4+IHN0YXRpYyBib29sIHVwZGF0ZV90cmFuc2l0aW9uX2VmZXIoc3RydWN0IHZjcHVf dm14ICp2bXgsIGludAo+PiBlZmVyX29mZnNldCkKPj4gewo+PiAJdTY0IGd1ZXN0X2VmZXIgPSB2 bXgtPnZjcHUuYXJjaC5lZmVyOwo+PiBAQCAtMzIwMyw3ICszMjI4LDkgQEAgc3RhdGljIGlubGlu ZSBib29sCj4+IHZteF9mZWF0dXJlX2NvbnRyb2xfbXNyX3ZhbGlkKHN0cnVjdCBrdm1fdmNwdSAq dmNwdSwKPj4gICAqLwo+PiBzdGF0aWMgaW50IHZteF9nZXRfbXNyKHN0cnVjdCBrdm1fdmNwdSAq dmNwdSwgc3RydWN0IG1zcl9kYXRhCj4+ICptc3JfaW5mbykKPj4gewo+PiArCXU2NCBzcGVjX2N0 cmwgPSAwOwo+PiAJc3RydWN0IHNoYXJlZF9tc3JfZW50cnkgKm1zcjsKPj4gKwlzdHJ1Y3QgdmNw dV92bXggKnZteCA9IHRvX3ZteCh2Y3B1KTsKPj4KPj4gCXN3aXRjaCAobXNyX2luZm8tPmluZGV4 KSB7Cj4+ICNpZmRlZiBDT05GSUdfWDg2XzY0Cj4+IEBAIC0zMjIzLDYgKzMyNTAsMTkgQEAgc3Rh dGljIGludCB2bXhfZ2V0X21zcihzdHJ1Y3Qga3ZtX3ZjcHUgKnZjcHUsCj4+IHN0cnVjdCBtc3Jf ZGF0YSAqbXNyX2luZm8pCj4+IAljYXNlIE1TUl9JQTMyX1RTQzoKPj4gCQltc3JfaW5mby0+ZGF0 YSA9IGd1ZXN0X3JlYWRfdHNjKHZjcHUpOwo+PiAJCWJyZWFrOwo+PiArCWNhc2UgTVNSX0lBMzJf U1BFQ19DVFJMOgo+PiArCQlpZiAoIW1zcl9pbmZvLT5ob3N0X2luaXRpYXRlZCAmJgo+PiArCQkg ICAgIWd1ZXN0X2NwdWlkX2hhcyh2Y3B1LCBYODZfRkVBVFVSRV9TUEVDX0NUUkwpKQo+PiArCQkJ cmV0dXJuIDE7Cj4+ICsKPj4gKwkJLyoKPj4gKwkJICogSWYgdGhlIE1TUiBpcyBub3QgaW4gdGhl IGF0b21pYyBsaXN0IHlldCwgdGhlbiBpdCB3YXMgbmV2ZXIKPj4gKwkJICogd3JpdHRlbiB0by4g U28gdGhlIE1TUiB2YWx1ZSB3aWxsIGJlICcwJy4KPj4gKwkJICovCj4+ICsJCXJlYWRfYXRvbWlj X3N3aXRjaF9tc3Iodm14LCBNU1JfSUEzMl9TUEVDX0NUUkwsICZzcGVjX2N0cmwsIE5VTEwpOwo+ PiArCj4+ICsJCW1zcl9pbmZvLT5kYXRhID0gc3BlY19jdHJsOwo+PiArCQlicmVhazsKPj4gCWNh c2UgTVNSX0lBMzJfU1lTRU5URVJfQ1M6Cj4+IAkJbXNyX2luZm8tPmRhdGEgPSB2bWNzX3JlYWQz MihHVUVTVF9TWVNFTlRFUl9DUyk7Cj4+IAkJYnJlYWs7Cj4+IEBAIC0zMjg5LDYgKzMzMjksMTMg QEAgc3RhdGljIGludCB2bXhfc2V0X21zcihzdHJ1Y3Qga3ZtX3ZjcHUgKnZjcHUsCj4+IHN0cnVj dCBtc3JfZGF0YSAqbXNyX2luZm8pCj4+IAlpbnQgcmV0ID0gMDsKPj4gCXUzMiBtc3JfaW5kZXgg PSBtc3JfaW5mby0+aW5kZXg7Cj4+IAl1NjQgZGF0YSA9IG1zcl9pbmZvLT5kYXRhOwo+PiArCXVu c2lnbmVkIGxvbmcgKm1zcl9iaXRtYXA7Cj4+ICsKPj4gKwkvKgo+PiArCSAqIElCUlMgaXMgbm90 IHVzZWQgKHlldCkgdG8gcHJvdGVjdCB0aGUgaG9zdC4gT25jZSBpdCBkb2VzLCB0aGlzCj4+ICsJ ICogdmFyaWFibGUgbmVlZHMgdG8gYmUgYSBiaXQgc21hcnRlci4KPj4gKwkgKi8KPj4gKwl1NjQg aG9zdF9zcGVjX2N0cmwgPSAwOwo+Pgo+PiAJc3dpdGNoIChtc3JfaW5kZXgpIHsKPj4gCWNhc2Ug TVNSX0VGRVI6Cj4+IEBAIC0zMzMwLDYgKzMzNzcsMjIgQEAgc3RhdGljIGludCB2bXhfc2V0X21z cihzdHJ1Y3Qga3ZtX3ZjcHUgKnZjcHUsCj4+IHN0cnVjdCBtc3JfZGF0YSAqbXNyX2luZm8pCj4+ IAljYXNlIE1TUl9JQTMyX1RTQzoKPj4gCQlrdm1fd3JpdGVfdHNjKHZjcHUsIG1zcl9pbmZvKTsK Pj4gCQlicmVhazsKPj4gKwljYXNlIE1TUl9JQTMyX1NQRUNfQ1RSTDoKPj4gKwkJaWYgKCFtc3Jf aW5mby0+aG9zdF9pbml0aWF0ZWQgJiYKPj4gKwkJICAgICFndWVzdF9jcHVpZF9oYXModmNwdSwg WDg2X0ZFQVRVUkVfU1BFQ19DVFJMKSkKPj4gKwkJCXJldHVybiAxOwo+PiArCj4+ICsJCS8qCj4+ ICsJCSAqIE5vdyB3ZSBrbm93IHRoYXQgdGhlIGd1ZXN0IGlzIGFjdHVhbGx5IHVzaW5nIHRoZSBN U1IsIHNvCj4+ICsJCSAqIGF0b21pY2FsbHkgbG9hZCBhbmQgc2F2ZSB0aGUgU1BFQ19DVFJMIE1T UiBhbmQgcGFzcyBpdAo+PiArCQkgKiB0aHJvdWdoIHRvIHRoZSBndWVzdC4KPj4gKwkJICovCj4+ ICsJCWFkZF9hdG9taWNfc3dpdGNoX21zcih2bXgsIE1TUl9JQTMyX1NQRUNfQ1RSTCwgbXNyX2lu Zm8tPmRhdGEsCj4+ICsJCQkJICAgICAgaG9zdF9zcGVjX2N0cmwpOwo+PiArCQltc3JfYml0bWFw ID0gdm14LT52bWNzMDEubXNyX2JpdG1hcDsKPj4gKwkJdm14X2Rpc2FibGVfaW50ZXJjZXB0X2Zv cl9tc3IobXNyX2JpdG1hcCwgTVNSX0ZTX0JBU0UsIE1TUl9UWVBFX1JXKTsKPj4gKwo+PiArCQli cmVhazsKPj4gCWNhc2UgTVNSX0lBMzJfQ1JfUEFUOgo+PiAJCWlmICh2bWNzX2NvbmZpZy52bWVu dHJ5X2N0cmwgJiBWTV9FTlRSWV9MT0FEX0lBMzJfUEFUKSB7Cj4+IAkJCWlmICgha3ZtX210cnJf dmFsaWQodmNwdSwgTVNSX0lBMzJfQ1JfUEFULCBkYXRhKSkKPiAKPiAKQW1hem9uIERldmVsb3Bt ZW50IENlbnRlciBHZXJtYW55IEdtYkgKQmVybGluIC0gRHJlc2RlbiAtIEFhY2hlbgptYWluIG9m ZmljZTogS3JhdXNlbnN0ci4gMzgsIDEwMTE3IEJlcmxpbgpHZXNjaGFlZnRzZnVlaHJlcjogRHIu IFJhbGYgSGVyYnJpY2gsIENocmlzdGlhbiBTY2hsYWVnZXIKVXN0LUlEOiBERTI4OTIzNzg3OQpF aW5nZXRyYWdlbiBhbSBBbXRzZ2VyaWNodCBDaGFybG90dGVuYnVyZyBIUkIgMTQ5MTczIEIK