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 gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (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 50B85CD37AC for ; Wed, 13 May 2026 19:37:58 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 60A0A10F030; Wed, 13 May 2026 19:37:57 +0000 (UTC) Authentication-Results: gabe.freedesktop.org; dkim=pass (2048-bit key; unprotected) header.d=ragnatech.se header.i=@ragnatech.se header.b="i9tmdnos"; dkim=pass (2048-bit key; unprotected) header.d=messagingengine.com header.i=@messagingengine.com header.b="XEfQACeg"; dkim-atps=neutral Received: from fhigh-a5-smtp.messagingengine.com (fhigh-a5-smtp.messagingengine.com [103.168.172.156]) by gabe.freedesktop.org (Postfix) with ESMTPS id D3C9B10F030 for ; Wed, 13 May 2026 19:37:55 +0000 (UTC) Received: from phl-compute-04.internal (phl-compute-04.internal [10.202.2.44]) by mailfhigh.phl.internal (Postfix) with ESMTP id 4AC9E14001FC; Wed, 13 May 2026 15:37:55 -0400 (EDT) Received: from phl-frontend-04 ([10.202.2.163]) by phl-compute-04.internal (MEProxy); Wed, 13 May 2026 15:37:55 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ragnatech.se; h= cc:cc:content-transfer-encoding:content-type:content-type:date :date:from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:subject:subject:to:to; s=fm2; t=1778701075; x=1778787475; bh=wGLrKTZFbFtz28g83Fbb6opSBhXQm+Ur885sMoUpP6c=; b= i9tmdnosIswSUIw06Tt47s4/APoxq/qR9/VMnpu9MCbi44yohLBsopxYUGpuTZzD aRdtrqUfCeDtufybOp9tVHn5aApSmTEUus86bRfXt/mvET0dy63am7eKZ1gt17qF 0qYElh9SY906/j05uK21MCohSiBFN7wrpHg7Fyr8/Go4Zyi+KyrgO9xOHtLvk6w5 LTSFD26VmRozp9wWzIngO2NaP++g0y7mxRldopUjWGEsqcYlrFYRuIXOQFoZ13TG A6pYOI1TDzoHeT562UzNEjAtvuv6Wefs3Lt6izsfeGqdCl1uuqHSIdETjTkfBVZs jwkJsSmgdq+s/Ql4/FzllA== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-transfer-encoding :content-type:content-type:date:date:feedback-id:feedback-id :from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:subject:subject:to:to:x-me-proxy :x-me-sender:x-me-sender:x-sasl-enc; s=fm3; t=1778701075; x= 1778787475; bh=wGLrKTZFbFtz28g83Fbb6opSBhXQm+Ur885sMoUpP6c=; b=X EfQACegSCdZWpwMuMvijnjyP/HmoGyVaaW6nst7+RxP7O4hER8N2LASqCwuNDA7o iVm2LAntfQr74g2KJaBU5jccHZpi1IZ9Mdo8M3EWpDx72Ms9lBiE/ONc0ECt4NRk CqqhHmDMsRayyhtTQ2EPq9ljc5pup/yzj8mc8bbfBAXJIQ6Expw7viGBNr6F2Ftt 6JFswvrOcuRF+YAAI6BfG/xOZVDoijbx+2rdQ/jtWnYXfXV3zdPLoAhPFHN5RtMj VxzOCk6R2+B6lFL7wQls23463WsHa9Y9xzqZZHAElclsq7fRJCTR4xJd2lQjAZDO gh23SCyjA7om1H0qxptXA== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgeefhedrtddtgdduvdehheduucetufdoteggodetrf dotffvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfurfetoffkrfgpnffqhgenuceu rghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmnecujf gurhepfffhvfevuffkfhggtggugfgjsehtkeertddttdejnecuhfhrohhmpefpihhklhgr shcuufpnuggvrhhluhhnugcuoehnihhklhgrshdrshhouggvrhhluhhnugesrhgrghhnrg htvggthhdrshgvqeenucggtffrrghtthgvrhhnpeevteegtddvvdfhtdekgefhfeefheet heekkeegfeejudeiudeuleegtdehkeekteenucevlhhushhtvghrufhiiigvpedtnecurf grrhgrmhepmhgrihhlfhhrohhmpehnihhklhgrshdrshhouggvrhhluhhnugesrhgrghhn rghtvggthhdrshgvpdhnsggprhgtphhtthhopeelpdhmohguvgepshhmthhpohhuthdprh gtphhtthhopehlrghurhgvnhhtrdhpihhntghhrghrthdorhgvnhgvshgrshesihguvggr shhonhgsohgrrhgurdgtohhmpdhrtghpthhtoheplhhinhhugidqmhgvughirgesvhhgvg hrrdhkvghrnhgvlhdrohhrghdprhgtphhtthhopegurhhiqdguvghvvghlsehlihhsthhs rdhfrhgvvgguvghskhhtohhprdhorhhgpdhrtghpthhtoheplhhinhhugidqrhgvnhgvsh grshdqshhotgesvhhgvghrrdhkvghrnhgvlhdrohhrghdprhgtphhtthhopehtohhmihdr vhgrlhhkvghinhgvnhesihguvggrshhonhgsohgrrhgurdgtohhmpdhrtghpthhtohepkh hivghrrghnrdgsihhnghhhrghmsehiuggvrghsohhnsghorghrugdrtghomhdprhgtphht thhopegsihhjuhdruggrshdrjhiisegsphdrrhgvnhgvshgrshdrtghomhdprhgtphhtth hopegrihhrlhhivggusehgmhgrihhlrdgtohhmpdhrtghpthhtohepshhimhhonhgrsehf fhiflhhlrdgthh X-ME-Proxy: Feedback-ID: i80c9496c:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Wed, 13 May 2026 15:37:54 -0400 (EDT) Date: Wed, 13 May 2026 21:37:53 +0200 From: Niklas =?utf-8?Q?S=C3=B6derlund?= To: Laurent Pinchart Cc: linux-media@vger.kernel.org, dri-devel@lists.freedesktop.org, linux-renesas-soc@vger.kernel.org, Tomi Valkeinen , Kieran Bingham , Biju Das , David Airlie , Simona Vetter Subject: Re: [PATCH 08/11] media: renesas: vsp1: Use spinlock scoped guards Message-ID: <20260513193753.GK332351@ragnatech.se> References: <20260511235637.3468558-1-laurent.pinchart+renesas@ideasonboard.com> <20260511235637.3468558-9-laurent.pinchart+renesas@ideasonboard.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Disposition: inline Content-Transfer-Encoding: base64 In-Reply-To: <20260511235637.3468558-9-laurent.pinchart+renesas@ideasonboard.com> X-BeenThere: dri-devel@lists.freedesktop.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Direct Rendering Infrastructure - Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" SGkgTGF1cmVudCwKClRoYW5rcyBmb3IgeW91ciBwYXRjaC4KCk9uIDIwMjYtMDUtMTIgMDI6NTY6 MzIgKzAzMDAsIExhdXJlbnQgUGluY2hhcnQgd3JvdGU6Cj4gUmVwbGFjZSByZW1haW5pbmcgbWFu dWFsIHNwaW5sb2NrIGxvY2tpbmcgYW5kIHVubG9ja2luZyB3aXRoIHNjb3BlZAo+IGd1YXJkcy4g VGhpcyBzaW1wbGlmaWVzIGVycm9yIHBhdGhzIGFuZCByZWR1Y2VzIHRoZSBhbW91bnQgb2YgY29k ZS4KPiAKPiBTaWduZWQtb2ZmLWJ5OiBMYXVyZW50IFBpbmNoYXJ0IDxsYXVyZW50LnBpbmNoYXJ0 K3JlbmVzYXNAaWRlYXNvbmJvYXJkLmNvbT4KClJldmlld2VkLWJ5OiBOaWtsYXMgU8O2ZGVybHVu ZCA8bmlrbGFzLnNvZGVybHVuZCtyZW5lc2FzQHJhZ25hdGVjaC5zZT4KCgo+IC0tLQo+ICAuLi4v bWVkaWEvcGxhdGZvcm0vcmVuZXNhcy92c3AxL3ZzcDFfY2x1LmMgICAgfCAxNSArKystLQo+ICBk cml2ZXJzL21lZGlhL3BsYXRmb3JtL3JlbmVzYXMvdnNwMS92c3AxX2RsLmMgfCAxNCArKy0tLQo+ ICAuLi4vbWVkaWEvcGxhdGZvcm0vcmVuZXNhcy92c3AxL3ZzcDFfZHJtLmMgICAgfCAgNyArLS0K PiAgLi4uL21lZGlhL3BsYXRmb3JtL3JlbmVzYXMvdnNwMS92c3AxX2x1dC5jICAgIHwgMTUgKysr LS0KPiAgLi4uL21lZGlhL3BsYXRmb3JtL3JlbmVzYXMvdnNwMS92c3AxX3BpcGUuYyAgIHwgMTUg KysrLS0KPiAgLi4uL21lZGlhL3BsYXRmb3JtL3JlbmVzYXMvdnNwMS92c3AxX3ZpZGVvLmMgIHwg NTkgKysrKysrKystLS0tLS0tLS0tLQo+ICAuLi4vbWVkaWEvcGxhdGZvcm0vcmVuZXNhcy92c3Ax L3ZzcDFfd3BmLmMgICAgfCAgOSArKy0KPiAgNyBmaWxlcyBjaGFuZ2VkLCA1OSBpbnNlcnRpb25z KCspLCA3NSBkZWxldGlvbnMoLSkKPiAKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9tZWRpYS9wbGF0 Zm9ybS9yZW5lc2FzL3ZzcDEvdnNwMV9jbHUuYyBiL2RyaXZlcnMvbWVkaWEvcGxhdGZvcm0vcmVu ZXNhcy92c3AxL3ZzcDFfY2x1LmMKPiBpbmRleCAwNGM0NjZjNGRhODEuLmE2ZTRiY2FiNTEwMSAx MDA2NDQKPiAtLS0gYS9kcml2ZXJzL21lZGlhL3BsYXRmb3JtL3JlbmVzYXMvdnNwMS92c3AxX2Ns dS5jCj4gKysrIGIvZHJpdmVycy9tZWRpYS9wbGF0Zm9ybS9yZW5lc2FzL3ZzcDEvdnNwMV9jbHUu Ywo+IEBAIC01Myw5ICs1Myw5IEBAIHN0YXRpYyBpbnQgY2x1X3NldF90YWJsZShzdHJ1Y3QgdnNw MV9jbHUgKmNsdSwgc3RydWN0IHY0bDJfY3RybCAqY3RybCkKPiAgCWZvciAoaSA9IDA7IGkgPCBD TFVfU0laRTsgKytpKQo+ICAJCXZzcDFfZGxfYm9keV93cml0ZShkbGIsIFZJNl9DTFVfREFUQSwg Y3RybC0+cF9uZXcucF91MzJbaV0pOwo+ICAKPiAtCXNwaW5fbG9ja19pcnEoJmNsdS0+bG9jayk7 Cj4gLQlzd2FwKGNsdS0+Y2x1LCBkbGIpOwo+IC0Jc3Bpbl91bmxvY2tfaXJxKCZjbHUtPmxvY2sp Owo+ICsJc2NvcGVkX2d1YXJkKHNwaW5sb2NrX2lycSwgJmNsdS0+bG9jaykgewo+ICsJCXN3YXAo Y2x1LT5jbHUsIGRsYik7Cj4gKwl9Cj4gIAo+ICAJdnNwMV9kbF9ib2R5X3B1dChkbGIpOwo+ICAJ cmV0dXJuIDA7Cj4gQEAgLTE2Miw3ICsxNjIsNiBAQCBzdGF0aWMgdm9pZCBjbHVfY29uZmlndXJl X2ZyYW1lKHN0cnVjdCB2c3AxX2VudGl0eSAqZW50aXR5LAo+ICB7Cj4gIAlzdHJ1Y3QgdnNwMV9j bHUgKmNsdSA9IHRvX2NsdSgmZW50aXR5LT5zdWJkZXYpOwo+ICAJc3RydWN0IHZzcDFfZGxfYm9k eSAqY2x1X2RsYjsKPiAtCXVuc2lnbmVkIGxvbmcgZmxhZ3M7Cj4gIAl1MzIgY3RybCA9IFZJNl9D TFVfQ1RSTF9BQUkgfCBWSTZfQ0xVX0NUUkxfTVZTIHwgVkk2X0NMVV9DVFJMX0VOOwo+ICAKPiAg CS8qIDJEIG1vZGUgY2FuIG9ubHkgYmUgdXNlZCB3aXRoIHRoZSBZQ2JDciBwaXhlbCBlbmNvZGlu Zy4gKi8KPiBAQCAtMTczLDEwICsxNzIsMTAgQEAgc3RhdGljIHZvaWQgY2x1X2NvbmZpZ3VyZV9m cmFtZShzdHJ1Y3QgdnNwMV9lbnRpdHkgKmVudGl0eSwKPiAgCj4gIAl2c3AxX2NsdV93cml0ZShj bHUsIGRsYiwgVkk2X0NMVV9DVFJMLCBjdHJsKTsKPiAgCj4gLQlzcGluX2xvY2tfaXJxc2F2ZSgm Y2x1LT5sb2NrLCBmbGFncyk7Cj4gLQljbHVfZGxiID0gY2x1LT5jbHU7Cj4gLQljbHUtPmNsdSA9 IE5VTEw7Cj4gLQlzcGluX3VubG9ja19pcnFyZXN0b3JlKCZjbHUtPmxvY2ssIGZsYWdzKTsKPiAr CXNjb3BlZF9ndWFyZChzcGlubG9ja19pcnFzYXZlLCAmY2x1LT5sb2NrKSB7Cj4gKwkJY2x1X2Rs YiA9IGNsdS0+Y2x1Owo+ICsJCWNsdS0+Y2x1ID0gTlVMTDsKPiArCX0KPiAgCj4gIAlpZiAoY2x1 X2RsYikgewo+ICAJCXZzcDFfZGxfbGlzdF9hZGRfYm9keShkbCwgY2x1X2RsYik7Cj4gZGlmZiAt LWdpdCBhL2RyaXZlcnMvbWVkaWEvcGxhdGZvcm0vcmVuZXNhcy92c3AxL3ZzcDFfZGwuYyBiL2Ry aXZlcnMvbWVkaWEvcGxhdGZvcm0vcmVuZXNhcy92c3AxL3ZzcDFfZGwuYwo+IGluZGV4IDRhMTlm ZjE0MzdiMC4uM2RjNzRmZWQ5MWRjIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvbWVkaWEvcGxhdGZv cm0vcmVuZXNhcy92c3AxL3ZzcDFfZGwuYwo+ICsrKyBiL2RyaXZlcnMvbWVkaWEvcGxhdGZvcm0v cmVuZXNhcy92c3AxL3ZzcDFfZGwuYwo+IEBAIC0xMDY0LDE3ICsxMDY0LDE1IEBAIHZvaWQgdnNw MV9kbG1fc2V0dXAoc3RydWN0IHZzcDFfZGV2aWNlICp2c3AxKQo+ICAKPiAgdm9pZCB2c3AxX2Rs bV9yZXNldChzdHJ1Y3QgdnNwMV9kbF9tYW5hZ2VyICpkbG0pCj4gIHsKPiAtCXVuc2lnbmVkIGxv bmcgZmxhZ3M7Cj4gIAlzaXplX3QgbGlzdF9jb3VudDsKPiAgCj4gLQlzcGluX2xvY2tfaXJxc2F2 ZSgmZGxtLT5sb2NrLCBmbGFncyk7Cj4gKwlzY29wZWRfZ3VhcmQoc3BpbmxvY2tfaXJxc2F2ZSwg JmRsbS0+bG9jaykgewo+ICsJCV9fdnNwMV9kbF9saXN0X3B1dChkbG0tPmFjdGl2ZSk7Cj4gKwkJ X192c3AxX2RsX2xpc3RfcHV0KGRsbS0+cXVldWVkKTsKPiArCQlfX3ZzcDFfZGxfbGlzdF9wdXQo ZGxtLT5wZW5kaW5nKTsKPiAgCj4gLQlfX3ZzcDFfZGxfbGlzdF9wdXQoZGxtLT5hY3RpdmUpOwo+ IC0JX192c3AxX2RsX2xpc3RfcHV0KGRsbS0+cXVldWVkKTsKPiAtCV9fdnNwMV9kbF9saXN0X3B1 dChkbG0tPnBlbmRpbmcpOwo+IC0KPiAtCWxpc3RfY291bnQgPSBsaXN0X2NvdW50X25vZGVzKCZk bG0tPmZyZWUpOwo+IC0Jc3Bpbl91bmxvY2tfaXJxcmVzdG9yZSgmZGxtLT5sb2NrLCBmbGFncyk7 Cj4gKwkJbGlzdF9jb3VudCA9IGxpc3RfY291bnRfbm9kZXMoJmRsbS0+ZnJlZSk7Cj4gKwl9Cj4g IAo+ICAJV0FSTl9PTl9PTkNFKGxpc3RfY291bnQgIT0gZGxtLT5saXN0X2NvdW50KTsKPiAgCj4g ZGlmZiAtLWdpdCBhL2RyaXZlcnMvbWVkaWEvcGxhdGZvcm0vcmVuZXNhcy92c3AxL3ZzcDFfZHJt LmMgYi9kcml2ZXJzL21lZGlhL3BsYXRmb3JtL3JlbmVzYXMvdnNwMS92c3AxX2RybS5jCj4gaW5k ZXggMmI2NGQ5YjVhODFjLi5mNmZiZDM0NzUzMjkgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9tZWRp YS9wbGF0Zm9ybS9yZW5lc2FzL3ZzcDEvdnNwMV9kcm0uYwo+ICsrKyBiL2RyaXZlcnMvbWVkaWEv cGxhdGZvcm0vcmVuZXNhcy92c3AxL3ZzcDFfZHJtLmMKPiBAQCAtNjU1LDcgKzY1NSw2IEBAIGlu dCB2c3AxX2R1X2VuYWJsZShzdHJ1Y3QgZGV2aWNlICpkZXYsIHVuc2lnbmVkIGludCBwaXBlX2lu ZGV4LAo+ICAJc3RydWN0IHZzcDFfZGV2aWNlICp2c3AxID0gZGV2X2dldF9kcnZkYXRhKGRldik7 Cj4gIAlzdHJ1Y3QgdnNwMV9kcm1fcGlwZWxpbmUgKmRybV9waXBlOwo+ICAJc3RydWN0IHZzcDFf cGlwZWxpbmUgKnBpcGU7Cj4gLQl1bnNpZ25lZCBsb25nIGZsYWdzOwo+ICAJaW50IHJldDsKPiAg Cj4gIAlpZiAocGlwZV9pbmRleCA+PSB2c3AxLT5pbmZvLT5saWZfY291bnQpCj4gQEAgLTcwOCw5 ICs3MDcsOSBAQCBpbnQgdnNwMV9kdV9lbmFibGUoc3RydWN0IGRldmljZSAqZGV2LCB1bnNpZ25l ZCBpbnQgcGlwZV9pbmRleCwKPiAgCX0KPiAgCj4gIAkvKiBTdGFydCB0aGUgcGlwZWxpbmUuICov Cj4gLQlzcGluX2xvY2tfaXJxc2F2ZSgmcGlwZS0+aXJxbG9jaywgZmxhZ3MpOwo+IC0JdnNwMV9w aXBlbGluZV9ydW4ocGlwZSk7Cj4gLQlzcGluX3VubG9ja19pcnFyZXN0b3JlKCZwaXBlLT5pcnFs b2NrLCBmbGFncyk7Cj4gKwlzY29wZWRfZ3VhcmQoc3BpbmxvY2tfaXJxc2F2ZSwgJnBpcGUtPmly cWxvY2spIHsKPiArCQl2c3AxX3BpcGVsaW5lX3J1bihwaXBlKTsKPiArCX0KPiAgCj4gIAlkZXZf ZGJnKHZzcDEtPmRldiwgIiVzOiBwaXBlbGluZSBlbmFibGVkXG4iLCBfX2Z1bmNfXyk7Cj4gIAo+ IGRpZmYgLS1naXQgYS9kcml2ZXJzL21lZGlhL3BsYXRmb3JtL3JlbmVzYXMvdnNwMS92c3AxX2x1 dC5jIGIvZHJpdmVycy9tZWRpYS9wbGF0Zm9ybS9yZW5lc2FzL3ZzcDEvdnNwMV9sdXQuYwo+IGlu ZGV4IDk0YmRlZGNjNWM5Mi4uYTIyYzMxZTE3Y2I3IDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvbWVk aWEvcGxhdGZvcm0vcmVuZXNhcy92c3AxL3ZzcDFfbHV0LmMKPiArKysgYi9kcml2ZXJzL21lZGlh L3BsYXRmb3JtL3JlbmVzYXMvdnNwMS92c3AxX2x1dC5jCj4gQEAgLTUwLDkgKzUwLDkgQEAgc3Rh dGljIGludCBsdXRfc2V0X3RhYmxlKHN0cnVjdCB2c3AxX2x1dCAqbHV0LCBzdHJ1Y3QgdjRsMl9j dHJsICpjdHJsKQo+ICAJCXZzcDFfZGxfYm9keV93cml0ZShkbGIsIFZJNl9MVVRfVEFCTEUgKyA0 ICogaSwKPiAgCQkJCSAgICAgICBjdHJsLT5wX25ldy5wX3UzMltpXSk7Cj4gIAo+IC0Jc3Bpbl9s b2NrX2lycSgmbHV0LT5sb2NrKTsKPiAtCXN3YXAobHV0LT5sdXQsIGRsYik7Cj4gLQlzcGluX3Vu bG9ja19pcnEoJmx1dC0+bG9jayk7Cj4gKwlzY29wZWRfZ3VhcmQoc3BpbmxvY2tfaXJxLCAmbHV0 LT5sb2NrKSB7Cj4gKwkJc3dhcChsdXQtPmx1dCwgZGxiKTsKPiArCX0KPiAgCj4gIAl2c3AxX2Rs X2JvZHlfcHV0KGRsYik7Cj4gIAlyZXR1cm4gMDsKPiBAQCAtMTMyLDEyICsxMzIsMTEgQEAgc3Rh dGljIHZvaWQgbHV0X2NvbmZpZ3VyZV9mcmFtZShzdHJ1Y3QgdnNwMV9lbnRpdHkgKmVudGl0eSwK PiAgewo+ICAJc3RydWN0IHZzcDFfbHV0ICpsdXQgPSB0b19sdXQoJmVudGl0eS0+c3ViZGV2KTsK PiAgCXN0cnVjdCB2c3AxX2RsX2JvZHkgKmx1dF9kbGI7Cj4gLQl1bnNpZ25lZCBsb25nIGZsYWdz Owo+ICAKPiAtCXNwaW5fbG9ja19pcnFzYXZlKCZsdXQtPmxvY2ssIGZsYWdzKTsKPiAtCWx1dF9k bGIgPSBsdXQtPmx1dDsKPiAtCWx1dC0+bHV0ID0gTlVMTDsKPiAtCXNwaW5fdW5sb2NrX2lycXJl c3RvcmUoJmx1dC0+bG9jaywgZmxhZ3MpOwo+ICsJc2NvcGVkX2d1YXJkKHNwaW5sb2NrX2lycXNh dmUsICZsdXQtPmxvY2spIHsKPiArCQlsdXRfZGxiID0gbHV0LT5sdXQ7Cj4gKwkJbHV0LT5sdXQg PSBOVUxMOwo+ICsJfQo+ICAKPiAgCWlmIChsdXRfZGxiKSB7Cj4gIAkJdnNwMV9kbF9saXN0X2Fk ZF9ib2R5KGRsLCBsdXRfZGxiKTsKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9tZWRpYS9wbGF0Zm9y bS9yZW5lc2FzL3ZzcDEvdnNwMV9waXBlLmMgYi9kcml2ZXJzL21lZGlhL3BsYXRmb3JtL3JlbmVz YXMvdnNwMS92c3AxX3BpcGUuYwo+IGluZGV4IDkyNGU4N2Y5MTkwMy4uZjljN2M3NWE3YWQwIDEw MDY0NAo+IC0tLSBhL2RyaXZlcnMvbWVkaWEvcGxhdGZvcm0vcmVuZXNhcy92c3AxL3ZzcDFfcGlw ZS5jCj4gKysrIGIvZHJpdmVycy9tZWRpYS9wbGF0Zm9ybS9yZW5lc2FzL3ZzcDEvdnNwMV9waXBl LmMKPiBAQCAtNDk2LDcgKzQ5Niw2IEBAIGludCB2c3AxX3BpcGVsaW5lX3N0b3Aoc3RydWN0IHZz cDFfcGlwZWxpbmUgKnBpcGUpCj4gIHsKPiAgCXN0cnVjdCB2c3AxX2RldmljZSAqdnNwMSA9IHBp cGUtPm91dHB1dC0+ZW50aXR5LnZzcDE7Cj4gIAlzdHJ1Y3QgdnNwMV9lbnRpdHkgKmVudGl0eTsK PiAtCXVuc2lnbmVkIGxvbmcgZmxhZ3M7Cj4gIAlpbnQgcmV0Owo+ICAKPiAgCWlmIChwaXBlLT5s aWYpIHsKPiBAQCAtNTEwLDE2ICs1MDksMTYgQEAgaW50IHZzcDFfcGlwZWxpbmVfc3RvcChzdHJ1 Y3QgdnNwMV9waXBlbGluZSAqcGlwZSkKPiAgCj4gIAkJcmV0ID0gdnNwMV9yZXNldF93cGYodnNw MSwgcGlwZS0+b3V0cHV0LT5lbnRpdHkuaW5kZXgpOwo+ICAJCWlmIChyZXQgPT0gMCkgewo+IC0J CQlzcGluX2xvY2tfaXJxc2F2ZSgmcGlwZS0+aXJxbG9jaywgZmxhZ3MpOwo+IC0JCQlwaXBlLT5z dGF0ZSA9IFZTUDFfUElQRUxJTkVfU1RPUFBFRDsKPiAtCQkJc3Bpbl91bmxvY2tfaXJxcmVzdG9y ZSgmcGlwZS0+aXJxbG9jaywgZmxhZ3MpOwo+ICsJCQlzY29wZWRfZ3VhcmQoc3BpbmxvY2tfaXJx c2F2ZSwgJnBpcGUtPmlycWxvY2spIHsKPiArCQkJCXBpcGUtPnN0YXRlID0gVlNQMV9QSVBFTElO RV9TVE9QUEVEOwo+ICsJCQl9Cj4gIAkJfQo+ICAJfSBlbHNlIHsKPiAgCQkvKiBPdGhlcndpc2Ug anVzdCByZXF1ZXN0IGEgc3RvcCBhbmQgd2FpdC4gKi8KPiAtCQlzcGluX2xvY2tfaXJxc2F2ZSgm cGlwZS0+aXJxbG9jaywgZmxhZ3MpOwo+IC0JCWlmIChwaXBlLT5zdGF0ZSA9PSBWU1AxX1BJUEVM SU5FX1JVTk5JTkcpCj4gLQkJCXBpcGUtPnN0YXRlID0gVlNQMV9QSVBFTElORV9TVE9QUElORzsK PiAtCQlzcGluX3VubG9ja19pcnFyZXN0b3JlKCZwaXBlLT5pcnFsb2NrLCBmbGFncyk7Cj4gKwkJ c2NvcGVkX2d1YXJkKHNwaW5sb2NrX2lycXNhdmUsICZwaXBlLT5pcnFsb2NrKSB7Cj4gKwkJCWlm IChwaXBlLT5zdGF0ZSA9PSBWU1AxX1BJUEVMSU5FX1JVTk5JTkcpCj4gKwkJCQlwaXBlLT5zdGF0 ZSA9IFZTUDFfUElQRUxJTkVfU1RPUFBJTkc7Cj4gKwkJfQo+ICAKPiAgCQlyZXQgPSB3YWl0X2V2 ZW50X3RpbWVvdXQocGlwZS0+d3EsIHZzcDFfcGlwZWxpbmVfc3RvcHBlZChwaXBlKSwKPiAgCQkJ CQkgbXNlY3NfdG9famlmZmllcyg1MDApKTsKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9tZWRpYS9w bGF0Zm9ybS9yZW5lc2FzL3ZzcDEvdnNwMV92aWRlby5jIGIvZHJpdmVycy9tZWRpYS9wbGF0Zm9y bS9yZW5lc2FzL3ZzcDEvdnNwMV92aWRlby5jCj4gaW5kZXggMWU1ZDllNDJjZWEwLi5iMGVhZTU0 MjczYTAgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9tZWRpYS9wbGF0Zm9ybS9yZW5lc2FzL3ZzcDEv dnNwMV92aWRlby5jCj4gKysrIGIvZHJpdmVycy9tZWRpYS9wbGF0Zm9ybS9yZW5lc2FzL3ZzcDEv dnNwMV92aWRlby5jCj4gQEAgLTIwOSwyNiArMjA5LDIxIEBAIHZzcDFfdmlkZW9fY29tcGxldGVf YnVmZmVyKHN0cnVjdCB2c3AxX3ZpZGVvICp2aWRlbykKPiAgCXN0cnVjdCB2c3AxX3BpcGVsaW5l ICpwaXBlID0gdmlkZW8tPnJ3cGYtPmVudGl0eS5waXBlOwo+ICAJc3RydWN0IHZzcDFfdmIyX2J1 ZmZlciAqbmV4dCA9IE5VTEw7Cj4gIAlzdHJ1Y3QgdnNwMV92YjJfYnVmZmVyICpkb25lOwo+IC0J dW5zaWduZWQgbG9uZyBmbGFnczsKPiAgCXVuc2lnbmVkIGludCBpOwo+ICAKPiAtCXNwaW5fbG9j a19pcnFzYXZlKCZ2aWRlby0+aXJxbG9jaywgZmxhZ3MpOwo+ICsJc2NvcGVkX2d1YXJkKHNwaW5s b2NrX2lycXNhdmUsICZ2aWRlby0+aXJxbG9jaykgewo+ICsJCWlmIChsaXN0X2VtcHR5KCZ2aWRl by0+aXJxcXVldWUpKQo+ICsJCQlyZXR1cm4gTlVMTDsKPiAgCj4gLQlpZiAobGlzdF9lbXB0eSgm dmlkZW8tPmlycXF1ZXVlKSkgewo+IC0JCXNwaW5fdW5sb2NrX2lycXJlc3RvcmUoJnZpZGVvLT5p cnFsb2NrLCBmbGFncyk7Cj4gLQkJcmV0dXJuIE5VTEw7Cj4gLQl9Cj4gLQo+IC0JZG9uZSA9IGxp c3RfZmlyc3RfZW50cnkoJnZpZGVvLT5pcnFxdWV1ZSwKPiAtCQkJCXN0cnVjdCB2c3AxX3ZiMl9i dWZmZXIsIHF1ZXVlKTsKPiAtCj4gLQlsaXN0X2RlbCgmZG9uZS0+cXVldWUpOwo+IC0KPiAtCWlm ICghbGlzdF9lbXB0eSgmdmlkZW8tPmlycXF1ZXVlKSkKPiAtCQluZXh0ID0gbGlzdF9maXJzdF9l bnRyeSgmdmlkZW8tPmlycXF1ZXVlLAo+ICsJCWRvbmUgPSBsaXN0X2ZpcnN0X2VudHJ5KCZ2aWRl by0+aXJxcXVldWUsCj4gIAkJCQkJc3RydWN0IHZzcDFfdmIyX2J1ZmZlciwgcXVldWUpOwo+ICAK PiAtCXNwaW5fdW5sb2NrX2lycXJlc3RvcmUoJnZpZGVvLT5pcnFsb2NrLCBmbGFncyk7Cj4gKwkJ bGlzdF9kZWwoJmRvbmUtPnF1ZXVlKTsKPiArCj4gKwkJaWYgKCFsaXN0X2VtcHR5KCZ2aWRlby0+ aXJxcXVldWUpKQo+ICsJCQluZXh0ID0gbGlzdF9maXJzdF9lbnRyeSgmdmlkZW8tPmlycXF1ZXVl LAo+ICsJCQkJCQlzdHJ1Y3QgdnNwMV92YjJfYnVmZmVyLCBxdWV1ZSk7Cj4gKwl9Cj4gIAo+ICAJ ZG9uZS0+YnVmLnNlcXVlbmNlID0gcGlwZS0+c2VxdWVuY2U7Cj4gIAlkb25lLT5idWYudmIyX2J1 Zi50aW1lc3RhbXAgPSBrdGltZV9nZXRfbnMoKTsKPiBAQCAtNjU2LDEzICs2NTEsMTIgQEAgc3Rh dGljIHZvaWQgdnNwMV92aWRlb19idWZmZXJfcXVldWUoc3RydWN0IHZiMl9idWZmZXIgKnZiKQo+ ICAJc3RydWN0IHZzcDFfdmlkZW8gKnZpZGVvID0gdmIyX2dldF9kcnZfcHJpdih2Yi0+dmIyX3F1 ZXVlKTsKPiAgCXN0cnVjdCB2c3AxX3BpcGVsaW5lICpwaXBlID0gdmlkZW8tPnJ3cGYtPmVudGl0 eS5waXBlOwo+ICAJc3RydWN0IHZzcDFfdmIyX2J1ZmZlciAqYnVmID0gdG9fdnNwMV92YjJfYnVm ZmVyKHZidWYpOwo+IC0JdW5zaWduZWQgbG9uZyBmbGFnczsKPiAgCWJvb2wgZW1wdHk7Cj4gIAo+ IC0Jc3Bpbl9sb2NrX2lycXNhdmUoJnZpZGVvLT5pcnFsb2NrLCBmbGFncyk7Cj4gLQllbXB0eSA9 IGxpc3RfZW1wdHkoJnZpZGVvLT5pcnFxdWV1ZSk7Cj4gLQlsaXN0X2FkZF90YWlsKCZidWYtPnF1 ZXVlLCAmdmlkZW8tPmlycXF1ZXVlKTsKPiAtCXNwaW5fdW5sb2NrX2lycXJlc3RvcmUoJnZpZGVv LT5pcnFsb2NrLCBmbGFncyk7Cj4gKwlzY29wZWRfZ3VhcmQoc3BpbmxvY2tfaXJxc2F2ZSwgJnZp ZGVvLT5pcnFsb2NrKSB7Cj4gKwkJZW1wdHkgPSBsaXN0X2VtcHR5KCZ2aWRlby0+aXJxcXVldWUp Owo+ICsJCWxpc3RfYWRkX3RhaWwoJmJ1Zi0+cXVldWUsICZ2aWRlby0+aXJxcXVldWUpOwo+ICsJ fQo+ICAKPiAgCWlmICghZW1wdHkpCj4gIAkJcmV0dXJuOwo+IEBAIC04NDMsMTYgKzgzNywxNSBA QCBzdGF0aWMgdm9pZCB2c3AxX3ZpZGVvX3N0b3Bfc3RyZWFtaW5nKHN0cnVjdCB2YjJfcXVldWUg KnZxKQo+ICB7Cj4gIAlzdHJ1Y3QgdnNwMV92aWRlbyAqdmlkZW8gPSB2YjJfZ2V0X2Rydl9wcml2 KHZxKTsKPiAgCXN0cnVjdCB2c3AxX3BpcGVsaW5lICpwaXBlID0gdmlkZW8tPnJ3cGYtPmVudGl0 eS5waXBlOwo+IC0JdW5zaWduZWQgbG9uZyBmbGFnczsKPiAgCWludCByZXQ7Cj4gIAo+ICAJLyoK PiAgCSAqIENsZWFyIHRoZSBidWZmZXJzIHJlYWR5IGZsYWcgdG8gbWFrZSBzdXJlIHRoZSBkZXZp Y2Ugd29uJ3QgYmUgc3RhcnRlZAo+ICAJICogYnkgYSBRQlVGIG9uIHRoZSB2aWRlbyBub2RlIG9u IHRoZSBvdGhlciBzaWRlIG9mIHRoZSBwaXBlbGluZS4KPiAgCSAqLwo+IC0Jc3Bpbl9sb2NrX2ly cXNhdmUoJnZpZGVvLT5pcnFsb2NrLCBmbGFncyk7Cj4gLQlwaXBlLT5idWZmZXJzX3JlYWR5ICY9 IH4oMSA8PCB2aWRlby0+cGlwZV9pbmRleCk7Cj4gLQlzcGluX3VubG9ja19pcnFyZXN0b3JlKCZ2 aWRlby0+aXJxbG9jaywgZmxhZ3MpOwo+ICsJc2NvcGVkX2d1YXJkKHNwaW5sb2NrX2lycXNhdmUs ICZ2aWRlby0+aXJxbG9jaykgewo+ICsJCXBpcGUtPmJ1ZmZlcnNfcmVhZHkgJj0gfigxIDw8IHZp ZGVvLT5waXBlX2luZGV4KTsKPiArCX0KPiAgCj4gIAlzY29wZWRfZ3VhcmQobXV0ZXgsICZwaXBl LT5sb2NrKSB7Cj4gIAkJaWYgKC0tcGlwZS0+c3RyZWFtX2NvdW50ID09IHBpcGUtPm51bV9pbnB1 dHMpIHsKPiBAQCAtMTExOCw3ICsxMTExLDYgQEAgc3RhdGljIGNvbnN0IHN0cnVjdCBtZWRpYV9l bnRpdHlfb3BlcmF0aW9ucyB2c3AxX3ZpZGVvX21lZGlhX29wcyA9IHsKPiAgCj4gIHZvaWQgdnNw MV92aWRlb19zdXNwZW5kKHN0cnVjdCB2c3AxX2RldmljZSAqdnNwMSkKPiAgewo+IC0JdW5zaWdu ZWQgbG9uZyBmbGFnczsKPiAgCXVuc2lnbmVkIGludCBpOwo+ICAJaW50IHJldDsKPiAgCj4gQEAg LTExMzgsMTAgKzExMzAsMTAgQEAgdm9pZCB2c3AxX3ZpZGVvX3N1c3BlbmQoc3RydWN0IHZzcDFf ZGV2aWNlICp2c3AxKQo+ICAJCWlmIChwaXBlID09IE5VTEwpCj4gIAkJCWNvbnRpbnVlOwo+ICAK PiAtCQlzcGluX2xvY2tfaXJxc2F2ZSgmcGlwZS0+aXJxbG9jaywgZmxhZ3MpOwo+IC0JCWlmIChw aXBlLT5zdGF0ZSA9PSBWU1AxX1BJUEVMSU5FX1JVTk5JTkcpCj4gLQkJCXBpcGUtPnN0YXRlID0g VlNQMV9QSVBFTElORV9TVE9QUElORzsKPiAtCQlzcGluX3VubG9ja19pcnFyZXN0b3JlKCZwaXBl LT5pcnFsb2NrLCBmbGFncyk7Cj4gKwkJc2NvcGVkX2d1YXJkKHNwaW5sb2NrX2lycXNhdmUsICZw aXBlLT5pcnFsb2NrKSB7Cj4gKwkJCWlmIChwaXBlLT5zdGF0ZSA9PSBWU1AxX1BJUEVMSU5FX1JV Tk5JTkcpCj4gKwkJCQlwaXBlLT5zdGF0ZSA9IFZTUDFfUElQRUxJTkVfU1RPUFBJTkc7Cj4gKwkJ fQo+ICAJfQo+ICAKPiAgCWZvciAoaSA9IDA7IGkgPCB2c3AxLT5pbmZvLT53cGZfY291bnQ7ICsr aSkgewo+IEBAIC0xMTY1LDcgKzExNTcsNiBAQCB2b2lkIHZzcDFfdmlkZW9fc3VzcGVuZChzdHJ1 Y3QgdnNwMV9kZXZpY2UgKnZzcDEpCj4gIAo+ICB2b2lkIHZzcDFfdmlkZW9fcmVzdW1lKHN0cnVj dCB2c3AxX2RldmljZSAqdnNwMSkKPiAgewo+IC0JdW5zaWduZWQgbG9uZyBmbGFnczsKPiAgCXVu c2lnbmVkIGludCBpOwo+ICAKPiAgCS8qIFJlc3VtZSBhbGwgcnVubmluZyBwaXBlbGluZXMuICov Cj4gQEAgLTExODYsMTAgKzExNzcsMTAgQEAgdm9pZCB2c3AxX3ZpZGVvX3Jlc3VtZShzdHJ1Y3Qg dnNwMV9kZXZpY2UgKnZzcDEpCj4gIAkJICovCj4gIAkJcGlwZS0+Y29uZmlndXJlZCA9IGZhbHNl Owo+ICAKPiAtCQlzcGluX2xvY2tfaXJxc2F2ZSgmcGlwZS0+aXJxbG9jaywgZmxhZ3MpOwo+IC0J CWlmICh2c3AxX3BpcGVsaW5lX3JlYWR5KHBpcGUpKQo+IC0JCQl2c3AxX3ZpZGVvX3BpcGVsaW5l X3J1bihwaXBlKTsKPiAtCQlzcGluX3VubG9ja19pcnFyZXN0b3JlKCZwaXBlLT5pcnFsb2NrLCBm bGFncyk7Cj4gKwkJc2NvcGVkX2d1YXJkKHNwaW5sb2NrX2lycXNhdmUsICZwaXBlLT5pcnFsb2Nr KSB7Cj4gKwkJCWlmICh2c3AxX3BpcGVsaW5lX3JlYWR5KHBpcGUpKQo+ICsJCQkJdnNwMV92aWRl b19waXBlbGluZV9ydW4ocGlwZSk7Cj4gKwkJfQo+ICAJfQo+ICB9Cj4gIAo+IGRpZmYgLS1naXQg YS9kcml2ZXJzL21lZGlhL3BsYXRmb3JtL3JlbmVzYXMvdnNwMS92c3AxX3dwZi5jIGIvZHJpdmVy cy9tZWRpYS9wbGF0Zm9ybS9yZW5lc2FzL3ZzcDEvdnNwMV93cGYuYwo+IGluZGV4IDMyN2M3NDU3 MTI2Zi4uMGVjNzA3ZDI5MTNmIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvbWVkaWEvcGxhdGZvcm0v cmVuZXNhcy92c3AxL3ZzcDFfd3BmLmMKPiArKysgYi9kcml2ZXJzL21lZGlhL3BsYXRmb3JtL3Jl bmVzYXMvdnNwMS92c3AxX3dwZi5jCj4gQEAgLTM2NiwxMyArMzY2LDEyIEBAIHN0YXRpYyB2b2lk IHdwZl9jb25maWd1cmVfZnJhbWUoc3RydWN0IHZzcDFfZW50aXR5ICplbnRpdHksCj4gIAljb25z dCB1bnNpZ25lZCBpbnQgbWFzayA9IEJJVChXUEZfQ1RSTF9WRkxJUCkKPiAgCQkJCXwgQklUKFdQ Rl9DVFJMX0hGTElQKTsKPiAgCXN0cnVjdCB2c3AxX3J3cGYgKndwZiA9IHRvX3J3cGYoJmVudGl0 eS0+c3ViZGV2KTsKPiAtCXVuc2lnbmVkIGxvbmcgZmxhZ3M7Cj4gIAl1MzIgb3V0Zm10Owo+ICAK PiAtCXNwaW5fbG9ja19pcnFzYXZlKCZ3cGYtPmZsaXAubG9jaywgZmxhZ3MpOwo+IC0Jd3BmLT5m bGlwLmFjdGl2ZSA9ICh3cGYtPmZsaXAuYWN0aXZlICYgfm1hc2spCj4gLQkJCSB8ICh3cGYtPmZs aXAucGVuZGluZyAmIG1hc2spOwo+IC0Jc3Bpbl91bmxvY2tfaXJxcmVzdG9yZSgmd3BmLT5mbGlw LmxvY2ssIGZsYWdzKTsKPiArCXNjb3BlZF9ndWFyZChzcGlubG9ja19pcnFzYXZlLCAmd3BmLT5m bGlwLmxvY2spIHsKPiArCQl3cGYtPmZsaXAuYWN0aXZlID0gKHdwZi0+ZmxpcC5hY3RpdmUgJiB+ bWFzaykKPiArCQkJCSB8ICh3cGYtPmZsaXAucGVuZGluZyAmIG1hc2spOwo+ICsJfQo+ICAKPiAg CW91dGZtdCA9ICh3cGYtPmFscGhhIDw8IFZJNl9XUEZfT1VURk1UX1BEVl9TSElGVCkgfCB3cGYt Pm91dGZtdDsKPiAgCj4gLS0gCj4gUmVnYXJkcywKPiAKPiBMYXVyZW50IFBpbmNoYXJ0Cj4gCj4g CgotLSAKS2luZCBSZWdhcmRzLApOaWtsYXMgU8O2ZGVybHVuZAo=