From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Koenig, Christian" Subject: Re: [RFC PATCH] drm/ttm, drm/vmwgfx: Have TTM support AMD SEV encryption Date: Fri, 24 May 2019 08:37:49 +0000 Message-ID: References: <20190524081114.53661-1-thomas@shipmail.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from NAM03-CO1-obe.outbound.protection.outlook.com (mail-eopbgr790049.outbound.protection.outlook.com [40.107.79.49]) by gabe.freedesktop.org (Postfix) with ESMTPS id 0C76589FD3 for ; Fri, 24 May 2019 08:37:50 +0000 (UTC) In-Reply-To: <20190524081114.53661-1-thomas@shipmail.org> Content-Language: en-US Content-ID: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: =?utf-8?B?VGhvbWFzIEhlbGxzdHLDtm0gKFZNd2FyZSk=?= , "dri-devel@lists.freedesktop.org" Cc: Thomas Hellstrom List-Id: dri-devel@lists.freedesktop.org QW0gMjQuMDUuMTkgdW0gMTA6MTEgc2NocmllYiBUaG9tYXMgSGVsbHN0csO2bSAoVk13YXJlKToN Cj4gW0NBVVRJT046IEV4dGVybmFsIEVtYWlsXQ0KPg0KPiBGcm9tOiBUaG9tYXMgSGVsbHN0cm9t IDx0aGVsbHN0cm9tQHZtd2FyZS5jb20+DQo+DQo+IFdpdGggU0VWIGVuY3J5cHRpb24sIGFsbCBE TUEgbWVtb3J5IG11c3QgYmUgbWFya2VkIGRlY3J5cHRlZA0KPiAoQUtBICJzaGFyZWQiKSBmb3Ig ZGV2aWNlcyB0byBiZSBhYmxlIHRvIHJlYWQgaXQuIEluIHRoZSBmdXR1cmUgd2UgbWlnaHQNCj4g d2FudCB0byBiZSBhYmxlIHRvIHN3aXRjaCBub3JtYWwgKGVuY3J5cHRlZCkgbWVtb3J5IHRvIGRl Y3J5cHRlZCBpbiBleGFjdGx5DQo+IHRoZSBzYW1lIHdheSBhcyB3ZSBoYW5kbGUgY2FjaGluZyBz dGF0ZXMsIGFuZCB0aGF0IHdvdWxkIHJlcXVpcmUgYWRkaXRpb25hbA0KPiBtZW1vcnkgcG9vbHMu IEJ1dCBmb3Igbm93LCByZWx5IG9uIG1lbW9yeSBhbGxvY2F0ZWQgd2l0aA0KPiBkbWFfYWxsb2Nf Y29oZXJlbnQoKSB3aGljaCBpcyBhbHJlYWR5IGRlY3J5cHRlZCB3aXRoIFNFViBlbmFibGVkLiBT ZXQgdXANCj4gdGhlIHBhZ2UgcHJvdGVjdGlvbiBhY2NvcmRpbmdseS4gRHJpdmVycyBtdXN0IGRl dGVjdCBTRVYgZW5hYmxlZCBhbmQgc3dpdGNoDQo+IHRvIHRoZSBkbWEgcGFnZSBwb29sLg0KPg0K PiBUaGlzIHBhdGNoIGhhcyBub3QgeWV0IGJlZW4gdGVzdGVkLiBBcyBhIGZvbGxvdy11cCwgd2Ug bWlnaHQgd2FudCB0bw0KPiBjYWNoZSBkZWNyeXB0ZWQgcGFnZXMgaW4gdGhlIGRtYSBwYWdlIHBv b2wgcmVnYXJkbGVzcyBvZiB0aGVpciBjYWNoaW5nDQo+IHN0YXRlLg0KDQpUaGlzIHBhdGNoIGlz IHVubmVjZXNzYXJ5LCBTRVYgc3VwcG9ydCBhbHJlYWR5IHdvcmtzIGZpbmUgd2l0aCBhdCBsZWFz dCANCmFtZGdwdSBhbmQgSSB3b3VsZCBleHBlY3QgdGhhdCBpdCBhbHNvIHdvcmtzIHdpdGggb3Ro ZXIgZHJpdmVycyBhcyB3ZWxsLg0KDQpBbHNvIHNlZSB0aGlzIHBhdGNoOg0KDQpjb21taXQgNjRl MWY4MzBlYTViMzUxNmE0MjU2ZWQxYzUwNGEyNjVkN2YyYTY1Yw0KQXV0aG9yOiBDaHJpc3RpYW4g S8O2bmlnIDxjaHJpc3RpYW4ua29lbmlnQGFtZC5jb20+DQpEYXRlOsKgwqAgV2VkIE1hciAxMyAx MDoxMToxOSAyMDE5ICswMTAwDQoNCiDCoMKgwqAgZHJtOiBmYWxsYmFjayB0byBkbWFfYWxsb2Nf Y29oZXJlbnQgd2hlbiBtZW1vcnkgZW5jcnlwdGlvbiBpcyBhY3RpdmUNCg0KIMKgwqDCoCBXZSBj YW4ndCBqdXN0IG1hcCBhbnkgcmFuZG9tZSBwYWdlIHdlIGdldCB3aGVuIG1lbW9yeSBlbmNyeXB0 aW9uIGlzDQogwqDCoMKgIGFjdGl2ZS4NCg0KIMKgwqDCoCBTaWduZWQtb2ZmLWJ5OiBDaHJpc3Rp YW4gS8O2bmlnIDxjaHJpc3RpYW4ua29lbmlnQGFtZC5jb20+DQogwqDCoMKgIEFja2VkLWJ5OiBB bGV4IERldWNoZXIgPGFsZXhhbmRlci5kZXVjaGVyQGFtZC5jb20+DQogwqDCoMKgIExpbms6IGh0 dHBzOi8vcGF0Y2h3b3JrLmtlcm5lbC5vcmcvcGF0Y2gvMTA4NTA4MzMvDQoNClJlZ2FyZHMsDQpD aHJpc3RpYW4uDQoNCg0KPg0KPiBDYzogQ2hyaXN0aWFuIEvDtm5pZyA8Y2hyaXN0aWFuLmtvZW5p Z0BhbWQuY29tPg0KPiBTaWduZWQtb2ZmLWJ5OiBUaG9tYXMgSGVsbHN0cm9tIDx0aGVsbHN0cm9t QHZtd2FyZS5jb20+DQo+IC0tLQ0KPiAgIGRyaXZlcnMvZ3B1L2RybS90dG0vdHRtX2JvX3V0aWwu YyAgICAgICAgfCAxNyArKysrKysrKysrKysrLS0tLQ0KPiAgIGRyaXZlcnMvZ3B1L2RybS90dG0v dHRtX2JvX3ZtLmMgICAgICAgICAgfCAgNiArKysrLS0NCj4gICBkcml2ZXJzL2dwdS9kcm0vdHRt L3R0bV9wYWdlX2FsbG9jX2RtYS5jIHwgIDMgKysrDQo+ICAgZHJpdmVycy9ncHUvZHJtL3Ztd2dm eC92bXdnZnhfYmxpdC5jICAgICB8ICA2ICsrKystLQ0KPiAgIGluY2x1ZGUvZHJtL3R0bS90dG1f Ym9fZHJpdmVyLmggICAgICAgICAgfCAgOCArKysrKy0tLQ0KPiAgIGluY2x1ZGUvZHJtL3R0bS90 dG1fdHQuaCAgICAgICAgICAgICAgICAgfCAgMSArDQo+ICAgNiBmaWxlcyBjaGFuZ2VkLCAzMCBp bnNlcnRpb25zKCspLCAxMSBkZWxldGlvbnMoLSkNCj4NCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMv Z3B1L2RybS90dG0vdHRtX2JvX3V0aWwuYyBiL2RyaXZlcnMvZ3B1L2RybS90dG0vdHRtX2JvX3V0 aWwuYw0KPiBpbmRleCA4OTVkNzdkNzk5ZTQuLjFkNjY0M2JkMGIwMSAxMDA2NDQNCj4gLS0tIGEv ZHJpdmVycy9ncHUvZHJtL3R0bS90dG1fYm9fdXRpbC5jDQo+ICsrKyBiL2RyaXZlcnMvZ3B1L2Ry bS90dG0vdHRtX2JvX3V0aWwuYw0KPiBAQCAtNDE5LDExICs0MTksMTMgQEAgaW50IHR0bV9ib19t b3ZlX21lbWNweShzdHJ1Y3QgdHRtX2J1ZmZlcl9vYmplY3QgKmJvLA0KPiAgICAgICAgICAgICAg ICAgIHBhZ2UgPSBpICogZGlyICsgYWRkOw0KPiAgICAgICAgICAgICAgICAgIGlmIChvbGRfaW9t YXAgPT0gTlVMTCkgew0KPiAgICAgICAgICAgICAgICAgICAgICAgICAgcGdwcm90X3QgcHJvdCA9 IHR0bV9pb19wcm90KG9sZF9tZW0tPnBsYWNlbWVudCwNCj4gKyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR0bS0+cGFnZV9mbGFncywNCj4gICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQQUdFX0tFUk5F TCk7DQo+ICAgICAgICAgICAgICAgICAgICAgICAgICByZXQgPSB0dG1fY29weV90dG1faW9fcGFn ZSh0dG0sIG5ld19pb21hcCwgcGFnZSwNCj4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIHByb3QpOw0KPiAgICAgICAgICAgICAgICAgIH0gZWxzZSBp ZiAobmV3X2lvbWFwID09IE5VTEwpIHsNCj4gICAgICAgICAgICAgICAgICAgICAgICAgIHBncHJv dF90IHByb3QgPSB0dG1faW9fcHJvdChuZXdfbWVtLT5wbGFjZW1lbnQsDQo+ICsgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0dG0tPnBhZ2VfZmxhZ3Ms DQo+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg UEFHRV9LRVJORUwpOw0KPiAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0ID0gdHRtX2NvcHlf aW9fdHRtX3BhZ2UodHRtLCBvbGRfaW9tYXAsIHBhZ2UsDQo+ICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcm90KTsNCj4gQEAgLTUyNiwxMSArNTI4 LDExIEBAIHN0YXRpYyBpbnQgdHRtX2J1ZmZlcl9vYmplY3RfdHJhbnNmZXIoc3RydWN0IHR0bV9i dWZmZXJfb2JqZWN0ICpibywNCj4gICAgICAgICAgcmV0dXJuIDA7DQo+ICAgfQ0KPg0KPiAtcGdw cm90X3QgdHRtX2lvX3Byb3QodWludDMyX3QgY2FjaGluZ19mbGFncywgcGdwcm90X3QgdG1wKQ0K PiArcGdwcm90X3QgdHRtX2lvX3Byb3QodTMyIGNhY2hpbmdfZmxhZ3MsIHUzMiB0dF9wYWdlX2Zs YWdzLCBwZ3Byb3RfdCB0bXApDQo+ICAgew0KPiAgICAgICAgICAvKiBDYWNoZWQgbWFwcGluZ3Mg bmVlZCBubyBhZGp1c3RtZW50ICovDQo+ICAgICAgICAgIGlmIChjYWNoaW5nX2ZsYWdzICYgVFRN X1BMX0ZMQUdfQ0FDSEVEKQ0KPiAtICAgICAgICAgICAgICAgcmV0dXJuIHRtcDsNCj4gKyAgICAg ICAgICAgICAgIGdvdG8gY2hlY2tfZW5jcnlwdGlvbjsNCj4NCj4gICAjaWYgZGVmaW5lZChfX2kz ODZfXykgfHwgZGVmaW5lZChfX3g4Nl82NF9fKQ0KPiAgICAgICAgICBpZiAoY2FjaGluZ19mbGFn cyAmIFRUTV9QTF9GTEFHX1dDKQ0KPiBAQCAtNTQ4LDYgKzU1MCwxMSBAQCBwZ3Byb3RfdCB0dG1f aW9fcHJvdCh1aW50MzJfdCBjYWNoaW5nX2ZsYWdzLCBwZ3Byb3RfdCB0bXApDQo+ICAgI2lmIGRl ZmluZWQoX19zcGFyY19fKSB8fCBkZWZpbmVkKF9fbWlwc19fKQ0KPiAgICAgICAgICB0bXAgPSBw Z3Byb3Rfbm9uY2FjaGVkKHRtcCk7DQo+ICAgI2VuZGlmDQo+ICsNCj4gK2NoZWNrX2VuY3J5cHRp b246DQo+ICsgICAgICAgaWYgKHR0X3BhZ2VfZmxhZ3MgJiBUVE1fUEFHRV9GTEFHX0RFQ1JZUFRF RCkNCj4gKyAgICAgICAgICAgICAgIHRtcCA9IHBncHJvdF9kZWNyeXB0ZWQodG1wKTsNCj4gKw0K PiAgICAgICAgICByZXR1cm4gdG1wOw0KPiAgIH0NCj4gICBFWFBPUlRfU1lNQk9MKHR0bV9pb19w cm90KTsNCj4gQEAgLTU5NCw3ICs2MDEsOCBAQCBzdGF0aWMgaW50IHR0bV9ib19rbWFwX3R0bShz dHJ1Y3QgdHRtX2J1ZmZlcl9vYmplY3QgKmJvLA0KPiAgICAgICAgICBpZiAocmV0KQ0KPiAgICAg ICAgICAgICAgICAgIHJldHVybiByZXQ7DQo+DQo+IC0gICAgICAgaWYgKG51bV9wYWdlcyA9PSAx ICYmIChtZW0tPnBsYWNlbWVudCAmIFRUTV9QTF9GTEFHX0NBQ0hFRCkpIHsNCj4gKyAgICAgICBp ZiAobnVtX3BhZ2VzID09IDEgJiYgKG1lbS0+cGxhY2VtZW50ICYgVFRNX1BMX0ZMQUdfQ0FDSEVE KSAmJg0KPiArICAgICAgICAgICAhKHR0bS0+cGFnZV9mbGFncyAmIFRUTV9QQUdFX0ZMQUdfREVD UllQVEVEKSkgew0KPiAgICAgICAgICAgICAgICAgIC8qDQo+ICAgICAgICAgICAgICAgICAgICog V2UncmUgbWFwcGluZyBhIHNpbmdsZSBwYWdlLCBhbmQgdGhlIGRlc2lyZWQNCj4gICAgICAgICAg ICAgICAgICAgKiBwYWdlIHByb3RlY3Rpb24gaXMgY29uc2lzdGVudCB3aXRoIHRoZSBiby4NCj4g QEAgLTYwOCw3ICs2MTYsOCBAQCBzdGF0aWMgaW50IHR0bV9ib19rbWFwX3R0bShzdHJ1Y3QgdHRt X2J1ZmZlcl9vYmplY3QgKmJvLA0KPiAgICAgICAgICAgICAgICAgICAqIFdlIG5lZWQgdG8gdXNl IHZtYXAgdG8gZ2V0IHRoZSBkZXNpcmVkIHBhZ2UgcHJvdGVjdGlvbg0KPiAgICAgICAgICAgICAg ICAgICAqIG9yIHRvIG1ha2UgdGhlIGJ1ZmZlciBvYmplY3QgbG9vayBjb250aWd1b3VzLg0KPiAg ICAgICAgICAgICAgICAgICAqLw0KPiAtICAgICAgICAgICAgICAgcHJvdCA9IHR0bV9pb19wcm90 KG1lbS0+cGxhY2VtZW50LCBQQUdFX0tFUk5FTCk7DQo+ICsgICAgICAgICAgICAgICBwcm90ID0g dHRtX2lvX3Byb3QobWVtLT5wbGFjZW1lbnQsIHR0bS0+cGFnZV9mbGFncywNCj4gKyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBQQUdFX0tFUk5FTCk7DQo+ICAgICAgICAgICAgICAg ICAgbWFwLT5ib19rbWFwX3R5cGUgPSB0dG1fYm9fbWFwX3ZtYXA7DQo+ICAgICAgICAgICAgICAg ICAgbWFwLT52aXJ0dWFsID0gdm1hcCh0dG0tPnBhZ2VzICsgc3RhcnRfcGFnZSwgbnVtX3BhZ2Vz LA0KPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMCwgcHJvdCk7DQo+IGRp ZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vdHRtL3R0bV9ib192bS5jIGIvZHJpdmVycy9ncHUv ZHJtL3R0bS90dG1fYm9fdm0uYw0KPiBpbmRleCAyZDk4NjJmY2Y2ZmQuLmUxMjI0N2VkZDI0MyAx MDA2NDQNCj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL3R0bS90dG1fYm9fdm0uYw0KPiArKysgYi9k cml2ZXJzL2dwdS9kcm0vdHRtL3R0bV9ib192bS5jDQo+IEBAIC0yNDUsNyArMjQ1LDYgQEAgdm1f ZmF1bHRfdCB0dG1fYm9fdm1fZmF1bHRfcmVzZXJ2ZWQoc3RydWN0IHZtX2ZhdWx0ICp2bWYsDQo+ ICAgICAgICAgICAgICAgICAgZ290byBvdXRfaW9fdW5sb2NrOw0KPiAgICAgICAgICB9DQo+DQo+ IC0gICAgICAgY3ZtYS52bV9wYWdlX3Byb3QgPSB0dG1faW9fcHJvdChiby0+bWVtLnBsYWNlbWVu dCwgcHJvdCk7DQo+ICAgICAgICAgIGlmICghYm8tPm1lbS5idXMuaXNfaW9tZW0pIHsNCj4gICAg ICAgICAgICAgICAgICBzdHJ1Y3QgdHRtX29wZXJhdGlvbl9jdHggY3R4ID0gew0KPiAgICAgICAg ICAgICAgICAgICAgICAgICAgLmludGVycnVwdGlibGUgPSBmYWxzZSwNCj4gQEAgLTI1NSwxMyAr MjU0LDE2IEBAIHZtX2ZhdWx0X3QgdHRtX2JvX3ZtX2ZhdWx0X3Jlc2VydmVkKHN0cnVjdCB2bV9m YXVsdCAqdm1mLA0KPiAgICAgICAgICAgICAgICAgIH07DQo+DQo+ICAgICAgICAgICAgICAgICAg dHRtID0gYm8tPnR0bTsNCj4gKyAgICAgICAgICAgICAgIGN2bWEudm1fcGFnZV9wcm90ID0gdHRt X2lvX3Byb3QoYm8tPm1lbS5wbGFjZW1lbnQsDQo+ICsgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIHR0bS0+cGFnZV9mbGFncywgcHJvdCk7DQo+ICAgICAgICAg ICAgICAgICAgaWYgKHR0bV90dF9wb3B1bGF0ZShiby0+dHRtLCAmY3R4KSkgew0KPiAgICAgICAg ICAgICAgICAgICAgICAgICAgcmV0ID0gVk1fRkFVTFRfT09NOw0KPiAgICAgICAgICAgICAgICAg ICAgICAgICAgZ290byBvdXRfaW9fdW5sb2NrOw0KPiAgICAgICAgICAgICAgICAgIH0NCj4gICAg ICAgICAgfSBlbHNlIHsNCj4gICAgICAgICAgICAgICAgICAvKiBJb21lbSBzaG91bGQgbm90IGJl IG1hcmtlZCBlbmNyeXB0ZWQgKi8NCj4gLSAgICAgICAgICAgICAgIGN2bWEudm1fcGFnZV9wcm90 ID0gcGdwcm90X2RlY3J5cHRlZChjdm1hLnZtX3BhZ2VfcHJvdCk7DQo+ICsgICAgICAgICAgICAg ICBjdm1hLnZtX3BhZ2VfcHJvdCA9IHR0bV9pb19wcm90KGJvLT5tZW0ucGxhY2VtZW50LA0KPiAr ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBUVE1fUEFHRV9G TEFHX0RFQ1JZUFRFRCwgcHJvdCk7DQo+ICAgICAgICAgIH0NCj4NCj4gICAgICAgICAgLyoNCj4g ZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS90dG0vdHRtX3BhZ2VfYWxsb2NfZG1hLmMgYi9k cml2ZXJzL2dwdS9kcm0vdHRtL3R0bV9wYWdlX2FsbG9jX2RtYS5jDQo+IGluZGV4IDk4ZDEwMGZk MTU5OS4uMWE4YTA5YzA1ODA1IDEwMDY0NA0KPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vdHRtL3R0 bV9wYWdlX2FsbG9jX2RtYS5jDQo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS90dG0vdHRtX3BhZ2Vf YWxsb2NfZG1hLmMNCj4gQEAgLTk3OSw2ICs5NzksOSBAQCBpbnQgdHRtX2RtYV9wb3B1bGF0ZShz dHJ1Y3QgdHRtX2RtYV90dCAqdHRtX2RtYSwgc3RydWN0IGRldmljZSAqZGV2LA0KPiAgICAgICAg ICB9DQo+DQo+ICAgICAgICAgIHR0bS0+c3RhdGUgPSB0dF91bmJvdW5kOw0KPiArICAgICAgIGlm IChzZXZfYWN0aXZlKCkpDQo+ICsgICAgICAgICAgICAgICB0dG0tPnBhZ2VfZmxhZ3MgfD0gVFRN X1BBR0VfRkxBR19ERUNSWVBURUQ7DQo+ICsNCj4gICAgICAgICAgcmV0dXJuIDA7DQo+ICAgfQ0K PiAgIEVYUE9SVF9TWU1CT0xfR1BMKHR0bV9kbWFfcG9wdWxhdGUpOw0KPiBkaWZmIC0tZ2l0IGEv ZHJpdmVycy9ncHUvZHJtL3Ztd2dmeC92bXdnZnhfYmxpdC5jIGIvZHJpdmVycy9ncHUvZHJtL3Zt d2dmeC92bXdnZnhfYmxpdC5jDQo+IGluZGV4IGZjNjY3M2NkZTI4OS4uMTFjOGNkMjQ4NTMwIDEw MDY0NA0KPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vdm13Z2Z4L3Ztd2dmeF9ibGl0LmMNCj4gKysr IGIvZHJpdmVycy9ncHUvZHJtL3Ztd2dmeC92bXdnZnhfYmxpdC5jDQo+IEBAIC00ODMsOCArNDgz LDEwIEBAIGludCB2bXdfYm9fY3B1X2JsaXQoc3RydWN0IHR0bV9idWZmZXJfb2JqZWN0ICpkc3Qs DQo+ICAgICAgICAgIGQuc3JjX3BhZ2VzID0gc3JjLT50dG0tPnBhZ2VzOw0KPiAgICAgICAgICBk LmRzdF9udW1fcGFnZXMgPSBkc3QtPm51bV9wYWdlczsNCj4gICAgICAgICAgZC5zcmNfbnVtX3Bh Z2VzID0gc3JjLT5udW1fcGFnZXM7DQo+IC0gICAgICAgZC5kc3RfcHJvdCA9IHR0bV9pb19wcm90 KGRzdC0+bWVtLnBsYWNlbWVudCwgUEFHRV9LRVJORUwpOw0KPiAtICAgICAgIGQuc3JjX3Byb3Qg PSB0dG1faW9fcHJvdChzcmMtPm1lbS5wbGFjZW1lbnQsIFBBR0VfS0VSTkVMKTsNCj4gKyAgICAg ICBkLmRzdF9wcm90ID0gdHRtX2lvX3Byb3QoZHN0LT5tZW0ucGxhY2VtZW50LCBkc3QtPnR0bS0+ cGFnZV9mbGFncywNCj4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUEFHRV9LRVJO RUwpOw0KPiArICAgICAgIGQuc3JjX3Byb3QgPSB0dG1faW9fcHJvdChzcmMtPm1lbS5wbGFjZW1l bnQsIHNyYy0+dHRtLT5wYWdlX2ZsYWdzLA0KPiArICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBQQUdFX0tFUk5FTCk7DQo+ICAgICAgICAgIGQuZGlmZiA9IGRpZmY7DQo+DQo+ICAgICAg ICAgIGZvciAoaiA9IDA7IGogPCBoOyArK2opIHsNCj4gZGlmZiAtLWdpdCBhL2luY2x1ZGUvZHJt L3R0bS90dG1fYm9fZHJpdmVyLmggYi9pbmNsdWRlL2RybS90dG0vdHRtX2JvX2RyaXZlci5oDQo+ IGluZGV4IDUzZmU5NWJlNWIzMi4uMjYxY2M4OWMwMjRlIDEwMDY0NA0KPiAtLS0gYS9pbmNsdWRl L2RybS90dG0vdHRtX2JvX2RyaXZlci5oDQo+ICsrKyBiL2luY2x1ZGUvZHJtL3R0bS90dG1fYm9f ZHJpdmVyLmgNCj4gQEAgLTg4OSwxMyArODg5LDE1IEBAIGludCB0dG1fYm9fcGlwZWxpbmVfZ3V0 dGluZyhzdHJ1Y3QgdHRtX2J1ZmZlcl9vYmplY3QgKmJvKTsNCj4gICAvKioNCj4gICAgKiB0dG1f aW9fcHJvdA0KPiAgICAqDQo+IC0gKiBAY19zdGF0ZTogQ2FjaGluZyBzdGF0ZS4NCj4gKyAqIEBj YWNoaW5nX2ZsYWdzOiBUaGUgY2FjaGluZyBmbGFncyBvZiB0aGUgbWFwLg0KPiArICogQHR0X3Bh Z2VfZmxhZ3M6IFRoZSB0dF9wYWdlX2ZsYWdzIG9mIHRoZSBtYXAsIFRUTV9QQUdFX0ZMQUdfKg0K PiAgICAqIEB0bXA6IFBhZ2UgcHJvdGVjdGlvbiBmbGFnIGZvciBhIG5vcm1hbCwgY2FjaGVkIG1h cHBpbmcuDQo+ICAgICoNCj4gICAgKiBVdGlsaXR5IGZ1bmN0aW9uIHRoYXQgcmV0dXJucyB0aGUg cGdwcm90X3QgdGhhdCBzaG91bGQgYmUgdXNlZCBmb3INCj4gLSAqIHNldHRpbmcgdXAgYSBQVEUg d2l0aCB0aGUgY2FjaGluZyBtb2RlbCBpbmRpY2F0ZWQgYnkgQGNfc3RhdGUuDQo+ICsgKiBzZXR0 aW5nIHVwIGEgUFRFIHdpdGggdGhlIGNhY2hpbmcgbW9kZWwgaW5kaWNhdGVkIGJ5IEBjYWNoaW5n X2ZsYWdzLA0KPiArICogYW5kIGVuY3J5cHRpb24gc3RhdGUgaW5kaWNhdGVkIGJ5IEB0dF9wYWdl X2ZsYWdzLA0KPiAgICAqLw0KPiAtcGdwcm90X3QgdHRtX2lvX3Byb3QodWludDMyX3QgY2FjaGlu Z19mbGFncywgcGdwcm90X3QgdG1wKTsNCj4gK3BncHJvdF90IHR0bV9pb19wcm90KHUzMiBjYWNo aW5nX2ZsYWdzLCB1MzIgdHRfcGFnZV9mbGFncywgcGdwcm90X3QgdG1wKTsNCj4NCj4gICBleHRl cm4gY29uc3Qgc3RydWN0IHR0bV9tZW1fdHlwZV9tYW5hZ2VyX2Z1bmMgdHRtX2JvX21hbmFnZXJf ZnVuYzsNCj4NCj4gZGlmZiAtLWdpdCBhL2luY2x1ZGUvZHJtL3R0bS90dG1fdHQuaCBiL2luY2x1 ZGUvZHJtL3R0bS90dG1fdHQuaA0KPiBpbmRleCBjMGU5MjhhYmY1OTIuLjQ1Y2MyNjM1NTUxMyAx MDA2NDQNCj4gLS0tIGEvaW5jbHVkZS9kcm0vdHRtL3R0bV90dC5oDQo+ICsrKyBiL2luY2x1ZGUv ZHJtL3R0bS90dG1fdHQuaA0KPiBAQCAtNDEsNiArNDEsNyBAQCBzdHJ1Y3QgdHRtX29wZXJhdGlv bl9jdHg7DQo+ICAgI2RlZmluZSBUVE1fUEFHRV9GTEFHX0RNQTMyICAgICAgICAgICAoMSA8PCA3 KQ0KPiAgICNkZWZpbmUgVFRNX1BBR0VfRkxBR19TRyAgICAgICAgICAgICAgKDEgPDwgOCkNCj4g ICAjZGVmaW5lIFRUTV9QQUdFX0ZMQUdfTk9fUkVUUlkgICAgICAgKDEgPDwgOSkNCj4gKyNkZWZp bmUgVFRNX1BBR0VfRkxBR19ERUNSWVBURUQgICAgICAgKDEgPDwgMTApDQo+DQo+ICAgZW51bSB0 dG1fY2FjaGluZ19zdGF0ZSB7DQo+ICAgICAgICAgIHR0X3VuY2FjaGVkLA0KPiAtLQ0KPiAyLjIw LjENCj4NCg0KX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18K ZHJpLWRldmVsIG1haWxpbmcgbGlzdApkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0 dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVs