Received: by 10.223.185.116 with SMTP id b49csp3456826wrg; Sun, 25 Feb 2018 23:39:12 -0800 (PST) X-Google-Smtp-Source: AH8x224AJwPBK8FR5rKziV+6mhKP/u9wO4aUQsQQKChrvXyrPi2r2RpyC223ZAnPTcwf9jmdYyKu X-Received: by 2002:a17:902:523:: with SMTP id 32-v6mr9669323plf.145.1519630752276; Sun, 25 Feb 2018 23:39:12 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1519630752; cv=none; d=google.com; s=arc-20160816; b=bqqkJXWFYlu4YqefuZ8+uF3n00iNYK9ij5MGcbMuqf6PekefnClvixyn7+3lPgCtVv sU4aSVUTQQz15gD74igeHCyGiNiovEQ+AEgUQmpHd1Rk5yySfOnqAzTbBJRGEgLx5qgw qToUtzWintLIwYzYeRbdbyscWaEV4e3TS6cZ3DJioUwJupYYFVb5iumrXhBzRpx5jP8A ZEN9rEubOyLz5+Ysn21VwCB0VFeGRT4yknON1rvljwReb//4D6MzeD3S4cR1e0nywRWn paSvkSSSyu4aq39CPCIHinAT+zH9fQOXdHdWDOT1aAsFCwyP3wm2JpFDCMGMPCLsV1me 9jiQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:mime-version:content-transfer-encoding :dlp-reaction:dlp-version:dlp-product:content-language :accept-language:in-reply-to:references:message-id:date:thread-index :thread-topic:subject:cc:to:from:arc-authentication-results; bh=gaCwqJ1bPS9wcY3mJ33S5curk61AtzzvAGP1+BE01ig=; b=hlO9BnVESY7qgNu2VDi5phDawvECfLeoH0WxX+Uk1x2UvCqzawH2I0MSKmPKYrDOqH NBOIVc44YkMW96DsvSNP4lniVnc7P2JQr9lGDU2D18ZMt3sQvVM40pd/PCDuedggX7kc Klka9q2wUTD+AyBKKiq6CBRhYewE6+YpZvqLDJTWCeIvtM0aVWuTeQ8yo/JWeVDL8EYQ tOJHqTngFgrFpr8Gcmq/q3Vx/D6BDa2igCoMiZ+EryAiOuktaeARqiKLIZ7bXfeEbBs/ 6ABpqTakbE8H66ic59s+5GjzkIw/Ar/pCCjPgrmPgI8GsSWIkT1aCJRM/v2l5wHeCEuq FdzA== ARC-Authentication-Results: i=1; mx.google.com; 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 Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id k128si5198195pgc.609.2018.02.25.23.38.57; Sun, 25 Feb 2018 23:39:12 -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; 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 Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752175AbeBZHhZ (ORCPT + 99 others); Mon, 26 Feb 2018 02:37:25 -0500 Received: from mga04.intel.com ([192.55.52.120]:40792 "EHLO mga04.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751796AbeBZHhX (ORCPT ); Mon, 26 Feb 2018 02:37:23 -0500 X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga007.jf.intel.com ([10.7.209.58]) by fmsmga104.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 25 Feb 2018 23:37:23 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.47,396,1515484800"; d="scan'208";a="20303722" Received: from orsmsx106.amr.corp.intel.com ([10.22.225.133]) by orsmga007.jf.intel.com with ESMTP; 25 Feb 2018 23:37:22 -0800 Received: from orsmsx158.amr.corp.intel.com (10.22.240.20) by ORSMSX106.amr.corp.intel.com (10.22.225.133) with Microsoft SMTP Server (TLS) id 14.3.319.2; Sun, 25 Feb 2018 23:37:22 -0800 Received: from orsmsx114.amr.corp.intel.com ([169.254.8.126]) by ORSMSX158.amr.corp.intel.com ([169.254.10.162]) with mapi id 14.03.0319.002; Sun, 25 Feb 2018 23:37:21 -0800 From: "Prakhya, Sai Praneeth" To: Miguel Ojeda CC: "linux-efi@vger.kernel.org" , linux-kernel , "Lee, Chun-Yi" , "Borislav Petkov" , "Luck, Tony" , Will Deacon , "Hansen, Dave" , Mark Rutland , Bhupesh Sharma , "Neri, Ricardo" , "Shankar, Ravi V" , Matt Fleming , "Zijlstra, Peter" , Ard Biesheuvel , "Williams, Dan J" Subject: RE: [PATCH V1 2/3] efi: Introduce efi_rts_workqueue and necessary infrastructure to invoke all efi_runtime_services() Thread-Topic: [PATCH V1 2/3] efi: Introduce efi_rts_workqueue and necessary infrastructure to invoke all efi_runtime_services() Thread-Index: AQHTrb1EiaVsaODlpEikgPmPA75WlKO1c5OAgADX9eA= Date: Mon, 26 Feb 2018 07:37:21 +0000 Message-ID: References: <1519510249-31447-1-git-send-email-sai.praneeth.prakhya@intel.com> <1519510249-31447-3-git-send-email-sai.praneeth.prakhya@intel.com> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-titus-metadata-40: eyJDYXRlZ29yeUxhYmVscyI6IiIsIk1ldGFkYXRhIjp7Im5zIjoiaHR0cDpcL1wvd3d3LnRpdHVzLmNvbVwvbnNcL0ludGVsMyIsImlkIjoiZjc5MDFkMzUtZGZjYi00MmEzLTliYzYtMzRlNGRiNjc4YTk1IiwicHJvcHMiOlt7Im4iOiJDVFBDbGFzc2lmaWNhdGlvbiIsInZhbHMiOlt7InZhbHVlIjoiQ1RQX05UIn1dfV19LCJTdWJqZWN0TGFiZWxzIjpbXSwiVE1DVmVyc2lvbiI6IjE3LjIuNS4xOCIsIlRydXN0ZWRMYWJlbEhhc2giOiJjaXVTelcwdG1HbGxLMzZ4aDVtbU9zaDIwVHVPdlJJMHNiK0dEd0UwTGZlNkJoNXNmRmZsTVFPeTh0RVNHb2Q1In0= x-ctpclassification: CTP_NT dlp-product: dlpe-windows dlp-version: 11.0.0.116 dlp-reaction: no-action x-originating-ip: [10.22.254.138] Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org PiA+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2Zpcm13YXJlL2VmaS9lZmkuYyBiL2RyaXZlcnMvZmly bXdhcmUvZWZpL2VmaS5jDQo+ID4gaW5kZXggYWM1ZGI1ZjhkYmJmLi40NzE0YjMwNWNhOTAgMTAw NjQ0DQo+ID4gLS0tIGEvZHJpdmVycy9maXJtd2FyZS9lZmkvZWZpLmMNCj4gPiArKysgYi9kcml2 ZXJzL2Zpcm13YXJlL2VmaS9lZmkuYw0KPiA+IEBAIC03Niw2ICs3Niw4IEBAIHN0YXRpYyB1bnNp Z25lZCBsb25nICplZmlfdGFibGVzW10gPSB7DQo+ID4gICAgICAgICAmZWZpLm1lbV9hdHRyX3Rh YmxlLA0KPiA+ICB9Ow0KPiA+DQo+ID4gK3N0cnVjdCB3b3JrcXVldWVfc3RydWN0ICplZmlfcnRz X3dxOw0KPiA+ICsNCj4gPiAgc3RhdGljIGJvb2wgZGlzYWJsZV9ydW50aW1lOw0KPiA+ICBzdGF0 aWMgaW50IF9faW5pdCBzZXR1cF9ub2VmaShjaGFyICphcmcpICB7IEBAIC0zMjksNiArMzMxLDE1 IEBADQo+ID4gc3RhdGljIGludCBfX2luaXQgZWZpc3Vic3lzX2luaXQodm9pZCkNCj4gPiAgICAg ICAgIGlmICghZWZpX2VuYWJsZWQoRUZJX0JPT1QpKQ0KPiA+ICAgICAgICAgICAgICAgICByZXR1 cm4gMDsNCj4gPg0KPiA+ICsgICAgICAgLyogQ3JlYXRlIGEgd29yayBxdWV1ZSB0byBydW4gRUZJ IFJ1bnRpbWUgU2VydmljZXMgKi8NCj4gPiArICAgICAgIGVmaV9ydHNfd3EgPSBjcmVhdGVfd29y a3F1ZXVlKCJlZmlfcnRzX3dvcmtxdWV1ZSIpOw0KPiANCj4gUGxlYXNlIGNvbnNpZGVyIGFsbG9j X3dvcmtxdWV1ZSgpIGluc3RlYWQgd2l0aCB0aGUgYXBwcm9wcmlhdGUgZmxhZ3MsIHNpbmNlDQo+ IGNyZWF0ZV93b3JrcXVldWUoKSBhbmQgZnJpZW5kcyBhcmUgZGVwcmVjYXRlZC4NCg0KU3VyZSEg V2lsbCBjaGFuZ2UgaW4gVjIuDQoNCj4gDQo+ID4gKyAgICAgICBpZiAoIWVmaV9ydHNfd3EpIHsN Cj4gPiArICAgICAgICAgICAgICAgcHJfZXJyKCJGYWlsZWQgdG8gY3JlYXRlIGVmaV9ydHNfd29y a3F1ZXVlLCBFRkkgcnVudGltZSBzZXJ2aWNlcyAiDQo+ID4gKyAgICAgICAgICAgICAgICAgICAg ICAiZGlzYWJsZWQuXG4iKTsNCj4gPiArICAgICAgICAgICAgICAgY2xlYXJfYml0KEVGSV9SVU5U SU1FX1NFUlZJQ0VTLCAmZWZpLmZsYWdzKTsNCj4gPiArICAgICAgICAgICAgICAgcmV0dXJuIDA7 DQo+ID4gKyAgICAgICB9DQo+ID4gKw0KPiA+ICAgICAgICAgLyoNCj4gPiAgICAgICAgICAqIENs ZWFuIERVTU1ZIG9iamVjdCBjYWxscyBFRkkgUnVudGltZSBTZXJ2aWNlLCBzZXRfdmFyaWFibGUo KSwgc28NCj4gPiAgICAgICAgICAqIGl0IHNob3VsZCBiZSBpbnZva2VkIG9ubHkgYWZ0ZXIgZWZp X3J0c193b3JrcXVldWUgaXMgcmVhZHkuDQo+ID4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZmlybXdh cmUvZWZpL3J1bnRpbWUtd3JhcHBlcnMuYw0KPiA+IGIvZHJpdmVycy9maXJtd2FyZS9lZmkvcnVu dGltZS13cmFwcGVycy5jDQo+ID4gaW5kZXggYWU1NDg3MGIyNzg4Li41Y2RiNzg3ZGE1ZDMgMTAw NjQ0DQo+ID4gLS0tIGEvZHJpdmVycy9maXJtd2FyZS9lZmkvcnVudGltZS13cmFwcGVycy5jDQo+ ID4gKysrIGIvZHJpdmVycy9maXJtd2FyZS9lZmkvcnVudGltZS13cmFwcGVycy5jDQo+ID4gQEAg LTEsNiArMSwxNCBAQA0KPiA+ICAvKg0KPiA+ICAgKiBydW50aW1lLXdyYXBwZXJzLmMgLSBSdW50 aW1lIFNlcnZpY2VzIGZ1bmN0aW9uIGNhbGwgd3JhcHBlcnMNCj4gPiAgICoNCj4gPiArICogSW1w bGVtZW50YXRpb24gc3VtbWFyeToNCj4gPiArICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCj4g PiArICogMS4gV2hlbiB1c2VyL2tlcm5lbCB0aHJlYWQgcmVxdWVzdHMgdG8gZXhlY3V0ZQ0KPiA+ ICsgZWZpX3J1bnRpbWVfc2VydmljZSgpLA0KPiA+ICsgKiBlbnF1ZXVlIHdvcmsgdG8gZWZpX3J0 c193b3JrcXVldWUuDQo+ID4gKyAqIDIuIENhbGxlciB0aHJlYWQgd2FpdHMgdW50aWwgdGhlIHdv cmsgaXMgZmluaXNoZWQgYmVjYXVzZSBpdCdzDQo+ID4gKyAqIGRlcGVuZGVudCBvbiB0aGUgcmV0 dXJuIHN0YXR1cyBhbmQgZXhlY3V0aW9uIG9mIGVmaV9ydW50aW1lX3NlcnZpY2UoKS4NCj4gPiAr ICogRm9yIGluc3RhbmNlLCBnZXRfdmFyaWFibGUoKSBhbmQgZ2V0X25leHRfdmFyaWFibGUoKS4N Cj4gPiArICoNCj4gPiAgICogQ29weXJpZ2h0IChDKSAyMDE0IExpbmFybyBMdGQuIDxhcmQuYmll c2hldXZlbEBsaW5hcm8ub3JnPg0KPiA+ICAgKg0KPiA+ICAgKiBTcGxpdCBvZmYgZnJvbSBhcmNo L3g4Ni9wbGF0Zm9ybS9lZmkvZWZpLmMgQEAgLTIyLDYgKzMwLDggQEANCj4gPiAjaW5jbHVkZSA8 bGludXgvbXV0ZXguaD4gICNpbmNsdWRlIDxsaW51eC9zZW1hcGhvcmUuaD4gICNpbmNsdWRlDQo+ ID4gPGxpbnV4L3N0cmluZ2lmeS5oPg0KPiA+ICsjaW5jbHVkZSA8bGludXgvd29ya3F1ZXVlLmg+ DQo+ID4gKw0KPiA+ICAjaW5jbHVkZSA8YXNtL2VmaS5oPg0KPiA+DQo+ID4gIC8qDQo+ID4gQEAg LTMzLDYgKzQzLDUwIEBADQo+ID4gICNkZWZpbmUgX19lZmlfY2FsbF92aXJ0KGYsIGFyZ3MuLi4p IFwNCj4gPiAgICAgICAgIF9fZWZpX2NhbGxfdmlydF9wb2ludGVyKGVmaS5zeXN0YWItPnJ1bnRp bWUsIGYsIGFyZ3MpDQo+ID4NCj4gPiArLyogRWFjaCBFRkkgUnVudGltZSBTZXJ2aWNlIGlzIHJl cHJlc2VudGVkIHdpdGggYSB1bmlxdWUgbnVtYmVyICovDQo+ID4gKyNkZWZpbmUgR0VUX1RJTUUg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAwDQo+ID4gKyNkZWZpbmUgU0VU X1RJTUUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxDQo+ID4gKyNkZWZp bmUgR0VUX1dBS0VVUF9USU1FICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IDINCj4gPiArI2RlZmluZSBTRVRfV0FLRVVQX1RJTUUgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgMw0KPiA+ICsjZGVmaW5lIEdFVF9WQVJJQUJMRSAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgNA0KPiA+ICsjZGVmaW5lIEdFVF9ORVhUX1ZBUklBQkxFICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgNQ0KPiA+ICsjZGVmaW5lIFNFVF9WQVJJQUJMRSAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgNg0KPiA+ICsjZGVmaW5lIFNFVF9WQVJJ QUJMRV9OT05CTE9DS0lORyAgICAgICAgICAgICAgICAgICAgICAgNw0KPiA+ICsjZGVmaW5lIFFV RVJZX1ZBUklBQkxFX0lORk8gICAgICAgICAgICAgICAgICAgICAgICAgICAgOA0KPiA+ICsjZGVm aW5lIFFVRVJZX1ZBUklBQkxFX0lORk9fTk9OQkxPQ0tJTkcgICAgICAgICAgICAgICAgICAgICAg ICA5DQo+ID4gKyNkZWZpbmUgR0VUX05FWFRfSElHSF9NT05PX0NPVU5UICAgICAgICAgICAgICAg ICAgICAgICAxMA0KPiA+ICsjZGVmaW5lIFJFU0VUX1NZU1RFTSAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgMTENCj4gPiArI2RlZmluZSBVUERBVEVfQ0FQU1VMRSAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIDEyDQo+ID4gKyNkZWZpbmUgUVVFUllfQ0FQU1VMRV9DQVBT ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxMw0KPiANCj4gQW4gZW51bSB3b3VsZCBiZSBi ZXR0ZXIsIGdpdmVuIHRoZXNlIGFyZSBqdXN0IGludGVybmFsLCBjb250aWd1b3VzIElEcy4NCj4g DQoNCk1ha2VzIHNlbnNlLg0KDQo+ID4gKw0KPiA+ICsvKg0KPiA+ICsgKiBlZmlfcXVldWVfd29y azogICAgIFF1ZXVlIGVmaV9ydW50aW1lX3NlcnZpY2UoKSBhbmQgd2FpdCB1bnRpbCBpdCdzIGRv bmUNCj4gPiArICogQHJ0czogICAgICAgICAgICAgICBlZmlfcnVudGltZV9zZXJ2aWNlKCkgZnVu Y3Rpb24gaWRlbnRpZmllcg0KPiA+ICsgKiBAcnRzX2FyZzwxLTU+OiAgICAgIGVmaV9ydW50aW1l X3NlcnZpY2UoKSBmdW5jdGlvbiBhcmd1bWVudHMNCj4gPiArICoNCj4gPiArICogQWNjZXNzZXMg dG8gZWZpX3J1bnRpbWVfc2VydmljZXMoKSBhcmUgc2VyaWFsaXplZCBieSBhIGJpbmFyeQ0KPiA+ ICsgKiBzZW1hcGhvcmUgKGVmaV9ydW50aW1lX2xvY2spIGFuZCBjYWxsZXIgd2FpdHMgdW50aWwg dGhlIHdvcmsgaXMNCj4gPiArICogZmluaXNoZWQsIGhlbmNlIF9vbmx5XyBvbmUgd29yayBpcyBx dWV1ZWQgYXQgYSB0aW1lLiBTbywNCj4gPiArcXVldWVfd29yaygpDQo+ID4gKyAqIHNob3VsZCBu ZXZlciBmYWlsLg0KPiA+ICsgKi8NCj4gPiArI2RlZmluZSBlZmlfcXVldWVfd29yayhfcnRzLCBf YXJnMSwgX2FyZzIsIF9hcmczLCBfYXJnNCwgX2FyZzUpICAgICAgICAgICAgICAgIFwNCj4gPiAr KHsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBcDQo+ID4gKyAgICAgICBzdHJ1Y3QgZWZpX3J1bnRpbWVfd29yayBlZmlf cnRzX3dvcms7ICAgICAgICAgICAgICAgICAgICAgICAgICAgXA0KPiA+ICsgICAgICAgZWZpX3J0 c193b3JrLnN0YXR1cyA9IEVGSV9BQk9SVEVEOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IFwNCj4gPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBcDQo+ID4gKyAgICAgICBJTklUX1dPUktfT05TVEFDSygm ZWZpX3J0c193b3JrLndvcmssIGVmaV9jYWxsX3J0cyk7ICAgICAgICAgICAgXA0KPiA+ICsgICAg ICAgZWZpX3J0c193b3JrLmZ1bmMgPSBfcnRzOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIFwNCj4gPiArICAgICAgIGVmaV9ydHNfd29yay5hcmcxID0gX2FyZzE7ICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcDQo+ID4gKyAgICAgICBlZmlfcnRzX3dv cmsuYXJnMiA9IF9hcmcyOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXA0K PiA+ICsgICAgICAgZWZpX3J0c193b3JrLmFyZzMgPSBfYXJnMzsgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIFwNCj4gPiArICAgICAgIGVmaV9ydHNfd29yay5hcmc0ID0gX2Fy ZzQ7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcDQo+ID4gKyAgICAgICBl ZmlfcnRzX3dvcmsuYXJnNSA9IF9hcmc1OyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgXA0KPiA+ICsgICAgICAgaWYgKHF1ZXVlX3dvcmsoZWZpX3J0c193cSwgJmVmaV9ydHNf d29yay53b3JrKSkgICAgICAgICAgICAgICAgIFwNCj4gPiArICAgICAgICAgICAgICAgZmx1c2hf d29yaygmZWZpX3J0c193b3JrLndvcmspOyAgICAgICAgICAgICAgICAgICAgICAgICBcDQo+IA0K PiBJZiAiU28sIHF1ZXVlX3dvcmsoKSBzaG91bGQgbmV2ZXIgZmFpbC4iLCBzaG91bGRuJ3QgdGhp cyBiZSBhIEJVRygpIG9yIHNpbWlsYXI/DQo+IA0KDQpCVUcoKSBzb3VuZHMgYXBwcm9wcmlhdGUu IFdpbGwgcm9sbCBpdCBpbiBWMi4NCg0KPiA+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwNCj4gPiArICAgICAg IGVmaV9ydHNfd29yay5zdGF0dXM7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBcDQo+ID4gK30pDQo+ID4gKw0KPiA+ICB2b2lkIGVmaV9jYWxsX3ZpcnRfY2hlY2tf ZmxhZ3ModW5zaWduZWQgbG9uZyBmbGFncywgY29uc3QgY2hhciAqY2FsbCkNCj4gPiB7DQo+ID4g ICAgICAgICB1bnNpZ25lZCBsb25nIGN1cl9mbGFncywgbWlzbWF0Y2g7IEBAIC0zMTIsMyArMzY2 LDkyIEBAIHZvaWQNCj4gPiBlZmlfbmF0aXZlX3J1bnRpbWVfc2V0dXAodm9pZCkNCj4gPiAgICAg ICAgIGVmaS51cGRhdGVfY2Fwc3VsZSA9IHZpcnRfZWZpX3VwZGF0ZV9jYXBzdWxlOw0KPiA+ICAg ICAgICAgZWZpLnF1ZXJ5X2NhcHN1bGVfY2FwcyA9IHZpcnRfZWZpX3F1ZXJ5X2NhcHN1bGVfY2Fw czsgIH0NCj4gPiArDQo+ID4gKy8qDQo+ID4gKyAqIENhbGxzIHRoZSBhcHByb3ByaWF0ZSBlZmlf cnVudGltZV9zZXJ2aWNlKCkgd2l0aCB0aGUgYXBwcm9wcmlhdGUNCj4gPiArICogYXJndW1lbnRz Lg0KPiA+ICsgKg0KPiA+ICsgKiBTZW1hbnRpY3MgZm9sbG93ZWQgYnkgZWZpX2NhbGxfcnRzKCkg dG8gdW5kZXJzdGFuZCBlZmlfcnVudGltZV93b3JrOg0KPiA+ICsgKiAxLiBJZiBhcmd1bWVudCB3 YXMgYSBwb2ludGVyLCByZWNhc3QgaXQgZnJvbSB2b2lkIHBvaW50ZXIgdG8NCj4gPiArb3JpZ2lu YWwNCj4gPiArICogcG9pbnRlciB0eXBlLg0KPiA+ICsgKiAyLiBJZiBhcmd1bWVudCB3YXMgYSB2 YWx1ZSwgcmVjYXN0IGl0IGZyb20gdm9pZCBwb2ludGVyIHRvDQo+ID4gK29yaWdpbmFsDQo+ID4g KyAqIHBvaW50ZXIgdHlwZSBhbmQgZGVyZWZlcmVuY2UgaXQuDQo+ID4gKyAqLw0KPiA+ICt2b2lk IGVmaV9jYWxsX3J0cyhzdHJ1Y3Qgd29ya19zdHJ1Y3QgKndvcmspIHsNCj4gPiArICAgICAgIHN0 cnVjdCBlZmlfcnVudGltZV93b3JrICplZmlfcnRzX3dvcms7DQo+ID4gKyAgICAgICB2b2lkICph cmcxLCAqYXJnMiwgKmFyZzMsICphcmc0LCAqYXJnNTsNCj4gPiArICAgICAgIGVmaV9zdGF0dXNf dCBzdGF0dXMgPSBFRklfTk9UX0ZPVU5EOw0KPiA+ICsNCj4gPiArICAgICAgIGVmaV9ydHNfd29y ayA9IGNvbnRhaW5lcl9vZih3b3JrLCBzdHJ1Y3QgZWZpX3J1bnRpbWVfd29yaywgd29yayk7DQo+ ID4gKyAgICAgICBhcmcxID0gZWZpX3J0c193b3JrLT5hcmcxOw0KPiA+ICsgICAgICAgYXJnMiA9 IGVmaV9ydHNfd29yay0+YXJnMjsNCj4gPiArICAgICAgIGFyZzMgPSBlZmlfcnRzX3dvcmstPmFy ZzM7DQo+ID4gKyAgICAgICBhcmc0ID0gZWZpX3J0c193b3JrLT5hcmc0Ow0KPiA+ICsgICAgICAg YXJnNSA9IGVmaV9ydHNfd29yay0+YXJnNTsNCj4gPiArDQo+ID4gKyAgICAgICBzd2l0Y2ggKGVm aV9ydHNfd29yay0+ZnVuYykgew0KPiA+ICsgICAgICAgY2FzZSBHRVRfVElNRToNCj4gPiArICAg ICAgICAgICAgICAgc3RhdHVzID0gZWZpX2NhbGxfdmlydChnZXRfdGltZSwgKGVmaV90aW1lX3Qg KilhcmcxLA0KPiA+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChlZmlf dGltZV9jYXBfdCAqKWFyZzIpOw0KPiA+ICsgICAgICAgICAgICAgICBicmVhazsNCj4gPiArICAg ICAgIGNhc2UgU0VUX1RJTUU6DQo+ID4gKyAgICAgICAgICAgICAgIHN0YXR1cyA9IGVmaV9jYWxs X3ZpcnQoc2V0X3RpbWUsIChlZmlfdGltZV90ICopYXJnMSk7DQo+ID4gKyAgICAgICAgICAgICAg IGJyZWFrOw0KPiA+ICsgICAgICAgY2FzZSBHRVRfV0FLRVVQX1RJTUU6DQo+ID4gKyAgICAgICAg ICAgICAgIHN0YXR1cyA9IGVmaV9jYWxsX3ZpcnQoZ2V0X3dha2V1cF90aW1lLCAoZWZpX2Jvb2xf dCAqKWFyZzEsDQo+ID4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGVm aV9ib29sX3QgKilhcmcyLCAoZWZpX3RpbWVfdCAqKWFyZzMpOw0KPiA+ICsgICAgICAgICAgICAg ICBicmVhazsNCj4gPiArICAgICAgIGNhc2UgU0VUX1dBS0VVUF9USU1FOg0KPiA+ICsgICAgICAg ICAgICAgICBzdGF0dXMgPSBlZmlfY2FsbF92aXJ0KHNldF93YWtldXBfdGltZSwgKihlZmlfYm9v bF90ICopYXJnMSwNCj4gPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAo ZWZpX3RpbWVfdCAqKWFyZzIpOw0KPiA+ICsgICAgICAgICAgICAgICBicmVhazsNCj4gPiArICAg ICAgIGNhc2UgR0VUX1ZBUklBQkxFOg0KPiA+ICsgICAgICAgICAgICAgICBzdGF0dXMgPSBlZmlf Y2FsbF92aXJ0KGdldF92YXJpYWJsZSwgKGVmaV9jaGFyMTZfdCAqKWFyZzEsDQo+ID4gKyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGVmaV9ndWlkX3QgKilhcmcyLCAodTMy ICopYXJnMywNCj4gPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAodW5z aWduZWQgbG9uZyAqKWFyZzQsICh2b2lkICopYXJnNSk7DQo+ID4gKyAgICAgICAgICAgICAgIGJy ZWFrOw0KPiA+ICsgICAgICAgY2FzZSBHRVRfTkVYVF9WQVJJQUJMRToNCj4gPiArICAgICAgICAg ICAgICAgc3RhdHVzID0gZWZpX2NhbGxfdmlydChnZXRfbmV4dF92YXJpYWJsZSwgKHVuc2lnbmVk IGxvbmcgKilhcmcxLA0KPiA+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IChlZmlfY2hhcjE2X3QgKilhcmcyLA0KPiA+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIChlZmlfZ3VpZF90ICopYXJnMyk7DQo+ID4gKyAgICAgICAgICAgICAgIGJyZWFr Ow0KPiA+ICsgICAgICAgY2FzZSBTRVRfVkFSSUFCTEU6DQo+ID4gKyAgICAgICBjYXNlIFNFVF9W QVJJQUJMRV9OT05CTE9DS0lORzoNCj4gPiArICAgICAgICAgICAgICAgc3RhdHVzID0gZWZpX2Nh bGxfdmlydChzZXRfdmFyaWFibGUsIChlZmlfY2hhcjE2X3QgKilhcmcxLA0KPiA+ICsgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChlZmlfZ3VpZF90ICopYXJnMiwgKih1MzIg KilhcmczLA0KPiA+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICoodW5z aWduZWQgbG9uZyAqKWFyZzQsICh2b2lkICopYXJnNSk7DQo+ID4gKyAgICAgICAgICAgICAgIGJy ZWFrOw0KPiA+ICsgICAgICAgY2FzZSBRVUVSWV9WQVJJQUJMRV9JTkZPOg0KPiA+ICsgICAgICAg Y2FzZSBRVUVSWV9WQVJJQUJMRV9JTkZPX05PTkJMT0NLSU5HOg0KPiA+ICsgICAgICAgICAgICAg ICBzdGF0dXMgPSBlZmlfY2FsbF92aXJ0KHF1ZXJ5X3ZhcmlhYmxlX2luZm8sICoodTMyICopYXJn MSwNCj4gPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAodTY0ICopYXJn MiwgKHU2NCAqKWFyZzMsICh1NjQgKilhcmc0KTsNCj4gPiArICAgICAgICAgICAgICAgYnJlYWs7 DQo+ID4gKyAgICAgICBjYXNlIEdFVF9ORVhUX0hJR0hfTU9OT19DT1VOVDoNCj4gPiArICAgICAg ICAgICAgICAgc3RhdHVzID0gZWZpX2NhbGxfdmlydChnZXRfbmV4dF9oaWdoX21vbm9fY291bnQs ICh1MzIgKilhcmcxKTsNCj4gPiArICAgICAgICAgICAgICAgYnJlYWs7DQo+ID4gKyAgICAgICBj YXNlIFJFU0VUX1NZU1RFTToNCj4gPiArICAgICAgICAgICAgICAgX19lZmlfY2FsbF92aXJ0KHJl c2V0X3N5c3RlbSwgKihpbnQgKilhcmcxLA0KPiA+ICsgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgKihlZmlfc3RhdHVzX3QgKilhcmcyLA0KPiA+ICsgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgKih1bnNpZ25lZCBsb25nICopYXJnMywNCj4gPiArICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIChlZmlfY2hhcjE2X3QgKilhcmc0KTsNCj4gPiArICAgICAgICAgICAgICAg YnJlYWs7DQo+ID4gKyAgICAgICBjYXNlIFVQREFURV9DQVBTVUxFOg0KPiA+ICsgICAgICAgICAg ICAgICBzdGF0dXMgPSBlZmlfY2FsbF92aXJ0KHVwZGF0ZV9jYXBzdWxlLA0KPiA+ICsgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChlZmlfY2Fwc3VsZV9oZWFkZXJfdCAqKilh cmcxLA0KPiA+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICoodW5zaWdu ZWQgbG9uZyAqKWFyZzIsDQo+ID4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgKih1bnNpZ25lZCBsb25nICopYXJnMyk7DQo+ID4gKyAgICAgICAgICAgICAgIGJyZWFrOw0K PiA+ICsgICAgICAgY2FzZSBRVUVSWV9DQVBTVUxFX0NBUFM6DQo+ID4gKyAgICAgICAgICAgICAg IHN0YXR1cyA9IGVmaV9jYWxsX3ZpcnQocXVlcnlfY2Fwc3VsZV9jYXBzLA0KPiA+ICsgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChlZmlfY2Fwc3VsZV9oZWFkZXJfdCAqKilh cmcxLA0KPiA+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICoodW5zaWdu ZWQgbG9uZyAqKWFyZzIsICh1NjQgKilhcmczLA0KPiA+ICsgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIChpbnQgKilhcmc0KTsNCj4gPiArICAgICAgICAgICAgICAgYnJlYWs7 DQo+ID4gKyAgICAgICBkZWZhdWx0Og0KPiA+ICsgICAgICAgICAgICAgICBwcl9lcnIoIk5vdCBh IHZhbGlkIEVGSV9SVF9TRVJWSUNFPyIpOw0KPiA+ICsgICAgICAgICAgICAgICBzdGF0dXMgPSBF RklfTk9UX0ZPVU5EOw0KPiA+ICsgICAgICAgICAgICAgICBicmVhazsNCj4gDQo+IEdpdmVuIHRo YXQgZWZpX2NhbGxfcnRzKCkgaXMgb25seSBjYWxsZWQgZnJvbSB0aGUgdmlydF9lZmlfKigpIGZ1 bnRpb25zIGluIHRoZSBzYW1lDQo+IGZpbGUgYW5kIHRoYXQgdGhlIElEcyBhcmUgaW50ZXJuYWwg YXMgd2VsbCwgc2hvdWxkbid0IHRoaXMgYmUgYSBoYXJkIGVycm9yPyBpLmUuIG5vDQo+IG9uZSBz aG91bGQgYmUgY2FsbGluZyB0aGlzIHdpdGggYW4gdW5rbm93biBJRCBhdCBhbGwuIEJ1dCBwbGVh c2Ugc2VlIGJlbG93Lg0KDQpUaGF0J3MgdHJ1ZSEgTm8gb25lIHNob3VsZCBiZSBjYWxsaW5nIHdp dGggdW5rbm93biBJRC4NCldpbGwgbWFrZSBpdCBhIEJVRygpLg0KDQo+IA0KPiA+ICsgICAgICAg fQ0KPiA+ICsgICAgICAgZWZpX3J0c193b3JrLT5zdGF0dXMgPSBzdGF0dXM7IH0NCj4gPiBkaWZm IC0tZ2l0IGEvaW5jbHVkZS9saW51eC9lZmkuaCBiL2luY2x1ZGUvbGludXgvZWZpLmggaW5kZXgN Cj4gPiBjNGVmYjNlZjBkZmEuLjRhYmI0MDFkNDBmNSAxMDA2NDQNCj4gPiAtLS0gYS9pbmNsdWRl L2xpbnV4L2VmaS5oDQo+ID4gKysrIGIvaW5jbHVkZS9saW51eC9lZmkuaA0KPiA+IEBAIC0xNjUy LDQgKzE2NTIsMjcgQEAgc3RydWN0IGxpbnV4X2VmaV90cG1fZXZlbnRsb2cgew0KPiA+DQo+ID4g IGV4dGVybiBpbnQgZWZpX3RwbV9ldmVudGxvZ19pbml0KHZvaWQpOw0KPiA+DQo+ID4gKy8qDQo+ ID4gKyAqIGVmaV9ydW50aW1lX3dvcms6ICAgRGV0YWlscyBvZiBFRkkgUnVudGltZSBTZXJ2aWNl IHdvcmsNCj4gPiArICogQGZ1bmM6ICAgICAgICAgICAgICBFRkkgUnVudGltZSBTZXJ2aWNlIGZ1 bmN0aW9uIGlkZW50aWZpZXINCj4gPiArICogQGFyZzwxLTU+OiAgICAgICAgICBFRkkgUnVudGlt ZSBTZXJ2aWNlIGZ1bmN0aW9uIGFyZ3VtZW50cw0KPiA+ICsgKiBAc3RhdHVzOiAgICAgICAgICAg IFN0YXR1cyBvZiBleGVjdXRpbmcgRUZJIFJ1bnRpbWUgU2VydmljZQ0KPiA+ICsgKi8NCj4gPiAr c3RydWN0IGVmaV9ydW50aW1lX3dvcmsgew0KPiA+ICsgICAgICAgdTggZnVuYzsNCj4gPiArICAg ICAgIHZvaWQgKmFyZzE7DQo+ID4gKyAgICAgICB2b2lkICphcmcyOw0KPiA+ICsgICAgICAgdm9p ZCAqYXJnMzsNCj4gPiArICAgICAgIHZvaWQgKmFyZzQ7DQo+ID4gKyAgICAgICB2b2lkICphcmc1 Ow0KPiA+ICsgICAgICAgZWZpX3N0YXR1c190IHN0YXR1czsNCj4gPiArICAgICAgIHN0cnVjdCB3 b3JrX3N0cnVjdCB3b3JrOw0KPiA+ICt9Ow0KPiA+ICsNCj4gPiArLyogV29ya3F1ZXVlIHRvIHF1 ZXVlIEVGSSBSdW50aW1lIFNlcnZpY2VzICovIGV4dGVybiBzdHJ1Y3QNCj4gPiArd29ya3F1ZXVl X3N0cnVjdCAqZWZpX3J0c193cTsNCj4gPiArDQo+ID4gKy8qIENhbGwgYmFjayBmdW5jdGlvbiB0 aGF0IGNhbGxzIEVGSSBSdW50aW1lIFNlcnZpY2VzICovIGV4dGVybiB2b2lkDQo+ID4gK2VmaV9j YWxsX3J0cyhzdHJ1Y3Qgd29ya19zdHJ1Y3QgKndvcmspOw0KPiANCj4gU28gdGhpcyBzZWVtcyB0 byBpbmRpY2F0ZSB0aGVyZSB3aWxsIGJlIGV4dGVybmFsIHVzZXJzIGNhbGxpbmcNCj4gZWZpX2Nh bGxfcnRzKCkgKGV2ZW4gb3V0c2lkZSBFRkkgaXRzZWxmLCBnaXZlbiBpdCBpcyBpbiBpbmNsdWRl L2xpbnV4KQ0KPiAtLSBidXQgdGhlbiwgaG93IHRoZXkgd2lsbCBrbm93IHdoYXQgdG8gcHV0IGlu ICJ1OCBmdW5jIj8NCj4gDQoNCk15IGJhZCEgZWZpX2NhbGxfcnRzKCkgc2hvdWxkIGJlIHN0YXRp Yy4gVGhlcmUgd2lsbCBub3QgYmUgYW55IGV4dGVybmFsIHVzZXJzLg0KDQo+IE5vdGUgdGhhdCBJ IGhhdmUgbm8gY2x1ZSBvbiBFRkksIHNvIEkgYW0ganVzdCBjb21tZW50aW5nIG9uIGhvdyB0aGUg cGF0Y2gNCj4gbG9va3MuIDopDQo+DQoNClRoYW5rcyBhIGxvdCEgZm9yIHRoZSByZXZpZXcuIFRo ZXkgYXJlIGhlbHBmdWwgOikNCldpbGwgbWFrZSBjaGFuZ2VzIGluIFYyLg0KDQpSZWdhcmRzLA0K U2FpDQo=