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 57F9EC54791 for ; Thu, 22 Feb 2024 16:44:35 +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-Type: Content-Transfer-Encoding:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:In-Reply-To:From:References:Cc:To:Subject: MIME-Version:Date:Message-ID:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=dOdIL/5fiCxn1K2aWbiewsKn9arHk7lEMQdgc7jUOlU=; b=oqx1sNOfWJ60MC ikXUt0V7GriQyw4ETsD86+N+6K+8gDrhuooEXkvE2ky8Jjn/GOkIwqhjDMr6F34yXmg5Tf+ADWpFq 6cc18VzNKvXFXM9VaswYNPiChgvNRTrtEtqf/4J4tsNA45Mqiz/9u+oBeN+snMYm+dO6/uJEyk+08 BihtdS8/VHfrTpSDko7uQlgo1yXTzdwyq6bhkSkzGLt2H1R62OvySNH46GSAgMNaB2PBOMu5QiauA tkKyXY8XmQUTeoFcsiPljPVnnXfGxJRb3c/scyP/XlwAEOJ+juHdxkx3vGMHHqhHw8SW/ecvaGvxh S96ruiUSl92DpaI+CWPA==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.97.1 #2 (Red Hat Linux)) id 1rdCBI-00000005eBj-2XU2; Thu, 22 Feb 2024 16:44:20 +0000 Received: from mgamail.intel.com ([192.198.163.17]) by bombadil.infradead.org with esmtps (Exim 4.97.1 #2 (Red Hat Linux)) id 1rdCBF-00000005e7T-0VzU; Thu, 22 Feb 2024 16:44:18 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1708620257; x=1740156257; h=message-id:date:mime-version:subject:to:cc:references: from:in-reply-to:content-transfer-encoding; bh=hzQJmorMTV5rdTl82QUGox6zoC899///hh48jdQr9E4=; b=l+Q5o+tatMPS9g1/wykNMJAzM/lb2GlbBL5kZGpwLbgllcsvwVRypG4X VyO9oA2X6AqjMPbjSJKnlDyZfFSC2ri9eyhneAHO2Nm4BsKwBcv7JSmzE izCgQow/aMkd7aU9PyRbnfAiwc/DNCMXvfNbljMXZsBFtaAp87N6HcIRZ WP2xaxXU3rOhQJWj+hVVlWr+8YUayj/3fGIyZtoqjS16+cKFoB72QRDJY 65o88BGGB9gK7i61Ut7h58Kr+47Z+KjEIerqXZXr26ABozWlbpYp33uRC 6Yl61s+GX7CIozLPyBY0TXBnDSnUxX4qYgNH+DJ9RHuPH8eFTIALOg8pN Q==; X-IronPort-AV: E=McAfee;i="6600,9927,10992"; a="2718254" X-IronPort-AV: E=Sophos;i="6.06,179,1705392000"; d="scan'208";a="2718254" Received: from orviesa005.jf.intel.com ([10.64.159.145]) by fmvoesa111.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 22 Feb 2024 08:44:15 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.06,179,1705392000"; d="scan'208";a="10289434" Received: from mhaehnex-mobl1.ger.corp.intel.com (HELO [10.252.2.135]) ([10.252.2.135]) by orviesa005-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 22 Feb 2024 08:44:10 -0800 Message-ID: <03e62bcf-137c-4947-8f34-0cbfcba92a30@intel.com> Date: Thu, 22 Feb 2024 16:44:06 +0000 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH 1/2] devm-helpers: Add resource managed version of mutex init Content-Language: en-GB To: =?UTF-8?Q?Marek_Beh=C3=BAn?= , linux-kernel@vger.kernel.org, Hans de Goede , Matti Vaittinen Cc: Linus Walleij , Bartosz Golaszewski , Lucas De Marchi , Oded Gabbay , =?UTF-8?Q?Thomas_Hellstr=C3=B6m?= , Maarten Lankhorst , Maxime Ripard , Thomas Zimmermann , David Airlie , Daniel Vetter , Aleksandr Mezin , Jean Delvare , Guenter Roeck , Pavel Machek , Lee Jones , Sebastian Reichel , Matthias Brugger , AngeloGioacchino Del Regno , linux-gpio@vger.kernel.org, intel-xe@lists.freedesktop.org, dri-devel@lists.freedesktop.org, linux-hwmon@vger.kernel.org, linux-leds@vger.kernel.org, linux-pm@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org References: <20240222145838.12916-1-kabel@kernel.org> From: Matthew Auld In-Reply-To: <20240222145838.12916-1-kabel@kernel.org> X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20240222_084417_275142_BBD98CED X-CRM114-Status: GOOD ( 29.19 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: base64 Content-Type: text/plain; charset="utf-8"; Format="flowed" Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org T24gMjIvMDIvMjAyNCAxNDo1OCwgTWFyZWsgQmVow7puIHdyb3RlOgo+IEEgZmV3IGRyaXZlcnMg YXJlIGRvaW5nIHJlc291cmNlLW1hbmFnZWQgbXV0ZXggaW5pdGlhbGl6YXRpb24gYnkKPiBpbXBs ZW1lbnRpbmcgYWQtaG9jIG9uZS1saW5lciBtdXRleCBkcm9wcGluZyBmdW5jdGlvbnMgYW5kIHVz aW5nIHRoZW0KPiB3aXRoIGRldm1fYWRkX2FjdGlvbl9vcl9yZXNldCgpLiBIZWxwIGRyaXZlcnMg YXZvaWQgdGhlc2UgcmVwZWF0ZWQKPiBvbmUtbGluZXJzIGJ5IGFkZGluZyBtYW5hZ2VkIHZlcnNp b24gb2YgbXV0ZXggaW5pdGlhbGl6YXRpb24uCj4gCj4gVXNlIHRoZSBuZXcgZnVuY3Rpb24gZGV2 bV9tdXRleF9pbml0KCkgaW4gdGhlIGZvbGxvd2luZyBkcml2ZXJzOgo+ICAgIGRyaXZlcnMvZ3Bp by9ncGlvLXBpc29zci5jCj4gICAgZHJpdmVycy9ncGlvL2dwaW8tc2ltLmMKPiAgICBkcml2ZXJz L2dwdS9kcm0veGUveGVfaHdtb24uYwo+ICAgIGRyaXZlcnMvaHdtb24vbnp4dC1zbWFydDIuYwo+ ICAgIGRyaXZlcnMvbGVkcy9sZWRzLWlzMzFmbDMxOXguYwo+ICAgIGRyaXZlcnMvcG93ZXIvc3Vw cGx5L210NjM3MC1jaGFyZ2VyLmMKPiAgICBkcml2ZXJzL3Bvd2VyL3N1cHBseS9ydDk0NjctY2hh cmdlci5jCj4gCj4gU2lnbmVkLW9mZi1ieTogTWFyZWsgQmVow7puIDxrYWJlbEBrZXJuZWwub3Jn Pgo+IC0tLQo+ICAgZHJpdmVycy9ncGlvL2dwaW8tcGlzb3NyLmMgICAgICAgICAgICB8ICA5ICsr LS0tLS0KPiAgIGRyaXZlcnMvZ3Bpby9ncGlvLXNpbS5jICAgICAgICAgICAgICAgfCAxMiArKy0t LS0tLS0tCj4gICBkcml2ZXJzL2dwdS9kcm0veGUveGVfaHdtb24uYyAgICAgICAgIHwgMTEgKyst LS0tLS0tCj4gICBkcml2ZXJzL2h3bW9uL256eHQtc21hcnQyLmMgICAgICAgICAgIHwgIDkgKyst LS0tLQo+ICAgZHJpdmVycy9sZWRzL2xlZHMtaXMzMWZsMzE5eC5jICAgICAgICB8ICA5ICsrLS0t LS0KPiAgIGRyaXZlcnMvcG93ZXIvc3VwcGx5L210NjM3MC1jaGFyZ2VyLmMgfCAxMSArLS0tLS0t LS0KPiAgIGRyaXZlcnMvcG93ZXIvc3VwcGx5L3J0OTQ2Ny1jaGFyZ2VyLmMgfCAzNCArKysrLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0KPiAgIGluY2x1ZGUvbGludXgvZGV2bS1oZWxwZXJzLmggICAg ICAgICAgfCAzMiArKysrKysrKysrKysrKysrKysrKysrKysrCj4gICA4IGZpbGVzIGNoYW5nZWQs IDQ3IGluc2VydGlvbnMoKyksIDgwIGRlbGV0aW9ucygtKQo+IAo+IGRpZmYgLS1naXQgYS9kcml2 ZXJzL2dwaW8vZ3Bpby1waXNvc3IuYyBiL2RyaXZlcnMvZ3Bpby9ncGlvLXBpc29zci5jCj4gaW5k ZXggZTMwMTNlNzc4ZTE1Li5kZGRiZjM3ZTg1NWYgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncGlv L2dwaW8tcGlzb3NyLmMKPiArKysgYi9kcml2ZXJzL2dwaW8vZ3Bpby1waXNvc3IuYwo+IEBAIC03 LDYgKzcsNyBAQAo+ICAgI2luY2x1ZGUgPGxpbnV4L2JpdG1hcC5oPgo+ICAgI2luY2x1ZGUgPGxp bnV4L2JpdG9wcy5oPgo+ICAgI2luY2x1ZGUgPGxpbnV4L2RlbGF5Lmg+Cj4gKyNpbmNsdWRlIDxs aW51eC9kZXZtLWhlbHBlcnMuaD4KPiAgICNpbmNsdWRlIDxsaW51eC9ncGlvL2NvbnN1bWVyLmg+ Cj4gICAjaW5jbHVkZSA8bGludXgvZ3Bpby9kcml2ZXIuaD4KPiAgICNpbmNsdWRlIDxsaW51eC9t b2R1bGUuaD4KPiBAQCAtMTE2LDExICsxMTcsNiBAQCBzdGF0aWMgY29uc3Qgc3RydWN0IGdwaW9f Y2hpcCB0ZW1wbGF0ZV9jaGlwID0gewo+ICAgCS5jYW5fc2xlZXAJCT0gdHJ1ZSwKPiAgIH07Cj4g ICAKPiAtc3RhdGljIHZvaWQgcGlzb3NyX211dGV4X2Rlc3Ryb3kodm9pZCAqbG9jaykKPiAtewo+ IC0JbXV0ZXhfZGVzdHJveShsb2NrKTsKPiAtfQo+IC0KPiAgIHN0YXRpYyBpbnQgcGlzb3NyX2dw aW9fcHJvYmUoc3RydWN0IHNwaV9kZXZpY2UgKnNwaSkKPiAgIHsKPiAgIAlzdHJ1Y3QgZGV2aWNl ICpkZXYgPSAmc3BpLT5kZXY7Cj4gQEAgLTE0Nyw4ICsxNDMsNyBAQCBzdGF0aWMgaW50IHBpc29z cl9ncGlvX3Byb2JlKHN0cnVjdCBzcGlfZGV2aWNlICpzcGkpCj4gICAJCXJldHVybiBkZXZfZXJy X3Byb2JlKGRldiwgUFRSX0VSUihncGlvLT5sb2FkX2dwaW8pLAo+ICAgCQkJCSAgICAgIlVuYWJs ZSB0byBhbGxvY2F0ZSBsb2FkIEdQSU9cbiIpOwo+ICAgCj4gLQltdXRleF9pbml0KCZncGlvLT5s b2NrKTsKPiAtCXJldCA9IGRldm1fYWRkX2FjdGlvbl9vcl9yZXNldChkZXYsIHBpc29zcl9tdXRl eF9kZXN0cm95LCAmZ3Bpby0+bG9jayk7Cj4gKwlyZXQgPSBkZXZtX211dGV4X2luaXQoZGV2LCAm Z3Bpby0+bG9jayk7Cj4gICAJaWYgKHJldCkKPiAgIAkJcmV0dXJuIHJldDsKPiAgIAo+IGRpZmYg LS1naXQgYS9kcml2ZXJzL2dwaW8vZ3Bpby1zaW0uYyBiL2RyaXZlcnMvZ3Bpby9ncGlvLXNpbS5j Cj4gaW5kZXggYzQxMDZlMzdlNmRiLi5mY2ZjYWE0ZWZlNzAgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVy cy9ncGlvL2dwaW8tc2ltLmMKPiArKysgYi9kcml2ZXJzL2dwaW8vZ3Bpby1zaW0uYwo+IEBAIC0x Miw2ICsxMiw3IEBACj4gICAjaW5jbHVkZSA8bGludXgvY29tcGxldGlvbi5oPgo+ICAgI2luY2x1 ZGUgPGxpbnV4L2NvbmZpZ2ZzLmg+Cj4gICAjaW5jbHVkZSA8bGludXgvZGV2aWNlLmg+Cj4gKyNp bmNsdWRlIDxsaW51eC9kZXZtLWhlbHBlcnMuaD4KPiAgICNpbmNsdWRlIDxsaW51eC9lcnIuaD4K PiAgICNpbmNsdWRlIDxsaW51eC9ncGlvL2NvbnN1bWVyLmg+Cj4gICAjaW5jbHVkZSA8bGludXgv Z3Bpby9kcml2ZXIuaD4KPiBAQCAtMzA3LDEzICszMDgsNiBAQCBzdGF0aWMgc3NpemVfdCBncGlv X3NpbV9zeXNmc19wdWxsX3N0b3JlKHN0cnVjdCBkZXZpY2UgKmRldiwKPiAgIAlyZXR1cm4gbGVu Owo+ICAgfQo+ICAgCj4gLXN0YXRpYyB2b2lkIGdwaW9fc2ltX211dGV4X2Rlc3Ryb3kodm9pZCAq ZGF0YSkKPiAtewo+IC0Jc3RydWN0IG11dGV4ICpsb2NrID0gZGF0YTsKPiAtCj4gLQltdXRleF9k ZXN0cm95KGxvY2spOwo+IC19Cj4gLQo+ICAgc3RhdGljIHZvaWQgZ3Bpb19zaW1fcHV0X2Rldmlj ZSh2b2lkICpkYXRhKQo+ICAgewo+ICAgCXN0cnVjdCBkZXZpY2UgKmRldiA9IGRhdGE7Cj4gQEAg LTQ1Nyw5ICs0NTEsNyBAQCBzdGF0aWMgaW50IGdwaW9fc2ltX2FkZF9iYW5rKHN0cnVjdCBmd25v ZGVfaGFuZGxlICpzd25vZGUsIHN0cnVjdCBkZXZpY2UgKmRldikKPiAgIAlpZiAocmV0KQo+ICAg CQlyZXR1cm4gcmV0Owo+ICAgCj4gLQltdXRleF9pbml0KCZjaGlwLT5sb2NrKTsKPiAtCXJldCA9 IGRldm1fYWRkX2FjdGlvbl9vcl9yZXNldChkZXYsIGdwaW9fc2ltX211dGV4X2Rlc3Ryb3ksCj4g LQkJCQkgICAgICAgJmNoaXAtPmxvY2spOwo+ICsJcmV0ID0gZGV2bV9tdXRleF9pbml0KGRldiwg JmNoaXAtPmxvY2spOwo+ICAgCWlmIChyZXQpCj4gICAJCXJldHVybiByZXQ7Cj4gICAKPiBkaWZm IC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL3hlL3hlX2h3bW9uLmMgYi9kcml2ZXJzL2dwdS9kcm0v eGUveGVfaHdtb24uYwo+IGluZGV4IDE3NGVkMjE4NTQ4MS4uYmI4OGFlMWMxOTZjIDEwMDY0NAo+ IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS94ZS94ZV9od21vbi5jCj4gKysrIGIvZHJpdmVycy9ncHUv ZHJtL3hlL3hlX2h3bW9uLmMKPiBAQCAtMyw2ICszLDcgQEAKPiAgICAqIENvcHlyaWdodCDCqSAy MDIzIEludGVsIENvcnBvcmF0aW9uCj4gICAgKi8KPiAgIAo+ICsjaW5jbHVkZSA8bGludXgvZGV2 bS1oZWxwZXJzLmg+Cj4gICAjaW5jbHVkZSA8bGludXgvaHdtb24tc3lzZnMuaD4KPiAgICNpbmNs dWRlIDxsaW51eC9od21vbi5oPgo+ICAgI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+Cj4gQEAgLTcy OSwxMyArNzMwLDYgQEAgeGVfaHdtb25fZ2V0X3ByZXJlZ2lzdHJhdGlvbl9pbmZvKHN0cnVjdCB4 ZV9kZXZpY2UgKnhlKQo+ICAgCQl4ZV9od21vbl9lbmVyZ3lfZ2V0KGh3bW9uLCAmZW5lcmd5KTsK PiAgIH0KPiAgIAo+IC1zdGF0aWMgdm9pZCB4ZV9od21vbl9tdXRleF9kZXN0cm95KHZvaWQgKmFy ZykKPiAtewo+IC0Jc3RydWN0IHhlX2h3bW9uICpod21vbiA9IGFyZzsKPiAtCj4gLQltdXRleF9k ZXN0cm95KCZod21vbi0+aHdtb25fbG9jayk7Cj4gLX0KPiAtCj4gICB2b2lkIHhlX2h3bW9uX3Jl Z2lzdGVyKHN0cnVjdCB4ZV9kZXZpY2UgKnhlKQo+ICAgewo+ICAgCXN0cnVjdCBkZXZpY2UgKmRl diA9IHhlLT5kcm0uZGV2Owo+IEBAIC03NTEsOCArNzQ1LDcgQEAgdm9pZCB4ZV9od21vbl9yZWdp c3RlcihzdHJ1Y3QgeGVfZGV2aWNlICp4ZSkKPiAgIAo+ICAgCXhlLT5od21vbiA9IGh3bW9uOwo+ ICAgCj4gLQltdXRleF9pbml0KCZod21vbi0+aHdtb25fbG9jayk7Cj4gLQlpZiAoZGV2bV9hZGRf YWN0aW9uX29yX3Jlc2V0KGRldiwgeGVfaHdtb25fbXV0ZXhfZGVzdHJveSwgaHdtb24pKQo+ICsJ aWYgKGRldm1fbXV0ZXhfaW5pdChkZXYsICZod21vbi0+aHdtb25fbG9jaykpCj4gICAJCXJldHVy bjsKPiAgIAo+ICAgCS8qIHByaW1hcnkgR1QgdG8gYWNjZXNzIGRldmljZSBsZXZlbCBwcm9wZXJ0 aWVzICovCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvaHdtb24vbnp4dC1zbWFydDIuYyBiL2RyaXZl cnMvaHdtb24vbnp4dC1zbWFydDIuYwo+IGluZGV4IDdhYTU4NmViNzRiZS4uMDBiYzg5NjA3Njcz IDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvaHdtb24vbnp4dC1zbWFydDIuYwo+ICsrKyBiL2RyaXZl cnMvaHdtb24vbnp4dC1zbWFydDIuYwo+IEBAIC01LDYgKzUsNyBAQAo+ICAgICogQ29weXJpZ2h0 IChjKSAyMDIxIEFsZWtzYW5kciBNZXppbgo+ICAgICovCj4gICAKPiArI2luY2x1ZGUgPGxpbnV4 L2Rldm0taGVscGVycy5oPgo+ICAgI2luY2x1ZGUgPGxpbnV4L2hpZC5oPgo+ICAgI2luY2x1ZGUg PGxpbnV4L2h3bW9uLmg+Cj4gICAjaW5jbHVkZSA8bGludXgvbWF0aC5oPgo+IEBAIC03MjEsMTEg KzcyMiw2IEBAIHN0YXRpYyBpbnQgX19tYXliZV91bnVzZWQgbnp4dF9zbWFydDJfaGlkX3Jlc2V0 X3Jlc3VtZShzdHJ1Y3QgaGlkX2RldmljZSAqaGRldikKPiAgIAlyZXR1cm4gaW5pdF9kZXZpY2Uo ZHJ2ZGF0YSwgZHJ2ZGF0YS0+dXBkYXRlX2ludGVydmFsKTsKPiAgIH0KPiAgIAo+IC1zdGF0aWMg dm9pZCBtdXRleF9maW5pKHZvaWQgKmxvY2spCj4gLXsKPiAtCW11dGV4X2Rlc3Ryb3kobG9jayk7 Cj4gLX0KPiAtCj4gICBzdGF0aWMgaW50IG56eHRfc21hcnQyX2hpZF9wcm9iZShzdHJ1Y3QgaGlk X2RldmljZSAqaGRldiwKPiAgIAkJCQkgY29uc3Qgc3RydWN0IGhpZF9kZXZpY2VfaWQgKmlkKQo+ ICAgewo+IEBAIC03NDEsOCArNzM3LDcgQEAgc3RhdGljIGludCBuenh0X3NtYXJ0Ml9oaWRfcHJv YmUoc3RydWN0IGhpZF9kZXZpY2UgKmhkZXYsCj4gICAKPiAgIAlpbml0X3dhaXRxdWV1ZV9oZWFk KCZkcnZkYXRhLT53cSk7Cj4gICAKPiAtCW11dGV4X2luaXQoJmRydmRhdGEtPm11dGV4KTsKPiAt CXJldCA9IGRldm1fYWRkX2FjdGlvbl9vcl9yZXNldCgmaGRldi0+ZGV2LCBtdXRleF9maW5pLCAm ZHJ2ZGF0YS0+bXV0ZXgpOwo+ICsJcmV0ID0gZGV2bV9tdXRleF9pbml0KCZoZGV2LT5kZXYsICZk cnZkYXRhLT5tdXRleCk7Cj4gICAJaWYgKHJldCkKPiAgIAkJcmV0dXJuIHJldDsKPiAgIAo+IGRp ZmYgLS1naXQgYS9kcml2ZXJzL2xlZHMvbGVkcy1pczMxZmwzMTl4LmMgYi9kcml2ZXJzL2xlZHMv bGVkcy1pczMxZmwzMTl4LmMKPiBpbmRleCA2NmM2NTc0MTIwMmUuLmU5ZDdjZjZhMzg2YyAxMDA2 NDQKPiAtLS0gYS9kcml2ZXJzL2xlZHMvbGVkcy1pczMxZmwzMTl4LmMKPiArKysgYi9kcml2ZXJz L2xlZHMvbGVkcy1pczMxZmwzMTl4LmMKPiBAQCAtOCw2ICs4LDcgQEAKPiAgICAqIGVmZmVjdCBM RURzLgo+ICAgICovCj4gICAKPiArI2luY2x1ZGUgPGxpbnV4L2Rldm0taGVscGVycy5oPgo+ICAg I2luY2x1ZGUgPGxpbnV4L2Vyci5oPgo+ICAgI2luY2x1ZGUgPGxpbnV4L2kyYy5oPgo+ICAgI2lu Y2x1ZGUgPGxpbnV4L2xlZHMuaD4KPiBAQCAtNDk1LDExICs0OTYsNiBAQCBzdGF0aWMgaW5saW5l IGludCBpczMxZmwzMTk2X2RiX3RvX2dhaW4odTMyIGRlemliZWwpCj4gICAJcmV0dXJuIGRlemli ZWwgLyBJUzMxRkwzMTk2X0FVRElPX0dBSU5fREJfU1RFUDsKPiAgIH0KPiAgIAo+IC1zdGF0aWMg dm9pZCBpczMxZjEzMTl4X211dGV4X2Rlc3Ryb3kodm9pZCAqbG9jaykKPiAtewo+IC0JbXV0ZXhf ZGVzdHJveShsb2NrKTsKPiAtfQo+IC0KPiAgIHN0YXRpYyBpbnQgaXMzMWZsMzE5eF9wcm9iZShz dHJ1Y3QgaTJjX2NsaWVudCAqY2xpZW50KQo+ICAgewo+ICAgCXN0cnVjdCBpczMxZmwzMTl4X2No aXAgKmlzMzE7Cj4gQEAgLTUxNSw4ICs1MTEsNyBAQCBzdGF0aWMgaW50IGlzMzFmbDMxOXhfcHJv YmUoc3RydWN0IGkyY19jbGllbnQgKmNsaWVudCkKPiAgIAlpZiAoIWlzMzEpCj4gICAJCXJldHVy biAtRU5PTUVNOwo+ICAgCj4gLQltdXRleF9pbml0KCZpczMxLT5sb2NrKTsKPiAtCWVyciA9IGRl dm1fYWRkX2FjdGlvbl9vcl9yZXNldChkZXYsIGlzMzFmMTMxOXhfbXV0ZXhfZGVzdHJveSwgJmlz MzEtPmxvY2spOwo+ICsJZXJyID0gZGV2bV9tdXRleF9pbml0KGRldiwgJmlzMzEtPmxvY2spOwo+ ICAgCWlmIChlcnIpCj4gICAJCXJldHVybiBlcnI7Cj4gICAKPiBkaWZmIC0tZ2l0IGEvZHJpdmVy cy9wb3dlci9zdXBwbHkvbXQ2MzcwLWNoYXJnZXIuYyBiL2RyaXZlcnMvcG93ZXIvc3VwcGx5L210 NjM3MC1jaGFyZ2VyLmMKPiBpbmRleCBlMjRmY2UwODdkODAuLmZhMDUxN2QwMzUyZCAxMDA2NDQK PiAtLS0gYS9kcml2ZXJzL3Bvd2VyL3N1cHBseS9tdDYzNzAtY2hhcmdlci5jCj4gKysrIGIvZHJp dmVycy9wb3dlci9zdXBwbHkvbXQ2MzcwLWNoYXJnZXIuYwo+IEBAIC03NjYsMTMgKzc2Niw2IEBA IHN0YXRpYyBpbnQgbXQ2MzcwX2NoZ19pbml0X3BzeShzdHJ1Y3QgbXQ2MzcwX3ByaXYgKnByaXYp Cj4gICAJcmV0dXJuIFBUUl9FUlJfT1JfWkVSTyhwcml2LT5wc3kpOwo+ICAgfQo+ICAgCj4gLXN0 YXRpYyB2b2lkIG10NjM3MF9jaGdfZGVzdHJveV9hdHRhY2hfbG9jayh2b2lkICpkYXRhKQo+IC17 Cj4gLQlzdHJ1Y3QgbXV0ZXggKmF0dGFjaF9sb2NrID0gZGF0YTsKPiAtCj4gLQltdXRleF9kZXN0 cm95KGF0dGFjaF9sb2NrKTsKPiAtfQo+IC0KPiAgIHN0YXRpYyB2b2lkIG10NjM3MF9jaGdfZGVz dHJveV93cSh2b2lkICpkYXRhKQo+ICAgewo+ICAgCXN0cnVjdCB3b3JrcXVldWVfc3RydWN0ICp3 cSA9IGRhdGE7Cj4gQEAgLTkwMCw5ICs4OTMsNyBAQCBzdGF0aWMgaW50IG10NjM3MF9jaGdfcHJv YmUoc3RydWN0IHBsYXRmb3JtX2RldmljZSAqcGRldikKPiAgIAlpZiAocmV0KQo+ICAgCQlyZXR1 cm4gZGV2X2Vycl9wcm9iZShkZXYsIHJldCwgIkZhaWxlZCB0byBpbml0IHBzeVxuIik7Cj4gICAK PiAtCW11dGV4X2luaXQoJnByaXYtPmF0dGFjaF9sb2NrKTsKPiAtCXJldCA9IGRldm1fYWRkX2Fj dGlvbl9vcl9yZXNldChkZXYsIG10NjM3MF9jaGdfZGVzdHJveV9hdHRhY2hfbG9jaywKPiAtCQkJ CSAgICAgICAmcHJpdi0+YXR0YWNoX2xvY2spOwo+ICsJcmV0ID0gZGV2bV9tdXRleF9pbml0KGRl diwgJnByaXYtPmF0dGFjaF9sb2NrKTsKPiAgIAlpZiAocmV0KQo+ICAgCQlyZXR1cm4gZGV2X2Vy cl9wcm9iZShkZXYsIHJldCwgIkZhaWxlZCB0byBpbml0IGF0dGFjaCBsb2NrXG4iKTsKPiAgIAo+ IGRpZmYgLS1naXQgYS9kcml2ZXJzL3Bvd2VyL3N1cHBseS9ydDk0NjctY2hhcmdlci5jIGIvZHJp dmVycy9wb3dlci9zdXBwbHkvcnQ5NDY3LWNoYXJnZXIuYwo+IGluZGV4IGZkZmRjODNhYjA0NS4u ODRmMDdjMjIwNzdmIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvcG93ZXIvc3VwcGx5L3J0OTQ2Ny1j aGFyZ2VyLmMKPiArKysgYi9kcml2ZXJzL3Bvd2VyL3N1cHBseS9ydDk0NjctY2hhcmdlci5jCj4g QEAgLTEwLDYgKzEwLDcgQEAKPiAgICNpbmNsdWRlIDxsaW51eC9iaXRmaWVsZC5oPgo+ICAgI2lu Y2x1ZGUgPGxpbnV4L2NvbXBsZXRpb24uaD4KPiAgICNpbmNsdWRlIDxsaW51eC9kZWxheS5oPgo+ ICsjaW5jbHVkZSA8bGludXgvZGV2bS1oZWxwZXJzLmg+Cj4gICAjaW5jbHVkZSA8bGludXgvZ3Bp by9jb25zdW1lci5oPgo+ICAgI2luY2x1ZGUgPGxpbnV4L2kyYy5oPgo+ICAgI2luY2x1ZGUgPGxp bnV4L2ludGVycnVwdC5oPgo+IEBAIC0xMTQ5LDI3ICsxMTUwLDYgQEAgc3RhdGljIGludCBydDk0 NjdfcmVzZXRfY2hpcChzdHJ1Y3QgcnQ5NDY3X2NoZ19kYXRhICpkYXRhKQo+ICAgCXJldHVybiBy ZWdtYXBfZmllbGRfd3JpdGUoZGF0YS0+cm1fZmllbGRbRl9SU1RdLCAxKTsKPiAgIH0KPiAgIAo+ IC1zdGF0aWMgdm9pZCBydDk0NjdfY2hnX2Rlc3Ryb3lfYWRjX2xvY2sodm9pZCAqZGF0YSkKPiAt ewo+IC0Jc3RydWN0IG11dGV4ICphZGNfbG9jayA9IGRhdGE7Cj4gLQo+IC0JbXV0ZXhfZGVzdHJv eShhZGNfbG9jayk7Cj4gLX0KPiAtCj4gLXN0YXRpYyB2b2lkIHJ0OTQ2N19jaGdfZGVzdHJveV9h dHRhY2hfbG9jayh2b2lkICpkYXRhKQo+IC17Cj4gLQlzdHJ1Y3QgbXV0ZXggKmF0dGFjaF9sb2Nr ID0gZGF0YTsKPiAtCj4gLQltdXRleF9kZXN0cm95KGF0dGFjaF9sb2NrKTsKPiAtfQo+IC0KPiAt c3RhdGljIHZvaWQgcnQ5NDY3X2NoZ19kZXN0cm95X2ljaGdfaWVvY19sb2NrKHZvaWQgKmRhdGEp Cj4gLXsKPiAtCXN0cnVjdCBtdXRleCAqaWNoZ19pZW9jX2xvY2sgPSBkYXRhOwo+IC0KPiAtCW11 dGV4X2Rlc3Ryb3koaWNoZ19pZW9jX2xvY2spOwo+IC19Cj4gLQo+ICAgc3RhdGljIHZvaWQgcnQ5 NDY3X2NoZ19jb21wbGV0ZV9haWNsX2RvbmUodm9pZCAqZGF0YSkKPiAgIHsKPiAgIAlzdHJ1Y3Qg Y29tcGxldGlvbiAqYWljbF9kb25lID0gZGF0YTsKPiBAQCAtMTIyMiwyMSArMTIwMiwxNSBAQCBz dGF0aWMgaW50IHJ0OTQ2N19jaGFyZ2VyX3Byb2JlKHN0cnVjdCBpMmNfY2xpZW50ICppMmMpCj4g ICAJaWYgKHJldCkKPiAgIAkJcmV0dXJuIGRldl9lcnJfcHJvYmUoZGV2LCByZXQsICJGYWlsZWQg dG8gYWRkIGlycSBjaGlwXG4iKTsKPiAgIAo+IC0JbXV0ZXhfaW5pdCgmZGF0YS0+YWRjX2xvY2sp Owo+IC0JcmV0ID0gZGV2bV9hZGRfYWN0aW9uX29yX3Jlc2V0KGRldiwgcnQ5NDY3X2NoZ19kZXN0 cm95X2FkY19sb2NrLAo+IC0JCQkJICAgICAgICZkYXRhLT5hZGNfbG9jayk7Cj4gKwlyZXQgPSBk ZXZtX211dGV4X2luaXQoZGV2LCAmZGF0YS0+YWRjX2xvY2spOwo+ICAgCWlmIChyZXQpCj4gICAJ CXJldHVybiBkZXZfZXJyX3Byb2JlKGRldiwgcmV0LCAiRmFpbGVkIHRvIGluaXQgQURDIGxvY2tc biIpOwo+ICAgCj4gLQltdXRleF9pbml0KCZkYXRhLT5hdHRhY2hfbG9jayk7Cj4gLQlyZXQgPSBk ZXZtX2FkZF9hY3Rpb25fb3JfcmVzZXQoZGV2LCBydDk0NjdfY2hnX2Rlc3Ryb3lfYXR0YWNoX2xv Y2ssCj4gLQkJCQkgICAgICAgJmRhdGEtPmF0dGFjaF9sb2NrKTsKPiArCXJldCA9IGRldm1fbXV0 ZXhfaW5pdChkZXYsICZkYXRhLT5hdHRhY2hfbG9jayk7Cj4gICAJaWYgKHJldCkKPiAgIAkJcmV0 dXJuIGRldl9lcnJfcHJvYmUoZGV2LCByZXQsICJGYWlsZWQgdG8gaW5pdCBhdHRhY2ggbG9ja1xu Iik7Cj4gICAKPiAtCW11dGV4X2luaXQoJmRhdGEtPmljaGdfaWVvY19sb2NrKTsKPiAtCXJldCA9 IGRldm1fYWRkX2FjdGlvbl9vcl9yZXNldChkZXYsIHJ0OTQ2N19jaGdfZGVzdHJveV9pY2hnX2ll b2NfbG9jaywKPiAtCQkJCSAgICAgICAmZGF0YS0+aWNoZ19pZW9jX2xvY2spOwo+ICsJcmV0ID0g ZGV2bV9tdXRleF9pbml0KGRldiwgJmRhdGEtPmljaGdfaWVvY19sb2NrKTsKPiAgIAlpZiAocmV0 KQo+ICAgCQlyZXR1cm4gZGV2X2Vycl9wcm9iZShkZXYsIHJldCwgIkZhaWxlZCB0byBpbml0IElD SEcvSUVPQyBsb2NrXG4iKTsKPiAgIAo+IGRpZmYgLS1naXQgYS9pbmNsdWRlL2xpbnV4L2Rldm0t aGVscGVycy5oIGIvaW5jbHVkZS9saW51eC9kZXZtLWhlbHBlcnMuaAo+IGluZGV4IDc0ODkxODAy MjAwZC4uNzA2NDBmYjk2MTE3IDEwMDY0NAo+IC0tLSBhL2luY2x1ZGUvbGludXgvZGV2bS1oZWxw ZXJzLmgKPiArKysgYi9pbmNsdWRlL2xpbnV4L2Rldm0taGVscGVycy5oCj4gQEAgLTI0LDYgKzI0 LDggQEAKPiAgICAqLwo+ICAgCj4gICAjaW5jbHVkZSA8bGludXgvZGV2aWNlLmg+Cj4gKyNpbmNs dWRlIDxsaW51eC9rY29uZmlnLmg+Cj4gKyNpbmNsdWRlIDxsaW51eC9tdXRleC5oPgo+ICAgI2lu Y2x1ZGUgPGxpbnV4L3dvcmtxdWV1ZS5oPgo+ICAgCj4gICBzdGF0aWMgaW5saW5lIHZvaWQgZGV2 bV9kZWxheWVkX3dvcmtfZHJvcCh2b2lkICpyZXMpCj4gQEAgLTc2LDQgKzc4LDM0IEBAIHN0YXRp YyBpbmxpbmUgaW50IGRldm1fd29ya19hdXRvY2FuY2VsKHN0cnVjdCBkZXZpY2UgKmRldiwKPiAg IAlyZXR1cm4gZGV2bV9hZGRfYWN0aW9uKGRldiwgZGV2bV93b3JrX2Ryb3AsIHcpOwo+ICAgfQo+ ICAgCj4gK3N0YXRpYyBpbmxpbmUgdm9pZCBkZXZtX211dGV4X2Ryb3Aodm9pZCAqcmVzKQo+ICt7 Cj4gKwltdXRleF9kZXN0cm95KHJlcyk7Cj4gK30KPiArCj4gKy8qKgo+ICsgKiBkZXZtX211dGV4 X2luaXQgLSBSZXNvdXJjZSBtYW5hZ2VkIG11dGV4IGluaXRpYWxpemF0aW9uCj4gKyAqIEBkZXY6 CURldmljZSB3aGljaCBsaWZldGltZSBtdXRleCBpcyBib3VuZCB0bwo+ICsgKiBAbG9jazoJTXV0 ZXggdG8gYmUgaW5pdGlhbGl6ZWQgKGFuZCBhdXRvbWF0aWNhbGx5IGRlc3Ryb3llZCkKPiArICoK PiArICogSW5pdGlhbGl6ZSBtdXRleCB3aGljaCBpcyBhdXRvbWF0aWNhbGx5IGRlc3Ryb3llZCB3 aGVuIGRyaXZlciBpcyBkZXRhY2hlZC4KPiArICogQSBmZXcgZHJpdmVycyBpbml0aWFsaXplIG11 dGV4ZXMgd2hpY2ggdGhleSB3YW50IGRlc3Ryb3llZCBiZWZvcmUgZHJpdmVyIGlzCj4gKyAqIGRl dGFjaGVkLCBmb3IgZGVidWdnaW5nIHB1cnBvc2VzLgo+ICsgKiBkZXZtX211dGV4X2luaXQoKSBj YW4gYmUgdXNlZCB0byBvbWl0IHRoZSBleHBsaWNpdCBtdXRleF9kZXN0cm95KCkgY2FsbCB3aGVu Cj4gKyAqIGRyaXZlciBpcyBkZXRhY2hlZC4KPiArICovCj4gK3N0YXRpYyBpbmxpbmUgaW50IGRl dm1fbXV0ZXhfaW5pdChzdHJ1Y3QgZGV2aWNlICpkZXYsIHN0cnVjdCBtdXRleCAqbG9jaykKPiAr ewo+ICsJbXV0ZXhfaW5pdChsb2NrKTsKCkRvIHlvdSBrbm93IGlmIHRoaXMgdGhpcyBuZWVkcyBf X2Fsd2F5c19pbmxpbmU/IFRoZSBzdGF0aWMgbG9ja2RlcCBrZXkgCmluIG11dGV4X2luaXQoKSBz aG91bGQgYmUgZGlmZmVyZW50IGZvciBlYWNoIGNhbGxlciBjbGFzcy4gU2VlIApjMjFmMTFkMTgy YzIgKCJkcm06IGZpeCBkcm1tX211dGV4X2luaXQoKSIpLgoKPiArCj4gKwkvKgo+ICsJICogbXV0 ZXhfZGVzdHJveSgpIGlzIGFuIGVtcHR5IGZ1bmN0aW9uIGlmIENPTkZJR19ERUJVR19NVVRFWEVT IGlzCj4gKwkgKiBkaXNhYmxlZC4gTm8gbmVlZCB0byBhbGxvY2F0ZSBhbiBhY3Rpb24gaW4gdGhh dCBjYXNlLgo+ICsJICovCj4gKwlpZiAoSVNfRU5BQkxFRChDT05GSUdfREVCVUdfTVVURVhFUykp Cj4gKwkJcmV0dXJuIGRldm1fYWRkX2FjdGlvbl9vcl9yZXNldChkZXYsIGRldm1fbXV0ZXhfZHJv cCwgbG9jayk7Cj4gKwllbHNlCj4gKwkJcmV0dXJuIDA7Cj4gK30KPiArCj4gICAjZW5kaWYKCl9f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmxpbnV4LWFybS1r ZXJuZWwgbWFpbGluZyBsaXN0CmxpbnV4LWFybS1rZXJuZWxAbGlzdHMuaW5mcmFkZWFkLm9yZwpo dHRwOi8vbGlzdHMuaW5mcmFkZWFkLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2xpbnV4LWFybS1rZXJu ZWwK