Received: by 2002:a05:6a10:22f:0:0:0:0 with SMTP id 15csp94995pxk; Wed, 2 Sep 2020 15:40:21 -0700 (PDT) X-Google-Smtp-Source: ABdhPJw4KoYiU2jJrYSatx8Cx6qNZbMOC9ai91twN5ZdvjwCW2GHctzOlYJbABdNcp2m0Scb8hTY X-Received: by 2002:a17:906:f157:: with SMTP id gw23mr315735ejb.325.1599086421405; Wed, 02 Sep 2020 15:40:21 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1599086421; cv=none; d=google.com; s=arc-20160816; b=YmbjN9QrKFV0UMkK3JGkxWl0jRs1BM4yH89v1da8pxxAEpEQ4KuaG3raYDkVoFMu9y Fjhl4zVt0gAvzONLTp7yt2m397/IAcxnqr7BAP2uM8QQ2zYalETutdDWgShN59h7iIL/ OTdB8sdQkxy+gQXdpF++WuRTRK1mvkOD6CanUsDMwxWFzfHcAeVOG+PAYzcigO6TlSg8 tK30R/W4NJ3ZKxEaT5oG4zJH7WCY0Lhke/jyQQS4aD6X4jUC6B/kdzc02MNXz5zfg8qz c1rwST2OQYA2meAGnSLOtjv9BnrAjPzMHw/UPDPcsuzTXqi32injorcIumNR53x/tsmW dvdw== 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 :content-language:accept-language:message-id:date:thread-index :thread-topic:subject:cc:to:from; bh=SdUJQYFiKm4V643DEZnEQPwAEDW9PaNZ57z7Z1aecKs=; b=Dml+z8krYVMDMvhx0xWyQTgoFdR+BRYD0cVwrwB8Ii8ketTjOTBE8jHOTtRW9HBiAC LEeOqLgy6QhF5Z2FWT9l8NosxetmWull6lrQ9WwJvEElffeZn52SMm1y17TjDCEpPwKT CAmmrETptBAd63AAahaXWtXEhecTxZdIvhmmuoxYb+auKuNi5wbLCx+Ap4B+aBp54oPb CayDZJNdT+uStiRhYKmyiEAVRgmoxXcL45zIHHdq7FZXHKtTG0+oO8GZFehznxm5HKNu Nx8mId1mPNxdqoduOI3B7YC0c6amya5KrRkzncgAFlFO75F6YoCFmECMfP7dQiRQqLxG HKxQ== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id h23si83360ejd.576.2020.09.02.15.39.55; Wed, 02 Sep 2020 15:40:21 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726377AbgIBWfj (ORCPT + 99 others); Wed, 2 Sep 2020 18:35:39 -0400 Received: from szxga03-in.huawei.com ([45.249.212.189]:3498 "EHLO huawei.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1726247AbgIBWfi (ORCPT ); Wed, 2 Sep 2020 18:35:38 -0400 Received: from dggeme708-chm.china.huawei.com (unknown [172.30.72.54]) by Forcepoint Email with ESMTP id 7941A6129E1DC693D606; Thu, 3 Sep 2020 06:35:35 +0800 (CST) Received: from dggeme755-chm.china.huawei.com (10.3.19.101) by dggeme708-chm.china.huawei.com (10.1.199.104) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1913.5; Thu, 3 Sep 2020 06:35:35 +0800 Received: from dggeme755-chm.china.huawei.com ([10.7.64.71]) by dggeme755-chm.china.huawei.com ([10.7.64.71]) with mapi id 15.01.1913.007; Thu, 3 Sep 2020 06:35:34 +0800 From: gengdongjiu To: Peter Zijlstra CC: "mingo@redhat.com" , "juri.lelli@redhat.com" , "vincent.guittot@linaro.org" , "dietmar.eggemann@arm.com" , "rostedt@goodmis.org" , "bsegall@google.com" , "mgorman@suse.de" , "thara.gopinath@linaro.org" , "pauld@redhat.com" , "vincent.donnefort@arm.com" , "rdunlap@infradead.org" , "linux-kernel@vger.kernel.org" Subject: =?gb2312?B?UkWjultQQVRDSF0gc2NoZWQ6IEFkZCB0cmFjZSBmb3IgdGFzayB3YWtlIHVw?= =?gb2312?Q?_latency_and_leave_running_time?= Thread-Topic: =?gb2312?B?UkWjultQQVRDSF0gc2NoZWQ6IEFkZCB0cmFjZSBmb3IgdGFzayB3YWtlIHVw?= =?gb2312?Q?_latency_and_leave_running_time?= Thread-Index: AdaBcBYASIvfNFONQ1KjaPlQxEC0PQ== Date: Wed, 2 Sep 2020 22:35:34 +0000 Message-ID: <6995260be2ca4fd18bc773fe9f50f420@huawei.com> Accept-Language: zh-CN, en-US Content-Language: zh-CN X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [10.45.217.238] Content-Type: text/plain; charset="gb2312" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-CFilter-Loop: Reflected Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org SGkgUGV0ZXKjrA0KICAgIFNvcnJ5IGZvciB0aGUgbGF0ZSByZXNwb25zZS4NCg0KPiANCj4gPiBk aWZmIC0tZ2l0IGEvaW5jbHVkZS9saW51eC9zY2hlZC5oIGIvaW5jbHVkZS9saW51eC9zY2hlZC5o IGluZGV4DQo+ID4gOTNlY2Q5MzBlZmQzLi5lZGI2MjJjNDBhOTAgMTAwNjQ0DQo+ID4gLS0tIGEv aW5jbHVkZS9saW51eC9zY2hlZC5oDQo+ID4gKysrIGIvaW5jbHVkZS9saW51eC9zY2hlZC5oDQo+ ID4gQEAgLTEzMjQsNiArMTMyNCwxMyBAQCBzdHJ1Y3QgdGFza19zdHJ1Y3Qgew0KPiA+ICAJLyog Q1BVLXNwZWNpZmljIHN0YXRlIG9mIHRoaXMgdGFzazogKi8NCj4gPiAgCXN0cnVjdCB0aHJlYWRf c3RydWN0CQl0aHJlYWQ7DQo+ID4NCj4gPiArCS8qIFRhc2sgd2FrZSB1cCB0aW1lIHN0YW1wICov DQo+ID4gKwl1NjQJCQkJdHNfd2FrZXVwOw0KPiA+ICsJLyogUHJldmlvdXMgdGFzayBzd2l0Y2gg b3V0IHRpbWUgc3RhbXAgKi8NCj4gPiArCXU2NAkJCQlwcmVfdHNfZW5kOw0KPiA+ICsJLyogTmV4 dCB0YXNrIHN3aXRjaCBpbiB0aW1lIHN0YW1wICovDQo+ID4gKwl1NjQJCQkJbmV4dF90c19zdGFy dDsNCj4gPiArCWJvb2wJCQkJd2FrZXVwX3N0YXRlOw0KPiA+ICAJLyoNCj4gPiAgCSAqIFdBUk5J Tkc6IG9uIHg4NiwgJ3RocmVhZF9zdHJ1Y3QnIGNvbnRhaW5zIGEgdmFyaWFibGUtc2l6ZWQNCj4g PiAgCSAqIHN0cnVjdHVyZS4gIEl0ICpNVVNUKiBiZSBhdCB0aGUgZW5kIG9mICd0YXNrX3N0cnVj dCcuDQo+IA0KPiBeXl4gZGlkIHlvdSByZWFkIHRoYXQgY29tbWVudD8NCiAgIFNvcnJ5IGZvciBt eSBjYXJlbGVzc25lc3MuDQoNCj4gDQo+ID4gZGlmZiAtLWdpdCBhL2luY2x1ZGUvdHJhY2UvZXZl bnRzL3NjaGVkLmgNCj4gPiBiL2luY2x1ZGUvdHJhY2UvZXZlbnRzL3NjaGVkLmggaW5kZXggZmVj MjViOWNmYmFmLi5lOTljNmQ1NzNhNDIgMTAwNjQ0DQo+ID4gLS0tIGEvaW5jbHVkZS90cmFjZS9l dmVudHMvc2NoZWQuaA0KPiA+ICsrKyBiL2luY2x1ZGUvdHJhY2UvZXZlbnRzL3NjaGVkLmgNCj4g PiBAQCAtMTgzLDYgKzE4Myw3MiBAQCBUUkFDRV9FVkVOVChzY2hlZF9zd2l0Y2gsDQo+ID4gIAkJ X19lbnRyeS0+bmV4dF9jb21tLCBfX2VudHJ5LT5uZXh0X3BpZCwgX19lbnRyeS0+bmV4dF9wcmlv KSAgKTsNCj4gPg0KPiA+ICtERUNMQVJFX0VWRU5UX0NMQVNTKHNjaGVkX2xhdGVuY3lfdGVtcGxh dGUsDQo+ID4gKw0KPiA+ICsJVFBfUFJPVE8oYm9vbCBwcmVlbXB0LA0KPiA+ICsJCSBzdHJ1Y3Qg dGFza19zdHJ1Y3QgKnByZXYsDQo+ID4gKwkJIHN0cnVjdCB0YXNrX3N0cnVjdCAqbmV4dCwNCj4g PiArCQkgdTY0IHRpbWUpLA0KPiA+ICsNCj4gPiArCVRQX0FSR1MocHJlZW1wdCwgcHJldiwgbmV4 dCwgdGltZSksDQo+ID4gKw0KPiA+ICsJVFBfU1RSVUNUX19lbnRyeSgNCj4gPiArCQlfX2FycmF5 KAljaGFyLAlwcmV2X2NvbW0sCVRBU0tfQ09NTV9MRU4JKQ0KPiA+ICsJCV9fZmllbGQoCXBpZF90 LAlwcmV2X3BpZAkJCSkNCj4gPiArCQlfX2ZpZWxkKAlpbnQsCXByZXZfcHJpbwkJCSkNCj4gPiAr CQlfX2ZpZWxkKAlsb25nLAlwcmV2X3N0YXRlCQkJKQ0KPiA+ICsJCV9fYXJyYXkoCWNoYXIsCW5l eHRfY29tbSwJVEFTS19DT01NX0xFTgkpDQo+ID4gKwkJX19maWVsZCgJcGlkX3QsCW5leHRfcGlk CQkJKQ0KPiA+ICsJCV9fZmllbGQoCWludCwJbmV4dF9wcmlvCQkJKQ0KPiA+ICsJCV9fZmllbGQo CXU2NCwJdGltZQkJCQkpDQo+ID4gKwkpLA0KPiA+ICsNCj4gPiArCVRQX2Zhc3RfYXNzaWduKA0K PiA+ICsJCW1lbWNweShfX2VudHJ5LT5uZXh0X2NvbW0sIG5leHQtPmNvbW0sIFRBU0tfQ09NTV9M RU4pOw0KPiA+ICsJCV9fZW50cnktPnByZXZfcGlkCT0gcHJldi0+cGlkOw0KPiA+ICsJCV9fZW50 cnktPnByZXZfcHJpbwk9IHByZXYtPnByaW87DQo+ID4gKwkJX19lbnRyeS0+cHJldl9zdGF0ZQk9 IF9fdHJhY2Vfc2NoZWRfc3dpdGNoX3N0YXRlKHByZWVtcHQsIHByZXYpOw0KPiA+ICsJCW1lbWNw eShfX2VudHJ5LT5wcmV2X2NvbW0sIHByZXYtPmNvbW0sIFRBU0tfQ09NTV9MRU4pOw0KPiA+ICsJ CV9fZW50cnktPm5leHRfcGlkCT0gbmV4dC0+cGlkOw0KPiA+ICsJCV9fZW50cnktPm5leHRfcHJp bwk9IG5leHQtPnByaW87DQo+ID4gKwkJX19lbnRyeS0+dGltZQkJPSB0aW1lOw0KPiA+ICsJCS8q IFhYWCBTQ0hFRF9ERUFETElORSAqLw0KPiA+ICsJKSwNCj4gPiArDQo+ID4gKwlUUF9wcmludGso InByZXZfY29tbT0lcyBwcmV2X3BpZD0lZCBwcmV2X3ByaW89JWQgcHJldl9zdGF0ZT0lcyVzID09 PiBuZXh0X2NvbW09JXMgbmV4dF9waWQ9JWQgbmV4dF9wcmlvPSVkIHBhc3NlZA0KPiB0aW1lPSVs bHUgKG5zKSIsDQo+ID4gKwkJX19lbnRyeS0+cHJldl9jb21tLCBfX2VudHJ5LT5wcmV2X3BpZCwg X19lbnRyeS0+cHJldl9wcmlvLA0KPiA+ICsNCj4gPiArCQkoX19lbnRyeS0+cHJldl9zdGF0ZSAm IChUQVNLX1JFUE9SVF9NQVggLSAxKSkgPw0KPiA+ICsJCSAgX19wcmludF9mbGFncyhfX2VudHJ5 LT5wcmV2X3N0YXRlICYgKFRBU0tfUkVQT1JUX01BWCAtIDEpLCAifCIsDQo+ID4gKwkJCQl7IFRB U0tfSU5URVJSVVBUSUJMRSwgIlMiIH0sDQo+ID4gKwkJCQl7IFRBU0tfVU5JTlRFUlJVUFRJQkxF LCAiRCIgfSwNCj4gPiArCQkJCXsgX19UQVNLX1NUT1BQRUQsICJUIiB9LA0KPiA+ICsJCQkJeyBf X1RBU0tfVFJBQ0VELCAidCIgfSwNCj4gPiArCQkJCXsgRVhJVF9ERUFELCAiWCIgfSwNCj4gPiAr CQkJCXsgRVhJVF9aT01CSUUsICJaIiB9LA0KPiA+ICsJCQkJeyBUQVNLX1BBUktFRCwgIlAiIH0s DQo+ID4gKwkJCQl7IFRBU0tfREVBRCwgIkkiIH0pIDoNCj4gPiArCQkgICJSIiwNCj4gPiArDQo+ ID4gKwkJX19lbnRyeS0+cHJldl9zdGF0ZSAmIFRBU0tfUkVQT1JUX01BWCA/ICIrIiA6ICIiLA0K PiA+ICsJCV9fZW50cnktPm5leHRfY29tbSwgX19lbnRyeS0+bmV4dF9waWQsIF9fZW50cnktPm5l eHRfcHJpbywNCj4gPiArCQlfX2VudHJ5LT50aW1lKQ0KPiA+ICspOw0KPiANCj4gTkFLLCB0aGF0 IHRyYWNlcG9pbnQgaXMgYWxyZWFkeSBicm9rZW4sIHdlIGRvbid0IHdhbnQgdG8gcHJvbGlmZXJh dGUgdGhlIGJyb2tlbi4NCiAgDQpTb3JyeSwgV2hhdCB0aGUgbWVhbmluZyB0aGF0IHRyYWNlcG9p bnQgaXMgYWxyZWFkeSBicm9rZW4/IA0KTWF5YmUgSSBuZWVkIHRvIGV4cGxhaW4gdGhlIHJlYXNv biB0aGF0IHdoeSBJIGFkZCB0d28gdHJhY2UgcG9pbnQuIA0Kd2hlbiB1c2luZyBwZXJmIHRvb2wg b3IgRnRyYWNlIHN5c2ZzIHRvIGNhcHR1cmUgdGhlIHRhc2sgd2FrZS11cCBsYXRlbmN5IGFuZCB0 aGUgdGFzayBsZWF2aW5nIHJ1bm5pbmcgcXVldWUgdGltZSwgdXN1YWxseSB0aGUgdHJhY2UgZGF0 YSBpcyB0b28gbGFyZ2UgYW5kIHRoZSBDUFUgdXRpbGl6YXRpb24gcmF0ZSBpcyB0b28gaGlnaCBp biB0aGUgcHJvY2VzcyBkdWUgdG8gYSBsb3Qgb2YgZGlzayB3cml0ZS4gU29tZXRpbWVzIGV2ZW4g dGhlIGRpc2sgaXMgZnVsbCwgdGhlIGlzc3VlIHN0aWxsIGRvZXMgbm90IHJlcHJvZHVjZWQgdGhh dCBhYm92ZSB0d28gdGltZSBleGNlZWQgYSBjZXJ0YWluIHRocmVzaG9sZC4gIFNvIEkgYWRkZWQg dHdvIHRyYWNlIHBvaW50cywgdXNpbmcgZmlsdGVyIHdlIGNhbiBvbmx5IHJlY29yZCB0aGUgYWJu b3JtYWwgdHJhY2UgdGhhdCBpbmNsdWRlcyB3YWtldXAgbGF0ZW5jeSBhbmQgbGVhdmluZyBydW5u aW5nIHRpbWUgbGFyZ2VyIHRoYW4gYW4gdGhyZXNob2xkLiANCk9yIGRvIHlvdSBoYXZlIGJldHRl ciBzb2x1dGlvbj8NCg0KPiANCj4gPiBkaWZmIC0tZ2l0IGEva2VybmVsL3NjaGVkL2NvcmUuYyBi L2tlcm5lbC9zY2hlZC9jb3JlLmMgaW5kZXgNCj4gPiA4NDcxYTBmN2ViMzIuLmI1YTE5MjhkYzk0 OCAxMDA2NDQNCj4gPiAtLS0gYS9rZXJuZWwvc2NoZWQvY29yZS5jDQo+ID4gKysrIGIva2VybmVs L3NjaGVkL2NvcmUuYw0KPiA+IEBAIC0yNDY0LDYgKzI0NjQsOCBAQCBzdGF0aWMgdm9pZCB0dHd1 X2RvX3dha2V1cChzdHJ1Y3QgcnEgKnJxLCBzdHJ1Y3QNCj4gPiB0YXNrX3N0cnVjdCAqcCwgaW50 IHdha2VfZmxhZ3MsICB7DQo+ID4gIAljaGVja19wcmVlbXB0X2N1cnIocnEsIHAsIHdha2VfZmxh Z3MpOw0KPiA+ICAJcC0+c3RhdGUgPSBUQVNLX1JVTk5JTkc7DQo+ID4gKwlwLT50c193YWtldXAg PSBsb2NhbF9jbG9jaygpOw0KPiA+ICsJcC0+d2FrZXVwX3N0YXRlID0gdHJ1ZTsNCj4gPiAgCXRy YWNlX3NjaGVkX3dha2V1cChwKTsNCj4gPg0KPiA+ICAjaWZkZWYgQ09ORklHX1NNUA0KPiANCj4g TkFLLCB1c2VybGVzcyBvdmVyaGVhZC4NCg0KIFdoZW4gc2NoZWQgc3dpdGNoLCB3ZSBkbyBub3Qg a25vdyB0aGUgbmV4dCB0YXNrIHByZXZpb3VzIHN0YXRlIGFuZCB3YWtldXAgdGltZXN0YW1wLCBz byBJIHJlY29yZCB0aGUgdGFzayBwcmV2aW91cyBzdGF0ZSBpZiBpdCBpcyB3YWtlbiBmcm9tIHNs ZWVwLg0KIEFuZCB0aGVuIGl0IGNhbiBjYWxjdWxhdGUgdGhlIHdha2V1cCBsYXRlbmN5IHdoZW4g dGFzayBzd2l0Y2guDQoNCg0KPiANCj4gPiBAQCAtMjg0Niw2ICsyODQ4LDggQEAgdHJ5X3RvX3dh a2VfdXAoc3RydWN0IHRhc2tfc3RydWN0ICpwLCB1bnNpZ25lZCBpbnQgc3RhdGUsIGludCB3YWtl X2ZsYWdzKQ0KPiA+ICAJCXN1Y2Nlc3MgPSAxOw0KPiA+ICAJCXRyYWNlX3NjaGVkX3dha2luZyhw KTsNCj4gPiAgCQlwLT5zdGF0ZSA9IFRBU0tfUlVOTklORzsNCj4gPiArCQlwLT50c193YWtldXAg PSBsb2NhbF9jbG9jaygpOw0KPiA+ICsJCXAtPndha2V1cF9zdGF0ZSA9IHRydWU7DQo+ID4gIAkJ dHJhY2Vfc2NoZWRfd2FrZXVwKHApOw0KPiA+ICAJCWdvdG8gb3V0Ow0KPiA+ICAJfQ0KPiANCj4g aWRlbQ0KPiANCj4gDQo+ID4gQEAgLTMzNTUsNiArMzM2Miw4IEBAIHZvaWQgd2FrZV91cF9uZXdf dGFzayhzdHJ1Y3QgdGFza19zdHJ1Y3QgKnApDQo+ID4gIAlwb3N0X2luaXRfZW50aXR5X3V0aWxf YXZnKHApOw0KPiA+DQo+ID4gIAlhY3RpdmF0ZV90YXNrKHJxLCBwLCBFTlFVRVVFX05PQ0xPQ0sp Ow0KPiA+ICsJcC0+dHNfd2FrZXVwID0gbG9jYWxfY2xvY2soKTsNCj4gPiArCXAtPndha2V1cF9z dGF0ZSA9IHRydWU7DQo+ID4gIAl0cmFjZV9zY2hlZF93YWtldXBfbmV3KHApOw0KPiA+ICAJY2hl Y2tfcHJlZW1wdF9jdXJyKHJxLCBwLCBXRl9GT1JLKTsNCj4gPiAgI2lmZGVmIENPTkZJR19TTVAN Cj4gDQo+IGlkZW0NCj4gDQo+ID4gQEAgLTQ1MjEsOCArNDUzMCwxOSBAQCBzdGF0aWMgdm9pZCBf X3NjaGVkIG5vdHJhY2UgX19zY2hlZHVsZShib29sDQo+ID4gcHJlZW1wdCkNCj4gPg0KPiA+ICAJ CXBzaV9zY2hlZF9zd2l0Y2gocHJldiwgbmV4dCwgIXRhc2tfb25fcnFfcXVldWVkKHByZXYpKTsN Cj4gPg0KPiA+ICsJCW5leHQtPm5leHRfdHNfc3RhcnQgPSBwcmV2LT5wcmVfdHNfZW5kID0gbG9j YWxfY2xvY2soKTsNCj4gPiArDQo+ID4gIAkJdHJhY2Vfc2NoZWRfc3dpdGNoKHByZWVtcHQsIHBy ZXYsIG5leHQpOw0KPiA+DQo+ID4gKwkJaWYgKG5leHQtPnRzX3dha2V1cCAmJiBuZXh0LT53YWtl dXBfc3RhdGUpIHsNCj4gPiArCQkJdHJhY2Vfc2NoZWRfd2FrZXVwX2xhdGVuY3kocHJlZW1wdCwg cHJldiwgbmV4dCwNCj4gPiArCQkJCW5leHQtPm5leHRfdHNfc3RhcnQgLSBuZXh0LT50c193YWtl dXApOw0KPiA+ICsJCQluZXh0LT53YWtldXBfc3RhdGUgPSBmYWxzZTsNCj4gPiArCQl9DQo+ID4g Kw0KPiA+ICsJCXRyYWNlX3NjaGVkX2xlYXZlX3J1bm5pbmdfdGltZShwcmVlbXB0LCBwcmV2LA0K PiA+ICsJCQluZXh0LCBuZXh0LT5uZXh0X3RzX3N0YXJ0IC0gbmV4dC0+cHJlX3RzX2VuZCk7DQo+ ID4gKw0KPiA+ICAJCS8qIEFsc28gdW5sb2NrcyB0aGUgcnE6ICovDQo+ID4gIAkJcnEgPSBjb250 ZXh0X3N3aXRjaChycSwgcHJldiwgbmV4dCwgJnJmKTsNCj4gPiAgCX0gZWxzZSB7DQo+IA0KPiBU aGlzIHJlYWxseSBpc24ndCBldmVyIGdvaW5nIHRvIGhhcHBlbi4NCg==