From mboxrd@z Thu Jan 1 00:00:00 1970 From: Daniel Vetter Subject: Re: [PATCH 16/16] drm: document drm_auth.c Date: Mon, 20 Jun 2016 23:17:37 +0200 Message-ID: <20160620211737.GO23520@phenom.ffwll.local> References: <1466148814-8194-1-git-send-email-daniel.vetter@ffwll.ch> <1466148814-8194-17-git-send-email-daniel.vetter@ffwll.ch> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-lb0-x241.google.com (mail-lb0-x241.google.com [IPv6:2a00:1450:4010:c04::241]) by gabe.freedesktop.org (Postfix) with ESMTPS id 3E9D76E611 for ; Mon, 20 Jun 2016 21:17:42 +0000 (UTC) Received: by mail-lb0-x241.google.com with SMTP id w10so246494lbo.1 for ; Mon, 20 Jun 2016 14:17:42 -0700 (PDT) Content-Disposition: inline In-Reply-To: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Emil Velikov Cc: Daniel Vetter , Intel Graphics Development , DRI Development , Daniel Vetter List-Id: intel-gfx@lists.freedesktop.org T24gU2F0LCBKdW4gMTgsIDIwMTYgYXQgMTI6NDY6MzhBTSArMDEwMCwgRW1pbCBWZWxpa292IHdy b3RlOgo+IE9uIDE3IEp1bmUgMjAxNiBhdCAwODozMywgRGFuaWVsIFZldHRlciA8ZGFuaWVsLnZl dHRlckBmZndsbC5jaD4gd3JvdGU6Cj4gPiBAQCAtNjQsMTYgKzczLDYgQEAgaW50IGRybV9nZXRt YWdpYyhzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCB2b2lkICpkYXRhLCBzdHJ1Y3QgZHJtX2ZpbGUg KmZpbGVfcHJpdikKPiA+ICAgICAgICAgcmV0dXJuIHJldCA8IDAgPyByZXQgOiAwOwo+ID4gIH0K PiA+Cj4gPiAtLyoqCj4gPiAtICogZHJtX2F1dGhtYWdpYyAtIEF1dGhlbnRpY2F0ZSBjbGllbnQg d2l0aCBhIG1hZ2ljCj4gPiAtICogQGRldjogRFJNIGRldmljZSB0byBvcGVyYXRlIG9uCj4gPiAt ICogQGRhdGE6IGlvY3RsIGRhdGEgY29udGFpbmluZyB0aGUgZHJtX2F1dGggb2JqZWN0Cj4gPiAt ICogQGZpbGVfcHJpdjogRFJNIGZpbGUgdGhhdCBwZXJmb3JtcyB0aGUgb3BlcmF0aW9uCj4gPiAt ICoKPiA+IC0gKiBUaGlzIGxvb2tzIHVwIGEgRFJNIGNsaWVudCBieSB0aGUgcGFzc2VkIG1hZ2lj IGFuZCBhdXRoZW50aWNhdGVzIGl0Lgo+ID4gLSAqCj4gPiAtICogUmV0dXJuczogMCBvbiBzdWNj ZXNzLCBuZWdhdGl2ZSBlcnJvciBjb2RlIG9uIGZhaWx1cmUuCj4gPiAtICovCj4gV2h5IGlzIHRo aXMgYW5kIGRybV9nZXRtYWdpYygpJ3MgZG9jdW1ldGF0aW9uIGdvaW5nIGF3YXkgPyBLZXJuZWwg ZG9jCj4gaXNuJ3QgcmVzdHJpY3RlZCB0byBFWFBPUlRFRF9TWU1CT0wocykgb25seSwgaXMgaXQg PwoKTm8sIGJ1dCBpbW8gdGhlIGRvY3VtZW50YXRpb24gZm9yIHRoZSBkcm0gY29yZSZoZWxwZXJz IHNob3VsZCBiZSBhaW1lZCBhdApkcml2ZXIgd3JpdGVycy4gQW5kIGRyaXZlciB3cml0ZXJzIGNh biBvbmx5IHVzZSBFWFBPUlRfU1lNQk9MIHN0dWZmIChvcgpmcm9tIGhlYWRlcnMpLCB3aGljaCBp cyB3aHkgSSB0aGluayBpdCdzIGdvb2QgdG8ga2ljayBvdXQgZXZlcnl0aGluZyBlbHNlCnRvIGF2 b2lkIHRvbyBtdWNoIGNsdXR0ZXIuIEl0J3MgYWxyZWFkeSBhIGRhdW50aW5nIHRoaW5nIHRvIGdl dCBzdGFydGVkCndpdGggYSBuZXcgZHJtIGRyaXZlci4KCk9mIGNvdXJzZSB3ZSBjYW4ga2VlcCB0 aGUgY29tbWVudHMgYXMgbm9ybWFsIGNvbW1lbnRzLCBidXQgZm9yIHRoZXNlIGhlcmUKSSBkaWRu J3Qgc2VlIHRoZSB2YWx1ZS4KCkFsc28gbm90ZSB0aGF0IHRoaXMgaXMganVzdCBmb3IgdGhlIGRy bSBjb3JlL2hlbHBlcnMuIEluIHRoZSBpOTE1IGRyaXZlcgpkb2N1bWVudGF0aW9uIHdlIGluc3Rl YWQgdHJ5IHRvIGRvY3VtZW50IG5vbi1zdGF0aWMgc3R1ZmYgKHNpbmNlIHRoYXQncwpleHBvc2Vk IHRvIG90aGVyIHBhcnRzKSwgYnV0IGp1c3QgYXMgYSByb3VnaCBndWlkZWxpbmUuIFNpbmNlIG9m dGVuIG91cgpzb3VyY2UgZmlsZSBzcGxpdCBkb2Vzbid0IG1ha2UgdGhhdCBtdWNoIHNlbnNlLCBv ciBpcyB0b28gbW9ub2xpdGhpYy4KCkluIGJvdGggY2FzZXMgdGhlIGdvYWwgaXMgdG8gZ2l2ZSBh IHVzZWZ1bCBndWlkZWxpbmUgdG8gdXNlcnMgb2YgYSBwaWVjZQpvZiBjb2RlIChjYWxsaW5nIGl0 IG9yIG90aGVyd2lzZSB1c2luZyksIG5vdCBkZXZlbG9wZXJzIGNoYW5naW5nIHRoZQppbXBsZW1l bnRhdGlvbiBkZXRhaWxzIHRoZW1zZWx2ZXMuCi1EYW5pZWwKCj4gCj4gPiAgaW50IGRybV9hdXRo bWFnaWMoc3RydWN0IGRybV9kZXZpY2UgKmRldiwgdm9pZCAqZGF0YSwKPiA+ICAgICAgICAgICAg ICAgICAgIHN0cnVjdCBkcm1fZmlsZSAqZmlsZV9wcml2KQo+ID4gIHsKPiA+IEBAIC0xMjYsMTYg KzEyNSw2IEBAIHN0YXRpYyBpbnQgZHJtX3NldF9tYXN0ZXIoc3RydWN0IGRybV9kZXZpY2UgKmRl diwgc3RydWN0IGRybV9maWxlICpmcHJpdiwKPiA+ICAgICAgICAgcmV0dXJuIHJldDsKPiA+ICB9 Cj4gPgo+ID4gLS8qCj4gPiAtICogZHJtX25ld19zZXRfbWFzdGVyIC0gQWxsb2NhdGUgYSBuZXcg bWFzdGVyIG9iamVjdCBhbmQgYmVjb21lIG1hc3RlciBmb3IgdGhlCj4gPiAtICogYXNzb2NpYXRl ZCBtYXN0ZXIgcmVhbG0uCj4gPiAtICoKPiA+IC0gKiBAZGV2OiBUaGUgYXNzb2NpYXRlZCBkZXZp Y2UuCj4gPiAtICogQGZwcml2OiBGaWxlIHByaXZhdGUgaWRlbnRpZnlpbmcgdGhlIGNsaWVudC4K PiA+IC0gKgo+ID4gLSAqIFRoaXMgZnVuY3Rpb24gbXVzdCBiZSBjYWxsZWQgd2l0aCBkZXY6Om1h c3Rlcl9tdXRleCBoZWxkLgo+ID4gLSAqIFJldHVybnMgbmVnYXRpdmUgZXJyb3IgY29kZSBvbiBm YWlsdXJlLiBaZXJvIG9uIHN1Y2Nlc3MuCj4gPiAtICovCj4gPiAgc3RhdGljIGludCBkcm1fbmV3 X3NldF9tYXN0ZXIoc3RydWN0IGRybV9kZXZpY2UgKmRldiwgc3RydWN0IGRybV9maWxlICpmcHJp dikKPiA+ICB7Cj4gPiAgICAgICAgIHN0cnVjdCBkcm1fbWFzdGVyICpvbGRfbWFzdGVyOwo+ID4g QEAgLTI4OCwxMiArMjc3LDI4IEBAIG91dDoKPiA+ICAgICAgICAgbXV0ZXhfdW5sb2NrKCZkZXYt Pm1hc3Rlcl9tdXRleCk7Cj4gPiAgfQo+ID4KPiA+ICsvKioKPiA+ICsgKiBkcm1faXNfY3VycmVu dF9tYXN0ZXIgLSBjaGVja3Mgd2hldGhlciB0aGlzIG1hc3RlciBpcyB0aGUgY3VycmVudCBvbmUK PiBzL3RoaXMgbWFzdGVyIGlzIHRoZSBjdXJyZW50IG9uZS9AZnByaXYgaXMgdGhlIGN1cnJlbnQg bWFzdGVyLyBwZXJoYXBzID8KPiAKPiA+ICsgKiBAZnByaXY6IERSTSBmaWxlIHByaXZhdGUKPiA+ ICsgKgo+ID4gKyAqIENoZWNrcyB3aGV0aGVyIEBmcHJpdiBpcyBhIG1hc3RlciBhbmQgdGhhdCBp dCBpcyB0aGUgY3VycmVudCBtYXN0ZXIgb24gaXRzCj4gcy9hIG1hc3RlciBhbmQgdGhhdCBpdCBp cyB0aGUgY3VycmVudC90aGUgY3VycmVudC8KPiAKPiA+ICsgKiBkZXZpY2UuIFRoaXMgZGVjaWRl cyB3aGV0aGVyIGEgY2xpZW50IGlzIGFsbG93ZWQgdG8gcnVuIERSTV9NQVNURVIgSU9DVExzLgo+ ID4gKyAqCj4gPiArICogTW9zdCBvZiB0aGUgbW9kZXJuIElPQ1RMIHdoaWNoIHJlcXVpcmUgRFJN X01BU1RFUiBhcmUgZm9yIGtlcm5lbCBtb2Rlc2V0dGluZwo+ID4gKyAqIC0gdGhlIGN1cnJlbnQg bWFzdGVyIGlzIGFzc3VtZWQgdG8gb3duIHRoZSBub24tc2hhcmVhYmxlIGRpc3BsYXkgaGFyZHdh cmUuCj4gPiArICovCj4gPiAgYm9vbCBkcm1faXNfY3VycmVudF9tYXN0ZXIoc3RydWN0IGRybV9m aWxlICpmcHJpdikKPiA+ICB7Cj4gPiAgICAgICAgIHJldHVybiBmcHJpdi0+aXNfbWFzdGVyICYm IGZwcml2LT5tYXN0ZXIgPT0gZnByaXYtPm1pbm9yLT5kZXYtPm1hc3RlcjsKPiA+ICB9Cj4gPiAg RVhQT1JUX1NZTUJPTChkcm1faXNfY3VycmVudF9tYXN0ZXIpOwo+ID4KPiA+ICsvKioKPiA+ICsg KiBkcm1fbWFzdGVyX2dldCAtIHJlZmVyZW5jZSBhIG1hc3RlciBwb2ludGVyCj4gPiArICogQG1h c3Rlcjogc3RydWN0ICZkcm1fbWFzdGVyCj4gPiArICoKPiA+ICsgKiBJbmNyZW1lbnRzIHRoZSBy ZWZlcmVuY2UgY291bnQgb2YgQG1hc3Rlci4KPiBCaWtlc2hlZDogcy9AbWFzdGVyLi9AbWFzdGVy IGFuZCByZXR1cm5zIGEgcG9pbnRlciB0byBAbWFzdGVyLi8KPiAKPiA+ICsgKi8KPiA+ICBzdHJ1 Y3QgZHJtX21hc3RlciAqZHJtX21hc3Rlcl9nZXQoc3RydWN0IGRybV9tYXN0ZXIgKm1hc3RlcikK PiA+ICB7Cj4gPiAgICAgICAgIGtyZWZfZ2V0KCZtYXN0ZXItPnJlZmNvdW50KTsKPiA+IEBAIC0z MTYsNiArMzIxLDEyIEBAIHN0YXRpYyB2b2lkIGRybV9tYXN0ZXJfZGVzdHJveShzdHJ1Y3Qga3Jl ZiAqa3JlZikKPiA+ICAgICAgICAga2ZyZWUobWFzdGVyKTsKPiA+ICB9Cj4gPgo+ID4gKy8qKgo+ ID4gKyAqIGRybV9tYXN0ZXJfcHV0IC0gdW5yZWZlcmVuY2UgYW5kIGNsZWFyIGEgbWFzdGVyIHBv aW50ZXIKPiA+ICsgKiBAbWFzdGVyOiBwb2ludGVyIHRvIGEgcG9pbnRlciBvZiBzdHJ1Y3QgJmRy bV9tYXN0ZXIKPiA+ICsgKgo+ID4gKyAqIFRoaXMgZGVjcmVtZW50cyB0aGUgJmRybV9tYXN0ZXIg YmVoaW5kIEBtYXN0ZXIgYW5kIHNldHMgaXQgdG8gTlVMTC4KPiA+ICsgKi8KPiA+ICB2b2lkIGRy bV9tYXN0ZXJfcHV0KHN0cnVjdCBkcm1fbWFzdGVyICoqbWFzdGVyKQo+ID4gIHsKPiA+ICAgICAg ICAga3JlZl9wdXQoJigqbWFzdGVyKS0+cmVmY291bnQsIGRybV9tYXN0ZXJfZGVzdHJveSk7Cj4g PiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2RybV9jcnRjLmMgYi9kcml2ZXJzL2dwdS9k cm0vZHJtX2NydGMuYwo+ID4gaW5kZXggODEwODNmOThkMTU1Li44NzFhZjM3MjY2MmQgMTAwNjQ0 Cj4gPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vZHJtX2NydGMuYwo+ID4gKysrIGIvZHJpdmVycy9n cHUvZHJtL2RybV9jcnRjLmMKPiA+IEBAIC0zOSw2ICszOSw3IEBACj4gPiAgI2luY2x1ZGUgPGRy bS9kcm1fZm91cmNjLmg+Cj4gPiAgI2luY2x1ZGUgPGRybS9kcm1fbW9kZXNldF9sb2NrLmg+Cj4g PiAgI2luY2x1ZGUgPGRybS9kcm1fYXRvbWljLmg+Cj4gPiArI2luY2x1ZGUgPGRybS9kcm1fYXV0 aC5oPgo+ID4KPiA+ICAjaW5jbHVkZSAiZHJtX2NydGNfaW50ZXJuYWwuaCIKPiA+ICAjaW5jbHVk ZSAiZHJtX2ludGVybmFsLmgiCj4gPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2RybV9p b2N0bC5jIGIvZHJpdmVycy9ncHUvZHJtL2RybV9pb2N0bC5jCj4gPiBpbmRleCBhMGMxZDE3Mjk1 NGQuLjg4Nzk2YTM4M2U0MCAxMDA2NDQKPiA+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9kcm1faW9j dGwuYwo+ID4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2RybV9pb2N0bC5jCj4gPiBAQCAtMzAsNiAr MzAsNyBAQAo+ID4KPiA+ICAjaW5jbHVkZSA8ZHJtL2RybVAuaD4KPiA+ICAjaW5jbHVkZSA8ZHJt L2RybV9jb3JlLmg+Cj4gPiArI2luY2x1ZGUgPGRybS9kcm1fYXV0aC5oPgo+ID4gICNpbmNsdWRl ICJkcm1fbGVnYWN5LmgiCj4gPiAgI2luY2x1ZGUgImRybV9pbnRlcm5hbC5oIgo+ID4gICNpbmNs dWRlICJkcm1fY3J0Y19pbnRlcm5hbC5oIgo+ID4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2k5MTVfZHJ2LmggYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oCj4gPiBp bmRleCA5ZmE5Njk4ZmUyNDcuLjBmODYzMmM5M2U5NSAxMDA2NDQKPiA+IC0tLSBhL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2k5MTVfZHJ2LmgKPiA+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5 MTVfZHJ2LmgKPiA+IEBAIC00Nyw2ICs0Nyw3IEBACj4gPiAgI2luY2x1ZGUgPGRybS9pbnRlbC1n dHQuaD4KPiA+ICAjaW5jbHVkZSA8ZHJtL2RybV9sZWdhY3kuaD4gLyogZm9yIHN0cnVjdCBkcm1f ZG1hX2hhbmRsZSAqLwo+ID4gICNpbmNsdWRlIDxkcm0vZHJtX2dlbS5oPgo+ID4gKyNpbmNsdWRl IDxkcm0vZHJtX2F1dGguaD4KPiA+Cj4gPiAgI2luY2x1ZGUgImk5MTVfcGFyYW1zLmgiCj4gPiAg I2luY2x1ZGUgImk5MTVfcmVnLmgiCj4gPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL3Zt d2dmeC92bXdnZnhfZHJ2LmggYi9kcml2ZXJzL2dwdS9kcm0vdm13Z2Z4L3Ztd2dmeF9kcnYuaAo+ ID4gaW5kZXggMTk4MGUyYTI4MjY1Li45YTkwZjgyNDgxNGUgMTAwNjQ0Cj4gPiAtLS0gYS9kcml2 ZXJzL2dwdS9kcm0vdm13Z2Z4L3Ztd2dmeF9kcnYuaAo+ID4gKysrIGIvZHJpdmVycy9ncHUvZHJt L3Ztd2dmeC92bXdnZnhfZHJ2LmgKPiA+IEBAIC0zMiw2ICszMiw3IEBACj4gPiAgI2luY2x1ZGUg PGRybS9kcm1QLmg+Cj4gPiAgI2luY2x1ZGUgPGRybS92bXdnZnhfZHJtLmg+Cj4gPiAgI2luY2x1 ZGUgPGRybS9kcm1faGFzaHRhYi5oPgo+ID4gKyNpbmNsdWRlIDxkcm0vZHJtX2F1dGguaD4KPiA+ ICAjaW5jbHVkZSA8bGludXgvc3VzcGVuZC5oPgo+ID4gICNpbmNsdWRlIDxkcm0vdHRtL3R0bV9i b19kcml2ZXIuaD4KPiA+ICAjaW5jbHVkZSA8ZHJtL3R0bS90dG1fb2JqZWN0Lmg+Cj4gPiBkaWZm IC0tZ2l0IGEvaW5jbHVkZS9kcm0vZHJtUC5oIGIvaW5jbHVkZS9kcm0vZHJtUC5oCj4gPiBpbmRl eCA3NjFiMjAzMzIzMjEuLmQyMmJhNmJmMjI5OSAxMDA2NDQKPiA+IC0tLSBhL2luY2x1ZGUvZHJt L2RybVAuaAo+ID4gKysrIGIvaW5jbHVkZS9kcm0vZHJtUC5oCj4gPiBAQCAtODYsNiArODYsNyBA QCBzdHJ1Y3QgZHJtX2xvY2FsX21hcDsKPiA+ICBzdHJ1Y3QgZHJtX2RldmljZV9kbWE7Cj4gPiAg c3RydWN0IGRybV9kbWFfaGFuZGxlOwo+ID4gIHN0cnVjdCBkcm1fZ2VtX29iamVjdDsKPiA+ICtz dHJ1Y3QgZHJtX21hc3RlcjsKPiA+Cj4gPiAgc3RydWN0IGRldmljZV9ub2RlOwo+ID4gIHN0cnVj dCB2aWRlb21vZGU7Cj4gPiBAQCAtMzczLDMwICszNzQsNiBAQCBzdHJ1Y3QgZHJtX2xvY2tfZGF0 YSB7Cj4gPiAgICAgICAgIGludCBpZGxlX2hhc19sb2NrOwo+ID4gIH07Cj4gPgo+ID4gLS8qKgo+ ID4gLSAqIHN0cnVjdCBkcm1fbWFzdGVyIC0gZHJtIG1hc3RlciBzdHJ1Y3R1cmUKPiA+IC0gKgo+ ID4gLSAqIEByZWZjb3VudDogUmVmY291bnQgZm9yIHRoaXMgbWFzdGVyIG9iamVjdC4KPiA+IC0g KiBAZGV2OiBMaW5rIGJhY2sgdG8gdGhlIERSTSBkZXZpY2UKPiA+IC0gKiBAdW5pcXVlOiBVbmlx dWUgaWRlbnRpZmllcjogZS5nLiBidXNpZC4gUHJvdGVjdGVkIGJ5IGRybV9nbG9iYWxfbXV0ZXgu Cj4gPiAtICogQHVuaXF1ZV9sZW46IExlbmd0aCBvZiB1bmlxdWUgZmllbGQuIFByb3RlY3RlZCBi eSBkcm1fZ2xvYmFsX211dGV4Lgo+ID4gLSAqIEBtYWdpY19tYXA6IE1hcCBvZiB1c2VkIGF1dGhl bnRpY2F0aW9uIHRva2Vucy4gUHJvdGVjdGVkIGJ5IHN0cnVjdF9tdXRleC4KPiA+IC0gKiBAbG9j azogRFJJIGxvY2sgaW5mb3JtYXRpb24uCj4gPiAtICogQGRyaXZlcl9wcml2OiBQb2ludGVyIHRv IGRyaXZlci1wcml2YXRlIGluZm9ybWF0aW9uLgo+ID4gLSAqCj4gPiAtICogTm90ZSB0aGF0IG1h c3RlciBzdHJ1Y3R1cmVzIGFyZSBvbmx5IHJlbGV2YW50IGZvciB0aGUgbGVnYWN5L3ByaW1hcnkg ZGV2aWNlCj4gPiAtICogbm9kZXMsIGhlbmNlIHRoZXJlIGNhbiBvbmx5IGJlIG9uZSBwZXIgZGV2 aWNlLCBub3Qgb25lIHBlciBkcm1fbWlub3IuCj4gPiAtICovCj4gPiAtc3RydWN0IGRybV9tYXN0 ZXIgewo+ID4gLSAgICAgICBzdHJ1Y3Qga3JlZiByZWZjb3VudDsKPiA+IC0gICAgICAgc3RydWN0 IGRybV9kZXZpY2UgKmRldjsKPiA+IC0gICAgICAgY2hhciAqdW5pcXVlOwo+ID4gLSAgICAgICBp bnQgdW5pcXVlX2xlbjsKPiA+IC0gICAgICAgc3RydWN0IGlkciBtYWdpY19tYXA7Cj4gPiAtICAg ICAgIHN0cnVjdCBkcm1fbG9ja19kYXRhIGxvY2s7Cj4gPiAtICAgICAgIHZvaWQgKmRyaXZlcl9w cml2Owo+ID4gLX07Cj4gPiAtCj4gPiAgLyogRmxhZ3MgYW5kIHJldHVybiBjb2RlcyBmb3IgZ2V0 X3ZibGFua190aW1lc3RhbXAoKSBkcml2ZXIgZnVuY3Rpb24uICovCj4gPiAgI2RlZmluZSBEUk1f Q0FMTEVEX0ZST01fVkJMSVJRIDEKPiA+ICAjZGVmaW5lIERSTV9WQkxBTktUSU1FX1NDQU5PVVRQ T1NfTUVUSE9EICgxIDw8IDApCj4gPiBAQCAtMTAwOCwxMSArOTg1LDYgQEAgc3RhdGljIGlubGlu ZSB3YWl0X3F1ZXVlX2hlYWRfdCAqZHJtX2NydGNfdmJsYW5rX3dhaXRxdWV1ZShzdHJ1Y3QgZHJt X2NydGMgKmNydGMKPiA+ICAgICAgICAgcmV0dXJuICZjcnRjLT5kZXYtPnZibGFua1tkcm1fY3J0 Y19pbmRleChjcnRjKV0ucXVldWU7Cj4gPiAgfQo+ID4KPiA+IC0vKiBkcm1fYXV0aC5jICovCj4g PiAtc3RydWN0IGRybV9tYXN0ZXIgKmRybV9tYXN0ZXJfZ2V0KHN0cnVjdCBkcm1fbWFzdGVyICpt YXN0ZXIpOwo+ID4gLXZvaWQgZHJtX21hc3Rlcl9wdXQoc3RydWN0IGRybV9tYXN0ZXIgKiptYXN0 ZXIpOwo+ID4gLWJvb2wgZHJtX2lzX2N1cnJlbnRfbWFzdGVyKHN0cnVjdCBkcm1fZmlsZSAqZnBy aXYpOwo+ID4gLQo+ID4gIC8qIGRybV9kcnYuYyAqLwo+ID4gIHZvaWQgZHJtX3B1dF9kZXYoc3Ry dWN0IGRybV9kZXZpY2UgKmRldik7Cj4gPiAgdm9pZCBkcm1fdW5wbHVnX2RldihzdHJ1Y3QgZHJt X2RldmljZSAqZGV2KTsKPiA+IGRpZmYgLS1naXQgYS9pbmNsdWRlL2RybS9kcm1fYXV0aC5oIGIv aW5jbHVkZS9kcm0vZHJtX2F1dGguaAo+ID4gbmV3IGZpbGUgbW9kZSAxMDA2NDQKPiA+IGluZGV4 IDAwMDAwMDAwMDAwMC4uNjEwMjIzYjA0ODFiCj4gPiAtLS0gL2Rldi9udWxsCj4gPiArKysgYi9p bmNsdWRlL2RybS9kcm1fYXV0aC5oCj4gPiBAQCAtMCwwICsxLDU5IEBACj4gPiArLyoKPiA+ICsg KiBJbnRlcm5hbCBIZWFkZXIgZm9yIHRoZSBEaXJlY3QgUmVuZGVyaW5nIE1hbmFnZXIKPiA+ICsg Kgo+ID4gKyAqIENvcHlyaWdodCAyMDE2IEludGVsIENvcnBvcmF0aW9uCj4gPiArICoKPiA+ICsg KiBBdXRob3I6IERhbmllbCBWZXR0ZXIgPGRhbmllbC52ZXR0ZXJAZmZ3bGwuY2g+Cj4gPiArICoK PiA+ICsgKiBQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8g YW55IHBlcnNvbiBvYnRhaW5pbmcgYQo+ID4gKyAqIGNvcHkgb2YgdGhpcyBzb2Z0d2FyZSBhbmQg YXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgIlNvZnR3YXJlIiksCj4gPiArICog dG8gZGVhbCBpbiB0aGUgU29mdHdhcmUgd2l0aG91dCByZXN0cmljdGlvbiwgaW5jbHVkaW5nIHdp dGhvdXQgbGltaXRhdGlvbgo+ID4gKyAqIHRoZSByaWdodHMgdG8gdXNlLCBjb3B5LCBtb2RpZnks IG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLAo+ID4gKyAqIGFuZC9vciBz ZWxsIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9t IHRoZQo+ID4gKyAqIFNvZnR3YXJlIGlzIGZ1cm5pc2hlZCB0byBkbyBzbywgc3ViamVjdCB0byB0 aGUgZm9sbG93aW5nIGNvbmRpdGlvbnM6Cj4gPiArICoKPiA+ICsgKiBUaGUgYWJvdmUgY29weXJp Z2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSAoaW5jbHVkaW5nIHRoZSBuZXh0 Cj4gPiArICogcGFyYWdyYXBoKSBzaGFsbCBiZSBpbmNsdWRlZCBpbiBhbGwgY29waWVzIG9yIHN1 YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZQo+ID4gKyAqIFNvZnR3YXJlLgo+ID4gKyAqCj4gPiAr ICogVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEICJBUyBJUyIsIFdJVEhPVVQgV0FSUkFOVFkgT0Yg QU5ZIEtJTkQsIEVYUFJFU1MgT1IKPiA+ICsgKiBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBM SU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSwKPiA+ICsgKiBGSVRO RVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiAgSU4gTk8g RVZFTlQgU0hBTEwKPiA+ICsgKiBWQSBMSU5VWCBTWVNURU1TIEFORC9PUiBJVFMgU1VQUExJRVJT IEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SCj4gPiArICogT1RIRVIgTElBQklM SVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0Us Cj4gPiArICogQVJJU0lORyBGUk9NLCBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBT T0ZUV0FSRSBPUiBUSEUgVVNFIE9SCj4gPiArICogT1RIRVIgREVBTElOR1MgSU4gVEhFIFNPRlRX QVJFLgo+ID4gKyAqLwo+ID4gKwo+ID4gKyNpZm5kZWYgX0RSTV9BVVRIX0hfCj4gPiArI2RlZmlu ZSBfRFJNX0FVVEhfSF8KPiA+ICsKPiA+ICsvKioKPiA+ICsgKiBzdHJ1Y3QgZHJtX21hc3RlciAt IGRybSBtYXN0ZXIgc3RydWN0dXJlCj4gPiArICoKPiA+ICsgKiBAcmVmY291bnQ6IFJlZmNvdW50 IGZvciB0aGlzIG1hc3RlciBvYmplY3QuCj4gPiArICogQGRldjogTGluayBiYWNrIHRvIHRoZSBE Uk0gZGV2aWNlCj4gPiArICogQHVuaXF1ZTogVW5pcXVlIGlkZW50aWZpZXI6IGUuZy4gYnVzaWQu IFByb3RlY3RlZCBieSBkcm1fZ2xvYmFsX211dGV4Lgo+ID4gKyAqIEB1bmlxdWVfbGVuOiBMZW5n dGggb2YgdW5pcXVlIGZpZWxkLiBQcm90ZWN0ZWQgYnkgZHJtX2dsb2JhbF9tdXRleC4KPiA+ICsg KiBAbWFnaWNfbWFwOiBNYXAgb2YgdXNlZCBhdXRoZW50aWNhdGlvbiB0b2tlbnMuIFByb3RlY3Rl ZCBieSBzdHJ1Y3RfbXV0ZXguCj4gPiArICogQGxvY2s6IERSSSBsb2NrIGluZm9ybWF0aW9uLgo+ ID4gKyAqIEBkcml2ZXJfcHJpdjogUG9pbnRlciB0byBkcml2ZXItcHJpdmF0ZSBpbmZvcm1hdGlv bi4KPiA+ICsgKgo+ID4gKyAqIE5vdGUgdGhhdCBtYXN0ZXIgc3RydWN0dXJlcyBhcmUgb25seSBy ZWxldmFudCBmb3IgdGhlIGxlZ2FjeS9wcmltYXJ5IGRldmljZQo+ID4gKyAqIG5vZGVzLCBoZW5j ZSB0aGVyZSBjYW4gb25seSBiZSBvbmUgcGVyIGRldmljZSwgbm90IG9uZSBwZXIgZHJtX21pbm9y Lgo+ID4gKyAqLwo+ID4gK3N0cnVjdCBkcm1fbWFzdGVyIHsKPiA+ICsgICAgICAgc3RydWN0IGty ZWYgcmVmY291bnQ7Cj4gPiArICAgICAgIHN0cnVjdCBkcm1fZGV2aWNlICpkZXY7Cj4gPiArICAg ICAgIGNoYXIgKnVuaXF1ZTsKPiA+ICsgICAgICAgaW50IHVuaXF1ZV9sZW47Cj4gPiArICAgICAg IHN0cnVjdCBpZHIgbWFnaWNfbWFwOwo+ID4gKyAgICAgICBzdHJ1Y3QgZHJtX2xvY2tfZGF0YSBs b2NrOwo+ID4gKyAgICAgICB2b2lkICpkcml2ZXJfcHJpdjsKPiA+ICt9Owo+ID4gKwo+ID4gK3N0 cnVjdCBkcm1fbWFzdGVyICpkcm1fbWFzdGVyX2dldChzdHJ1Y3QgZHJtX21hc3RlciAqbWFzdGVy KTsKPiA+ICt2b2lkIGRybV9tYXN0ZXJfcHV0KHN0cnVjdCBkcm1fbWFzdGVyICoqbWFzdGVyKTsK PiA+ICtib29sIGRybV9pc19jdXJyZW50X21hc3RlcihzdHJ1Y3QgZHJtX2ZpbGUgKmZwcml2KTsK PiA+ICsKPiA+ICsjZW5kaWYKPiA+IGRpZmYgLS1naXQgYS9pbmNsdWRlL2RybS9kcm1fbGVnYWN5 LmggYi9pbmNsdWRlL2RybS9kcm1fbGVnYWN5LmgKPiA+IGluZGV4IGE1ZWYyYzdlNDBmOC4uY2Yw ZTdkODliY2RmIDEwMDY0NAo+ID4gLS0tIGEvaW5jbHVkZS9kcm0vZHJtX2xlZ2FjeS5oCj4gPiAr KysgYi9pbmNsdWRlL2RybS9kcm1fbGVnYWN5LmgKPiA+IEBAIC0xLDYgKzEsOCBAQAo+ID4gICNp Zm5kZWYgX19EUk1fRFJNX0xFR0FDWV9IX18KPiA+ICAjZGVmaW5lIF9fRFJNX0RSTV9MRUdBQ1lf SF9fCj4gPgo+ID4gKyNpbmNsdWRlIDxkcm0vZHJtX2F1dGguaD4KPiA+ICsKPiA+ICAvKgo+ID4g ICAqIExlZ2FjeSBkcml2ZXIgaW50ZXJmYWNlcyBmb3IgdGhlIERpcmVjdCBSZW5kZXJpbmcgTWFu YWdlcgo+ID4gICAqCj4gPiAtLQo+ID4gMi44LjEKPiA+Cj4gPiBfX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fXwo+ID4gZHJpLWRldmVsIG1haWxpbmcgbGlzdAo+ ID4gZHJpLWRldmVsQGxpc3RzLmZyZWVkZXNrdG9wLm9yZwo+ID4gaHR0cHM6Ly9saXN0cy5mcmVl ZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9kcmktZGV2ZWwKCi0tIApEYW5pZWwgVmV0dGVy ClNvZnR3YXJlIEVuZ2luZWVyLCBJbnRlbCBDb3Jwb3JhdGlvbgpodHRwOi8vYmxvZy5mZndsbC5j aApfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1n ZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9s aXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK