From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ville =?iso-8859-1?Q?Syrj=E4l=E4?= Subject: Re: [PATCH] drm/i915: Only force GGTT coherency w/a on required chipsets Date: Fri, 20 Jul 2018 13:09:43 +0300 Message-ID: <20180720100943.GK5565@intel.com> References: <20180720075931.14362-1-chris@chris-wilson.co.uk> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga01.intel.com (mga01.intel.com [192.55.52.88]) by gabe.freedesktop.org (Postfix) with ESMTPS id 0F1E36EF63 for ; Fri, 20 Jul 2018 10:10:04 +0000 (UTC) Content-Disposition: inline In-Reply-To: <20180720075931.14362-1-chris@chris-wilson.co.uk> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Chris Wilson Cc: intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org T24gRnJpLCBKdWwgMjAsIDIwMTggYXQgMDg6NTk6MzFBTSArMDEwMCwgQ2hyaXMgV2lsc29uIHdy b3RlOgo+IE5vdCBhbGwgY2hpcHNldHMgaGF2ZSBhbiBpbnRlcm5hbCBidWZmZXIgZGVsYXlpbmcg dGhlIHZpc2liaWxpdHkgb2YKPiB3cml0ZXMgdmlhIHRoZSBHR1RUIGJlaW5nIHZpc2libGUgYnkg b3RoZXIgcGh5c2ljYWwgcGF0aHMsIGJ1dCB3ZSB1c2UgYQo+IHZlcnkgaGVhdnkgd29ya2Fyb3Vu ZCBmb3IgYWxsLiBXZSBvbmx5IG5lZWQgdG8gYXBwbHkgdGhhdCB3b3JrYXJvdW5kcyB0bwo+IHRo ZSBjaGlwc2V0cyB3ZSBrbm93IHN1ZmZlciBmcm9tIHRoZSBkZWxheSBhbmQgdGhlIHJlc3VsdGlu ZyBjb2hlcmVuY3kKPiBpc3N1ZS4KPiAKPiBTaW1pbGFybHksIHRoZSBzYW1lIGluY29uc2lzdGVu dCBjb2hlcmVuY3kgZm91bHMgdXAgb3VyIEFCSSBwcm9taXNlIHRoYXQKPiBhIHdyaXRlIGludG8g YSBtbWFwX2d0dCBpcyBpbW1lZGlhdGVseSB2aXNpYmxlIHRvIG90aGVycy4gU2luY2UgdGhlIEhX Cj4gaGFzIG1hZGUgdGhhdCBhIGxpZSwgbGV0IHVzZXJzcGFjZSBrbm93IHdoZW4gdGhhdCBjb250 cmFjdCBpcyBicm9rZW4uCj4gKE5vdCB0aGF0IHVzZXJzcGFjZSB3b3VsZCB3YW50IHRvIHVzZSBt bWFwX2d0dCBvbiB0aG9zZSBjaGlwc2V0cyBmb3IKPiBvdGhlciBwZXJmb3JtYW5jZSByZWFzb25z Li4uKQo+IAo+IFRlc3RjYXNlOiBpZ3QvZHJ2X3NlbGZ0ZXN0L2xpdmVfY29oZXJlbmN5Cj4gVGVz dGNhc2U6IGlndC9nZW1fbW1hcF9ndHQvY29oZXJlbmN5Cj4gQnVnemlsbGE6IGh0dHBzOi8vYnVn cy5mcmVlZGVza3RvcC5vcmcvc2hvd19idWcuY2dpP2lkPTEwMDU4Nwo+IFNpZ25lZC1vZmYtYnk6 IENocmlzIFdpbHNvbiA8Y2hyaXNAY2hyaXMtd2lsc29uLmNvLnVrPgo+IENjOiBKb29uYXMgTGFo dGluZW4gPGpvb25hcy5sYWh0aW5lbkBsaW51eC5pbnRlbC5jb20+Cj4gLS0tCj4gIGRyaXZlcnMv Z3B1L2RybS9pOTE1L2k5MTVfZHJ2LmMgICAgICAgICAgfCAgMyArKysKPiAgZHJpdmVycy9ncHUv ZHJtL2k5MTUvaTkxNV9nZW0uYyAgICAgICAgICB8ICA1ICsrKysrCj4gIGRyaXZlcnMvZ3B1L2Ry bS9pOTE1L2k5MTVfcGNpLmMgICAgICAgICAgfCAxMCArKysrKysrKysrCj4gIGRyaXZlcnMvZ3B1 L2RybS9pOTE1L2ludGVsX2RldmljZV9pbmZvLmggfCAgMSArCj4gIGluY2x1ZGUvdWFwaS9kcm0v aTkxNV9kcm0uaCAgICAgICAgICAgICAgfCAyMiArKysrKysrKysrKysrKysrKysrKysrCj4gIDUg ZmlsZXMgY2hhbmdlZCwgNDEgaW5zZXJ0aW9ucygrKQo+IAo+IGRpZmYgLS1naXQgYS9kcml2ZXJz L2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYu Ywo+IGluZGV4IGY4Y2ZkMTZiZTUzNC4uMThhNDVlN2EzZDdjIDEwMDY0NAo+IC0tLSBhL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9p OTE1X2Rydi5jCj4gQEAgLTQ0MSw2ICs0NDEsOSBAQCBzdGF0aWMgaW50IGk5MTVfZ2V0cGFyYW1f aW9jdGwoc3RydWN0IGRybV9kZXZpY2UgKmRldiwgdm9pZCAqZGF0YSwKPiAgCWNhc2UgSTkxNV9Q QVJBTV9DU19USU1FU1RBTVBfRlJFUVVFTkNZOgo+ICAJCXZhbHVlID0gMTAwMCAqIElOVEVMX0lO Rk8oZGV2X3ByaXYpLT5jc190aW1lc3RhbXBfZnJlcXVlbmN5X2toejsKPiAgCQlicmVhazsKPiAr CWNhc2UgSTkxNV9QQVJBTV9NTUFQX0dUVF9DT0hFUkVOVDoKPiArCQl2YWx1ZSA9IElOVEVMX0lO Rk8oZGV2X3ByaXYpLT5oYXNfY29oZXJlbnRfZ2d0dDsKPiArCQlicmVhazsKPiAgCWRlZmF1bHQ6 Cj4gIAkJRFJNX0RFQlVHKCJVbmtub3duIHBhcmFtZXRlciAlZFxuIiwgcGFyYW0tPnBhcmFtKTsK PiAgCQlyZXR1cm4gLUVJTlZBTDsKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUv aTkxNV9nZW0uYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtLmMKPiBpbmRleCBmY2M3 M2E2YWI1MDMuLjhiNTJjYjc2OGE2NyAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkx NS9pOTE1X2dlbS5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW0uYwo+IEBA IC04MDIsNiArODAyLDExIEBAIHZvaWQgaTkxNV9nZW1fZmx1c2hfZ2d0dF93cml0ZXMoc3RydWN0 IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KQo+ICAJICogdGhhdCB3YXMhKS4KPiAgCSAqLwo+ ICAKPiArCXdtYigpOwo+ICsKPiArCWlmIChJTlRFTF9JTkZPKGRldl9wcml2KS0+aGFzX2NvaGVy ZW50X2dndHQpCj4gKwkJcmV0dXJuOwo+ICsKPiAgCWk5MTVfZ2VtX2NoaXBzZXRfZmx1c2goZGV2 X3ByaXYpOwo+ICAKPiAgCWludGVsX3J1bnRpbWVfcG1fZ2V0KGRldl9wcml2KTsKPiBkaWZmIC0t Z2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9wY2kuYyBiL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2k5MTVfcGNpLmMKPiBpbmRleCA2YTRkMTM4OGFkMmQuLmU0NDNmZTQ0ZGEzYSAxMDA2NDQK PiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3BjaS5jCj4gKysrIGIvZHJpdmVycy9n cHUvZHJtL2k5MTUvaTkxNV9wY2kuYwo+IEBAIC03NCw2ICs3NCw3IEBACgo/IFRoZXNlIG1hY3Jv cyBtYWtlIG1lIHNhZCBzb21ldGltZXMuIEluY3JlYXNlIHRoZSBjb250ZXh0IHNpemUgYSBiaXQK Zm9yIHRoaXMgb25lPwoKPiAgCS51bmZlbmNlZF9uZWVkc19hbGlnbm1lbnQgPSAxLCBcCj4gIAku cmluZ19tYXNrID0gUkVOREVSX1JJTkcsIFwKPiAgCS5oYXNfc25vb3AgPSB0cnVlLCBcCj4gKwku aGFzX2NvaGVyZW50X2dndHQgPSBmYWxzZSwgXAo+ICAJR0VOX0RFRkFVTFRfUElQRU9GRlNFVFMs IFwKPiAgCUdFTl9ERUZBVUxUX1BBR0VfU0laRVMsIFwKPiAgCUNVUlNPUl9PRkZTRVRTCj4gQEAg LTExMCw2ICsxMTEsNyBAQCBzdGF0aWMgY29uc3Qgc3RydWN0IGludGVsX2RldmljZV9pbmZvIGlu dGVsX2k4NjVnX2luZm8gPSB7Cj4gIAkuaGFzX2dtY2hfZGlzcGxheSA9IDEsIFwKPiAgCS5yaW5n X21hc2sgPSBSRU5ERVJfUklORywgXAo+ICAJLmhhc19zbm9vcCA9IHRydWUsIFwKPiArCS5oYXNf Y29oZXJlbnRfZ2d0dCA9IHRydWUsIFwKPiAgCUdFTl9ERUZBVUxUX1BJUEVPRkZTRVRTLCBcCj4g IAlHRU5fREVGQVVMVF9QQUdFX1NJWkVTLCBcCj4gIAlDVVJTT1JfT0ZGU0VUUwo+IEBAIC0xMTcs NiArMTE5LDcgQEAgc3RhdGljIGNvbnN0IHN0cnVjdCBpbnRlbF9kZXZpY2VfaW5mbyBpbnRlbF9p ODY1Z19pbmZvID0gewo+ICBzdGF0aWMgY29uc3Qgc3RydWN0IGludGVsX2RldmljZV9pbmZvIGlu dGVsX2k5MTVnX2luZm8gPSB7Cj4gIAlHRU4zX0ZFQVRVUkVTLAo+ICAJUExBVEZPUk0oSU5URUxf STkxNUcpLAo+ICsJLmhhc19jb2hlcmVudF9nZ3R0ID0gZmFsc2UsCj4gIAkuY3Vyc29yX25lZWRz X3BoeXNpY2FsID0gMSwKPiAgCS5oYXNfb3ZlcmxheSA9IDEsIC5vdmVybGF5X25lZWRzX3BoeXNp Y2FsID0gMSwKPiAgCS5od3NfbmVlZHNfcGh5c2ljYWwgPSAxLAo+IEBAIC0xNzgsNiArMTgxLDcg QEAgc3RhdGljIGNvbnN0IHN0cnVjdCBpbnRlbF9kZXZpY2VfaW5mbyBpbnRlbF9waW5ldmlld19p bmZvID0gewo+ICAJLmhhc19nbWNoX2Rpc3BsYXkgPSAxLCBcCj4gIAkucmluZ19tYXNrID0gUkVO REVSX1JJTkcsIFwKPiAgCS5oYXNfc25vb3AgPSB0cnVlLCBcCj4gKwkuaGFzX2NvaGVyZW50X2dn dHQgPSB0cnVlLCBcCj4gIAlHRU5fREVGQVVMVF9QSVBFT0ZGU0VUUywgXAo+ICAJR0VOX0RFRkFV TFRfUEFHRV9TSVpFUywgXAo+ICAJQ1VSU09SX09GRlNFVFMKPiBAQCAtMjIwLDYgKzIyNCw3IEBA IHN0YXRpYyBjb25zdCBzdHJ1Y3QgaW50ZWxfZGV2aWNlX2luZm8gaW50ZWxfZ200NV9pbmZvID0g ewo+ICAJLmhhc19ob3RwbHVnID0gMSwgXAo+ICAJLnJpbmdfbWFzayA9IFJFTkRFUl9SSU5HIHwg QlNEX1JJTkcsIFwKPiAgCS5oYXNfc25vb3AgPSB0cnVlLCBcCj4gKwkuaGFzX2NvaGVyZW50X2dn dHQgPSB0cnVlLCBcCj4gIAkvKiBpbGsgZG9lcyBzdXBwb3J0IHJjNiwgYnV0IHdlIGRvIG5vdCBp bXBsZW1lbnQgW3Bvd2VyXSBjb250ZXh0cyAqLyBcCj4gIAkuaGFzX3JjNiA9IDAsIFwKPiAgCUdF Tl9ERUZBVUxUX1BJUEVPRkZTRVRTLCBcCj4gQEAgLTI0Myw2ICsyNDgsNyBAQCBzdGF0aWMgY29u c3Qgc3RydWN0IGludGVsX2RldmljZV9pbmZvIGludGVsX2lyb25sYWtlX21faW5mbyA9IHsKPiAg CS5oYXNfaG90cGx1ZyA9IDEsIFwKPiAgCS5oYXNfZmJjID0gMSwgXAo+ICAJLnJpbmdfbWFzayA9 IFJFTkRFUl9SSU5HIHwgQlNEX1JJTkcgfCBCTFRfUklORywgXAo+ICsJLmhhc19jb2hlcmVudF9n Z3R0ID0gdHJ1ZSwgXAo+ICAJLmhhc19sbGMgPSAxLCBcCj4gIAkuaGFzX3JjNiA9IDEsIFwKPiAg CS5oYXNfcmM2cCA9IDEsIFwKPiBAQCAtMjg3LDYgKzI5Myw3IEBAIHN0YXRpYyBjb25zdCBzdHJ1 Y3QgaW50ZWxfZGV2aWNlX2luZm8gaW50ZWxfc2FuZHlicmlkZ2VfbV9ndDJfaW5mbyA9IHsKPiAg CS5oYXNfaG90cGx1ZyA9IDEsIFwKPiAgCS5oYXNfZmJjID0gMSwgXAo+ICAJLnJpbmdfbWFzayA9 IFJFTkRFUl9SSU5HIHwgQlNEX1JJTkcgfCBCTFRfUklORywgXAo+ICsJLmhhc19jb2hlcmVudF9n Z3R0ID0gdHJ1ZSwgXAo+ICAJLmhhc19sbGMgPSAxLCBcCj4gIAkuaGFzX3JjNiA9IDEsIFwKPiAg CS5oYXNfcmM2cCA9IDEsIFwKPiBAQCAtMzQ3LDYgKzM1NCw3IEBAIHN0YXRpYyBjb25zdCBzdHJ1 Y3QgaW50ZWxfZGV2aWNlX2luZm8gaW50ZWxfdmFsbGV5dmlld19pbmZvID0gewo+ICAJLmhhc19h bGlhc2luZ19wcGd0dCA9IDEsCj4gIAkuaGFzX2Z1bGxfcHBndHQgPSAxLAo+ICAJLmhhc19zbm9v cCA9IHRydWUsCj4gKwkuaGFzX2NvaGVyZW50X2dndHQgPSBmYWxzZSwKPiAgCS5yaW5nX21hc2sg PSBSRU5ERVJfUklORyB8IEJTRF9SSU5HIHwgQkxUX1JJTkcsCj4gIAkuZGlzcGxheV9tbWlvX29m ZnNldCA9IFZMVl9ESVNQTEFZX0JBU0UsCj4gIAlHRU5fREVGQVVMVF9QQUdFX1NJWkVTLAo+IEBA IC00NDEsNiArNDQ5LDcgQEAgc3RhdGljIGNvbnN0IHN0cnVjdCBpbnRlbF9kZXZpY2VfaW5mbyBp bnRlbF9jaGVycnl2aWV3X2luZm8gPSB7Cj4gIAkuaGFzX2Z1bGxfcHBndHQgPSAxLAo+ICAJLmhh c19yZXNldF9lbmdpbmUgPSAxLAo+ICAJLmhhc19zbm9vcCA9IHRydWUsCj4gKwkuaGFzX2NvaGVy ZW50X2dndHQgPSBmYWxzZSwKPiAgCS5kaXNwbGF5X21taW9fb2Zmc2V0ID0gVkxWX0RJU1BMQVlf QkFTRSwKPiAgCUdFTl9ERUZBVUxUX1BBR0VfU0laRVMsCj4gIAlHRU5fQ0hWX1BJUEVPRkZTRVRT LAo+IEBAIC01MTcsNiArNTI2LDcgQEAgc3RhdGljIGNvbnN0IHN0cnVjdCBpbnRlbF9kZXZpY2Vf aW5mbyBpbnRlbF9za3lsYWtlX2d0NF9pbmZvID0gewo+ICAJLmhhc19mdWxsXzQ4Yml0X3BwZ3R0 ID0gMSwgXAo+ICAJLmhhc19yZXNldF9lbmdpbmUgPSAxLCBcCj4gIAkuaGFzX3Nub29wID0gdHJ1 ZSwgXAo+ICsJLmhhc19jb2hlcmVudF9nZ3R0ID0gZmFsc2UsIFwKPiAgCS5oYXNfaXBjID0gMSwg XAo+ICAJR0VOOV9ERUZBVUxUX1BBR0VfU0laRVMsIFwKPiAgCUdFTl9ERUZBVUxUX1BJUEVPRkZT RVRTLCBcCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RldmljZV9p bmZvLmggYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kZXZpY2VfaW5mby5oCj4gaW5kZXgg NjMzZjlmYmY3MmVhLi4wN2U4MzY0ZDFhOGMgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJt L2k5MTUvaW50ZWxfZGV2aWNlX2luZm8uaAo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2lu dGVsX2RldmljZV9pbmZvLmgKPiBAQCAtMTA2LDYgKzEwNiw3IEBAIGVudW0gaW50ZWxfcGxhdGZv cm0gewo+ICAJZnVuYyhoYXNfcmVzb3VyY2Vfc3RyZWFtZXIpOyBcCj4gIAlmdW5jKGhhc19ydW50 aW1lX3BtKTsgXAo+ICAJZnVuYyhoYXNfc25vb3ApOyBcCj4gKwlmdW5jKGhhc19jb2hlcmVudF9n Z3R0KTsgXAo+ICAJZnVuYyh1bmZlbmNlZF9uZWVkc19hbGlnbm1lbnQpOyBcCj4gIAlmdW5jKGN1 cnNvcl9uZWVkc19waHlzaWNhbCk7IFwKPiAgCWZ1bmMoaHdzX25lZWRzX3BoeXNpY2FsKTsgXAo+ IGRpZmYgLS1naXQgYS9pbmNsdWRlL3VhcGkvZHJtL2k5MTVfZHJtLmggYi9pbmNsdWRlL3VhcGkv ZHJtL2k5MTVfZHJtLmgKPiBpbmRleCA3ZjU2MzRjZThlODguLjhlZTgxZTZmMTUxYyAxMDA2NDQK PiAtLS0gYS9pbmNsdWRlL3VhcGkvZHJtL2k5MTVfZHJtLmgKPiArKysgYi9pbmNsdWRlL3VhcGkv ZHJtL2k5MTVfZHJtLmgKPiBAQCAtNTI5LDYgKzUyOSwyOCBAQCB0eXBlZGVmIHN0cnVjdCBkcm1f aTkxNV9pcnFfd2FpdCB7Cj4gICAqLwo+ICAjZGVmaW5lIEk5MTVfUEFSQU1fQ1NfVElNRVNUQU1Q X0ZSRVFVRU5DWSA1MQo+ICAKPiArLyoKPiArICogT25jZSB1cG9uIGEgdGltZSB3ZSBzdXBwb3Nl ZCB0aGF0IHdyaXRlcyB0aHJvdWdoIHRoZSBHR1RUIHdvdWxkIGJlCj4gKyAqIGltbWVkaWF0ZWx5 IGluIHBoeXNpY2FsIG1lbW9yeSAob25jZSBmbHVzaGVkIG91dCBvZiB0aGUgQ1BVIHBhdGgpLiBI b3dldmVyLAo+ICsgKiBvbiBhIGZldyBkaWZmZXJlbnQgcHJvY2Vzc29ycyBhbmQgY2hpcHNldHMs IHRoaXMgaXMgbm90IG5lY2Vzc2FyaWx5IHRoZSBjYXNlCj4gKyAqIGFzIHRoZSB3cml0ZXMgYXBw ZWFyIHRvIGJlIGJ1ZmZlcmVkIGludGVybmFsbHkuIFRodXMgYSByZWFkIG9mIHRoZSBiYWNraW5n Cj4gKyAqIHN0b3JhZ2UgKHBoeXNpY2FsIG1lbW9yeSkgdmlhIGEgZGlmZmVyZW50IHBhdGggKHdp dGggZGlmZmVyZW50IHBoeXNpY2FsIHRhZ3MKPiArICogdG8gdGhlIGluZGlyZWN0IHdyaXRlIHZp YSB0aGUgR0dUVCkgd2lsbCBzZWUgc3RhbGUgdmFsdWVzIGZyb20gYmVmb3JlCj4gKyAqIHRoZSBH R1RUIHdyaXRlLiBJbnNpZGUgdGhlIGtlcm5lbCwgd2UgY2FuIGZvciB0aGUgbW9zdCBwYXJ0IGtl ZXAgdHJhY2sgb2YKPiArICogdGhlIGRpZmZlcmVudCByZWFkL3dyaXRlIGRvbWFpbnMgaW4gdXNl IChlLmcuIHNldC1kb21haW4pLCBidXQgdGhlIGFzc3VtcHRpb24KPiArICogb2YgY29oZXJlbmN5 IGlzIGJha2VkIGludG8gdGhlIEFCSSwgaGVuY2UgcmVwb3J0aW5nIGl0cyB0cnVlIHN0YXRlIGlu IHRoaXMKPiArICogcGFyYW1ldGVyLgo+ICsgKgo+ICsgKiBJZiBzZXQgdG8gdHJ1ZSwgd3JpdGVz IHZpYSBtbWFwX2d0dCBhcmUgaW1tZWRpYXRlbHkgdmlzaWJsZSBmb2xsb3dpbmcgYW4KPiArICog bGZlbmNlIHRvIGZsdXNoIHRoZSBXQ0IuCj4gKyAqCj4gKyAqIElmIHNldCB0byBmYWxzZSwgd3Jp dGVzIHZpYSBtbWFwX2d0dCBhcmUgaW5kZXRlcm1pbmF0bmx5IGRlbGF5ZWQgaW4gYW4gaW4KPiAr ICogaW50ZXJuYWwgYnVmZmVyIGFuZCBhcmUgX25vdF8gaW1tZWRpYXRlbHkgdmlzaWJsZSB0byB0 aGlyZCBwYXJ0aWVzIGFjY2Vzc2luZwo+ICsgKiBkaXJlY3RseSB2aWEgbW1hcF9jcHUvbW1hcF93 Yy4gVXNlIG9mIG1tYXBfZ3R0IGFzIHBhcnQgb2YgYW4gSVBDCj4gKyAqIGNvbW11bmljYXRpb25z IGNoYW5uZWwgd2hlbiBzZXQgdG8gZmFsc2UgaXMgc3Ryb25nbHkgZGlzYWR2aXNlZC4KPiArICov Cj4gKyNkZWZpbmUgSTkxNV9QQVJBTV9NTUFQX0dUVF9DT0hFUkVOVAk1Mgo+ICsKPiAgdHlwZWRl ZiBzdHJ1Y3QgZHJtX2k5MTVfZ2V0cGFyYW0gewo+ICAJX19zMzIgcGFyYW07Cj4gIAkvKgo+IC0t IAo+IDIuMTguMAo+IAo+IF9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fCj4gSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdAo+IEludGVsLWdmeEBsaXN0cy5mcmVlZGVz a3RvcC5vcmcKPiBodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZv L2ludGVsLWdmeAoKLS0gClZpbGxlIFN5cmrDpGzDpApJbnRlbApfX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVs LWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcv bWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK