From mboxrd@z Thu Jan 1 00:00:00 1970 From: Tvrtko Ursulin Subject: Re: [PATCH 1/5] drm/i915: Expose the busyspin durations for i915_wait_request Date: Thu, 2 Aug 2018 15:15:35 +0100 Message-ID: <689e8573-ffd4-ae2a-89cd-12bcb946b56e@linux.intel.com> References: <20180728164623.10613-1-chris@chris-wilson.co.uk> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8"; Format="flowed" Content-Transfer-Encoding: base64 Return-path: Received: from mga18.intel.com (mga18.intel.com [134.134.136.126]) by gabe.freedesktop.org (Postfix) with ESMTPS id 03E128985A for ; Thu, 2 Aug 2018 14:15:37 +0000 (UTC) In-Reply-To: <20180728164623.10613-1-chris@chris-wilson.co.uk> Content-Language: en-GB List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Chris Wilson , intel-gfx@lists.freedesktop.org Cc: Ben Widawsky , Eero Tamminen List-Id: intel-gfx@lists.freedesktop.org Ck9uIDI4LzA3LzIwMTggMTc6NDYsIENocmlzIFdpbHNvbiB3cm90ZToKPiBBbiBpbnRlcmVzdGlu ZyBkaXNjdXNzaW9uIHJlZ2FyZGluZyAiaHlicmlkIGludGVycnVwdCBwb2xsaW5nIiBmb3IgTlZN ZQo+IGNhbWUgdG8gdGhlIGNvbmNsdXNpb24gdGhhdCB0aGUgaWRlYWwgYnVzeXNwaW4gYmVmb3Jl IHNsZWVwaW5nIHdhcyBoYWxmCj4gb2YgdGhlIGV4cGVjdGVkIHJlcXVlc3QgbGF0ZW5jeSAoYW5k IGJldHRlciBpZiBpdCB3YXMgYWxyZWFkeSBoYWxmd2F5Cj4gdGhyb3VnaCB0aGF0IHJlcXVlc3Qp LiBUaGlzIHN1Z2dlc3RlZCB0aGF0IHdlIHRvbyBzaG91bGQgbG9vayBhZ2FpbiBhdAo+IG91ciB0 cmFkZW9mZiBiZXR3ZWVuIHNwaW5uaW5nIGFuZCB3YWl0aW5nLiBDdXJyZW50bHksIG91ciBzcGlu IHNpbXBseQo+IHRyaWVzIHRvIGhpZGUgdGhlIGNvc3Qgb2YgZW5hYmxpbmcgdGhlIGludGVycnVw dCwgd2hpY2ggaXMgZ29vZCB0byBhdm9pZAo+IHBlbmFsaXNpbmcgbm9wIHJlcXVlc3RzIChpLmUu IHRlc3QgdGhyb3VnaHB1dCkgYW5kIG5vdCBtdWNoIGVsc2UuCj4gU3R1ZHlpbmcgcmVhbCB3b3Js ZCB3b3JrbG9hZHMgc3VnZ2VzdHMgdGhhdCBhIHNwaW4gb2YgdXB0byA1MDB1cyBjYW4KPiBkcmFt YXRpY2FsbHkgYm9vc3QgcGVyZm9ybWFuY2UsIGJ1dCB0aGUgc3VnZ2VzdGlvbiBpcyB0aGF0IHRo aXMgaXMgbm90Cj4gZnJvbSBhdm9pZGluZyBpbnRlcnJ1cHQgbGF0ZW5jeSBwZXItc2UsIGJ1dCBm cm9tIHNlY29uZGFyeSBlZmZlY3RzIG9mCj4gc2xlZXBpbmcgc3VjaCBhcyBhbGxvd2luZyB0aGUg Q1BVIHJlZHVjZSBjc3RhdGUgYW5kIGNvbnRleHQgc3dpdGNoIGF3YXkuCj4gCj4gSW4gYSB0cnVs eSBoeWJyaWQgaW50ZXJydXB0IHBvbGxpbmcgc2NoZW1lLCB3ZSB3b3VsZCBhaW0gdG8gc2xlZXAg dW50aWwKPiBqdXN0IGJlZm9yZSB0aGUgcmVxdWVzdCBjb21wbGV0ZWQgYW5kIHRoZW4gd2FrZSB1 cCBpbiBhZHZhbmNlIG9mIHRoZQo+IGludGVycnVwdCBhbmQgZG8gYSBxdWljayBwb2xsIHRvIGhh bmRsZSBjb21wbGV0aW9uLiBUaGlzIGlzIHRyaWNreSBmb3IKPiBvdXJzZWx2ZXMgYXQgdGhlIG1v bWVudCBhcyB3ZSBhcmUgbm90IHJlY29yZGluZyByZXF1ZXN0IHRpbWVzLCBhbmQgc2luY2UKPiB3 ZSBhbGxvdyBwcmVlbXB0aW9uLCBvdXIgcmVxdWVzdHMgYXJlIG5vdCBvbiBhcyBhIG5pY2VseSBv cmRlcmVkCj4gdGltZWxpbmUgYXMgSU8uIEhvd2V2ZXIsIHRoZSBpZGVhIGlzIGludGVyZXN0aW5n LCBmb3IgaXQgd2lsbCBjZXJ0YWlubHkKPiBoZWxwIHVzIGRlY2lkZSB3aGVuIGJ1c3lzcGlubmlu ZyBpcyB3b3J0aHdoaWxlLgo+IAo+IHYyOiBFeHBvc2UgdGhlIHNwaW4gc2V0dGluZyB2aWEgS2Nv bmZpZyBvcHRpb25zIGZvciBlYXNpZXIgYWRqdXN0bWVudAo+IGFuZCB0ZXN0aW5nLgo+IHYzOiBE b24ndCBnZXQgY2F1Z2h0IHNuZWFraW5nIGluIGEgY2hhbmdlIHRvIHRoZSBidXN5c3BpbiBwYXJh bWV0ZXJzLgo+IHY0OiBFeHBsYWluIG1vcmUgYWJvdXQgdGhlICJoeWJyaWQgaW50ZXJydXB0IHBv bGxpbmciIHNjaGVtZSB0aGF0IHdlCj4gd2FudCB0byBtaWdyYXRlIHRvd2FyZHMuCj4gCj4gU3Vn Z2VzdGVkLWJ5OiBTYWdhciBLYW1ibGUgPHNhZ2FyLmEua2FtYmxlQGludGVsLmNvbT4KPiBSZWZl cmVuY2VzOiBodHRwOi8vZXZlbnRzLmxpbnV4Zm91bmRhdGlvbi5vcmcvc2l0ZXMvZXZlbnRzL2Zp bGVzL3NsaWRlcy9sZW1vYWwtbnZtZS1wb2xsaW5nLXZhdWx0LTIwMTctZmluYWxfMC5wZGYKPiBT aWduZWQtb2ZmLWJ5OiBDaHJpcyBXaWxzb24gPGNocmlzQGNocmlzLXdpbHNvbi5jby51az4KPiBD YzogU2FnYXIgS2FtYmxlIDxzYWdhci5hLmthbWJsZUBpbnRlbC5jb20+Cj4gQ2M6IEVlcm8gVGFt bWluZW4gPGVlcm8udC50YW1taW5lbkBpbnRlbC5jb20+Cj4gQ2M6IFR2cnRrbyBVcnN1bGluIDx0 dnJ0a28udXJzdWxpbkBpbnRlbC5jb20+Cj4gQ2M6IEJlbiBXaWRhd3NreSA8YmVuQGJ3aWRhd3Nr Lm5ldD4KPiBDYzogSm9vbmFzIExhaHRpbmVuIDxqb29uYXMubGFodGluZW5AbGludXguaW50ZWwu Y29tPgo+IENjOiBNaWNoYcWCIFdpbmlhcnNraSA8bWljaGFsLndpbmlhcnNraUBpbnRlbC5jb20+ Cj4gUmV2aWV3ZWQtYnk6IFNhZ2FyIEthbWJsZSA8c2FnYXIuYS5rYW1ibGVAaW50ZWwuY29tPgo+ IC0tLQo+ICAgZHJpdmVycy9ncHUvZHJtL2k5MTUvS2NvbmZpZyAgICAgICAgIHwgIDYgKysrKysK PiAgIGRyaXZlcnMvZ3B1L2RybS9pOTE1L0tjb25maWcucHJvZmlsZSB8IDI2ICsrKysrKysrKysr KysrKysrKysKPiAgIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfcmVxdWVzdC5jICB8IDM5ICsr KysrKysrKysrKysrKysrKysrKysrKystLS0KPiAgIDMgZmlsZXMgY2hhbmdlZCwgNjcgaW5zZXJ0 aW9ucygrKSwgNCBkZWxldGlvbnMoLSkKPiAgIGNyZWF0ZSBtb2RlIDEwMDY0NCBkcml2ZXJzL2dw dS9kcm0vaTkxNS9LY29uZmlnLnByb2ZpbGUKPiAKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUv ZHJtL2k5MTUvS2NvbmZpZyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L0tjb25maWcKPiBpbmRleCA1 YzYwN2YyYzcwN2IuLjM4NzYxM2YyOWNiMCAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0v aTkxNS9LY29uZmlnCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvS2NvbmZpZwo+IEBAIC0x MzIsMyArMTMyLDkgQEAgZGVwZW5kcyBvbiBEUk1fSTkxNQo+ICAgZGVwZW5kcyBvbiBFWFBFUlQK PiAgIHNvdXJjZSBkcml2ZXJzL2dwdS9kcm0vaTkxNS9LY29uZmlnLmRlYnVnCj4gICBlbmRtZW51 Cj4gKwo+ICttZW51ICJkcm0vaTkxNSBQcm9maWxlIEd1aWRlZCBPcHRpbWlzYXRpb24iCgpPciBz b21ldGhpbmcgbGlrZSBhIG1vcmUgZ2VuZXJpYyBkcm0vaTkxNSBNYW51YWwgVHVuaW5nIE9wdGlv bnMgc28gaXQgCnNvdW5kcyBsZXNzIGxpa2UgYW4gYXV0b21hdGVkIHRoaW5nIHdoZXJlIHlvdSBj YW4gZmVlZCB0aGUgcmVzdWx0cyBvZiAKc29tZXRoaW5nIHN0cmFpZ2h0IGluPwoKPiArCXZpc2li bGUgaWYgRVhQRVJUCj4gKwlkZXBlbmRzIG9uIERSTV9JOTE1Cj4gKwlzb3VyY2UgZHJpdmVycy9n cHUvZHJtL2k5MTUvS2NvbmZpZy5wcm9maWxlCj4gK2VuZG1lbnUKPiBkaWZmIC0tZ2l0IGEvZHJp dmVycy9ncHUvZHJtL2k5MTUvS2NvbmZpZy5wcm9maWxlIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUv S2NvbmZpZy5wcm9maWxlCj4gbmV3IGZpbGUgbW9kZSAxMDA2NDQKPiBpbmRleCAwMDAwMDAwMDAw MDAuLjhhMjMwZWViOThkZgo+IC0tLSAvZGV2L251bGwKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0v aTkxNS9LY29uZmlnLnByb2ZpbGUKPiBAQCAtMCwwICsxLDI2IEBACj4gK2NvbmZpZyBEUk1fSTkx NV9TUElOX1JFUVVFU1RfSVJRCj4gKwlpbnQKPiArCWRlZmF1bHQgNSAjIG1pY3Jvc2Vjb25kcwo+ ICsJaGVscAo+ICsJICBCZWZvcmUgc2xlZXBpbmcgd2FpdGluZyBmb3IgYSByZXF1ZXN0IChHUFUg b3BlcmF0aW9uKSB0byBjb21wbGV0ZSwKPiArCSAgd2UgbWF5IHNwZW5kIHNvbWUgdGltZSBwb2xs aW5nIGZvciBpdHMgY29tcGxldGlvbi4gQXMgdGhlIElSUSBtYXkKPiArCSAgdGFrZSBhIG5vbi1u ZWdsaWdpYmxlIHRpbWUgdG8gc2V0dXAsIHdlIGRvIGEgc2hvcnQgc3BpbiBmaXJzdCB0bwo+ICsJ ICBjaGVjayBpZiB0aGUgcmVxdWVzdCB3aWxsIGNvbXBsZXRlIGluIHRoZSB0aW1lIGl0IHdvdWxk IGhhdmUgdGFrZW4KPiArCSAgdXMgdG8gZW5hYmxlIHRoZSBpbnRlcnJ1cHQuCj4gKwo+ICsJICBN YXkgYmUgMCB0byBkaXNhYmxlIHRoZSBpbml0aWFsIHNwaW4uIEluIHByYWN0aWNlLCB3ZSBlc3Rp bWF0ZQo+ICsJICB0aGUgY29zdCBvZiBlbmFibGluZyB0aGUgaW50ZXJydXB0IChpZiBjdXJyZW50 bHkgZGlzYWJsZWQpIHRvIGJlCj4gKwkgIGEgZmV3IG1pY3Jvc2Vjb25kcy4KPiArCj4gK2NvbmZp ZyBEUk1fSTkxNV9TUElOX1JFUVVFU1RfQ1MKPiArCWludAo+ICsJZGVmYXVsdCAyICMgbWljcm9z ZWNvbmRzCj4gKwloZWxwCj4gKwkgIEFmdGVyIHNsZWVwaW5nIGZvciBhIHJlcXVlc3QgKEdQVSBv cGVyYXRpb24pIHRvIGNvbXBsZXRlLCB3ZSB3aWxsCj4gKwkgIGJlIHdva2VuIHVwIG9uIHRoZSBj b21wbGV0aW9uIG9mIGV2ZXJ5IHJlcXVlc3QgcHJpb3IgdG8gdGhlIG9uZQo+ICsJICBiZWluZyB3 YWl0ZWQgb24uIEZvciB2ZXJ5IHNob3J0IHJlcXVlc3RzLCBnb2luZyBiYWNrIHRvIHNsZWVwIGFu ZAo+ICsJICBiZSB3b2tlbiB1cCBhZ2FpbiBtYXkgYWRkIGNvbnNpZGVyYWJseSB0byB0aGUgd2Fr ZXVwIGxhdGVuY3kuIFRvCj4gKwkgIGF2b2lkIGluY3VycmluZyBleHRyYSBsYXRlbmN5IGZyb20g dGhlIHNjaGVkdWxlciwgd2UgbWF5IGNob29zZSB0bwo+ICsJICBzcGluIHByaW9yIHRvIHNsZWVw aW5nIGFnYWluLgo+ICsKPiArCSAgTWF5IGJlIDAgdG8gZGlzYWJsZSBzcGlubmluZyBhZnRlciBi ZWluZyB3b2tlbi4KPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9yZXF1 ZXN0LmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3JlcXVlc3QuYwo+IGluZGV4IDVjMmM5 M2NiYWIxMi4uY2EyNWM1M2Y4ZGFhIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2k5MTVfcmVxdWVzdC5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9yZXF1ZXN0 LmMKPiBAQCAtMTMzNiw4ICsxMzM2LDMyIEBAIGxvbmcgaTkxNV9yZXF1ZXN0X3dhaXQoc3RydWN0 IGk5MTVfcmVxdWVzdCAqcnEsCj4gICAJR0VNX0JVR19PTighaW50ZWxfd2FpdF9oYXNfc2Vxbm8o JndhaXQpKTsKPiAgIAlHRU1fQlVHX09OKCFpOTE1X3N3X2ZlbmNlX3NpZ25hbGVkKCZycS0+c3Vi bWl0KSk7Cj4gICAKPiAtCS8qIE9wdGltaXN0aWMgc2hvcnQgc3BpbiBiZWZvcmUgdG91Y2hpbmcg SVJRcyAqLwo+IC0JaWYgKF9faTkxNV9zcGluX3JlcXVlc3QocnEsIHdhaXQuc2Vxbm8sIHN0YXRl LCA1KSkKPiArCS8qCj4gKwkgKiBPcHRpbWlzdGljIHNwaW4gYmVmb3JlIHRvdWNoaW5nIElSUXMu Cj4gKwkgKgo+ICsJICogV2UgbWF5IHVzZSBhIHJhdGhlciBsYXJnZSB2YWx1ZSBoZXJlIHRvIG9m ZnNldCB0aGUgcGVuYWx0eSBvZgo+ICsJICogc3dpdGNoaW5nIGF3YXkgZnJvbSB0aGUgYWN0aXZl IHRhc2suIEZyZXF1ZW50bHksIHRoZSBjbGllbnQgd2lsbAo+ICsJICogd2FpdCB1cG9uIGFuIG9s ZCBzd2FwYnVmZmVyIHRvIHRocm90dGxlIGl0c2VsZiB0byByZW1haW4gd2l0aGluIGEKPiArCSAq IGZyYW1lIG9mIHRoZSBncHUuIElmIHRoZSBjbGllbnQgaXMgcnVubmluZyBpbiBsb2Nrc3RlcCB3 aXRoIHRoZSBncHUsCj4gKwkgKiB0aGVuIGl0IHNob3VsZCBub3QgYmUgd2FpdGluZyBsb25nIGF0 IGFsbCwgYW5kIGEgc2xlZXAgbm93IHdpbGwgaW5jdXIKPiArCSAqIGV4dHJhIHNjaGVkdWxlciBs YXRlbmN5IGluIHByb2R1Y2luZyB0aGUgbmV4dCBmcmFtZS4gVG8gdHJ5IHRvCj4gKwkgKiBhdm9p ZCBhZGRpbmcgdGhlIGNvc3Qgb2YgZW5hYmxpbmcvZGlzYWJsaW5nIHRoZSBpbnRlcnJ1cHQgdG8g dGhlCj4gKwkgKiBzaG9ydCB3YWl0LCB3ZSBmaXJzdCBzcGluIHRvIHNlZSBpZiB0aGUgcmVxdWVz dCB3b3VsZCBoYXZlIGNvbXBsZXRlZAo+ICsJICogaW4gdGhlIHRpbWUgdGFrZW4gdG8gc2V0dXAg dGhlIGludGVycnVwdC4KPiArCSAqCj4gKwkgKiBXZSBuZWVkIHVwdG8gNXVzIHRvIGVuYWJsZSB0 aGUgaXJxLCBhbmQgdXB0byAyMHVzIHRvIGhpZGUgdGhlCj4gKwkgKiBzY2hlZHVsZXIgbGF0ZW5j eSBvZiBhIGNvbnRleHQgc3dpdGNoLCBpZ25vcmluZyB0aGUgc2Vjb25kYXJ5Cj4gKwkgKiBpbXBh Y3RzIGZyb20gYSBjb250ZXh0IHN3aXRjaCBzdWNoIGFzIGNhY2hlIGV2aWN0aW9uLgo+ICsJICoK PiArCSAqIFRoZSBzY2hlbWUgdXNlZCBmb3IgbG93LWxhdGVuY3kgSU8gaXMgY2FsbGVkICJoeWJy aWQgaW50ZXJydXB0Cj4gKwkgKiBwb2xsaW5nIi4gVGhlIHN1Z2dlc3Rpb24gdGhlcmUgaXMgdG8g c2xlZXAgdW50aWwganVzdCBiZWZvcmUgeW91Cj4gKwkgKiBleHBlY3QgdG8gYmUgd29rZW4gYnkg dGhlIGRldmljZSBpbnRlcnJ1cHQgYW5kIHRoZW4gcG9sbCBmb3IgaXRzCj4gKwkgKiBjb21wbGV0 aW9uLiBUaGF0IHJlcXVpcmVzIGhhdmluZyBhIGdvb2QgcHJlZGljdG9yIGZvciB0aGUgcmVxdWVz dAo+ICsJICogZHVyYXRpb24sIHdoaWNoIHdlIGN1cnJlbnRseSBsYWNrLgo+ICsJICovCj4gKwlp ZiAoQ09ORklHX0RSTV9JOTE1X1NQSU5fUkVRVUVTVF9JUlEgJiYKPiArCSAgICBfX2k5MTVfc3Bp bl9yZXF1ZXN0KHJxLCB3YWl0LnNlcW5vLCBzdGF0ZSwKPiArCQkJCUNPTkZJR19EUk1fSTkxNV9T UElOX1JFUVVFU1RfSVJRKSkKPiAgIAkJZ290byBjb21wbGV0ZTsKPiAgIAo+ICAgCXNldF9jdXJy ZW50X3N0YXRlKHN0YXRlKTsKPiBAQCAtMTM5Niw4ICsxNDIwLDE1IEBAIGxvbmcgaTkxNV9yZXF1 ZXN0X3dhaXQoc3RydWN0IGk5MTVfcmVxdWVzdCAqcnEsCj4gICAJCSAgICBfX2k5MTVfd2FpdF9y ZXF1ZXN0X2NoZWNrX2FuZF9yZXNldChycSkpCj4gICAJCQljb250aW51ZTsKPiAgIAo+IC0JCS8q IE9ubHkgc3BpbiBpZiB3ZSBrbm93IHRoZSBHUFUgaXMgcHJvY2Vzc2luZyB0aGlzIHJlcXVlc3Qg Ki8KPiAtCQlpZiAoX19pOTE1X3NwaW5fcmVxdWVzdChycSwgd2FpdC5zZXFubywgc3RhdGUsIDIp KQo+ICsJCS8qCj4gKwkJICogQSBxdWljayBzcGluIG5vdyB3ZSBhcmUgb24gdGhlIENQVSB0byBv ZmZzZXQgdGhlIGNvc3Qgb2YKPiArCQkgKiBjb250ZXh0IHN3aXRjaGluZyBhd2F5IChhbmQgc28g c3BpbiBmb3Igcm91Z2hseSB0aGUgc2FtZSBhcwo+ICsJCSAqIHRoZSBzY2hlZHVsZXIgbGF0ZW5j eSkuIFdlIG9ubHkgc3BpbiBpZiB3ZSBrbm93IHRoZSBHUFUgaXMKPiArCQkgKiBwcm9jZXNzaW5n IHRoaXMgcmVxdWVzdCwgYW5kIHNvIGxpa2VseSB0byBmaW5pc2ggc2hvcnRseS4KPiArCQkgKi8K PiArCQlpZiAoQ09ORklHX0RSTV9JOTE1X1NQSU5fUkVRVUVTVF9DUyAmJgo+ICsJCSAgICBfX2k5 MTVfc3Bpbl9yZXF1ZXN0KHJxLCB3YWl0LnNlcW5vLCBzdGF0ZSwKPiArCQkJCQlDT05GSUdfRFJN X0k5MTVfU1BJTl9SRVFVRVNUX0NTKSkKPiAgIAkJCWJyZWFrOwo+ICAgCj4gICAJCWlmICghaW50 ZWxfd2FpdF9jaGVja19yZXF1ZXN0KCZ3YWl0LCBycSkpIHsKPiAKClJldmlld2VkLWJ5OiBUdnJ0 a28gVXJzdWxpbiA8dHZydGtvLnVyc3VsaW5AaW50ZWwuY29tPgoKV2UgY291bGQgYWRkIFBNVSBt ZXRyaWNzIHRvIGNvdW50IGhpdC9taXNzZWQgYnVzeSBzcGlucyBzbyBwcm9maWxlIApndWlkZWQg Yml0IGJlY29tZXMgbW9yZSBkaXJlY3Q/CgpSZWdhcmRzLAoKVHZydGtvCl9fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkludGVsLWdmeCBtYWlsaW5nIGxpc3QK SW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9w Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAo=