From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from smtp14.infineon.com (smtp14.infineon.com [217.10.52.160]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 6F14E1FCFFC; Thu, 2 Apr 2026 05:42:07 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=217.10.52.160 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775108529; cv=none; b=jWgaLgR7KpJzU8xjzeyw/3wF2GJWv6nFB472Ywip3Nbl5EmJCIFbip3koClGrI5EpPU03PME0pufeY/8eXByp63170GYRCG+1bxqF4iBKAiWmmNCNI26q0Bbz5ccsSTf+l65zF1xcY2SLV5bd6hKDRIhpzkdIEy39TyZcK5nVrE= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775108529; c=relaxed/simple; bh=3OIxm7EezL3reZm4ubCA0eh+T6hNNL4+hKjDp5nNFiQ=; h=From:To:CC:Subject:Date:Message-ID:References:In-Reply-To: Content-Type:MIME-Version; b=esq/Nqt0H7q9IpdTigUSxU8ls9Keu28MP0Y3ixaBrmA6d89Y6RcyG2VMquBJdAN8H6xntGqv+DMMUgYaC2WWFQe0sC07XOScv8bBWX8bCip4KmkaW1n2S/edwW1mZhTWyBio/i89xtG5gsmwdV/k3wfhqOvCj3+TZANJlleXLFI= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=infineon.com; spf=pass smtp.mailfrom=infineon.com; dkim=pass (1024-bit key) header.d=infineon.com header.i=@infineon.com header.b=lM4anRuQ; arc=none smtp.client-ip=217.10.52.160 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=infineon.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=infineon.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=infineon.com header.i=@infineon.com header.b="lM4anRuQ" DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=infineon.com; i=@infineon.com; q=dns/txt; s=IFXMAIL; t=1775108527; x=1806644527; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=3OIxm7EezL3reZm4ubCA0eh+T6hNNL4+hKjDp5nNFiQ=; b=lM4anRuQ09WdDWus3ET4wilpcvqI3OXLV7dcziMjRHkcEEWmRJaaJLRG 4lyR/KRiJEqukN6TuW5NhJ3mnxPdgt3tAlsDnZafMZ8KME6h0N3CiDKgN NGW149z8EoKIZfn0/+nObzyiRF3Vt2m2zjy4ESCZ/VogqLveMpHJKdlU1 M=; X-CSE-ConnectionGUID: CLBDfXpuTFOMSRNHNdDITw== X-CSE-MsgGUID: ze++LC1MTU+TB3HPIWVPzQ== X-IronPort-AV: E=McAfee;i="6800,10657,11746"; a="124292997" X-IronPort-AV: E=Sophos;i="6.23,155,1770591600"; d="scan'208";a="124292997" X-Amp-Result: SKIPPED(no attachment in message) Received: from unknown (HELO MUCSE819.infineon.com) ([172.23.29.45]) by smtp14.infineon.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 02 Apr 2026 07:40:56 +0200 Received: from MUCSE818.infineon.com (172.23.29.44) by MUCSE819.infineon.com (172.23.29.45) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.2562.37; Thu, 2 Apr 2026 07:40:56 +0200 Received: from MUCSE815.infineon.com (172.23.29.41) by MUCSE818.infineon.com (172.23.29.44) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.2562.37; Thu, 2 Apr 2026 07:40:56 +0200 Received: from MUCSE815.infineon.com ([fe80::b54c:c0bd:546c:c9be]) by MUCSE815.infineon.com ([fe80::b54c:c0bd:546c:c9be%12]) with mapi id 15.02.2562.037; Thu, 2 Apr 2026 07:40:55 +0200 From: To: , , , , , CC: , , , , , , Subject: RE: [PATCH v3 17/27] mtd: spi-nor: debugfs: Add locking support Thread-Topic: [PATCH v3 17/27] mtd: spi-nor: debugfs: Add locking support Thread-Index: AQHctfhFvgX0xp/ki0qKsJhw3pFkPLXLGXbQ Date: Thu, 2 Apr 2026 05:40:55 +0000 Message-ID: References: <20260317-winbond-v6-18-rc1-spi-nor-swp-v3-0-2ca9ea4e7b9b@bootlin.com> <20260317-winbond-v6-18-rc1-spi-nor-swp-v3-17-2ca9ea4e7b9b@bootlin.com> In-Reply-To: <20260317-winbond-v6-18-rc1-spi-nor-swp-v3-17-2ca9ea4e7b9b@bootlin.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Precedence: bulk X-Mailing-List: linux-doc@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 SGkgTWlxdWVsLA0KDQo+IFRoZSBpb2N0bCBvdXRwdXQgbWF5IGJlIGNvdW50ZXIgaW50dWl0aXZl IGluIHNvbWUgY2FzZXMuIEFza2luZyBmb3IgYQ0KPiAibG9ja2VkIHN0YXR1cyIgb3ZlciBhIHJl Z2lvbiB0aGF0IGlzIG9ubHkgcGFydGlhbGx5IGxvY2tlZCB3aWxsIHJldHVybg0KPiAidW5sb2Nr ZWQiIHdoZXJlYXMgaW4gcHJhY3RpY2UgbWF5YmUgdGhlIGJpZ2dlc3QgcGFydCBpcyBhY3R1YWxs eQ0KPiBsb2NrZWQuDQo+IA0KPiBLbm93aW5nIHdoYXQgaXMgdGhlIHJlYWwgc29mdHdhcmUgbG9j a2luZyBzdGF0ZSB0aHJvdWdoIGRlYnVnZnMgd291bGQgYmUNCj4gdmVyeSBjb252ZW5pZW50IGZv ciBkZXZlbG9wbWVudC9kZWJ1Z2dpbmcgcHVycG9zZXMsIGhlbmNlIHRoaXMgcHJvcG9zYWwNCj4g Zm9yIGFkZGluZyBhbiBleHRyYSBibG9jayBhdCB0aGUgZW5kIG9mIHRoZSBmaWxlOiBhICJsb2Nr ZWQgc2VjdG9ycyINCj4gYXJyYXkgd2hpY2ggbGlzdHMgZXZlcnkgc2VjdGlvbiwgaWYgaXQgaXMg bG9ja2VkIG9yIG5vdCwgc2hvd2luZyBib3RoDQo+IHRoZSBhZGRyZXNzIHJhbmdlcyBhbmQgdGhl IHNpemVzIGluIG51bWJlcnMgb2YgYmxvY2tzLg0KPiANCj4gSGVyZSBpcyBhbiBleGFtcGxlIG9m IG91dHB1dCwgd2hhdCBpcyBhZnRlciB0aGUgInNlY3RvciBtYXAiIGlzIG5ldy4NCj4gDQo+ICQg Y2F0IC9zeXMva2VybmVsL2RlYnVnL3NwaS1ub3Ivc3BpMC4wL3BhcmFtcw0KPiBuYW1lICAgICAg ICAgICAgKG51bGwpDQo+IGlkICAgICAgICAgICAgICBlZiBhMCAyMCAwMCAwMCAwMA0KPiBzaXpl ICAgICAgICAgICAgNjQuMCBNaUINCj4gd3JpdGUgc2l6ZSAgICAgIDENCj4gcGFnZSBzaXplICAg ICAgIDI1Ng0KPiBhZGRyZXNzIG5ieXRlcyAgNA0KPiBmbGFncyAgICAgICAgICAgSEFTX1NSX1RC IHwgNEJfT1BDT0RFUyB8IEhBU180QkFJVCB8IEhBU19MT0NLIHwgSEFTXzE2QklUX1NSIHwgSEFT X1NSX1RCX0JJVDYgfCBIQVNfNEJJVF9CUCB8DQo+IFNPRlRfUkVTRVQgfCBOT19XUA0KPiANCj4g b3Bjb2Rlcw0KPiAgcmVhZCAgICAgICAgICAgMHhlYw0KPiAgIGR1bW15IGN5Y2xlcyAgNg0KPiAg ZXJhc2UgICAgICAgICAgMHhkYw0KPiAgcHJvZ3JhbSAgICAgICAgMHgzNA0KPiAgOEQgZXh0ZW5z aW9uICAgbm9uZQ0KPiANCj4gcHJvdG9jb2xzDQo+ICByZWFkICAgICAgICAgICAxUy00Uy00Uw0K PiAgd3JpdGUgICAgICAgICAgMVMtMVMtNFMNCj4gIHJlZ2lzdGVyICAgICAgIDFTLTFTLTFTDQo+ IA0KPiBlcmFzZSBjb21tYW5kcw0KPiAgMjEgKDQuMDAgS2lCKSBbMV0NCj4gIGRjICg2NC4wIEtp QikgWzNdDQo+ICBjNyAoNjQuMCBNaUIpDQo+IA0KPiBzZWN0b3IgbWFwDQo+ICByZWdpb24gKGlu IGhleCkgICB8IGVyYXNlIG1hc2sgfCBvdmVybGFpZA0KPiAgLS0tLS0tLS0tLS0tLS0tLS0tKy0t LS0tLS0tLS0tLSstLS0tLS0tLS0NCj4gIDAwMDAwMDAwLTAzZmZmZmZmIHwgICAgIFsgICAzXSB8 IG5vDQo+IA0KPiBsb2NrZWQgc2VjdG9ycw0KPiAgcmVnaW9uIChpbiBoZXgpICAgfCBzdGF0dXMg ICB8ICNibG9ja3MNCj4gIC0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tKy0tLS0tLS0tDQo+ ICAwMDAwMDAwMC0wM2ZmZmZmZiB8IHVubG9ja2VkIHwgMTAyNA0KPiANCj4gU2lnbmVkLW9mZi1i eTogTWlxdWVsIFJheW5hbCA8bWlxdWVsLnJheW5hbEBib290bGluLmNvbT4NCj4gLS0tDQo+IEhl cmUgYXJlIGJlbG93IG1vcmUgZXhhbXBsZXMgb2Ygb3V0cHV0IHdpdGggdmFyaW91cyBzaXR1YXRp b25zLiBUaGUgZnVsbA0KPiBvdXRwdXQgb2YgdGhlICJwYXJhbXMiIGNvbnRlbnQgaGFzIGJlZW4g bWFudWFsbHkgcmVtb3ZlZCB0byBvbmx5IHNob3cNCj4gd2hhdCBoYXMgYmVlbiBhZGRlZCBhbmQg aG93IGl0IGJlaGF2ZXMuDQo+IA0KPiAkIGZsYXNoX2xvY2sgLWwgL2Rldi9tdGQwIDB4M2YwMDAw MCAxNg0KPiAkIGNhdCAvc3lzL2tlcm5lbC9kZWJ1Zy9zcGktbm9yL3NwaTAuMC9wYXJhbXMNCj4g bG9ja2VkIHNlY3RvcnMNCj4gIHJlZ2lvbiAoaW4gaGV4KSAgIHwgc3RhdHVzICAgfCAjYmxvY2tz DQo+ICAtLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLSstLS0tLS0tLQ0KPiAgMDAwMDAwMDAt MDNlZmZmZmYgfCB1bmxvY2tlZCB8IDEwMDgNCj4gIDAzZjAwMDAwLTAzZmZmZmZmIHwgICBsb2Nr ZWQgfCAxNg0KPiAkDQo+ICQgZmxhc2hfbG9jayAtdSAvZGV2L210ZDAgMHgzZjAwMDAwIDgNCj4g JCBjYXQgL3N5cy9rZXJuZWwvZGVidWcvc3BpLW5vci9zcGkwLjAvcGFyYW1zDQo+IGxvY2tlZCBz ZWN0b3JzDQo+ICByZWdpb24gKGluIGhleCkgICB8IHN0YXR1cyAgIHwgI2Jsb2Nrcw0KPiAgLS0t LS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rLS0tLS0tLS0NCj4gIDAwMDAwMDAwLTAzZjdmZmZm IHwgdW5sb2NrZWQgfCAxMDE2DQo+ICAwM2Y4MDAwMC0wM2ZmZmZmZiB8ICAgbG9ja2VkIHwgOA0K PiAkDQo+ICQgZmxhc2hfbG9jayAtdSAvZGV2L210ZDANCj4gJCBjYXQgL3N5cy9rZXJuZWwvZGVi dWcvc3BpLW5vci9zcGkwLjAvcGFyYW1zDQo+IGxvY2tlZCBzZWN0b3JzDQo+ICByZWdpb24gKGlu IGhleCkgICB8IHN0YXR1cyAgIHwgI2Jsb2Nrcw0KPiAgLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0t LS0tLS0rLS0tLS0tLS0NCj4gIDAwMDAwMDAwLTAzZmZmZmZmIHwgdW5sb2NrZWQgfCAxMDI0DQo+ ICQNCj4gJCBmbGFzaF9sb2NrIC1sIC9kZXYvbXRkMA0KPiAkIGNhdCAvc3lzL2tlcm5lbC9kZWJ1 Zy9zcGktbm9yL3NwaTAuMC9wYXJhbXMNCj4gbG9ja2VkIHNlY3RvcnMNCj4gIHJlZ2lvbiAoaW4g aGV4KSAgIHwgc3RhdHVzICAgfCAjYmxvY2tzDQo+ICAtLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0t LS0tLSstLS0tLS0tLQ0KPiAgMDAwMDAwMDAtMDNmZmZmZmYgfCAgIGxvY2tlZCB8IDEwMjQNCj4g JA0KPiAkIGZsYXNoX2xvY2sgLXUgL2Rldi9tdGQwIDB4MjAwMDAgMTAyMg0KPiAkIGNhdCAvc3lz L2tlcm5lbC9kZWJ1Zy9zcGktbm9yL3NwaTAuMC9wYXJhbXMNCj4gbG9ja2VkIHNlY3RvcnMNCj4g IHJlZ2lvbiAoaW4gaGV4KSAgIHwgc3RhdHVzICAgfCAjYmxvY2tzDQo+ICAtLS0tLS0tLS0tLS0t LS0tLS0rLS0tLS0tLS0tLSstLS0tLS0tLQ0KPiAgMDAwMDAwMDAtMDAwMWZmZmYgfCAgIGxvY2tl ZCB8IDINCj4gIDAwMDIwMDAwLTAzZmZmZmZmIHwgdW5sb2NrZWQgfCAxMDIyDQo+IC0tLQ0KPiAg ZHJpdmVycy9tdGQvc3BpLW5vci9jb3JlLmggICAgfCAgNCArKysrDQo+ICBkcml2ZXJzL210ZC9z cGktbm9yL2RlYnVnZnMuYyB8IDIyICsrKysrKysrKysrKysrKysrKysrKysNCj4gIGRyaXZlcnMv bXRkL3NwaS1ub3Ivc3dwLmMgICAgIHwgMTEgKysrKysrKy0tLS0NCj4gIDMgZmlsZXMgY2hhbmdl ZCwgMzMgaW5zZXJ0aW9ucygrKSwgNCBkZWxldGlvbnMoLSkNCj4gDQo+IGRpZmYgLS1naXQgYS9k cml2ZXJzL210ZC9zcGktbm9yL2NvcmUuaCBiL2RyaXZlcnMvbXRkL3NwaS1ub3IvY29yZS5oDQo+ IGluZGV4IDA5MWViOTM0YWJlNC4uOTllZDZjNTRiOTBmIDEwMDY0NA0KPiAtLS0gYS9kcml2ZXJz L210ZC9zcGktbm9yL2NvcmUuaA0KPiArKysgYi9kcml2ZXJzL210ZC9zcGktbm9yL2NvcmUuaA0K PiBAQCAtNzA3LDYgKzcwNywxMCBAQCBzdGF0aWMgaW5saW5lIGJvb2wgc3BpX25vcl9uZWVkc19z ZmRwKGNvbnN0IHN0cnVjdCBzcGlfbm9yICpub3IpDQo+ICAgICAgICAgcmV0dXJuICFub3ItPmlu Zm8tPnNpemU7DQo+ICB9DQo+IA0KPiArdTY0IHNwaV9ub3JfZ2V0X21pbl9wcm90X2xlbmd0aF9z cihzdHJ1Y3Qgc3BpX25vciAqbm9yKTsNCj4gK3ZvaWQgc3BpX25vcl9nZXRfbG9ja2VkX3Jhbmdl X3NyKHN0cnVjdCBzcGlfbm9yICpub3IsIGNvbnN0IHU4ICpzciwgbG9mZl90ICpvZnMsIHU2NCAq bGVuKTsNCj4gK2Jvb2wgc3BpX25vcl9pc19sb2NrZWRfc3Ioc3RydWN0IHNwaV9ub3IgKm5vciwg bG9mZl90IG9mcywgdTY0IGxlbiwgY29uc3QgdTggKnNyKTsNCj4gKw0KDQpJdCB3b3VsZCBiZSBi ZXR0ZXIgdG8gaGF2ZSBnZW5lcmljIGhlbHBlciBmdW5jdGlvbnMgcmF0aGVyIHRoYW4gdXNpbmcg U1ItYmFzZWQNCmZ1bmN0aW9ucyBkaXJlY3RseS4gVGhlIGxvY2tpbmdfb3BzIGlzIHZlbmRvci9j aGlwIHNwZWNpZmljIGFuZCBjYW4gcHJvdmlkZQ0Kb3RoZXIgbG9ja2luZyBtZWNoYW5pc20gdGhh biBTUi1iYXNlZCBibG9jayBwcm90ZWN0aW9uLiBGb3IgaW5zdGFuY2UsIEluZmluZW9uLA0KTWlj cm9uLCBNYWNyb25peCAoYW5kIG1heWJlIG90aGVyIHZlbmRvcnMpIG9mZmVyIHByb3RlY3Rpb24g bWVjaGFuaXNtcyB0aGF0IGNhbg0KcHJvdGVjdCBzZWN0b3JzIGluZGl2aWR1YWxseSB3aXRoIHZv bGF0aWxlIG9yIG5vbi12b2xhdGlsZSBtYW5uZXIuDQoNCj4gICNpZmRlZiBDT05GSUdfREVCVUdf RlMNCj4gIHZvaWQgc3BpX25vcl9kZWJ1Z2ZzX3JlZ2lzdGVyKHN0cnVjdCBzcGlfbm9yICpub3Ip Ow0KPiAgdm9pZCBzcGlfbm9yX2RlYnVnZnNfc2h1dGRvd24odm9pZCk7DQo+IGRpZmYgLS1naXQg YS9kcml2ZXJzL210ZC9zcGktbm9yL2RlYnVnZnMuYyBiL2RyaXZlcnMvbXRkL3NwaS1ub3IvZGVi dWdmcy5jDQo+IGluZGV4IGQwMTkxZWI5Zjg3OS4uODIxZmJjOTU4N2RjIDEwMDY0NA0KPiAtLS0g YS9kcml2ZXJzL210ZC9zcGktbm9yL2RlYnVnZnMuYw0KPiArKysgYi9kcml2ZXJzL210ZC9zcGkt bm9yL2RlYnVnZnMuYw0KPiBAQCAtNzcsMTAgKzc3LDEyIEBAIHN0YXRpYyB2b2lkIHNwaV9ub3Jf cHJpbnRfZmxhZ3Moc3RydWN0IHNlcV9maWxlICpzLCB1bnNpZ25lZCBsb25nIGZsYWdzLA0KPiAg c3RhdGljIGludCBzcGlfbm9yX3BhcmFtc19zaG93KHN0cnVjdCBzZXFfZmlsZSAqcywgdm9pZCAq ZGF0YSkNCj4gIHsNCj4gICAgICAgICBzdHJ1Y3Qgc3BpX25vciAqbm9yID0gcy0+cHJpdmF0ZTsN Cj4gKyAgICAgICB1bnNpZ25lZCBpbnQgbWluX3Byb3RfbGVuID0gc3BpX25vcl9nZXRfbWluX3By b3RfbGVuZ3RoX3NyKG5vcik7DQo+ICAgICAgICAgc3RydWN0IHNwaV9ub3JfZmxhc2hfcGFyYW1l dGVyICpwYXJhbXMgPSBub3ItPnBhcmFtczsNCj4gICAgICAgICBzdHJ1Y3Qgc3BpX25vcl9lcmFz ZV9tYXAgKmVyYXNlX21hcCA9ICZwYXJhbXMtPmVyYXNlX21hcDsNCj4gICAgICAgICBzdHJ1Y3Qg c3BpX25vcl9lcmFzZV9yZWdpb24gKnJlZ2lvbiA9IGVyYXNlX21hcC0+cmVnaW9uczsNCj4gICAg ICAgICBjb25zdCBzdHJ1Y3QgZmxhc2hfaW5mbyAqaW5mbyA9IG5vci0+aW5mbzsNCj4gKyAgICAg ICBsb2ZmX3QgbG9ja19zdGFydCwgbG9ja19sZW5ndGg7DQo+ICAgICAgICAgY2hhciBidWZbMTZd LCAqc3RyOw0KPiAgICAgICAgIHVuc2lnbmVkIGludCBpOw0KPiANCj4gQEAgLTE1OSw2ICsxNjEs MjYgQEAgc3RhdGljIGludCBzcGlfbm9yX3BhcmFtc19zaG93KHN0cnVjdCBzZXFfZmlsZSAqcywg dm9pZCAqZGF0YSkNCj4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVnaW9uW2ldLm92ZXJs YWlkID8gInllcyIgOiAibm8iKTsNCj4gICAgICAgICB9DQo+IA0KDQpEb24ndCB3ZSBuZWVkIHRv IGNoZWNrICdTTk9SX0ZfSEFTX0xPQ0snIGZsYWcgaGVyZT8NCg0KPiArICAgICAgIHNlcV9wdXRz KHMsICJcbmxvY2tlZCBzZWN0b3JzXG4iKTsNCj4gKyAgICAgICBzZXFfcHV0cyhzLCAiIHJlZ2lv biAoaW4gaGV4KSAgIHwgc3RhdHVzICAgfCAjYmxvY2tzXG4iKTsNCj4gKyAgICAgICBzZXFfcHV0 cyhzLCAiIC0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tKy0tLS0tLS0tXG4iKTsNCj4gKw0K PiArICAgICAgIHNwaV9ub3JfZ2V0X2xvY2tlZF9yYW5nZV9zcihub3IsIG5vci0+ZGZzX3NyX2Nh Y2hlLCAmbG9ja19zdGFydCwgJmxvY2tfbGVuZ3RoKTsNCj4gKyAgICAgICBpZiAoIWxvY2tfbGVu Z3RoIHx8IGxvY2tfbGVuZ3RoID09IHBhcmFtcy0+c2l6ZSkgew0KPiArICAgICAgICAgICAgICAg c2VxX3ByaW50ZihzLCAiICUwOGxseC0lMDhsbHggfCAlcyB8ICVsbHVcbiIsIDBVTEwsIHBhcmFt cy0+c2l6ZSAtIDEsDQo+ICsgICAgICAgICAgICAgICAgICAgICAgICAgIGxvY2tfbGVuZ3RoID8g IiAgbG9ja2VkIiA6ICJ1bmxvY2tlZCIsIHBhcmFtcy0+c2l6ZSAvIG1pbl9wcm90X2xlbik7DQoN CmRpdl91NjQoKSBpcyBuZWVkZWQuIA0KSSBnb3QgdW5kZWZpbmVkIHJlZmVyZW5jZSB0byBgX19h ZWFiaV91bGRpdm1vZCcgZm9yIG15IDMyLWJpdCBBUk0gcGxhdGZvcm0uDQpTYW1lIGZvciBmb2xs b3dpbmcgZm91ciBzZXFfcHJpbnRmKCkuDQoNCj4gKyAgICAgICB9IGVsc2UgaWYgKCFsb2NrX3N0 YXJ0KSB7DQo+ICsgICAgICAgICAgICAgICBzZXFfcHJpbnRmKHMsICIgJTA4bGx4LSUwOGxseCB8 ICVzIHwgJWxsdVxuIiwgMFVMTCwgbG9ja19sZW5ndGggLSAxLA0KPiArICAgICAgICAgICAgICAg ICAgICAgICAgICAiICBsb2NrZWQiLCBsb2NrX2xlbmd0aCAvIG1pbl9wcm90X2xlbik7DQo+ICsg ICAgICAgICAgICAgICBzZXFfcHJpbnRmKHMsICIgJTA4bGx4LSUwOGxseCB8ICVzIHwgJWxsdVxu IiwgbG9ja19sZW5ndGgsIHBhcmFtcy0+c2l6ZSAtIDEsDQo+ICsgICAgICAgICAgICAgICAgICAg ICAgICAgICJ1bmxvY2tlZCIsIChwYXJhbXMtPnNpemUgLSBsb2NrX2xlbmd0aCkgLyBtaW5fcHJv dF9sZW4pOw0KPiArICAgICAgIH0gZWxzZSB7DQo+ICsgICAgICAgICAgICAgICBzZXFfcHJpbnRm KHMsICIgJTA4bGx4LSUwOGxseCB8ICVzIHwgJWxsdVxuIiwgMFVMTCwgbG9ja19zdGFydCAtIDEs DQo+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICJ1bmxvY2tlZCIsIGxvY2tfc3RhcnQgLyBt aW5fcHJvdF9sZW4pOw0KPiArICAgICAgICAgICAgICAgc2VxX3ByaW50ZihzLCAiICUwOGxseC0l MDhsbHggfCAlcyB8ICVsbHVcbiIsIGxvY2tfc3RhcnQsIHBhcmFtcy0+c2l6ZSAtIDEsDQo+ICsg ICAgICAgICAgICAgICAgICAgICAgICAgICIgIGxvY2tlZCIsIGxvY2tfbGVuZ3RoIC8gbWluX3By b3RfbGVuKTsNCj4gKyAgICAgICB9DQo+ICsNCj4gICAgICAgICByZXR1cm4gMDsNCj4gIH0NCj4g IERFRklORV9TSE9XX0FUVFJJQlVURShzcGlfbm9yX3BhcmFtcyk7DQo+IGRpZmYgLS1naXQgYS9k cml2ZXJzL210ZC9zcGktbm9yL3N3cC5jIGIvZHJpdmVycy9tdGQvc3BpLW5vci9zd3AuYw0KPiBp bmRleCA3YTZjMmI4ZWY5MjEuLjhkZTg0NTllOGU5MCAxMDA2NDQNCj4gLS0tIGEvZHJpdmVycy9t dGQvc3BpLW5vci9zd3AuYw0KPiArKysgYi9kcml2ZXJzL210ZC9zcGktbm9yL3N3cC5jDQo+IEBA IC0zMiw3ICszMiw3IEBAIHN0YXRpYyB1OCBzcGlfbm9yX2dldF9zcl90Yl9tYXNrKHN0cnVjdCBz cGlfbm9yICpub3IpDQo+ICAgICAgICAgICAgICAgICByZXR1cm4gU1JfVEJfQklUNTsNCj4gIH0N Cj4gDQo+IC1zdGF0aWMgdTY0IHNwaV9ub3JfZ2V0X21pbl9wcm90X2xlbmd0aF9zcihzdHJ1Y3Qg c3BpX25vciAqbm9yKQ0KPiArdTY0IHNwaV9ub3JfZ2V0X21pbl9wcm90X2xlbmd0aF9zcihzdHJ1 Y3Qgc3BpX25vciAqbm9yKQ0KPiAgew0KPiAgICAgICAgIHVuc2lnbmVkIGludCBicF9zbG90cywg YnBfc2xvdHNfbmVlZGVkOw0KPiAgICAgICAgIC8qDQo+IEBAIC01Myw4ICs1Myw4IEBAIHN0YXRp YyB1NjQgc3BpX25vcl9nZXRfbWluX3Byb3RfbGVuZ3RoX3NyKHN0cnVjdCBzcGlfbm9yICpub3Ip DQo+ICAgICAgICAgICAgICAgICByZXR1cm4gc2VjdG9yX3NpemU7DQo+ICB9DQo+IA0KPiAtc3Rh dGljIHZvaWQgc3BpX25vcl9nZXRfbG9ja2VkX3JhbmdlX3NyKHN0cnVjdCBzcGlfbm9yICpub3Is IGNvbnN0IHU4ICpzciwgbG9mZl90ICpvZnMsDQo+IC0gICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICB1NjQgKmxlbikNCj4gK3ZvaWQgc3BpX25vcl9nZXRfbG9ja2VkX3Jhbmdl X3NyKHN0cnVjdCBzcGlfbm9yICpub3IsIGNvbnN0IHU4ICpzciwgbG9mZl90ICpvZnMsDQo+ICsg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHU2NCAqbGVuKQ0KPiAgew0KPiAgICAgICAg IHU2NCBtaW5fcHJvdF9sZW47DQo+ICAgICAgICAgdTggYnBfbWFzayA9IHNwaV9ub3JfZ2V0X3Ny X2JwX21hc2sobm9yKTsNCj4gQEAgLTExMiw3ICsxMTIsNyBAQCBzdGF0aWMgYm9vbCBzcGlfbm9y X2NoZWNrX2xvY2tfc3RhdHVzX3NyKHN0cnVjdCBzcGlfbm9yICpub3IsIGxvZmZfdCBvZnMsDQo+ ICAgICAgICAgICAgICAgICByZXR1cm4gKG9mcyA+PSBsb2NrX29mZnNfbWF4KSB8fCAob2Zmc19t YXggPD0gbG9ja19vZmZzKTsNCj4gIH0NCj4gDQo+IC1zdGF0aWMgYm9vbCBzcGlfbm9yX2lzX2xv Y2tlZF9zcihzdHJ1Y3Qgc3BpX25vciAqbm9yLCBsb2ZmX3Qgb2ZzLCB1NjQgbGVuLCBjb25zdCB1 OCAqc3IpDQo+ICtib29sIHNwaV9ub3JfaXNfbG9ja2VkX3NyKHN0cnVjdCBzcGlfbm9yICpub3Is IGxvZmZfdCBvZnMsIHU2NCBsZW4sIGNvbnN0IHU4ICpzcikNCj4gIHsNCj4gICAgICAgICByZXR1 cm4gc3BpX25vcl9jaGVja19sb2NrX3N0YXR1c19zcihub3IsIG9mcywgbGVuLCBzciwgdHJ1ZSk7 DQo+ICB9DQo+IEBAIC00MTAsNiArNDEwLDkgQEAgc3RhdGljIGludCBzcGlfbm9yX3NyX2lzX2xv Y2tlZChzdHJ1Y3Qgc3BpX25vciAqbm9yLCBsb2ZmX3Qgb2ZzLCB1NjQgbGVuKQ0KPiAgICogLWlz X2xvY2tlZCgpOiBDaGVja3MgaWYgdGhlIHJlZ2lvbiBpcyAqZnVsbHkqIGxvY2tlZCwgcmV0dXJu cyBmYWxzZSBvdGhlcndpc2UuDQo+ICAgKiAgICAgICAgICAgICAgIFRoaXMgZmVlYmFjayBtYXkg YmUgbWlzbGVhZGluZyBiZWNhdXNlIHVzZXJzIG1heSBnZXQgYW4gInVubG9ja2VkIg0KPiAgICog ICAgICAgICAgICAgICBzdGF0dXMgZXZlbiB0aG91Z2ggYSBzdWJwYXJ0IG9mIHRoZSByZWdpb24g aXMgZWZmZWN0aXZlbHkgbG9ja2VkLg0KPiArICoNCj4gKyAqIElmIGluIGRvdWJ0IGR1cmluZyBk ZXZlbG9wbWVudCwgY2hlY2stb3V0IHRoZSBkZWJ1Z2ZzIG91dHB1dCB3aGljaCB0cmllcyB0bw0K PiArICogYmUgbW9yZSB1c2VyIGZyaWVuZGx5Lg0KPiAgICovDQo+ICBzdGF0aWMgY29uc3Qgc3Ry dWN0IHNwaV9ub3JfbG9ja2luZ19vcHMgc3BpX25vcl9zcl9sb2NraW5nX29wcyA9IHsNCj4gICAg ICAgICAubG9jayA9IHNwaV9ub3Jfc3JfbG9jaywNCj4gDQo+IC0tDQo+IDIuNTEuMQ0KDQpUaGFu a3MhDQpUYWthaGlybw0KDQo=