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 36311C55184 for ; Tue, 4 Aug 2026 15:15:11 +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:MIME-Version:Reply-To:List-Subscribe: List-Help:List-Post:List-Archive:List-Unsubscribe:List-Id:Message-Id:Date: References:In-Reply-To:Cc:To:Subject:From:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=RE4c/XeZ4W2MeI1SLPzXpfP/G4fyKI3Czis2B3G8cqw=; b=tKIq0njlm2ZpnI dYxgQ68sj42z3n8x9nf+hFHOebRFpD8m+hGVJmCz+c753Jm2aMKzT/vpSC9w6B+Jl6dx3ZW/s3hka iKVGfwJQcXQ5M29TiFTo/FoWX6jQRhLjsUCuwiZHLwbzs59FvTpn+T2k8dq67xTJhi6sRENXBRhm0 b3kl2JA3IIdg6+XoE5MVLnou+FTbsnjpdXcaRi+ywqKhDwrsdSPusA8Xlm7SylmqMWpleulO+aW4v dg8Y+p4cIwLi1L3x5ZuHFzVzwvSS2KmqQ9KaP3bBKGbxlkAlzO2mQzOLFE+C3cRnxt4isIGWcH6hS /i8Ra3rODGqNRGKJJuPQ==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.99.1 #2 (Red Hat Linux)) id 1wrGrD-00000002BVO-0JKZ; Tue, 04 Aug 2026 15:15:07 +0000 Received: from tor.source.kernel.org ([2600:3c04:e001:324:0:1991:8:25]) by bombadil.infradead.org with esmtps (Exim 4.99.1 #2 (Red Hat Linux)) id 1wrGrB-00000002BVI-20m6 for linux-amlogic@lists.infradead.org; Tue, 04 Aug 2026 15:15:05 +0000 Received: from smtp.kernel.org (quasi.space.kernel.org [100.103.45.18]) by tor.source.kernel.org (Postfix) with ESMTP id 72C6260A73; Tue, 4 Aug 2026 15:15:04 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id CEE6C1F000E9; Tue, 4 Aug 2026 15:15:03 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=kernel.org; s=k20260515; t=1785856504; bh=FhI9BUnv192/80GxwF7+5RJlRO9MBYLxMpckriGiOSg=; h=From:Subject:Reply-To:To:Cc:In-Reply-To:References:Date; b=IImvvaMdLMs7HEc1lhxvH9v8YWZ4ISuHU/6haxSLei+36oYbYFFuOzmA9YLbHuW4k CCcz67igovkZ1E375M02NvPy1RMBo6GSoHdnhg6Oz/3Rldvxe8WPT/SclbzrrJn6RB 5Tx9mYVWmoLJeKLO1e+h8ZZ82ax7wsJ/Lq41KeMTtIDfuRM6iBs0O7RRgSRMsMNqw9 06PLPl5Zjcp8ogBhqd0RWoUamttJ/ZGjPjpUwPbzDtXvrItLg/f9hnbQhwQ4kYElJG 6kWOacY2pyNj6o4gWhyJhvDmzDtQXJesuk8DbL0NvtJWwBcsG41rmozKSfCZxbSWRM Uh/FgaDIKIx/g== From: sashiko-bot@kernel.org Subject: Re: [PATCH v5 3/3] nvmem: make all reg_write callbacks take const void * To: "Link Mauve" Cc: Frank.Li@kernel.org, neil.armstrong@linaro.org, linux-amlogic@lists.infradead.org, imx@lists.linux.dev, ojeda@kernel.org In-Reply-To: <20260804135940.2378737-4-linkmauve@linkmauve.fr> References: <20260804135940.2378737-1-linkmauve@linkmauve.fr> <20260804135940.2378737-4-linkmauve@linkmauve.fr> Date: Tue, 04 Aug 2026 15:15:03 +0000 Message-Id: <20260804151503.CEE6C1F000E9@smtp.kernel.org> X-BeenThere: linux-amlogic@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: sashiko-reviews@lists.linux.dev MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: "linux-amlogic" Errors-To: linux-amlogic-bounces+linux-amlogic=archiver.kernel.org@lists.infradead.org VGhhbmsgeW91IGZvciB5b3VyIGNvbnRyaWJ1dGlvbiEgU2FzaGlrbyBBSSByZXZpZXcgZm91bmQg NSBwb3RlbnRpYWwgaXNzdWUocykgdG8gY29uc2lkZXI6CgpQcmUtZXhpc3RpbmcgaXNzdWVzOgot IFtDcml0aWNhbF0gS2VybmVsIHN0YWNrIG91dC1vZi1ib3VuZHMgcmVhZCBpbiBgc3ByZF9lZnVz ZV9yZWFkYCBhbmQgbG9naWMgZXJyb3IgaW4gYHNwcmRfZWZ1c2Vfd3JpdGVgLgotIFtIaWdoXSBO dm1lbSBvZmZzZXQgaXMgaW5jb3JyZWN0bHkgdHJlYXRlZCBhcyBhIHdvcmQgaW5kZXggaW5zdGVh ZCBvZiBhIGJ5dGUgb2Zmc2V0LgotIFtIaWdoXSBWYWxpZGF0aW9uIG9mIFBVRiB1c2VyIGZ1c2Vz IGNhbiBiZSBieXBhc3NlZCBkdXJpbmcgbXVsdGktd29yZCB3cml0ZXMuCi0gW0hpZ2hdIFRoZSBP Q09UUCBjb250cm9sbGVyIGlzIHBlcm1hbmVudGx5IGxlZnQgaW4gcHJvZ3JhbW1pbmcgbW9kZSBp ZiBhIHdyaXRlIG9yIHJlYWQgb3BlcmF0aW9uIGZhaWxzLgotIFtIaWdoXSBPUC1URUUgc2Vzc2lv biBpcyBsZWFrZWQgb24gaW52YWxpZCBhcmd1bWVudHMgaW4gc3RtMzJfYnNlY19vcHRlZV90YV93 cml0ZS4KLS0KCi0tLSBQYXRjaCBbM106IFtQQVRDSCB2NSAzLzNdIG52bWVtOiBtYWtlIGFsbCBy ZWdfd3JpdGUgY2FsbGJhY2tzIHRha2UgY29uc3Qgdm9pZCAqIC0tLQpjb21taXQgMDlmNGU2MWQ5 ZTgxZWU1YmUwZmQ5MGM5ZjUzZWM2ZDI5ZGE4YjQxMgpBdXRob3I6IExpbmsgTWF1dmUgPGxpbmtt YXV2ZUBsaW5rbWF1dmUuZnI+ClN1YmplY3Q6IG52bWVtOiBtYWtlIGFsbCByZWdfd3JpdGUgY2Fs bGJhY2tzIHRha2UgY29uc3Qgdm9pZCAqCgpUaGlzIGNvbW1pdCB1cGRhdGVzIHRoZSBudm1lbSBz dWJzeXN0ZW0gdG8gdXNlIGEgcG9pbnRlciB0byBpbW11dGFibGUgZGF0YQpmb3IgYWxsIHJlZ193 cml0ZSBjYWxsYmFja3MuIEl0IG1vZGlmaWVzIHRoZSB2YXJpb3VzIGRyaXZlcnMgdG8gY2hhbmdl IHRoZQpmdW5jdGlvbiBzaWduYXR1cmVzIGFjY29yZGluZ2x5LgoKPiBkaWZmIC0tZ2l0IGEvZHJp dmVycy9udm1lbS9iY20tb2NvdHAuYyBiL2RyaXZlcnMvbnZtZW0vYmNtLW9jb3RwLmMKPiBpbmRl eCAyNDkwZjQ0Y2FhNDA5Li4wMmFkZmQ3ODdkZTg1IDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvbnZt ZW0vYmNtLW9jb3RwLmMKPiArKysgYi9kcml2ZXJzL252bWVtL2JjbS1vY290cC5jClsgLi4uIF0K PiBAQCAtMTc5LDExICsxNzksMTEgQEAgc3RhdGljIGludCBiY21fb3RwY19yZWFkKHZvaWQgKmNv bnRleHQsIHVuc2lnbmVkIGludCBvZmZzZXQsIHZvaWQgKnZhbCwKPiAgCXJldHVybiAwOwo+ICB9 Cj4gIAo+IC1zdGF0aWMgaW50IGJjbV9vdHBjX3dyaXRlKHZvaWQgKmNvbnRleHQsIHVuc2lnbmVk IGludCBvZmZzZXQsIHZvaWQgKnZhbCwKPiAtCXNpemVfdCBieXRlcykKPiArc3RhdGljIGludCBi Y21fb3RwY193cml0ZSh2b2lkICpjb250ZXh0LCB1bnNpZ25lZCBpbnQgb2Zmc2V0LCBjb25zdCB2 b2lkICp2YWwsCj4gKwkJCSAgc2l6ZV90IGJ5dGVzKQo+ICB7Cj4gIAlzdHJ1Y3Qgb3RwY19wcml2 ICpwcml2ID0gY29udGV4dDsKPiAtCXUzMiAqYnVmID0gdmFsOwo+ICsJY29uc3QgdTMyICpidWYg PSB2YWw7Cj4gIAl1MzIgYnl0ZXNfd3JpdHRlbjsKCltTZXZlcml0eTogSGlnaF0KVGhpcyBpcyBh IHByZS1leGlzdGluZyBpc3N1ZSwgYnV0IGlmIGEgcmVhZCBvciB3cml0ZSBvcGVyYXRpb24gZmFp bHMgaW4KYmNtX290cGNfcmVhZCgpIG9yIGJjbV9vdHBjX3dyaXRlKCksIGRvZXMgdGhlIGNvbnRy b2xsZXIgZ2V0IHN0dWNrIGluCnByb2dyYW1taW5nIG1vZGU/CgpMb29raW5nIGF0IGJjbV9vdHBj X3dyaXRlKCksIGlmIHBvbGxfY3B1X3N0YXR1cygpIGZhaWxzLCBpdCByZXR1cm5zIGVhcmx5OgoK ICAgICAgICByZXQgPSBwb2xsX2NwdV9zdGF0dXMocHJpdi0+YmFzZSwgT1RQQ19TVEFUX0NNRF9E T05FKTsKICAgICAgICByZXNldF9zdGFydF9iaXQocHJpdi0+YmFzZSk7CiAgICAgICAgaWYgKHJl dCkgewogICAgICAgICAgICAgICAgZGV2X2Vycihwcml2LT5kZXYsICJvdHAgd3JpdGUgZXJyb3I6 IDB4JXgiLCByZXQpOwogICAgICAgICAgICAgICAgcmV0dXJuIC1FSU87CiAgICAgICAgfQoKVGhp cyBieXBhc3NlcyB0aGUgZGlzYWJsZV9vY290cF9wcm9ncmFtKCkgY2xlYW51cC4gQSBzaW1pbGFy IGVhcmx5IHJldHVybgppbiBiY21fb3RwY19yZWFkKCkgYnlwYXNzZXMgcmVzZXRfc3RhcnRfYml0 KCkuCgpDb3VsZCB0aGlzIGxlYXZlIHRoZSBoYXJkd2FyZSB3aXRoIHN0YXJ0IGJpdHMgc2V0IG9y IGluIHByb2dyYW1taW5nIG1vZGU/Cgo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL252bWVtL2lteC1v Y290cC1zY3UuYyBiL2RyaXZlcnMvbnZtZW0vaW14LW9jb3RwLXNjdS5jCj4gaW5kZXggNTE3ZDgz ZTExYWYyYy4uNTcwMDgyMjgxMDBmNSAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL252bWVtL2lteC1v Y290cC1zY3UuYwo+ICsrKyBiL2RyaXZlcnMvbnZtZW0vaW14LW9jb3RwLXNjdS5jClsgLi4uIF0K PiBAQCAtMTc4LDExICsxNzgsMTEgQEAgc3RhdGljIGludCBpbXhfc2N1X29jb3RwX3JlYWQodm9p ZCAqY29udGV4dCwgdW5zaWduZWQgaW50IG9mZnNldCwKPiAgfQo+ICAKPiAgc3RhdGljIGludCBp bXhfc2N1X29jb3RwX3dyaXRlKHZvaWQgKmNvbnRleHQsIHVuc2lnbmVkIGludCBvZmZzZXQsCj4g LQkJCSAgICAgICB2b2lkICp2YWwsIHNpemVfdCBieXRlcykKPiArCQkJICAgICAgIGNvbnN0IHZv aWQgKnZhbCwgc2l6ZV90IGJ5dGVzKQo+ICB7Cj4gIAlzdHJ1Y3Qgb2NvdHBfcHJpdiAqcHJpdiA9 IGNvbnRleHQ7Cj4gIAlzdHJ1Y3QgYXJtX3NtY2NjX3JlcyByZXM7Cj4gLQl1MzIgKmJ1ZiA9IHZh bDsKPiArCWNvbnN0IHUzMiAqYnVmID0gdmFsOwo+ICAJdTMyIHRtcDsKPiAgCXUzMiBpbmRleDsK CltTZXZlcml0eTogSGlnaF0KVGhpcyBpcyBhIHByZS1leGlzdGluZyBpc3N1ZSwgYnV0IGRvZXMg dGhpcyBjb2RlIHRyZWF0IHRoZSBieXRlIG9mZnNldCBhcyBhCndvcmQgaW5kZXg/CgpJbiBib3Ro IGlteF9zY3Vfb2NvdHBfcmVhZCgpIGFuZCBpbXhfc2N1X29jb3RwX3dyaXRlKCksIHRoZSBieXRl IG9mZnNldCBpcwphc3NpZ25lZCBkaXJlY3RseSB0byBpbmRleCB3aXRob3V0IGRpdmlkaW5nIGJ5 IDQ6CgogICAgICAgIGluZGV4ID0gb2Zmc2V0OwoKSWYgYSBjbGllbnQgcmVxdWVzdHMgYSBieXRl IG9mZnNldCBsaWtlIDQsIHdvdWxkbid0IHRoaXMgcmVzdWx0IGluCmFjY2Vzc2luZyB3b3JkIDQg KHdoaWNoIGlzIGJ5dGUgb2Zmc2V0IDE2KSwgcG90ZW50aWFsbHkgcmVhZGluZyBvciB3cml0aW5n CmluY29ycmVjdCBmdXNlcz8KCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvbnZtZW0vc3ByZC1lZnVz ZS5jIGIvZHJpdmVycy9udm1lbS9zcHJkLWVmdXNlLmMKPiBpbmRleCAxYTdlNGU1ZDhiODZjLi5m OTYwZmE4Y2IyNWNmIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvbnZtZW0vc3ByZC1lZnVzZS5jCj4g KysrIGIvZHJpdmVycy9udm1lbS9zcHJkLWVmdXNlLmMKWyAuLi4gXQo+IEBAIC0zMjEsNyArMzIx LDcgQEAgc3RhdGljIGludCBzcHJkX2VmdXNlX3JlYWQodm9pZCAqY29udGV4dCwgdTMyIG9mZnNl dCwgdm9pZCAqdmFsLCBzaXplX3QgYnl0ZXMpCj4gIAlyZXR1cm4gcmV0Owo+ICB9Cj4gIAo+IC1z dGF0aWMgaW50IHNwcmRfZWZ1c2Vfd3JpdGUodm9pZCAqY29udGV4dCwgdTMyIG9mZnNldCwgdm9p ZCAqdmFsLCBzaXplX3QgYnl0ZXMpCj4gK3N0YXRpYyBpbnQgc3ByZF9lZnVzZV93cml0ZSh2b2lk ICpjb250ZXh0LCB1MzIgb2Zmc2V0LCBjb25zdCB2b2lkICp2YWwsIHNpemVfdCBieXRlcykKPiAg ewo+ICAJc3RydWN0IHNwcmRfZWZ1c2UgKmVmdXNlID0gY29udGV4dDsKPiAgCWJvb2wgYmxrX2Rv dWJsZSA9IGVmdXNlLT5kYXRhLT5ibGtfZG91YmxlOwoKW1NldmVyaXR5OiBDcml0aWNhbF0KVGhp cyBpcyBhIHByZS1leGlzdGluZyBpc3N1ZSwgYnV0IGNhbiB0aGlzIGxlYWQgdG8gYW4gb3V0LW9m LWJvdW5kcyBrZXJuZWwKc3RhY2sgcmVhZCBpbiBzcHJkX2VmdXNlX3JlYWQoKSBhbmQgbG9naWMg ZXJyb3JzIGluIHNwcmRfZWZ1c2Vfd3JpdGUoKT8KCkluIHNwcmRfZWZ1c2VfcmVhZCgpLCB0aGVy ZSBpcyBhIDQtYnl0ZSBsb2NhbCB2YXJpYWJsZToKCiAgICAgICAgdTMyIGRhdGE7CgpJZiBhIGNh bGxlciByZXF1ZXN0cyBhIG11bHRpLWJ5dGUgcmVhZCB3aGVyZSBieXRlcyA+IDQsIHRoZSBtZW1j cHkgdXNlcyB0aGUKcmVxdWVzdGVkIHNpemU6CgogICAgICAgIG1lbWNweSh2YWwsICZkYXRhLCBi eXRlcyk7CgpEb2VzIHRoaXMgY29weSBvdXQtb2YtYm91bmRzIGtlcm5lbCBzdGFjayBtZW1vcnkg aW50byB0aGUgb3V0cHV0IGJ1ZmZlcj8KClNpbWlsYXJseSwgaW4gc3ByZF9lZnVzZV93cml0ZSgp LCBpdCBwYXNzZXMgdGhlIHJhdyBieXRlIG9mZnNldCBhcyBhIGJsb2NrCmluZGV4IGFuZCB3cml0 ZXMgd2l0aG91dCBsb29waW5nIG92ZXIgdGhlIHJlcXVlc3RlZCBieXRlczoKCiAgICAgICAgcmV0 ID0gc3ByZF9lZnVzZV9yYXdfcHJvZyhlZnVzZSwgb2Zmc2V0LCBibGtfZG91YmxlLCBsb2NrLCB2 YWwpOwoKV291bGQgdGhpcyB3cml0ZSB0byB0aGUgd3JvbmcgaGFyZHdhcmUgYmxvY2sgYW5kIGZh aWwgdG8gcHJvY2VzcyBzaXplcwpsYXJnZXIgdGhhbiBhIHNpbmdsZSB3b3JkPwoKPiBkaWZmIC0t Z2l0IGEvZHJpdmVycy9udm1lbS9zdG0zMi1ic2VjLW9wdGVlLXRhLmMgYi9kcml2ZXJzL252bWVt L3N0bTMyLWJzZWMtb3B0ZWUtdGEuYwo+IGluZGV4IGY4OWNlNzkxZGQxMmEuLjMxODRiOTc2YjFm OTEgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9udm1lbS9zdG0zMi1ic2VjLW9wdGVlLXRhLmMKPiAr KysgYi9kcml2ZXJzL252bWVtL3N0bTMyLWJzZWMtb3B0ZWUtdGEuYwpbIC4uLiBdCj4gQEAgLTIw Myw3ICsyMDMsNyBAQCBpbnQgc3RtMzJfYnNlY19vcHRlZV90YV9yZWFkKHN0cnVjdCB0ZWVfY29u dGV4dCAqY3R4LCB1bnNpZ25lZCBpbnQgb2Zmc2V0LAo+ICAKPiAgLyogc3RtMzJfYnNlY19vcHRl ZV90YV93cml0ZSgpIC0gbnZtZW0gd3JpdGUgYWNjZXNzIHVzaW5nIFBUQSBjbGllbnQgZHJpdmVy ICovCj4gIGludCBzdG0zMl9ic2VjX29wdGVlX3RhX3dyaXRlKHN0cnVjdCB0ZWVfY29udGV4dCAq Y3R4LCB1bnNpZ25lZCBpbnQgbG93ZXIsCj4gLQkJCSAgICAgIHVuc2lnbmVkIGludCBvZmZzZXQs IHZvaWQgKmJ1Ziwgc2l6ZV90IGJ5dGVzKQo+ICsJCQkgICAgICB1bnNpZ25lZCBpbnQgb2Zmc2V0 LCBjb25zdCB2b2lkICpidWYsIHNpemVfdCBieXRlcykKPiAgewlzdHJ1Y3QgdGVlX3NobSAqc2ht Owo+ICAJc3RydWN0IHRlZV9pb2N0bF9pbnZva2VfYXJnIGFyZzsKPiAgCXN0cnVjdCB0ZWVfcGFy YW0gcGFyYW1bMl07CgpbU2V2ZXJpdHk6IEhpZ2hdClRoaXMgaXMgYSBwcmUtZXhpc3RpbmcgaXNz dWUsIGJ1dCBjb3VsZCB0aGlzIGxlYWsgYW4gT1AtVEVFIHNlc3Npb24gb24KaW52YWxpZCBhcmd1 bWVudHM/CgpJbiBzdG0zMl9ic2VjX29wdGVlX3RhX3dyaXRlKCksIHRoZSBzZXNzaW9uIGlzIG9w ZW5lZCwgYnV0IGlmIHRoZQphbGlnbm1lbnQgY2hlY2sgZmFpbHMsIGl0IHJldHVybnMgZWFybHk6 CgogICAgICAgIHJldCA9IHN0bTMyX2JzZWNfdGFfb3Blbl9zZXNzaW9uKGN0eCwgJnNlc3Npb25f aWQpOwogICAgICAgIGlmIChyZXQpCiAgICAgICAgICAgICAgICByZXR1cm4gcmV0OwoKICAgICAg ICAvKiBBbGxvdyBvbmx5IHdyaXRpbmcgY29tcGxldGUgMzItYml0cyBhbGlnbmVkIHdvcmRzICov CiAgICAgICAgaWYgKChieXRlcyAlIDQpIHx8IChvZmZzZXQgJSA0KSkKICAgICAgICAgICAgICAg IHJldHVybiAtRUlOVkFMOwoKRG9lcyByZXR1cm5pbmcgLUVJTlZBTCBieXBhc3Mgc3RtMzJfYnNl Y190YV9jbG9zZV9zZXNzaW9uKCkgYW5kIGV4aGF1c3QKT1AtVEVFIHNlc3Npb25zPwoKPiBkaWZm IC0tZ2l0IGEvZHJpdmVycy9udm1lbS96eW5xbXBfbnZtZW0uYyBiL2RyaXZlcnMvbnZtZW0venlu cW1wX252bWVtLmMKPiBpbmRleCBkMjk3ZmYxNTBkYzAyLi41NDkwNWE2MDgxNTdkIDEwMDY0NAo+ IC0tLSBhL2RyaXZlcnMvbnZtZW0venlucW1wX252bWVtLmMKPiArKysgYi9kcml2ZXJzL252bWVt L3p5bnFtcF9udm1lbS5jClsgLi4uIF0KPiBAQCAtMTgzLDcgKzE4Myw3IEBAIHN0YXRpYyBpbnQg enlucW1wX252bWVtX3JlYWQodm9pZCAqY29udGV4dCwgdW5zaWduZWQgaW50IG9mZnNldCwgdm9p ZCAqdmFsLCBzaXplCj4gIH0KPiAgCj4gIHN0YXRpYyBpbnQgenlucW1wX252bWVtX3dyaXRlKHZv aWQgKmNvbnRleHQsCj4gLQkJCSAgICAgIHVuc2lnbmVkIGludCBvZmZzZXQsIHZvaWQgKnZhbCwg c2l6ZV90IGJ5dGVzKQo+ICsJCQkgICAgICB1bnNpZ25lZCBpbnQgb2Zmc2V0LCBjb25zdCB2b2lk ICp2YWwsIHNpemVfdCBieXRlcykKPiAgewo+ICAJaW50IHB1ZmZsYWcgPSAwOwo+ICAKPiBAQCAt MTk0LDcgKzE5NCw3IEBAIHN0YXRpYyBpbnQgenlucW1wX252bWVtX3dyaXRlKHZvaWQgKmNvbnRl eHQsCj4gIAkJcHVmZmxhZyA9IDE7Cj4gIAo+ICAJcmV0dXJuIHp5bnFtcF9lZnVzZV9hY2Nlc3Mo Y29udGV4dCwgb2Zmc2V0LAo+IC0JCQkJICAgdmFsLCBieXRlcywgRUZVU0VfV1JJVEUsIHB1ZmZs YWcpOwo+ICsJCQkJICAgKHZvaWQgKil2YWwsIGJ5dGVzLCBFRlVTRV9XUklURSwgcHVmZmxhZyk7 Cj4gIH0KCltTZXZlcml0eTogSGlnaF0KVGhpcyBpc24ndCBhIGJ1ZyBpbnRyb2R1Y2VkIGJ5IHRo aXMgcGF0Y2gsIGJ1dCBjYW4gdGhlIFBVRiB1c2VyIGZ1c2UKdmFsaWRhdGlvbiBiZSBieXBhc3Nl ZCBkdXJpbmcgYSBtdWx0aS13b3JkIHdyaXRlPwoKSW4genlucW1wX2VmdXNlX2FjY2VzcygpLCB0 aGUgdmFsaWRhdGlvbiBsb2dpYyBjaGVja3MgdGhlIGZpcnN0IHdvcmQgYW5kCnJlbGllcyBvbiBh biBleGFjdCBtYXRjaCBvZiB0aGUgc3RhcnRpbmcgb2Zmc2V0OgoKICAgICAgICBpZiAocHVmZmxh ZyA9PSAxICYmIGZsYWcgPT0gRUZVU0VfV1JJVEUpIHsKICAgICAgICAgICAgICAgIG1lbWNweSgm dmFsdWUsIHZhbCwgc2l6ZW9mKHZhbHVlKSk7CiAgICAgICAgICAgICAgICBpZiAoKG9mZnNldCA9 PSBFRlVTRV9QVUZfU1RBUlRfT0ZGU0VUIHx8CiAgICAgICAgICAgICAgICAgICAgIG9mZnNldCA9 PSBFRlVTRV9QVUZfTUlEX09GRlNFVCkgJiYKICAgICAgICAgICAgICAgICAgICAgLi4uKQoKSWYg YSBtdWx0aS13b3JkIHdyaXRlIHN0YXJ0cyBiZWZvcmUgdGhlIHJlc3RyaWN0ZWQgb2Zmc2V0cywg aXQgYnlwYXNzZXMgdGhlCmV4YWN0LW1hdGNoIG9mZnNldCBjaGVja3MuIEluIHRoaXMgc2NlbmFy aW8sIHB1ZmZsYWcgZXZhbHVhdGVzIHRvIDAsIHdoaWNoCmNvbXBsZXRlbHkgZGlzYWJsZXMgdGhl IFBVRi1zcGVjaWZpYyB2YWxpZGF0aW9uIGxvZ2ljIGZvciB0aGUgb3ZlcmxhcHBpbmcKd29yZHMu CgpDb3VsZCB0aGlzIGFsbG93IGZvcmJpZGRlbiBiaXRzIGluIHRoZSBQVUYgZnVzZXMgdG8gYmUg cHJvZ3JhbW1lZD8KCi0tIApTYXNoaWtvIEFJIHJldmlldyDCtyBodHRwczovL3Nhc2hpa28uZGV2 LyMvcGF0Y2hzZXQvMjAyNjA4MDQxMzU5NDAuMjM3ODczNy0xLWxpbmttYXV2ZUBsaW5rbWF1dmUu ZnI/cGFydD0zCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f XwpsaW51eC1hbWxvZ2ljIG1haWxpbmcgbGlzdApsaW51eC1hbWxvZ2ljQGxpc3RzLmluZnJhZGVh ZC5vcmcKaHR0cDovL2xpc3RzLmluZnJhZGVhZC5vcmcvbWFpbG1hbi9saXN0aW5mby9saW51eC1h bWxvZ2ljCg==