From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Cyrus-Session-Id: sloti22d1t05-199772-1517778199-2-3329395793310581087 X-Sieve: CMU Sieve 3.0 X-Spam-known-sender: no ("Email failed DMARC policy for domain") X-Spam-score: 0.0 X-Spam-hits: BAYES_00 -1.9, FREEMAIL_FORGED_FROMDOMAIN 0.195, FREEMAIL_FROM 0.001, HEADER_FROM_DIFFERENT_DOMAINS 0.001, RCVD_IN_DNSWL_MED -2.3, SPF_PASS -0.001, LANGUAGES en, BAYES_USED global, SA_VERSION 3.4.0 X-Spam-source: IP='140.211.166.138', Host='smtp1.osuosl.org', Country='US', FromHeader='com', MailFrom='org' X-Spam-charsets: plain='utf-8' X-IgnoreVacation: yes ("Email failed DMARC policy for domain") X-Resolved-to: greg@kroah.com X-Delivered-to: greg@kroah.com X-Mail-from: driverdev-devel-bounces@linuxdriverproject.org ARC-Seal: i=1; a=rsa-sha256; cv=none; d=messagingengine.com; s=arctest; t=1517778199; b=rhZiasIT9J9iXdSdTHfpcqLDceg0C0FMQaUVzlMYSHA1Gu5 SFVCxR+Odz8E6/7lNu1Ni9Xgu4zjjxBiLgLih63EmeFO3ECtfEsRII2WuT0kmA1M Z9EYo+//nJKzbvW0GyJaWD6RsY/hzAw84HZdIx5SIn6zFYeoNv1Lq162HuWh4P6X 9ocVdH+yoiki1bCxQ5/oQv+Fx7PnkpsZAxMtuJgSU4rKqVHpER6kXl2rwq0eYvgf vWMVp06i2OZWMwEvY/a7OVOesvYWDP4K6T8v2dRDmeGXU1jRBiGF0idRHSotvQAa XtK9HJXeb1y0gmPpE/utbBHrSnPrV8ks3taoeaA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=message-id:subject:from:to:date :in-reply-to:references:mime-version:list-id:list-unsubscribe :list-archive:list-post:list-help:list-subscribe:cc:content-type :content-transfer-encoding:sender; s=arctest; t=1517778199; bh=F tMfrdUwKFJjDSWVtew00a/rHyXAH3XNpc/EmlMtqcc=; b=tigIiGrtJN583JZza 7B8wb8V6Ev80R4OB42Ohv0AphxElxxSvkYRJHu2RosRoy+TYKpUc/+bQGwfkC/Ws meVesTKKTJCZCFkYbz5j1qhy8zUQzuGiw2/4S2oteikDsPQYM5L1aWpGEQ0LCkFl gpSHUIq6FMStkKPAsQvFhIi83dFlgcr2WMfETP8QZv8MlYg9ho/r3o16oMzw3Alf rnU/5UVof6AIXzZ7GjxoOGbiWfaSHw6tciJMBZolE+wij0XoDYigJRhdmEB/zxX6 McA4gVzENg5VojpmLxcxdBW6Yg5cNsSNsxAG0Q2g2IR4mdxsy4lUw/QSege3MfC8 iG5kA== ARC-Authentication-Results: i=1; mx4.messagingengine.com; arc=none (no signatures found); dkim=fail (message has been altered; 2048-bit rsa key sha256) header.d=gmail.com header.i=@gmail.com header.b=XXXVaMCZ x-bits=2048 x-keytype=rsa x-algorithm=sha256 x-selector=20161025; dmarc=fail (p=none,has-list-id=yes,d=none) header.from=gmail.com; iprev=pass policy.iprev=140.211.166.138 (smtp1.osuosl.org); spf=pass smtp.mailfrom=driverdev-devel-bounces@linuxdriverproject.org smtp.helo=whitealder.osuosl.org; x-aligned-from=fail; x-google-dkim=fail (message has been altered; 2048-bit rsa key) header.d=1e100.net header.i=@1e100.net header.b=K8Hh3ZJB; x-ptr=fail x-ptr-helo=whitealder.osuosl.org x-ptr-lookup=smtp1.osuosl.org; x-return-mx=pass smtp.domain=linuxdriverproject.org smtp.result=pass smtp_is_org_domain=yes header.domain=gmail.com header.result=pass header_is_org_domain=yes; x-tls=pass version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128 Authentication-Results: mx4.messagingengine.com; arc=none (no signatures found); dkim=fail (message has been altered; 2048-bit rsa key sha256) header.d=gmail.com header.i=@gmail.com header.b=XXXVaMCZ x-bits=2048 x-keytype=rsa x-algorithm=sha256 x-selector=20161025; dmarc=fail (p=none,has-list-id=yes,d=none) header.from=gmail.com; iprev=pass policy.iprev=140.211.166.138 (smtp1.osuosl.org); spf=pass smtp.mailfrom=driverdev-devel-bounces@linuxdriverproject.org smtp.helo=whitealder.osuosl.org; x-aligned-from=fail; x-google-dkim=fail (message has been altered; 2048-bit rsa key) header.d=1e100.net header.i=@1e100.net header.b=K8Hh3ZJB; x-ptr=fail x-ptr-helo=whitealder.osuosl.org x-ptr-lookup=smtp1.osuosl.org; x-return-mx=pass smtp.domain=linuxdriverproject.org smtp.result=pass smtp_is_org_domain=yes header.domain=gmail.com header.result=pass header_is_org_domain=yes; x-tls=pass version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128 X-Remote-Delivered-To: driverdev-devel@osuosl.org X-Google-Smtp-Source: AH8x224ZLFYhpam7oyn9ibKLmRrw5ewOOHTlEhVyKRgaVfXOIWSlf+Bsofzm22aLQPKsrgBk4vxE5w== Message-ID: <1517778185.2292.10.camel@gmail.com> Subject: Re: [PATCH v4] Staging: iio: ade7758: Expand buf_lock to cover both buffer and state protection From: Shreeya Patel To: Jonathan Cameron Date: Mon, 05 Feb 2018 02:33:05 +0530 In-Reply-To: <20180204111022.0e6d08f6@archlinux> References: <1517671892-4045-1-git-send-email-shreeya.patel23498@gmail.com> <20180204111022.0e6d08f6@archlinux> X-Mailer: Evolution 3.18.5.2-0ubuntu3.2 Mime-Version: 1.0 X-BeenThere: driverdev-devel@linuxdriverproject.org X-Mailman-Version: 2.1.24 List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: devel@driverdev.osuosl.org, lars@metafoo.de, Michael.Hennerich@analog.com, linux-iio@vger.kernel.org, gregkh@linuxfoundation.org, linux-kernel@vger.kernel.org, pmeerw@pmeerw.net, knaack.h@gmx.de Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: driverdev-devel-bounces@linuxdriverproject.org Sender: "devel" X-getmail-retrieved-from-mailbox: INBOX X-Mailing-List: linux-kernel@vger.kernel.org List-ID: T24gU3VuLCAyMDE4LTAyLTA0IGF0IDExOjEwICswMDAwLCBKb25hdGhhbiBDYW1lcm9uIHdyb3Rl Ogo+IE9uIFNhdCzCoMKgMyBGZWIgMjAxOCAyMTowMTozMiArMDUzMAo+IFNocmVleWEgUGF0ZWwg PHNocmVleWEucGF0ZWwyMzQ5OEBnbWFpbC5jb20+IHdyb3RlOgo+IAo+ID4gCj4gPiBpaW9fZGV2 LT5tbG9jayBpcyB0byBiZSB1c2VkIG9ubHkgYnkgdGhlIElJTyBjb3JlIGZvciBwcm90ZWN0aW5n Cj4gPiBkZXZpY2UgbW9kZSBjaGFuZ2VzIGJldHdlZW4gSU5ESU9fRElSRUNUIGFuZCBJTkRJT19C VUZGRVIuCj4gPiAKPiA+IFRoaXMgcGF0Y2ggcmVwbGFjZXMgdGhlIHVzZSBvZiBtbG9jayB3aXRo IHRoZSBhbHJlYWR5IGVzdGFibGlzaGVkCj4gPiBidWZfbG9jayBtdXRleC4KPiA+IAo+ID4gSW50 cm9kdWNpbmcgJ3VubG9ja2VkJyBmb3JtcyBvZiByZWFkIGFuZCB3cml0ZSByZWdpc3RlcnMuIFRo ZQo+ID4gcmVhZC93cml0ZSBmcmVxdWVuY3kgZnVuY3Rpb25zIG5vdyByZXF1aXJlIGJ1Zl9sb2Nr IHRvIGJlIGhlbGQuCj4gPiBUaGF0J3Mgbm90IG9idmlvdXMgc28gYXZvaWQgdGhpcyBidXQgbW92 aW5nIHRoZSBsb2NraW5nIGluc2lkZQo+ID4gdGhlIGZ1bmN0aW9ucyB3aGVyZSBpdCBpcyB0aGVu IGNsZWFyIHRoYXQgdGhleSBhcmUgdGFraW5nIHRoZQo+ID4gdW5sb2NrZWQgZm9ybXMgb2YgdGhl IHJlZ2lzdGVyIHJlYWQvd3JpdGUuCj4gPiAKPiA+IEl0IGlzbid0IHJlYWRpbHkgYXBwYXJlbnQg dGhhdCB3cml0ZSBmcmVxdWVuY3kgZnVuY3Rpb24gcmVxdWlyZXMKPiA+IHRoZSBsb2NrcyB0byBi ZSB0YWtlbiwgc28gbW92ZSBpdCBpbnNpZGUgdGhlIGZ1bmN0aW9uIHRvIHdoZXJlIGl0Cj4gPiBp cyByZXF1aXJlZCB0byBwcm90ZWN0Lgo+ID4gCj4gPiBTaWduZWQtb2ZmLWJ5OiBTaHJlZXlhIFBh dGVsIDxzaHJlZXlhLnBhdGVsMjM0OThAZ21haWwuY29tPgo+IEhpIFNocmVleWEsCj4gCkhlbGxv IHNpciwKCj4gVW5mb3J0dW5hdGVseSB0aGlzIGludHJvZHVjZXMgYSBuZXcgYnVnIC0geW91IGVu ZCB1cCB1bmxvY2tpbmcKPiBhIG11dGV4IHRoYXQgeW91IG5ldmVyIGxvY2tlZCBpbiBvbmUgb2Yg dGhlIGVycm9yIHBhdGhzLgo+IFNlZSBpbmxpbmUuCkknbGwgbWFrZSB0aGlzIGNoYW5nZS4KPiAK PiBXZSBhcmUgYWxzbyBzdGlsbCB0YWtpbmcgdGhlIG1sb2NrIGFyb3VuZCB0aGUgcmVhZCBvZiB0 aGUKPiBmcmVxdWVuY3kgd2hpY2ggZG9lc24ndCBtYWtlIGFueSBzZW5zZSBnaXZlbiB0aGVyZSBp cwo+IG5vIHJlYXNvbiB0byBwcm90ZWN0IHRoYXQgYWdhaW5zdCBzdGF0ZSBjaGFuZ2VzLgo+IEFy Z3VhYmx5IGZpeGluZyB0aGF0IGNvdWxkIGJlIGEgc2VwYXJhdGUgcGF0Y2ggYXMgaXQgbmV2ZXIK PiBtYWRlIG11Y2ggc2Vuc2UsIGJ1dCBpdCBzaG91bGQgcHJvYmFibHkgYmUgaW4gdGhpcyBzYW1l IHNlcmllcwo+IGF0IGxlYXN0LsKgwqBJIHdvdWxkIGhhdmUgbm8gcmVhbCBwcm9ibGVtIHdpdGgg aXQgYmVpbmcgaW4gaXQgdGhpcwo+IHNhbWUgcGF0Y2ggYXMgbG9uZyBhcyB0aGUgZGVzY3JpcHRp b24gYWJvdmUgbWVudGlvbnMgaXQuCj4gCj4gVGhhbmtzLAo+IAo+IEpvbmF0aGFuCj4gCj4gPiAK PiA+IC0tLQo+ID4gCj4gPiBDaGFuZ2VzIGluIHYyCj4gPiDCoCAtQWRkIHN0YXRpYyBrZXl3b3Jk IHRvIG5ld2x5IGludHJvZHVjZWQgZnVuY3Rpb25zIGFuZCByZW1vdmUgc29tZQo+ID4gYWRkZWQg Y29tbWVudHMgd2hpY2ggYXJlIG5vdCByZXF1aXJlZC4KPiA+IAo+ID4gQ2hhbmdlcyBpbiB2Mwo+ ID4gwqAgLVJlbW92ZSBzb21lIHVzZWxlc3MgbWxvY2tzIGFuZCBzZW5kIGl0IGFzIGFub3RoZXIg cGF0Y2guCj4gPiBBbHNvIG1ha2UgdGhlIG5lY2Vzc2FyeSBjaGFuZ2UgaW4gdGhlIGN1cnJlbnQg cGF0Y2ggYXNzb2NpYXRlZAo+ID4gd2l0aMKgCj4gPiB0aGUgbmV3IHBhdGNoIHdpdGggY29tbWl0 IGlkIDg4ZWJhMzMuIE1ha2UgY29tbWl0IG1lc3NhZ2UgbW9yZcKgCj4gPiBhcHByb3ByaWF0ZS4K PiA+IAo+ID4gQ2hhbmdlcyBpbiB2NAo+ID4gwqAgLVdyaXRlIGZyZXF1ZW5jeSBmdW5jdGlvbiBk byBub3QgcmVxdWlyZSBsb2NrIHNvIG1vdmUgaXQgaW5zaWRlCj4gPiB0aGUgZnVuY3Rpb24gdG8g d2hlcmUgaXQgaXMgcmVxdWlyZWQgdG8gcHJvdGVjdC4KPiA+IAo+ID4gCj4gPiDCoGRyaXZlcnMv c3RhZ2luZy9paW8vbWV0ZXIvYWRlNzc1OC5owqDCoMKgwqDCoMKgfMKgwqAyICstCj4gPiDCoGRy aXZlcnMvc3RhZ2luZy9paW8vbWV0ZXIvYWRlNzc1OF9jb3JlLmMgfCA0OQo+ID4gKysrKysrKysr KysrKysrKysrKysrKysrLS0tLS0tLS0KPiA+IMKgMiBmaWxlcyBjaGFuZ2VkLCAzOCBpbnNlcnRp b25zKCspLCAxMyBkZWxldGlvbnMoLSkKPiA+IAo+ID4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvc3Rh Z2luZy9paW8vbWV0ZXIvYWRlNzc1OC5oCj4gPiBiL2RyaXZlcnMvc3RhZ2luZy9paW8vbWV0ZXIv YWRlNzc1OC5oCj4gPiBpbmRleCA2YWU3OGQ4Li4yZGU4MWI1IDEwMDY0NAo+ID4gLS0tIGEvZHJp dmVycy9zdGFnaW5nL2lpby9tZXRlci9hZGU3NzU4LmgKPiA+ICsrKyBiL2RyaXZlcnMvc3RhZ2lu Zy9paW8vbWV0ZXIvYWRlNzc1OC5oCj4gPiBAQCAtMTExLDcgKzExMSw3IEBACj4gPiDCoCAqIEB0 cmlnOgkJZGF0YSByZWFkeSB0cmlnZ2VyIHJlZ2lzdGVyZWQgd2l0aCBpaW8KPiA+IMKgICogQHR4 OgkJCXRyYW5zbWl0IGJ1ZmZlcgo+ID4gwqAgKiBAcng6CQkJcmVjZWl2ZSBidWZmZXIKPiA+IC0g KiBAYnVmX2xvY2s6CQltdXRleCB0byBwcm90ZWN0IHR4IGFuZCByeAo+ID4gKyAqIEBidWZfbG9j azoJCW11dGV4IHRvIHByb3RlY3QgdHgsIHJ4LCByZWFkIGFuZAo+ID4gd3JpdGUgZnJlcXVlbmN5 Cj4gPiDCoCAqKi8KPiA+IMKgc3RydWN0IGFkZTc3NThfc3RhdGUgewo+ID4gwqAJc3RydWN0IHNw aV9kZXZpY2UJKnVzOwo+ID4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvc3RhZ2luZy9paW8vbWV0ZXIv YWRlNzc1OF9jb3JlLmMKPiA+IGIvZHJpdmVycy9zdGFnaW5nL2lpby9tZXRlci9hZGU3NzU4X2Nv cmUuYwo+ID4gaW5kZXggMjI3ZGJmYy4uZmYxOWQ0NiAxMDA2NDQKPiA+IC0tLSBhL2RyaXZlcnMv c3RhZ2luZy9paW8vbWV0ZXIvYWRlNzc1OF9jb3JlLmMKPiA+ICsrKyBiL2RyaXZlcnMvc3RhZ2lu Zy9paW8vbWV0ZXIvYWRlNzc1OF9jb3JlLmMKPiA+IEBAIC0yNCwxNyArMjQsMjUgQEAKPiA+IMKg I2luY2x1ZGUgIm1ldGVyLmgiCj4gPiDCoCNpbmNsdWRlICJhZGU3NzU4LmgiCj4gPiDCoAo+ID4g LWludCBhZGU3NzU4X3NwaV93cml0ZV9yZWdfOChzdHJ1Y3QgZGV2aWNlICpkZXYsIHU4IHJlZ19h ZGRyZXNzLCB1OAo+ID4gdmFsKQo+ID4gK3N0YXRpYyBpbnQgX19hZGU3NzU4X3NwaV93cml0ZV9y ZWdfOChzdHJ1Y3QgZGV2aWNlICpkZXYsIHU4Cj4gPiByZWdfYWRkcmVzcywgdTggdmFsKQo+ID4g wqB7Cj4gPiAtCWludCByZXQ7Cj4gPiDCoAlzdHJ1Y3QgaWlvX2RldiAqaW5kaW9fZGV2ID0gZGV2 X3RvX2lpb19kZXYoZGV2KTsKPiA+IMKgCXN0cnVjdCBhZGU3NzU4X3N0YXRlICpzdCA9IGlpb19w cml2KGluZGlvX2Rldik7Cj4gPiDCoAo+ID4gLQltdXRleF9sb2NrKCZzdC0+YnVmX2xvY2spOwo+ ID4gwqAJc3QtPnR4WzBdID0gQURFNzc1OF9XUklURV9SRUcocmVnX2FkZHJlc3MpOwo+ID4gwqAJ c3QtPnR4WzFdID0gdmFsOwo+ID4gwqAKPiA+IC0JcmV0ID0gc3BpX3dyaXRlKHN0LT51cywgc3Qt PnR4LCAyKTsKPiA+ICsJcmV0dXJuIHNwaV93cml0ZShzdC0+dXMsIHN0LT50eCwgMik7Cj4gPiAr fQo+ID4gKwo+ID4gK2ludCBhZGU3NzU4X3NwaV93cml0ZV9yZWdfOChzdHJ1Y3QgZGV2aWNlICpk ZXYsIHU4IHJlZ19hZGRyZXNzLCB1OAo+ID4gdmFsKQo+ID4gK3sKPiA+ICsJaW50IHJldDsKPiA+ ICsJc3RydWN0IGlpb19kZXYgKmluZGlvX2RldiA9IGRldl90b19paW9fZGV2KGRldik7Cj4gPiAr CXN0cnVjdCBhZGU3NzU4X3N0YXRlICpzdCA9IGlpb19wcml2KGluZGlvX2Rldik7Cj4gPiArCj4g PiArCW11dGV4X2xvY2soJnN0LT5idWZfbG9jayk7Cj4gPiArCXJldCA9IF9fYWRlNzc1OF9zcGlf d3JpdGVfcmVnXzgoZGV2LCByZWdfYWRkcmVzcywgdmFsKTsKPiA+IMKgCW11dGV4X3VubG9jaygm c3QtPmJ1Zl9sb2NrKTsKPiA+IMKgCj4gPiDCoAlyZXR1cm4gcmV0Owo+ID4gQEAgLTkxLDcgKzk5 LDcgQEAgc3RhdGljIGludCBhZGU3NzU4X3NwaV93cml0ZV9yZWdfMjQoc3RydWN0IGRldmljZQo+ ID4gKmRldiwgdTggcmVnX2FkZHJlc3MsCj4gPiDCoAlyZXR1cm4gcmV0Owo+ID4gwqB9Cj4gPiDC oAo+ID4gLWludCBhZGU3NzU4X3NwaV9yZWFkX3JlZ184KHN0cnVjdCBkZXZpY2UgKmRldiwgdTgg cmVnX2FkZHJlc3MsIHU4Cj4gPiAqdmFsKQo+ID4gK3N0YXRpYyBpbnQgX19hZGU3NzU4X3NwaV9y ZWFkX3JlZ184KHN0cnVjdCBkZXZpY2UgKmRldiwgdTgKPiA+IHJlZ19hZGRyZXNzLCB1OCAqdmFs KQo+ID4gwqB7Cj4gPiDCoAlzdHJ1Y3QgaWlvX2RldiAqaW5kaW9fZGV2ID0gZGV2X3RvX2lpb19k ZXYoZGV2KTsKPiA+IMKgCXN0cnVjdCBhZGU3NzU4X3N0YXRlICpzdCA9IGlpb19wcml2KGluZGlv X2Rldik7Cj4gPiBAQCAtMTExLDcgKzExOSw2IEBAIGludCBhZGU3NzU4X3NwaV9yZWFkX3JlZ184 KHN0cnVjdCBkZXZpY2UgKmRldiwKPiA+IHU4IHJlZ19hZGRyZXNzLCB1OCAqdmFsKQo+ID4gwqAJ CX0sCj4gPiDCoAl9Owo+ID4gwqAKPiA+IC0JbXV0ZXhfbG9jaygmc3QtPmJ1Zl9sb2NrKTsKPiA+ IMKgCXN0LT50eFswXSA9IEFERTc3NThfUkVBRF9SRUcocmVnX2FkZHJlc3MpOwo+ID4gwqAJc3Qt PnR4WzFdID0gMDsKPiA+IMKgCj4gPiBAQCAtMTI0LDcgKzEzMSwxOSBAQCBpbnQgYWRlNzc1OF9z cGlfcmVhZF9yZWdfOChzdHJ1Y3QgZGV2aWNlICpkZXYsCj4gPiB1OCByZWdfYWRkcmVzcywgdTgg KnZhbCkKPiA+IMKgCSp2YWwgPSBzdC0+cnhbMF07Cj4gPiDCoAo+ID4gwqBlcnJvcl9yZXQ6Cj4g PiArCXJldHVybiByZXQ7Cj4gPiArfQo+ID4gKwo+ID4gK2ludCBhZGU3NzU4X3NwaV9yZWFkX3Jl Z184KHN0cnVjdCBkZXZpY2UgKmRldiwgdTggcmVnX2FkZHJlc3MsIHU4Cj4gPiAqdmFsKQo+ID4g K3sKPiA+ICsJc3RydWN0IGlpb19kZXYgKmluZGlvX2RldiA9IGRldl90b19paW9fZGV2KGRldik7 Cj4gPiArCXN0cnVjdCBhZGU3NzU4X3N0YXRlICpzdCA9IGlpb19wcml2KGluZGlvX2Rldik7Cj4g PiArCWludCByZXQ7Cj4gPiArCj4gPiArCW11dGV4X2xvY2soJnN0LT5idWZfbG9jayk7Cj4gPiAr CXJldCA9IF9fYWRlNzc1OF9zcGlfcmVhZF9yZWdfOChkZXYsIHJlZ19hZGRyZXNzLCB2YWwpOwo+ ID4gwqAJbXV0ZXhfdW5sb2NrKCZzdC0+YnVmX2xvY2spOwo+ID4gKwo+ID4gwqAJcmV0dXJuIHJl dDsKPiA+IMKgfQo+ID4gwqAKPiA+IEBAIC00ODAsMTAgKzQ5OSwxMiBAQCBzdGF0aWMgaW50IGFk ZTc3NThfcmVhZF9zYW1wX2ZyZXEoc3RydWN0Cj4gPiBkZXZpY2UgKmRldiwgaW50ICp2YWwpCj4g PiDCoAlyZXR1cm4gMDsKPiA+IMKgfQo+ID4gwqAKPiA+IC1zdGF0aWMgaW50IGFkZTc3NThfd3Jp dGVfc2FtcF9mcmVxKHN0cnVjdCBkZXZpY2UgKmRldiwgaW50IHZhbCkKPiA+ICtzdGF0aWMgaW50 IGFkZTc3NThfd3JpdGVfc2FtcF9mcmVxKHN0cnVjdCBpaW9fZGV2ICppbmRpb19kZXYsIGludAo+ ID4gdmFsKQo+ID4gwqB7Cj4gPiDCoAlpbnQgcmV0Owo+ID4gwqAJdTggcmVnLCB0Owo+ID4gKwlz dHJ1Y3QgYWRlNzc1OF9zdGF0ZSAqc3QgPSBpaW9fcHJpdihpbmRpb19kZXYpOwo+ID4gKwlzdHJ1 Y3QgZGV2aWNlICpkZXYgPSAmaW5kaW9fZGV2LT5kZXY7Cj4gPiDCoAo+ID4gwqAJc3dpdGNoICh2 YWwpIHsKPiA+IMKgCWNhc2UgMjYwNDA6Cj4gPiBAQCAtNTAzLDE2ICs1MjQsMjAgQEAgc3RhdGlj IGludCBhZGU3NzU4X3dyaXRlX3NhbXBfZnJlcShzdHJ1Y3QKPiA+IGRldmljZSAqZGV2LCBpbnQg dmFsKQo+ID4gwqAJCWdvdG8gb3V0Owo+IFRoaXMgZ290byBvdXQgcmVzdWx0cyBpbiBhbiB1bmxv Y2sgYnV0IHRoZSBsb2NrIGhhc24ndCBiZWVuIGxvY2tlZAo+IGZvciBhIGZldyBtb3JlIGxpbmVz Li4uCj4gCj4gQ2hhbmdlIHRoaXMgdG8gYSBkaXJlY3QgcmV0dXJuIGhlcmUgcmF0aGVyIHRoYW4g YSBnb3RvIHRvIGZpeCB0aGlzLgo+IHJldHVybiAtRUlOVkFMOwo+IAo+ID4gCj4gPiDCoAl9Cj4g PiDCoAo+ID4gLQlyZXQgPSBhZGU3NzU4X3NwaV9yZWFkX3JlZ184KGRldiwgQURFNzc1OF9XQVZN T0RFLCAmcmVnKTsKPiA+ICsJbXV0ZXhfbG9jaygmc3QtPmJ1Zl9sb2NrKTsKPiA+ICsKPiA+ICsJ cmV0ID0gX19hZGU3NzU4X3NwaV9yZWFkX3JlZ184KGRldiwgQURFNzc1OF9XQVZNT0RFLAo+ID4g JnJlZyk7Cj4gPiDCoAlpZiAocmV0KQo+ID4gwqAJCWdvdG8gb3V0OwoKSGVyZSwgY2FuIEkgbW92 ZSB0aGUgYWJvdmUgbG9jayBhZnRlciB0aGUgY2FsbGluZyBvZiB0aGUgcmVhZCByZWdpc3Rlcgpi dXQgYmVmb3JlIHRoZSBpZihyZXQpIHN0YXRlbWVudD8KV2l0aCB0aGlzIHdlIGNhbiBhdm9pZCBs b2NrcyBvdmVyIHRoZSByZWFkIGNhc2VzLgpNb3N0bHksIHRoaXMgc2hvdWxkbid0IGNyZWF0ZSBh bnkgcHJvYmxlbSBidXQgeWV0IEkgdGhvdWdodCBvZiBmaXJzdApjb25maXJtaW5nIGl0IGZyb20g eW91LgoKVGhhbmsgeW91wqAKCj4gPiDCoAo+ID4gwqAJcmVnICY9IH4oNSA8PCAzKTsKPiA+IMKg CXJlZyB8PSB0IDw8IDU7Cj4gPiDCoAo+ID4gLQlyZXQgPSBhZGU3NzU4X3NwaV93cml0ZV9yZWdf OChkZXYsIEFERTc3NThfV0FWTU9ERSwgcmVnKTsKPiA+ICsJcmV0ID0gX19hZGU3NzU4X3NwaV93 cml0ZV9yZWdfOChkZXYsIEFERTc3NThfV0FWTU9ERSwKPiA+IHJlZyk7Cj4gPiDCoAo+ID4gwqBv dXQ6Cj4gPiArCW11dGV4X3VubG9jaygmc3QtPmJ1Zl9sb2NrKTsKPiA+ICsKPiA+IMKgCXJldHVy biByZXQ7Cj4gPiDCoH0KPiA+IMKgCj4gPiBAQCAtNTQ1LDkgKzU3MCw5IEBAIHN0YXRpYyBpbnQg YWRlNzc1OF93cml0ZV9yYXcoc3RydWN0IGlpb19kZXYKPiA+ICppbmRpb19kZXYsCj4gPiDCoAlj YXNlIElJT19DSEFOX0lORk9fU0FNUF9GUkVROgo+ID4gwqAJCWlmICh2YWwyKQo+ID4gwqAJCQly ZXR1cm4gLUVJTlZBTDsKPiA+IC0JCW11dGV4X2xvY2soJmluZGlvX2Rldi0+bWxvY2spOwo+ID4g LQkJcmV0ID0gYWRlNzc1OF93cml0ZV9zYW1wX2ZyZXEoJmluZGlvX2Rldi0+ZGV2LAo+ID4gdmFs KTsKPiA+IC0JCW11dGV4X3VubG9jaygmaW5kaW9fZGV2LT5tbG9jayk7Cj4gPiArCj4gPiArCQly ZXQgPSBhZGU3NzU4X3dyaXRlX3NhbXBfZnJlcShpbmRpb19kZXYsIHZhbCk7Cj4gPiArCj4gPiDC oAkJcmV0dXJuIHJldDsKPiA+IMKgCWRlZmF1bHQ6Cj4gPiDCoAkJcmV0dXJuIC1FSU5WQUw7Cl9f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmRldmVsIG1haWxp bmcgbGlzdApkZXZlbEBsaW51eGRyaXZlcnByb2plY3Qub3JnCmh0dHA6Ly9kcml2ZXJkZXYubGlu dXhkcml2ZXJwcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL2RyaXZlcmRldi1kZXZlbAo=