From mboxrd@z Thu Jan 1 00:00:00 1970 From: Daniel Vetter Subject: Re: [PATCH] drm: sti: remove useless call to dev->struct_mutex Date: Fri, 22 Apr 2016 18:59:19 +0200 Message-ID: <20160422165919.GC2510@phenom.ffwll.local> References: <1461337389-2892-1-git-send-email-benjamin.gaignard@linaro.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-wm0-x22d.google.com (mail-wm0-x22d.google.com [IPv6:2a00:1450:400c:c09::22d]) by gabe.freedesktop.org (Postfix) with ESMTPS id 2DE6F6E078 for ; Fri, 22 Apr 2016 16:59:24 +0000 (UTC) Received: by mail-wm0-x22d.google.com with SMTP id n3so36228872wmn.0 for ; Fri, 22 Apr 2016 09:59:24 -0700 (PDT) Content-Disposition: inline In-Reply-To: <1461337389-2892-1-git-send-email-benjamin.gaignard@linaro.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Benjamin Gaignard Cc: vincent.abriou@st.com, fabien.dessenne@st.com, dri-devel@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org T24gRnJpLCBBcHIgMjIsIDIwMTYgYXQgMDU6MDM6MDlQTSArMDIwMCwgQmVuamFtaW4gR2FpZ25h cmQgd3JvdGU6Cj4gTm8gbmVlZCB0byBwcm90ZWN0IGRlYnVnZnMgZnVuY3Rpb25zIHdpdGggZGV2 LT5zdHJ1Y3RfbXV0ZXgKPiAKPiBTaWduZWQtb2ZmLWJ5OiBCZW5qYW1pbiBHYWlnbmFyZCA8YmVu amFtaW4uZ2FpZ25hcmRAbGluYXJvLm9yZz4KClJldmlld2VkLWJ5OiBEYW5pZWwgVmV0dGVyIDxk YW5pZWwudmV0dGVyQGZmd2xsLmNoPgoKPiAtLS0KPiAgZHJpdmVycy9ncHUvZHJtL3N0aS9zdGlf Y3Vyc29yLmMgfCAgNyAtLS0tLS0tCj4gIGRyaXZlcnMvZ3B1L2RybS9zdGkvc3RpX2Rydi5jICAg IHwgIDYgLS0tLS0tCj4gIGRyaXZlcnMvZ3B1L2RybS9zdGkvc3RpX2R2by5jICAgIHwgIDcgLS0t LS0tLQo+ICBkcml2ZXJzL2dwdS9kcm0vc3RpL3N0aV9nZHAuYyAgICB8IDE0IC0tLS0tLS0tLS0t LS0tCj4gIGRyaXZlcnMvZ3B1L2RybS9zdGkvc3RpX2hkYS5jICAgIHwgIDcgLS0tLS0tLQo+ICBk cml2ZXJzL2dwdS9kcm0vc3RpL3N0aV9oZG1pLmMgICB8ICA3IC0tLS0tLS0KPiAgZHJpdmVycy9n cHUvZHJtL3N0aS9zdGlfaHF2ZHAuYyAgfCAgNyAtLS0tLS0tCj4gIGRyaXZlcnMvZ3B1L2RybS9z dGkvc3RpX21peGVyLmMgIHwgIDcgLS0tLS0tLQo+ICBkcml2ZXJzL2dwdS9kcm0vc3RpL3N0aV90 dm91dC5jICB8ICA3IC0tLS0tLS0KPiAgZHJpdmVycy9ncHUvZHJtL3N0aS9zdGlfdmlkLmMgICAg fCAgNyAtLS0tLS0tCj4gIDEwIGZpbGVzIGNoYW5nZWQsIDc2IGRlbGV0aW9ucygtKQo+IAo+IGRp ZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vc3RpL3N0aV9jdXJzb3IuYyBiL2RyaXZlcnMvZ3B1 L2RybS9zdGkvc3RpX2N1cnNvci5jCj4gaW5kZXggM2FiYjQwMC4uZTZlZTRjNSAxMDA2NDQKPiAt LS0gYS9kcml2ZXJzL2dwdS9kcm0vc3RpL3N0aV9jdXJzb3IuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1 L2RybS9zdGkvc3RpX2N1cnNvci5jCj4gQEAgLTEwMywxMiArMTAzLDYgQEAgc3RhdGljIGludCBj dXJzb3JfZGJnX3Nob3coc3RydWN0IHNlcV9maWxlICpzLCB2b2lkICpkYXRhKQo+ICB7Cj4gIAlz dHJ1Y3QgZHJtX2luZm9fbm9kZSAqbm9kZSA9IHMtPnByaXZhdGU7Cj4gIAlzdHJ1Y3Qgc3RpX2N1 cnNvciAqY3Vyc29yID0gKHN0cnVjdCBzdGlfY3Vyc29yICopbm9kZS0+aW5mb19lbnQtPmRhdGE7 Cj4gLQlzdHJ1Y3QgZHJtX2RldmljZSAqZGV2ID0gbm9kZS0+bWlub3ItPmRldjsKPiAtCWludCBy ZXQ7Cj4gLQo+IC0JcmV0ID0gbXV0ZXhfbG9ja19pbnRlcnJ1cHRpYmxlKCZkZXYtPnN0cnVjdF9t dXRleCk7Cj4gLQlpZiAocmV0KQo+IC0JCXJldHVybiByZXQ7Cj4gIAo+ICAJc2VxX3ByaW50Zihz LCAiJXM6ICh2YWRkciA9IDB4JXApIiwKPiAgCQkgICBzdGlfcGxhbmVfdG9fc3RyKCZjdXJzb3It PnBsYW5lKSwgY3Vyc29yLT5yZWdzKTsKPiBAQCAtMTI3LDcgKzEyMSw2IEBAIHN0YXRpYyBpbnQg Y3Vyc29yX2RiZ19zaG93KHN0cnVjdCBzZXFfZmlsZSAqcywgdm9pZCAqZGF0YSkKPiAgCURCR0ZT X0RVTVAoQ1VSX0FXRSk7Cj4gIAlzZXFfcHV0cyhzLCAiXG4iKTsKPiAgCj4gLQltdXRleF91bmxv Y2soJmRldi0+c3RydWN0X211dGV4KTsKPiAgCXJldHVybiAwOwo+ICB9Cj4gIAo+IGRpZmYgLS1n aXQgYS9kcml2ZXJzL2dwdS9kcm0vc3RpL3N0aV9kcnYuYyBiL2RyaXZlcnMvZ3B1L2RybS9zdGkv c3RpX2Rydi5jCj4gaW5kZXggNmJkNmFiYS4uYThlZWNlMiAxMDA2NDQKPiAtLS0gYS9kcml2ZXJz L2dwdS9kcm0vc3RpL3N0aV9kcnYuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9zdGkvc3RpX2Ry di5jCj4gQEAgLTcyLDExICs3Miw2IEBAIHN0YXRpYyBpbnQgc3RpX2RybV9mcHNfZGJnX3Nob3co c3RydWN0IHNlcV9maWxlICpzLCB2b2lkICpkYXRhKQo+ICAJc3RydWN0IGRybV9pbmZvX25vZGUg Km5vZGUgPSBzLT5wcml2YXRlOwo+ICAJc3RydWN0IGRybV9kZXZpY2UgKmRldiA9IG5vZGUtPm1p bm9yLT5kZXY7Cj4gIAlzdHJ1Y3QgZHJtX3BsYW5lICpwOwo+IC0JaW50IHJldDsKPiAtCj4gLQly ZXQgPSBtdXRleF9sb2NrX2ludGVycnVwdGlibGUoJmRldi0+c3RydWN0X211dGV4KTsKPiAtCWlm IChyZXQpCj4gLQkJcmV0dXJuIHJldDsKPiAgCj4gIAlsaXN0X2Zvcl9lYWNoX2VudHJ5KHAsICZk ZXYtPm1vZGVfY29uZmlnLnBsYW5lX2xpc3QsIGhlYWQpIHsKPiAgCQlzdHJ1Y3Qgc3RpX3BsYW5l ICpwbGFuZSA9IHRvX3N0aV9wbGFuZShwKTsKPiBAQCAtODYsNyArODEsNiBAQCBzdGF0aWMgaW50 IHN0aV9kcm1fZnBzX2RiZ19zaG93KHN0cnVjdCBzZXFfZmlsZSAqcywgdm9pZCAqZGF0YSkKPiAg CQkJICAgcGxhbmUtPmZwc19pbmZvLmZpcHNfc3RyKTsKPiAgCX0KPiAgCj4gLQltdXRleF91bmxv Y2soJmRldi0+c3RydWN0X211dGV4KTsKPiAgCXJldHVybiAwOwo+ICB9Cj4gIAo+IGRpZmYgLS1n aXQgYS9kcml2ZXJzL2dwdS9kcm0vc3RpL3N0aV9kdm8uYyBiL2RyaXZlcnMvZ3B1L2RybS9zdGkv c3RpX2R2by5jCj4gaW5kZXggMjVmNzY2My4uZDQzOTEyOCAxMDA2NDQKPiAtLS0gYS9kcml2ZXJz L2dwdS9kcm0vc3RpL3N0aV9kdm8uYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9zdGkvc3RpX2R2 by5jCj4gQEAgLTE3NywxMiArMTc3LDYgQEAgc3RhdGljIGludCBkdm9fZGJnX3Nob3coc3RydWN0 IHNlcV9maWxlICpzLCB2b2lkICpkYXRhKQo+ICB7Cj4gIAlzdHJ1Y3QgZHJtX2luZm9fbm9kZSAq bm9kZSA9IHMtPnByaXZhdGU7Cj4gIAlzdHJ1Y3Qgc3RpX2R2byAqZHZvID0gKHN0cnVjdCBzdGlf ZHZvICopbm9kZS0+aW5mb19lbnQtPmRhdGE7Cj4gLQlzdHJ1Y3QgZHJtX2RldmljZSAqZGV2ID0g bm9kZS0+bWlub3ItPmRldjsKPiAtCWludCByZXQ7Cj4gLQo+IC0JcmV0ID0gbXV0ZXhfbG9ja19p bnRlcnJ1cHRpYmxlKCZkZXYtPnN0cnVjdF9tdXRleCk7Cj4gLQlpZiAocmV0KQo+IC0JCXJldHVy biByZXQ7Cj4gIAo+ICAJc2VxX3ByaW50ZihzLCAiRFZPOiAodmFkZHIgPSAweCVwKSIsIGR2by0+ cmVncyk7Cj4gIAlEQkdGU19EVU1QKERWT19BV0dfRElHU1lOQ19DVFJMKTsKPiBAQCAtMTkzLDcg KzE4Nyw2IEBAIHN0YXRpYyBpbnQgZHZvX2RiZ19zaG93KHN0cnVjdCBzZXFfZmlsZSAqcywgdm9p ZCAqZGF0YSkKPiAgCWR2b19kYmdfYXdnX21pY3JvY29kZShzLCBkdm8tPnJlZ3MgKyBEVk9fRElH U1lOQ19JTlNUUl9JKTsKPiAgCXNlcV9wdXRzKHMsICJcbiIpOwo+ICAKPiAtCW11dGV4X3VubG9j aygmZGV2LT5zdHJ1Y3RfbXV0ZXgpOwo+ICAJcmV0dXJuIDA7Cj4gIH0KPiAgCj4gZGlmZiAtLWdp dCBhL2RyaXZlcnMvZ3B1L2RybS9zdGkvc3RpX2dkcC5jIGIvZHJpdmVycy9ncHUvZHJtL3N0aS9z dGlfZ2RwLmMKPiBpbmRleCBmZjNkM2U3Li4zZDA5OGYxIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMv Z3B1L2RybS9zdGkvc3RpX2dkcC5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL3N0aS9zdGlfZ2Rw LmMKPiBAQCAtMjA3LDE0ICsyMDcsOCBAQCBzdGF0aWMgaW50IGdkcF9kYmdfc2hvdyhzdHJ1Y3Qg c2VxX2ZpbGUgKnMsIHZvaWQgKmRhdGEpCj4gIHsKPiAgCXN0cnVjdCBkcm1faW5mb19ub2RlICpu b2RlID0gcy0+cHJpdmF0ZTsKPiAgCXN0cnVjdCBzdGlfZ2RwICpnZHAgPSAoc3RydWN0IHN0aV9n ZHAgKilub2RlLT5pbmZvX2VudC0+ZGF0YTsKPiAtCXN0cnVjdCBkcm1fZGV2aWNlICpkZXYgPSBu b2RlLT5taW5vci0+ZGV2Owo+ICAJc3RydWN0IGRybV9wbGFuZSAqZHJtX3BsYW5lID0gJmdkcC0+ cGxhbmUuZHJtX3BsYW5lOwo+ICAJc3RydWN0IGRybV9jcnRjICpjcnRjID0gZHJtX3BsYW5lLT5j cnRjOwo+IC0JaW50IHJldDsKPiAtCj4gLQlyZXQgPSBtdXRleF9sb2NrX2ludGVycnVwdGlibGUo JmRldi0+c3RydWN0X211dGV4KTsKPiAtCWlmIChyZXQpCj4gLQkJcmV0dXJuIHJldDsKPiAgCj4g IAlzZXFfcHJpbnRmKHMsICIlczogKHZhZGRyID0gMHglcCkiLAo+ICAJCSAgIHN0aV9wbGFuZV90 b19zdHIoJmdkcC0+cGxhbmUpLCBnZHAtPnJlZ3MpOwo+IEBAIC0yNDcsNyArMjQxLDYgQEAgc3Rh dGljIGludCBnZHBfZGJnX3Nob3coc3RydWN0IHNlcV9maWxlICpzLCB2b2lkICpkYXRhKQo+ICAJ CXNlcV9wcmludGYocywgIiAgQ29ubmVjdGVkIHRvIERSTSBDUlRDICMlZCAoJXMpXG4iLAo+ICAJ CQkgICBjcnRjLT5iYXNlLmlkLCBzdGlfbWl4ZXJfdG9fc3RyKHRvX3N0aV9taXhlcihjcnRjKSkp Owo+ICAKPiAtCW11dGV4X3VubG9jaygmZGV2LT5zdHJ1Y3RfbXV0ZXgpOwo+ICAJcmV0dXJuIDA7 Cj4gIH0KPiAgCj4gQEAgLTI3OCwxMyArMjcxLDcgQEAgc3RhdGljIGludCBnZHBfbm9kZV9kYmdf c2hvdyhzdHJ1Y3Qgc2VxX2ZpbGUgKnMsIHZvaWQgKmFyZykKPiAgewo+ICAJc3RydWN0IGRybV9p bmZvX25vZGUgKm5vZGUgPSBzLT5wcml2YXRlOwo+ICAJc3RydWN0IHN0aV9nZHAgKmdkcCA9IChz dHJ1Y3Qgc3RpX2dkcCAqKW5vZGUtPmluZm9fZW50LT5kYXRhOwo+IC0Jc3RydWN0IGRybV9kZXZp Y2UgKmRldiA9IG5vZGUtPm1pbm9yLT5kZXY7Cj4gIAl1bnNpZ25lZCBpbnQgYjsKPiAtCWludCBy ZXQ7Cj4gLQo+IC0JcmV0ID0gbXV0ZXhfbG9ja19pbnRlcnJ1cHRpYmxlKCZkZXYtPnN0cnVjdF9t dXRleCk7Cj4gLQlpZiAocmV0KQo+IC0JCXJldHVybiByZXQ7Cj4gIAo+ICAJZm9yIChiID0gMDsg YiA8IEdEUF9OT0RFX05CX0JBTks7IGIrKykgewo+ICAJCXNlcV9wcmludGYocywgIlxuJXNbJWRd LnRvcCIsIHN0aV9wbGFuZV90b19zdHIoJmdkcC0+cGxhbmUpLCBiKTsKPiBAQCAtMjkzLDcgKzI4 MCw2IEBAIHN0YXRpYyBpbnQgZ2RwX25vZGVfZGJnX3Nob3coc3RydWN0IHNlcV9maWxlICpzLCB2 b2lkICphcmcpCj4gIAkJZ2RwX25vZGVfZHVtcF9ub2RlKHMsIGdkcC0+bm9kZV9saXN0W2JdLmJ0 bV9maWVsZCk7Cj4gIAl9Cj4gIAo+IC0JbXV0ZXhfdW5sb2NrKCZkZXYtPnN0cnVjdF9tdXRleCk7 Cj4gIAlyZXR1cm4gMDsKPiAgfQo+ICAKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL3N0 aS9zdGlfaGRhLmMgYi9kcml2ZXJzL2dwdS9kcm0vc3RpL3N0aV9oZGEuYwo+IGluZGV4IGVjMGQw MTcuLmQwZTE2NDcgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL3N0aS9zdGlfaGRhLmMK PiArKysgYi9kcml2ZXJzL2dwdS9kcm0vc3RpL3N0aV9oZGEuYwo+IEBAIC0zNzUsMTIgKzM3NSw2 IEBAIHN0YXRpYyBpbnQgaGRhX2RiZ19zaG93KHN0cnVjdCBzZXFfZmlsZSAqcywgdm9pZCAqZGF0 YSkKPiAgewo+ICAJc3RydWN0IGRybV9pbmZvX25vZGUgKm5vZGUgPSBzLT5wcml2YXRlOwo+ICAJ c3RydWN0IHN0aV9oZGEgKmhkYSA9IChzdHJ1Y3Qgc3RpX2hkYSAqKW5vZGUtPmluZm9fZW50LT5k YXRhOwo+IC0Jc3RydWN0IGRybV9kZXZpY2UgKmRldiA9IG5vZGUtPm1pbm9yLT5kZXY7Cj4gLQlp bnQgcmV0Owo+IC0KPiAtCXJldCA9IG11dGV4X2xvY2tfaW50ZXJydXB0aWJsZSgmZGV2LT5zdHJ1 Y3RfbXV0ZXgpOwo+IC0JaWYgKHJldCkKPiAtCQlyZXR1cm4gcmV0Owo+ICAKPiAgCXNlcV9wcmlu dGYocywgIkhEIEFuYWxvZzogKHZhZGRyID0gMHglcCkiLCBoZGEtPnJlZ3MpOwo+ICAJREJHRlNf RFVNUChIREFfQU5BX0NGRyk7Cj4gQEAgLTM5Niw3ICszOTAsNiBAQCBzdGF0aWMgaW50IGhkYV9k Ymdfc2hvdyhzdHJ1Y3Qgc2VxX2ZpbGUgKnMsIHZvaWQgKmRhdGEpCj4gIAkJaGRhX2RiZ192aWRl b19kYWNzX2N0cmwocywgaGRhLT52aWRlb19kYWNzX2N0cmwpOwo+ICAJc2VxX3B1dHMocywgIlxu Iik7Cj4gIAo+IC0JbXV0ZXhfdW5sb2NrKCZkZXYtPnN0cnVjdF9tdXRleCk7Cj4gIAlyZXR1cm4g MDsKPiAgfQo+ICAKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL3N0aS9zdGlfaGRtaS5j IGIvZHJpdmVycy9ncHUvZHJtL3N0aS9zdGlfaGRtaS5jCj4gaW5kZXggNmVmMDcxNS4uODU1NDVl YiAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vc3RpL3N0aV9oZG1pLmMKPiArKysgYi9k cml2ZXJzL2dwdS9kcm0vc3RpL3N0aV9oZG1pLmMKPiBAQCAtNjI4LDEyICs2MjgsNiBAQCBzdGF0 aWMgaW50IGhkbWlfZGJnX3Nob3coc3RydWN0IHNlcV9maWxlICpzLCB2b2lkICpkYXRhKQo+ICB7 Cj4gIAlzdHJ1Y3QgZHJtX2luZm9fbm9kZSAqbm9kZSA9IHMtPnByaXZhdGU7Cj4gIAlzdHJ1Y3Qg c3RpX2hkbWkgKmhkbWkgPSAoc3RydWN0IHN0aV9oZG1pICopbm9kZS0+aW5mb19lbnQtPmRhdGE7 Cj4gLQlzdHJ1Y3QgZHJtX2RldmljZSAqZGV2ID0gbm9kZS0+bWlub3ItPmRldjsKPiAtCWludCBy ZXQ7Cj4gLQo+IC0JcmV0ID0gbXV0ZXhfbG9ja19pbnRlcnJ1cHRpYmxlKCZkZXYtPnN0cnVjdF9t dXRleCk7Cj4gLQlpZiAocmV0KQo+IC0JCXJldHVybiByZXQ7Cj4gIAo+ICAJc2VxX3ByaW50Zihz LCAiSERNSTogKHZhZGRyID0gMHglcCkiLCBoZG1pLT5yZWdzKTsKPiAgCURCR0ZTX0RVTVAoIlxu IiwgSERNSV9DRkcpOwo+IEBAIC02OTAsNyArNjg0LDYgQEAgc3RhdGljIGludCBoZG1pX2RiZ19z aG93KHN0cnVjdCBzZXFfZmlsZSAqcywgdm9pZCAqZGF0YSkKPiAgCURCR0ZTX0RVTVBfREkoSERN SV9TV19ESV9OX1BLVF9XT1JENiwgSERNSV9JRlJBTUVfU0xPVF9WRU5ET1IpOwo+ICAJc2VxX3B1 dHMocywgIlxuIik7Cj4gIAo+IC0JbXV0ZXhfdW5sb2NrKCZkZXYtPnN0cnVjdF9tdXRleCk7Cj4g IAlyZXR1cm4gMDsKPiAgfQo+ICAKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL3N0aS9z dGlfaHF2ZHAuYyBiL2RyaXZlcnMvZ3B1L2RybS9zdGkvc3RpX2hxdmRwLmMKPiBpbmRleCBlMDVi MGRjLi42MjMwNTY1IDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9zdGkvc3RpX2hxdmRw LmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vc3RpL3N0aV9ocXZkcC5jCj4gQEAgLTU1NCwxNCAr NTU0LDggQEAgc3RhdGljIGludCBocXZkcF9kYmdfc2hvdyhzdHJ1Y3Qgc2VxX2ZpbGUgKnMsIHZv aWQgKmRhdGEpCj4gIHsKPiAgCXN0cnVjdCBkcm1faW5mb19ub2RlICpub2RlID0gcy0+cHJpdmF0 ZTsKPiAgCXN0cnVjdCBzdGlfaHF2ZHAgKmhxdmRwID0gKHN0cnVjdCBzdGlfaHF2ZHAgKilub2Rl LT5pbmZvX2VudC0+ZGF0YTsKPiAtCXN0cnVjdCBkcm1fZGV2aWNlICpkZXYgPSBub2RlLT5taW5v ci0+ZGV2Owo+ICAJaW50IGNtZCwgY21kX29mZnNldCwgaW5mb3hwNzA7Cj4gIAl2b2lkICp2aXJ0 Owo+IC0JaW50IHJldDsKPiAtCj4gLQlyZXQgPSBtdXRleF9sb2NrX2ludGVycnVwdGlibGUoJmRl di0+c3RydWN0X211dGV4KTsKPiAtCWlmIChyZXQpCj4gLQkJcmV0dXJuIHJldDsKPiAgCj4gIAlz ZXFfcHJpbnRmKHMsICIlczogKHZhZGRyID0gMHglcCkiLAo+ICAJCSAgIHN0aV9wbGFuZV90b19z dHIoJmhxdmRwLT5wbGFuZSksIGhxdmRwLT5yZWdzKTsKPiBAQCAtNjI5LDcgKzYyMyw2IEBAIHN0 YXRpYyBpbnQgaHF2ZHBfZGJnX3Nob3coc3RydWN0IHNlcV9maWxlICpzLCB2b2lkICpkYXRhKQo+ ICAKPiAgCXNlcV9wdXRzKHMsICJcbiIpOwo+ICAKPiAtCW11dGV4X3VubG9jaygmZGV2LT5zdHJ1 Y3RfbXV0ZXgpOwo+ICAJcmV0dXJuIDA7Cj4gIH0KPiAgCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMv Z3B1L2RybS9zdGkvc3RpX21peGVyLmMgYi9kcml2ZXJzL2dwdS9kcm0vc3RpL3N0aV9taXhlci5j Cj4gaW5kZXggZTc0MjVjMy4uY2M4OWQ3NSAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0v c3RpL3N0aV9taXhlci5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL3N0aS9zdGlfbWl4ZXIuYwo+ IEBAIC0xNTAsMTIgKzE1MCw2IEBAIHN0YXRpYyBpbnQgbWl4ZXJfZGJnX3Nob3coc3RydWN0IHNl cV9maWxlICpzLCB2b2lkICphcmcpCj4gIHsKPiAgCXN0cnVjdCBkcm1faW5mb19ub2RlICpub2Rl ID0gcy0+cHJpdmF0ZTsKPiAgCXN0cnVjdCBzdGlfbWl4ZXIgKm1peGVyID0gKHN0cnVjdCBzdGlf bWl4ZXIgKilub2RlLT5pbmZvX2VudC0+ZGF0YTsKPiAtCXN0cnVjdCBkcm1fZGV2aWNlICpkZXYg PSBub2RlLT5taW5vci0+ZGV2Owo+IC0JaW50IHJldDsKPiAtCj4gLQlyZXQgPSBtdXRleF9sb2Nr X2ludGVycnVwdGlibGUoJmRldi0+c3RydWN0X211dGV4KTsKPiAtCWlmIChyZXQpCj4gLQkJcmV0 dXJuIHJldDsKPiAgCj4gIAlzZXFfcHJpbnRmKHMsICIlczogKHZhZGRyID0gMHglcCkiLAo+ICAJ CSAgIHN0aV9taXhlcl90b19zdHIobWl4ZXIpLCBtaXhlci0+cmVncyk7Cj4gQEAgLTE3NSw3ICsx NjksNiBAQCBzdGF0aWMgaW50IG1peGVyX2RiZ19zaG93KHN0cnVjdCBzZXFfZmlsZSAqcywgdm9p ZCAqYXJnKQo+ICAJbWl4ZXJfZGJnX214bihzLCBtaXhlci0+cmVncyArIEdBTV9NSVhFUl9NWDAp Owo+ICAJc2VxX3B1dHMocywgIlxuIik7Cj4gIAo+IC0JbXV0ZXhfdW5sb2NrKCZkZXYtPnN0cnVj dF9tdXRleCk7Cj4gIAlyZXR1cm4gMDsKPiAgfQo+ICAKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9n cHUvZHJtL3N0aS9zdGlfdHZvdXQuYyBiL2RyaXZlcnMvZ3B1L2RybS9zdGkvc3RpX3R2b3V0LmMK PiBpbmRleCAyYzk5MDE2Li5kNjQxYTVmIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9z dGkvc3RpX3R2b3V0LmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vc3RpL3N0aV90dm91dC5jCj4g QEAgLTUxNCwxMyArNTE0LDcgQEAgc3RhdGljIGludCB0dm91dF9kYmdfc2hvdyhzdHJ1Y3Qgc2Vx X2ZpbGUgKnMsIHZvaWQgKmRhdGEpCj4gIHsKPiAgCXN0cnVjdCBkcm1faW5mb19ub2RlICpub2Rl ID0gcy0+cHJpdmF0ZTsKPiAgCXN0cnVjdCBzdGlfdHZvdXQgKnR2b3V0ID0gKHN0cnVjdCBzdGlf dHZvdXQgKilub2RlLT5pbmZvX2VudC0+ZGF0YTsKPiAtCXN0cnVjdCBkcm1fZGV2aWNlICpkZXYg PSBub2RlLT5taW5vci0+ZGV2Owo+ICAJc3RydWN0IGRybV9jcnRjICpjcnRjOwo+IC0JaW50IHJl dDsKPiAtCj4gLQlyZXQgPSBtdXRleF9sb2NrX2ludGVycnVwdGlibGUoJmRldi0+c3RydWN0X211 dGV4KTsKPiAtCWlmIChyZXQpCj4gLQkJcmV0dXJuIHJldDsKPiAgCj4gIAlzZXFfcHJpbnRmKHMs ICJUVk9VVDogKHZhZGRyID0gMHglcCkiLCB0dm91dC0+cmVncyk7Cj4gIAo+IEBAIC01ODYsNyAr NTgwLDYgQEAgc3RhdGljIGludCB0dm91dF9kYmdfc2hvdyhzdHJ1Y3Qgc2VxX2ZpbGUgKnMsIHZv aWQgKmRhdGEpCj4gIAlEQkdGU19EVU1QKFRWT19BVVhfSU5fVklEX0ZPUk1BVCk7Cj4gIAlzZXFf cHV0cyhzLCAiXG4iKTsKPiAgCj4gLQltdXRleF91bmxvY2soJmRldi0+c3RydWN0X211dGV4KTsK PiAgCXJldHVybiAwOwo+ICB9Cj4gIAo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vc3Rp L3N0aV92aWQuYyBiL2RyaXZlcnMvZ3B1L2RybS9zdGkvc3RpX3ZpZC5jCj4gaW5kZXggNWEyYzVk Yy4uY2JhMzIxNCAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vc3RpL3N0aV92aWQuYwo+ ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9zdGkvc3RpX3ZpZC5jCj4gQEAgLTkxLDEyICs5MSw2IEBA IHN0YXRpYyBpbnQgdmlkX2RiZ19zaG93KHN0cnVjdCBzZXFfZmlsZSAqcywgdm9pZCAqYXJnKQo+ ICB7Cj4gIAlzdHJ1Y3QgZHJtX2luZm9fbm9kZSAqbm9kZSA9IHMtPnByaXZhdGU7Cj4gIAlzdHJ1 Y3Qgc3RpX3ZpZCAqdmlkID0gKHN0cnVjdCBzdGlfdmlkICopbm9kZS0+aW5mb19lbnQtPmRhdGE7 Cj4gLQlzdHJ1Y3QgZHJtX2RldmljZSAqZGV2ID0gbm9kZS0+bWlub3ItPmRldjsKPiAtCWludCBy ZXQ7Cj4gLQo+IC0JcmV0ID0gbXV0ZXhfbG9ja19pbnRlcnJ1cHRpYmxlKCZkZXYtPnN0cnVjdF9t dXRleCk7Cj4gLQlpZiAocmV0KQo+IC0JCXJldHVybiByZXQ7Cj4gIAo+ICAJc2VxX3ByaW50Zihz LCAiVklEOiAodmFkZHI9IDB4JXApIiwgdmlkLT5yZWdzKTsKPiAgCj4gQEAgLTEyMSw3ICsxMTUs NiBAQCBzdGF0aWMgaW50IHZpZF9kYmdfc2hvdyhzdHJ1Y3Qgc2VxX2ZpbGUgKnMsIHZvaWQgKmFy ZykKPiAgCURCR0ZTX0RVTVAoVklEX0NTQVQpOwo+ICAJc2VxX3B1dHMocywgIlxuIik7Cj4gIAo+ IC0JbXV0ZXhfdW5sb2NrKCZkZXYtPnN0cnVjdF9tdXRleCk7Cj4gIAlyZXR1cm4gMDsKPiAgfQo+ ICAKPiAtLSAKPiAxLjkuMQo+IAoKLS0gCkRhbmllbCBWZXR0ZXIKU29mdHdhcmUgRW5naW5lZXIs IEludGVsIENvcnBvcmF0aW9uCmh0dHA6Ly9ibG9nLmZmd2xsLmNoCl9fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmRyaS1kZXZlbCBtYWlsaW5nIGxpc3QKZHJp LWRldmVsQGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9y Zy9tYWlsbWFuL2xpc3RpbmZvL2RyaS1kZXZlbAo=