From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 864D2C28CF5 for ; Wed, 26 Jan 2022 10:41:33 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:References:In-Reply-To: Message-ID:Subject:Cc:To:From:Date:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=GDAqFHIrvQxtmisjdkLB4pI2df/jOedvcCgZZ6lF79A=; b=e5nUQdRuIE6SXY WzOoNWenasw0ILfyUsdru6vyzZ3fjDc8bw5sEDmMZ8uZNOmc81T9S9ulNiL3xiEA7GA8itQclbmGr q68LpPPzW0yG8qRkp6nHWc+uD22JvjHC2e/RQ8LvNCuoPPhJKWM5n0NDWROS8BOqJjEkx038Rg446 borUn69SOzQeHAz6QA99glIEPILHJ43RYA8yvK6Mh0FbrRGHoq/bYvGK92uUtVvxWqcXA6zmzkZV5 /jhVnJM8s2bdx90QtQd4xKO97bGGsS9bgRDBLO1rqdfTYZJw3pXsP7aTx7DLrkc9kU9LmEroo2Rpa BomiQDud+eVGSEUltCdA==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1nCfjL-00BIjp-6y; Wed, 26 Jan 2022 10:40:47 +0000 Received: from relay9-d.mail.gandi.net ([2001:4b98:dc4:8::229]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1nCfjH-00BIia-GJ for linux-mtd@lists.infradead.org; Wed, 26 Jan 2022 10:40:45 +0000 Received: (Authenticated sender: miquel.raynal@bootlin.com) by mail.gandi.net (Postfix) with ESMTPSA id B8C97FF802; Wed, 26 Jan 2022 10:40:39 +0000 (UTC) Date: Wed, 26 Jan 2022 11:40:38 +0100 From: Miquel Raynal To: Zhengxun Li Cc: linux-mtd@lists.infradead.org, zhengxunli@mxic.com.tw Subject: Re: [PATCH 3/4] mtd: spinand: Add support continuous read operation Message-ID: <20220126114038.2d88de8e@xps13> In-Reply-To: References: <1633676279-29708-1-git-send-email-zhengxunli.mxic@gmail.com> <1633676279-29708-4-git-send-email-zhengxunli.mxic@gmail.com> <20211109121036.01376b0c@xps13> <20211122102132.1af7b572@xps13> Organization: Bootlin X-Mailer: Claws Mail 3.17.7 (GTK+ 2.24.32; x86_64-pc-linux-gnu) MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20220126_024043_888194_4BDB2C69 X-CRM114-Status: GOOD ( 48.06 ) X-BeenThere: linux-mtd@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: Linux MTD discussion mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: "linux-mtd" Errors-To: linux-mtd-bounces+linux-mtd=archiver.kernel.org@lists.infradead.org SGkgWmhlbmd4dW4sCgp6aGVuZ3h1bmxpLm14aWNAZ21haWwuY29tIHdyb3RlIG9uIFdlZCwgMTIg SmFuIDIwMjIgMTc6NDk6MzMgKzA4MDA6Cgo+IEhpIE1pcXVlbCwKPiAKPiBTb3JyeSBmb3IgdGhl IGxhdGUgcmVwbHkuCj4gCj4gPiA+Cj4gPiA+ICAKPiA+ID4gPiBIZWxsbywKPiA+ID4gPgo+ID4g PiA+IHpoZW5neHVubGkubXhpY0BnbWFpbC5jb20gd3JvdGUgb24gRnJpLCAgOCBPY3QgMjAyMSAx NDo1Nzo1OCArMDgwMDoKPiA+ID4gPiAgCj4gPiA+ID4gPiBUaGUgcGF0Y2ggYWRkcyBhIGNvbnRp bnVvdXMgcmVhZCBzdGFydCBmbGFnIHRvIHN1cHBvcnQgY29udGludW91cwo+ID4gPiA+ID4gcmVh ZCBvcGVyYXRpb25zLiBUaGUgY29udGludW91cyByZWFkIG9wZXJhdGlvbiBvbmx5IGlzc3VlcyBh IHBhZ2UKPiA+ID4gPiA+IHJlYWQgY29tbWFuZCAoMTNoKSwgaXNzdWVzIG11bHRpcGxlIHJlYWQg Y29tbWFuZHMgZnJvbSB0aGUgY2FjaGUKPiA+ID4gPiA+ICgwM2gvMEJoLzNCaC82QmgvQkJoL0VC aCkgdG8gcmVhZCBjb250aW51b3VzIGFkZHJlc3MgZGF0YSwgYW5kCj4gPiA+ID4gPiBmaW5hbGx5 IGlzc3VlcyBhbiBleGl0IGNvbnRpbnVvdXMgcmVhZCBjb21tYW5kICg2M2gpIHRvIHRlcm1pbmF0 ZQo+ID4gPiA+ID4gdGhpcyBjb250aW51b3VzIHJlYWQgb3BlcmF0aW9uLgo+ID4gPiA+ID4KPiA+ ID4gPiA+IFNpbmNlIHRoZSBjb250aW51b3VzIHJlYWQgbW9kZSBjYW4gb25seSByZWFkIHRoZSBl bnRpcmUgcGFnZSBvZiBkYXRhCj4gPiA+ID4gPiAoMktCKSAgCj4gPiA+ID4KPiA+ID4gPiBSZW1v dmUgdGhpcyBzaXplLCBpdCBpcyBoaWdobHkgdW5saWtlbHkgdGhhdCBhbGwgU1BJIE5BTkQgZGV2 aWNlcyB3aWxsCj4gPiA+ID4gZXZlciBiZSByZXN0cmljdGVkIHRvIDJraUIgcmlnaHQ/ICAKPiA+ ID4KPiA+ID4gT2theS4KPiA+ID4gIAo+ID4gPiA+ID4gYW5kIGNhbm5vdCByZWFkIHRoZSBvb2Ig ZGF0YSwgIAo+ID4gPiA+Cj4gPiA+ID4gVGhpcyBpcyBzb21ldGhpbmcgdGhhdCB5b3Ugc2VlbSB0 byBza2lwIHRvIGNoZWNrIGluIHlvdXIgc2VyaWVzLiAgCj4gPiA+Cj4gPiA+IEluIGZhY3QsIG9u bHkgRUNDLUZyZWUgU1BJLU5BTkQgc3VwcG9ydCBjb250aW51b3VzIHJlYWQgbW9kZSBub3cuCj4g PiA+ICAKPiA+ID4gPiA+IHRoZSBkeW5hbWljIGNoYW5nZSBtb2RlIGlzIGFkZGVkCj4gPiA+ID4g PiB0byBlbmFibGUgY29udGludW91cyByZWFkIG1vZGUgYW5kIGRpc2FibGUgY29udGludW91cyBy ZWFkIG1vZGUgaW4KPiA+ID4gPiA+IHNwaW5hbmRfbXRkX3JlYWQgdG8gYXZvaWQgd3JpdGluZyBh bmQgZXJhc2luZyBvcGVyYXRpb24gaXMgYWJub3JtYWwuCj4gPiA+ID4gPgo+ID4gPiA+ID4gU2ln bmVkLW9mZi1ieTogWmhlbmd4dW4gPHpoZW5neHVubGkubXhpY0BnbWFpbC5jb20+Cj4gPiA+ID4g PiAtLS0KPiA+ID4gPiA+ICBkcml2ZXJzL210ZC9uYW5kL3NwaS9jb3JlLmMgfCAzOCArKysrKysr KysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLQo+ID4gPiA+ID4gIGluY2x1ZGUvbGludXgv bXRkL3NwaW5hbmQuaCB8ICAyICsrCj4gPiA+ID4gPiAgMiBmaWxlcyBjaGFuZ2VkLCAzMSBpbnNl cnRpb25zKCspLCA5IGRlbGV0aW9ucygtKQo+ID4gPiA+ID4KPiA+ID4gPiA+IGRpZmYgLS1naXQg YS9kcml2ZXJzL210ZC9uYW5kL3NwaS9jb3JlLmMgYi9kcml2ZXJzL210ZC9uYW5kL3NwaS9jb3Jl LmMKPiA+ID4gPiA+IGluZGV4IDBkOTYzMmYuLjAzNjk0NTMgMTAwNjQ0Cj4gPiA+ID4gPiAtLS0g YS9kcml2ZXJzL210ZC9uYW5kL3NwaS9jb3JlLmMKPiA+ID4gPiA+ICsrKyBiL2RyaXZlcnMvbXRk L25hbmQvc3BpL2NvcmUuYwo+ID4gPiA+ID4gQEAgLTE5NSw2ICsxOTUsOCBAQCBzdGF0aWMgaW50 IHNwaW5hbmRfaW5pdF9xdWFkX2VuYWJsZShzdHJ1Y3Qgc3BpbmFuZF9kZXZpY2UgKnNwaW5hbmQp Cj4gPiA+ID4gPgo+ID4gPiA+ID4gIHN0YXRpYyBpbnQgc3BpbmFuZF9jb250aW51b3VzX3JlYWRf ZW5hYmxlKHN0cnVjdCBzcGluYW5kX2RldmljZSAqc3BpbmFuZCkKPiA+ID4gPiA+ICB7Cj4gPiA+ ID4gPiArICAgICBzcGluYW5kLT5jb250X3JlYWRfc3RhcnQgPSBmYWxzZTsgIAo+ID4gPiA+Cj4g PiA+ID4gSSByZWFsbHkgZG9uJ3QgbGlrZSB0aGUgIj0gZmFsc2UiIGluIHRoZSAicmVhZF9lbmFi bGUiIGhvb2suIFdoeSBub3QKPiA+ID4gPiBqdXN0IGNoZWNraW5nIGRpcmVjdGx5IGluIG10ZF9y ZWFkIGFuZCBkcm9wIHRoYXQgYm9vbGVhbiA/ICAKPiA+ID4KPiA+ID4gT2theSwgSSB3aWxsIGRl bGV0IGl0Lgo+ID4gPiAgCj4gPiA+ID4gPiArCj4gPiA+ID4gPiAgICAgICBpZiAoIShzcGluYW5k LT5mbGFncyAmIFNQSU5BTkRfSEFTX0NPTlRfUkVBRF9CSVQpKQo+ID4gPiA+ID4gICAgICAgICAg ICAgICByZXR1cm4gMDsKPiA+ID4gPiA+Cj4gPiA+ID4gPiBAQCAtNTk4LDE2ICs2MDAsMjIgQEAg c3RhdGljIGludCBzcGluYW5kX3JlYWRfcGFnZShzdHJ1Y3Qgc3BpbmFuZF9kZXZpY2UgKnNwaW5h bmQsCj4gPiA+ID4gPiAgICAgICBpZiAocmV0KQo+ID4gPiA+ID4gICAgICAgICAgICAgICByZXR1 cm4gcmV0Owo+ID4gPiA+ID4KPiA+ID4gPiA+IC0gICAgIHJldCA9IHNwaW5hbmRfbG9hZF9wYWdl X29wKHNwaW5hbmQsIHJlcSk7Cj4gPiA+ID4gPiAtICAgICBpZiAocmV0KQo+ID4gPiA+ID4gLSAg ICAgICAgICAgICByZXR1cm4gcmV0Owo+ID4gPiA+ID4gKyAgICAgaWYgKCFzcGluYW5kLT5jb250 X3JlYWRfc3RhcnQpIHsgIAo+ID4gPiA+Cj4gPiA+ID4gSSBkb24ndCBnZXQgdGhpcyBjaGVjay4g VGhpcyBjb25kaXRpb24gd2lsbCBhbHdheXMgYmUgdHJ1ZS4gWW91IGNhbgo+ID4gPiA+IGRyb3Ag aXQuICAKPiA+ID4KPiA+ID4gVGhpcyBjb25kaXRpb24gaXMgaGVscCB0byBhdm9pZCBpc3N1ZSBw YWdlIHJlYWQKPiA+ID4gY29tbWFuZCBhZ2Fpbi4gVGhlIGNvbnRpbnVvdXMgcmVhZCBtb2RlIGhl bHAKPiA+ID4gU1BJLU5BTkQgcHJldmVudCBhbHdheXMgaXNzdWUgcGFnZSByZWFkKDEzaCkKPiA+ ID4gY29tbWFuZCBpbiBjb250aW51b3VzIGFkZHJlc3MuICAKPiA+Cj4gPiBZZXMgSSB1bmRlcnN0 YW5kIHdoYXQgeW91IHRyeSB0byBhY2hpZXZlIGJ1dCBJIGJlbGlldmUgSSBvdmVybG9va2VkIGF0 Cj4gPiB0aGF0IHNlY3Rpb24uCj4gPgo+ID4gSSBiZWxpZXZlIHdlIHNob3VsZCBoYXZlIHNvbWV0 aGluZyBqdXN0IGEgbGl0dGxlIGJpdCBtb3JlIGNsZWFuIGxpa2U6Cj4gPgo+ID4gbXRkX2lvKCl7 ICAKPiAKPiBJbiB0aGlzIGNhc2UsIGRvIHlvdSBtZWFuIHNwaW5hbmRfbXRkX3JlYWQoKSA/CgpJ IGRvbid0IHJlbWVtYmVyIHRoZSBkZXRhaWxzLCBpdCB3YXMgYSB3aGlsZSBhZ28uIEkgZG9uJ3Qg dGhpbmsgSSBtZWFudApzcGluYW5kX210ZF9yZWFkKCkgZ2l2ZW4gdGhhdCBiZWxvdyBJIHJlZmVy IHRvIGl0IGFzIGRvX2lvKCksIGJ1dCB0cnkKdG8gZmluZCB0aGUgYmVzdCB3YXkgdG8gaW1wbGVt ZW50IHN1Y2ggYSBsb2dpYyBhbmQgd2UnbGwgc2VlLgoKPiAKPiA+ICAgICAgICAgX2VuYWJsZSgp IHsgaWYgKDx1c2VmdWw+ICYmIHN1cHBvcnRlZCkgdXNlX2NvbnRpbnVvdXNfcmVhZCA9IHRydWU7 IH0KPiA+ICAgICAgICAgbG9vcCB7Cj4gPiAgICAgICAgICAgICAgICAgcmVhZCgpOwo+ID4gICAg ICAgICB9Cj4gPiAgICAgICAgIF9kaXNhYmxlKCkgeyB1c2VfY29udGludW91c19yZWFkID0gZmFs c2U7IH0KPiA+IH0KPiA+Cj4gPiByZWFkKCl7ICAKPiAKPiBBbmQgdGhlIHNhbWUsIGRvIHlvdSBt ZWFuIHNwaW5hbmRfcmVhZF9wYWdlKCkgPwo+IAo+ID4gICAgICAgICBfZW50ZXIoKSB7IGlmICh1 c2VfY29udGludW91c19yZWFkKSBlbnRlcigpOyB9Cj4gPiAgICAgICAgIGRvX2lvKCk7Cj4gPiAg ICAgICAgIF9leGl0KCkgeyBpZiAodXNlX2NvbnRpbnVvdXNfcmVhZCkgZXhpdCgpOyB9Cj4gPiAg Cj4gPiA+ICAKPiA+ID4gPiA+Cj4gPiA+ID4gPiAtICAgICByZXQgPSBzcGluYW5kX3dhaXQoc3Bp bmFuZCwKPiA+ID4gPiA+IC0gICAgICAgICAgICAgICAgICAgICAgICBTUElOQU5EX1JFQURfSU5J VElBTF9ERUxBWV9VUywKPiA+ID4gPiA+IC0gICAgICAgICAgICAgICAgICAgICAgICBTUElOQU5E X1JFQURfUE9MTF9ERUxBWV9VUywKPiA+ID4gPiA+IC0gICAgICAgICAgICAgICAgICAgICAgICAm c3RhdHVzKTsKPiA+ID4gPiA+IC0gICAgIGlmIChyZXQgPCAwKQo+ID4gPiA+ID4gLSAgICAgICAg ICAgICByZXR1cm4gcmV0Owo+ID4gPiA+ID4gKyAgICAgICAgICAgICByZXQgPSBzcGluYW5kX2xv YWRfcGFnZV9vcChzcGluYW5kLCByZXEpOwo+ID4gPiA+ID4gKyAgICAgICAgICAgICBpZiAocmV0 KQo+ID4gPiA+ID4gKyAgICAgICAgICAgICAgICAgICAgIHJldHVybiByZXQ7Cj4gPiA+ID4gPiAr Cj4gPiA+ID4gPiArICAgICAgICAgICAgIHJldCA9IHNwaW5hbmRfd2FpdChzcGluYW5kLAo+ID4g PiA+ID4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU1BJTkFORF9SRUFEX0lOSVRJ QUxfREVMQVlfVVMsCj4gPiA+ID4gPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBT UElOQU5EX1JFQURfUE9MTF9ERUxBWV9VUywKPiA+ID4gPiA+ICsgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICZzdGF0dXMpOwo+ID4gPiA+ID4gKyAgICAgICAgICAgICBpZiAocmV0IDwg MCkKPiA+ID4gPiA+ICsgICAgICAgICAgICAgICAgICAgICByZXR1cm4gcmV0Owo+ID4gPiA+ID4g Kwo+ID4gPiA+ID4gKyAgICAgICAgICAgICBpZiAoc3BpbmFuZC0+ZmxhZ3MgJiBTUElOQU5EX0hB U19DT05UX1JFQURfQklUKQo+ID4gPiA+ID4gKyAgICAgICAgICAgICAgICAgICAgIHNwaW5hbmQt PmNvbnRfcmVhZF9zdGFydCA9IHRydWU7Cj4gPiA+ID4gPiArICAgICB9Cj4gPiA+ID4gPgo+ID4g PiA+ID4gICAgICAgc3BpbmFuZF9vbmRpZV9lY2Nfc2F2ZV9zdGF0dXMobmFuZCwgc3RhdHVzKTsK PiA+ID4gPiA+Cj4gPiA+ID4gPiBAQCAtNjY3LDYgKzY3NSwxMCBAQCBzdGF0aWMgaW50IHNwaW5h bmRfbXRkX3JlYWQoc3RydWN0IG10ZF9pbmZvICptdGQsIGxvZmZfdCBmcm9tLAo+ID4gPiA+ID4K PiA+ID4gPiA+ICAgICAgIG11dGV4X2xvY2soJnNwaW5hbmQtPmxvY2spOwo+ID4gPiA+ID4KPiA+ ID4gPiA+ICsgICAgIHJldCA9IHNwaW5hbmRfY29udGludW91c19yZWFkX2VuYWJsZShzcGluYW5k KTsKPiA+ID4gPiA+ICsgICAgIGlmIChyZXQpCj4gPiA+ID4gPiArICAgICAgICAgICAgIHJldHVy biByZXQ7Cj4gPiA+ID4gPiArCj4gPiA+ID4gPiAgICAgICBuYW5kZGV2X2lvX2Zvcl9lYWNoX3Bh Z2UobmFuZCwgTkFORF9QQUdFX1JFQUQsIGZyb20sIG9wcywgJml0ZXIpIHsKPiA+ID4gPiA+ICAg ICAgICAgICAgICAgaWYgKGRpc2FibGVfZWNjKQo+ID4gPiA+ID4gICAgICAgICAgICAgICAgICAg ICAgIGl0ZXIucmVxLm1vZGUgPSBNVERfT1BTX1JBVzsKPiA+ID4gPiA+IEBAIC02ODksNiArNzAx LDE0IEBAIHN0YXRpYyBpbnQgc3BpbmFuZF9tdGRfcmVhZChzdHJ1Y3QgbXRkX2luZm8gKm10ZCwg bG9mZl90IGZyb20sCj4gPiA+ID4gPiAgICAgICAgICAgICAgIG9wcy0+b29icmV0bGVuICs9IGl0 ZXIucmVxLm9vYmxlbjsKPiA+ID4gPiA+ICAgICAgIH0KPiA+ID4gPiA+Cj4gPiA+ID4gPiArICAg ICByZXQgPSBzcGluYW5kX2NvbnRpbnVvdXNfcmVhZF9leGl0KHNwaW5hbmQpOwo+ID4gPiA+ID4g KyAgICAgaWYgKHJldCkKPiA+ID4gPiA+ICsgICAgICAgICAgICAgcmV0dXJuIHJldDsKPiA+ID4g PiA+ICsKPiA+ID4gPiA+ICsgICAgIHJldCA9IHNwaW5hbmRfY29udGludW91c19yZWFkX2Rpc2Fi bGUoc3BpbmFuZCk7Cj4gPiA+ID4gPiArICAgICBpZiAocmV0KQo+ID4gPiA+ID4gKyAgICAgICAg ICAgICByZXR1cm4gcmV0OyAgCj4gPiA+ID4KPiA+ID4gPiBUaGUgYXN5bW1ldHJ5IGhlcmUgbG9v a3Mgc3RyYW5nZS4gV2hlcmUgZG8gd2UgYWN0dWFsbHkgZW50ZXIgdGhlCj4gPiA+ID4gY29udGlu dW91cyByZWFkIG1vZGU/ICAKPiA+ID4KPiA+ID4gSW4gdGhpcyBzZXJpZXMsIGVhY2ggcmVhZCBh bHdheXMgZW50ZXIgdGhlIGNvbnRpbnVvdXMgcmVhZCBtb2RlLiAgCj4gPgo+ID4gVGhpcyBpcyBk ZWZpbml0ZWx5IHNvbWV0aGluZyB0byBpbXByb3ZlLiBZb3UgbmVlZCB0byBiZW5jaG1hcmsgYSBs aXR0bGUKPiA+IGJpdCBhbmQgdHJ5IHRvIHJlYWQgMSwgMiwgMywgNCwuLi4gcGFnZXMgdW50aWwg d2UgYXJlIHN1cmUgdGhhdAo+ID4gZW5hYmxpbmcgdGhpcyBhbmQgdGhlIG92ZXJhbGwgcGVuYWx0 eSBpcyBiYWNrZWQgYnkgdGhlIGFkZGl0aW9uYWwKPiA+IHBlcmZvcm1hbmNlcy4KPiA+ICAKPiA+ ID4gIAo+ID4gPiA+Cj4gPiA+ID4gRG8geW91IGhhdmUgYW55IGluZGljYXRvcnMgdGhhdCB0aGlz IGNoYW5nZSBpbXByb3ZlcyB0aGUgcGVyZm9ybWFuY2VzPwo+ID4gPiA+IEl0IHdvdWxkIGJlIGdv b2QgdG8gc2hhcmUgdGhlbSBpbiB0aGUgY29tbWl0IGxvZy4gIAo+ID4gPgo+ID4gPiBJIHdpbGwg c2hhcmUgdGhlIHBlcmZvcm1hbmNlcyBvZiBjb250aW51b3VzIHJlYWQgbW9kZS4gIAo+ID4KPiA+ IFllcyBwbGVhc2UuCj4gPiAgCj4gPiA+ICAKPiA+ID4gPiA+ICsKPiA+ID4gPiA+ICAgICAgIG11 dGV4X3VubG9jaygmc3BpbmFuZC0+bG9jayk7Cj4gPiA+ID4gPgo+ID4gPiA+ID4gICAgICAgaWYg KGVjY19mYWlsZWQgJiYgIXJldCkKPiA+ID4gPiA+IGRpZmYgLS1naXQgYS9pbmNsdWRlL2xpbnV4 L210ZC9zcGluYW5kLmggYi9pbmNsdWRlL2xpbnV4L210ZC9zcGluYW5kLmgKPiA+ID4gPiA+IGlu ZGV4IGUwNDRhYmEuLmMyYTQxYTMgMTAwNjQ0Cj4gPiA+ID4gPiAtLS0gYS9pbmNsdWRlL2xpbnV4 L210ZC9zcGluYW5kLmgKPiA+ID4gPiA+ICsrKyBiL2luY2x1ZGUvbGludXgvbXRkL3NwaW5hbmQu aAo+ID4gPiA+ID4gQEAgLTQyMiw2ICs0MjIsNyBAQCBzdHJ1Y3Qgc3BpbmFuZF9kaXJtYXAgewo+ ID4gPiA+ID4gICAqICAgICAgICAgICBiZWNhdXNlIHRoZSBzcGktbWVtIGludGVyZmFjZSBleHBs aWNpdGx5IHJlcXVlc3RzIHRoYXQgYnVmZmVycwo+ID4gPiA+ID4gICAqICAgICAgICAgICBwYXNz ZWQgaW4gc3BpX21lbV9vcCBiZSBETUEtYWJsZSwgc28gd2UgY2FuJ3QgYmFzZWQgdGhlIGJ1ZnMg b24KPiA+ID4gPiA+ICAgKiAgICAgICAgICAgdGhlIHN0YWNrCj4gPiA+ID4gPiArICogQGNvbnRf cmVhZF9zdGFydDogcmVjb3JkIHRoZSBjb250aW51b3VzIHJlYWQgc3RhdHVzCj4gPiA+ID4gPiAg ICogQG1hbnVmYWN0dXJlcjogU1BJIE5BTkQgbWFudWZhY3R1cmVyIGluZm9ybWF0aW9uCj4gPiA+ ID4gPiAgICogQHByaXY6IG1hbnVmYWN0dXJlciBwcml2YXRlIGRhdGEKPiA+ID4gPiA+ICAgKi8K PiA+ID4gPiA+IEBAIC00NTAsNiArNDUxLDcgQEAgc3RydWN0IHNwaW5hbmRfZGV2aWNlIHsKPiA+ ID4gPiA+ICAgICAgIHU4ICpkYXRhYnVmOwo+ID4gPiA+ID4gICAgICAgdTggKm9vYmJ1ZjsKPiA+ ID4gPiA+ICAgICAgIHU4ICpzY3JhdGNoYnVmOwo+ID4gPiA+ID4gKyAgICAgYm9vbCBjb250X3Jl YWRfc3RhcnQ7Cj4gPiA+ID4gPiAgICAgICBjb25zdCBzdHJ1Y3Qgc3BpbmFuZF9tYW51ZmFjdHVy ZXIgKm1hbnVmYWN0dXJlcjsKPiA+ID4gPiA+ICAgICAgIHZvaWQgKnByaXY7Cj4gPiA+ID4gPiAg fTsgIAo+ID4gPiA+Cj4gPiA+ID4KPiA+ID4gPiBUaGFua3MsCj4gPiA+ID4gTWlxdcOobCAgCj4g PiA+Cj4gPiA+IEFsbCBpbiBhbGwsIHRoZSBjb250aW51b3VzIHJlYWQgbW9kZSBjYW4gaW1wcm92 ZQo+ID4gPiB0aGUgcmVhZCBwZXJmb3JtYW5jZSBvZiBjb250aW51b3VzIGFkZHJlc3Nlcwo+ID4g PiBhbmQgYXZvaWQgcmUtaXNzdWluZyBwYWdlIHJlYWQgY29tbWFuZHMgdGhyb3VnaAo+ID4gPiBl YWNoIHBhZ2UuCj4gPiA+Cj4gPiA+IERvIHlvdSBoYXZlIGFueSBzdWdnZXN0aW9ucyBmb3IgdGhp cyBzZXJpZXM/Cj4gPiA+Cj4gPiA+IFRoYW5rcywKPiA+ID4gWmhlbmd4dW4gIAo+ID4KPiA+Cj4g PiBUaGFua3MsCj4gPiBNaXF1w6hsICAKPiAKPiBUaGFua3MsCj4gWmhlbmd4dW4KCgpUaGFua3Ms Ck1pcXXDqGwKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fXwpMaW51eCBNVEQgZGlzY3Vzc2lvbiBtYWlsaW5nIGxpc3QKaHR0cDovL2xpc3RzLmlu ZnJhZGVhZC5vcmcvbWFpbG1hbi9saXN0aW5mby9saW51eC1tdGQvCg==