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 B9AADF9EDC6 for ; Wed, 22 Apr 2026 12:30:00 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 071E610E9D7; Wed, 22 Apr 2026 12:29:57 +0000 (UTC) Authentication-Results: gabe.freedesktop.org; dkim=fail reason="signature verification failed" (4096-bit key; unprotected) header.d=davidgow.net header.i=@davidgow.net header.b="XHnrBZGB"; dkim=fail reason="signature verification failed" (4096-bit key) header.d=davidgow.net header.i=@davidgow.net header.b="ePdyU/uo"; dkim-atps=neutral Received: from sphereful.davidgow.net (sphereful.davidgow.net [203.29.242.92]) by gabe.freedesktop.org (Postfix) with ESMTPS id BEDB510E9D6 for ; Wed, 22 Apr 2026 12:29:55 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=davidgow.net; s=201606; t=1776860441; bh=qqUVT6BWMeJOLKSW8OeZFvZ8iEZSNs4YHjncwKP+1P4=; h=Date:Subject:To:Cc:References:From:In-Reply-To:From; b=XHnrBZGBpeVUMGHjDRvN0GzM76s1x8OAJutgvhywMgK51boT4NHs+SNfTaweBhEbf bJzmbXLXjP+jZAkHJzC28KSVCgrnn9373MXa6MrSPYW7+Jf1AkMf5Lxy7FPXkkJgxx 0O3lJoCgMLy7MF/qPZ5h/VCt5f8MAw+i5j/AiLh0x9plXrXZw9s/ORdaPJenPGjdQ0 jg/6NLX+Dxdiwldpddm0rUb5F+0Hujz04Xk0pFmJMiy/Ek/2OSpvcSVbygw5M8T/r/ XKr4T1gIdts7wAJQw5vW5NkC39oojQbPXb645bSYG4hshhDM3Y24JJaV0kchaNe4E+ W7F1S6g+kf6EAJ9iv3K33cePWdTgAdGID+NnPZOyhGZNjhZpgm0wcQi6e4ID0DIjUB oDD+galojzW6OlDhPeQePNSCsUiqlXTVSV+O3nwHbm/weGd0L/gedeQo5B6zYoLIW/ 87wnzJTqLKq+YbYO+zKuLxrmcA8xRIQ5vrwSE138DtIR5srcm9TLI5q2dY3tm9c0mo 4wbj2cCnuyb2aytUaf+UnXy0SS74qFhnygWwAMj9PhM35mDF5H3sbSPYGriNf56UT0 8UxXVETRu2pPVY5VgBB2TYRR9PhvnQXZYUgDwL+Z11UfpUXJaenKQ7ZjYMaZeyZ6xP hbuqPTQcTg8Ab4F4Q58oGTgM= Received: by sphereful.davidgow.net (Postfix, from userid 119) id 0CD811E8D8F; Wed, 22 Apr 2026 20:20:41 +0800 (AWST) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=davidgow.net; s=201606; t=1776860395; bh=qqUVT6BWMeJOLKSW8OeZFvZ8iEZSNs4YHjncwKP+1P4=; h=Date:Subject:To:Cc:References:From:In-Reply-To:From; b=ePdyU/uoqAbyV/Ukf18jTGxY5JHtigoAd6KaYX4PXqOa89tNKaloSR1EB6/TTdNvo FWWzgHGyuFYD8yq108WdcQmqF0yJqJf36RRRRqHWqnQHhB1+/NT1DRaSHaTaJQy5MT 9+tu2jsBmguDardjdnk/45BtQp4ryAVI581cDbHYbXAMwRE6bCCZx8FcmAXe/QXvDc cr1v+uTu7BzA+mBA8ym7L5a88ZSuMk8/zHKwI7C4EYjyqKMBam7kPs16zfn8W6jMna qPuVONPhwrpBJF6k7tEorTt4luRf47VhNUSmt9StgX3BEVStZD8OeZ7+Z3P+aJhKXT Ie46YFHDTh/lZjyKZFb6KKbmFFzgetNL+z8qmYH+8KxfOiZXNQOHG1cJ1N+FYSys46 CQjADusjDh3IUNmWL5SYkCZ1KsHEu25YDNnIbyZgwIzZyKMUNGCHPcuiPbVtsu9XBz xX+5VWLYoSXvFOio59Iuzxrm5M3uvj0+Za3rn2rFDN7pAi0UbKX2xjVVfUTQMCNcCd qa3snJQw3W0Yh74NeFS6VLRDVJs1Fno0eXns7c/0vUlqL7lgVKM4ppwphroQQLQ0pB RN9LLev5+NAOuXqqn1uvEhJsx7kiR92n7/pvUTRD1KmeCKre35DB+3RoNf0BEzPVVF Wy40YQMTKOuK7BBwl1M9eWoE= Received: from [IPV6:2001:8003:8810:ea00:ed87:ca88:5326:e11d] (unknown [IPv6:2001:8003:8810:ea00:ed87:ca88:5326:e11d]) by sphereful.davidgow.net (Postfix) with ESMTPSA id 0FED31E8D87; Wed, 22 Apr 2026 20:19:55 +0800 (AWST) Message-ID: Date: Wed, 22 Apr 2026 20:19:52 +0800 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH v7 1/5] bug/kunit: Core support for suppressing warning backtraces To: Albert Esteve , Arnd Bergmann , Brendan Higgins , Rae Moar , Maarten Lankhorst , Maxime Ripard , Thomas Zimmermann , David Airlie , Simona Vetter , Jonathan Corbet , Shuah Khan , Andrew Morton Cc: linux-kernel@vger.kernel.org, linux-arch@vger.kernel.org, linux-kselftest@vger.kernel.org, kunit-dev@googlegroups.com, dri-devel@lists.freedesktop.org, workflows@vger.kernel.org, linux-doc@vger.kernel.org, peterz@infradead.org, Alessandro Carminati , Guenter Roeck , Kees Cook References: <20260420-kunit_add_support-v7-0-e8bc6e0f70de@redhat.com> <20260420-kunit_add_support-v7-1-e8bc6e0f70de@redhat.com> Content-Language: fr From: David Gow In-Reply-To: <20260420-kunit_add_support-v7-1-e8bc6e0f70de@redhat.com> Content-Type: text/plain; charset="utf-8"; format="flowed" Content-Transfer-Encoding: base64 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" VGhhbmtzIHZlcnkgbXVjaCBmb3Iga2VlcGluZyB0aGlzIHNlcmllcyBhbGl2ZSEgSSdtIHZlcnkg bXVjaCBpbiBmYXZvdXIgCm9mIGl0LCBhbmQgSSB0aGluayB0aGUgb3ZlcmFsbCBkZXNpZ24gaXMg Z29vZC4gTG90cyBvZiBtb3JlIGRldGFpbGVkIApuaXRwaWNrcyBiZWxvdywgdGhvdWdoLgoKTGUg MjAvMDQvMjAyNiDDoCA4OjI4IFBNLCBBbGJlcnQgRXN0ZXZlIGEgw6ljcml0wqA6Cj4gRnJvbTog QWxlc3NhbmRybyBDYXJtaW5hdGkgPGFjYXJtaW5hQHJlZGhhdC5jb20+Cj4gCj4gU29tZSB1bml0 IHRlc3RzIGludGVudGlvbmFsbHkgdHJpZ2dlciB3YXJuaW5nIGJhY2t0cmFjZXMgYnkgcGFzc2lu ZyBiYWQKPiBwYXJhbWV0ZXJzIHRvIGtlcm5lbCBBUEkgZnVuY3Rpb25zLiBTdWNoIHVuaXQgdGVz dHMgdHlwaWNhbGx5IGNoZWNrIHRoZQo+IHJldHVybiB2YWx1ZSBmcm9tIHN1Y2ggY2FsbHMsIG5v dCB0aGUgZXhpc3RlbmNlIG9mIHRoZSB3YXJuaW5nIGJhY2t0cmFjZS4KPiAKPiBTdWNoIGludGVu dGlvbmFsbHkgZ2VuZXJhdGVkIHdhcm5pbmcgYmFja3RyYWNlcyBhcmUgbmVpdGhlciBkZXNpcmFi bGUKPiBub3IgdXNlZnVsIGZvciBhIG51bWJlciBvZiByZWFzb25zOgo+IC0gVGhleSBjYW4gcmVz dWx0IGluIG92ZXJsb29rZWQgcmVhbCBwcm9ibGVtcy4KPiAtIEEgd2FybmluZyB0aGF0IHN1ZGRl bmx5IHN0YXJ0cyB0byBzaG93IHVwIGluIHVuaXQgdGVzdHMgbmVlZHMgdG8gYmUKPiAgICBpbnZl c3RpZ2F0ZWQgYW5kIGhhcyB0byBiZSBtYXJrZWQgdG8gYmUgaWdub3JlZCwgZm9yIGV4YW1wbGUg YnkKPiAgICBhZGp1c3RpbmcgZmlsdGVyIHNjcmlwdHMuIFN1Y2ggZmlsdGVycyBhcmUgYWQgaG9j IGJlY2F1c2UgdGhlcmUgaXMKPiAgICBubyByZWFsIHN0YW5kYXJkIGZvcm1hdCBmb3Igd2Fybmlu Z3MuIE9uIHRvcCBvZiB0aGF0LCBzdWNoIGZpbHRlcgo+ICAgIHNjcmlwdHMgd291bGQgcmVxdWly ZSBjb25zdGFudCBtYWludGVuYW5jZS4KPiAKPiBTb2x2ZSB0aGUgcHJvYmxlbSBieSBwcm92aWRp bmcgYSBtZWFucyB0byBpZGVudGlmeSBhbmQgc3VwcHJlc3Mgc3BlY2lmaWMKPiB3YXJuaW5nIGJh Y2t0cmFjZXMgd2hpbGUgZXhlY3V0aW5nIHRlc3QgY29kZS4gU3VwcG9ydCBzdXBwcmVzc2luZyBt dWx0aXBsZQo+IGJhY2t0cmFjZXMgd2hpbGUgYXQgdGhlIHNhbWUgdGltZSBsaW1pdGluZyBjaGFu Z2VzIHRvIGdlbmVyaWMgY29kZSB0byB0aGUKPiBhYnNvbHV0ZSBtaW5pbXVtLgoKSXQgc291bmRz IGZyb20gdGhlIGRlc2NyaXB0aW9uIGhlcmUgdGhhdCBzdXBwcmVzc2luZyAic3BlY2lmaWMgCmJh Y2t0cmFjZXMiIG1lYW5zIHRoYXQgd2UncmUgbWF0Y2hpbmcgb24gdGhlIF9jb250ZW50c18gb2Yg dGhlIHN0YWNrIAp0cmFjZS4gVGhpcyBzb3J0LW9mIGRvZXMgdGhhdCBpbXBsaWNpdGx5IGJ5IGNo ZWNraW5nIHRoZXkncmUgaW4gdGhlIHNhbWUgCmt0aHJlYWQsIGJ1dCBJIHRoaW5rIHRoZSBmYWN0 IHRoYXQgaXQncyBtYXRjaGluZyBiYXNlZCBvbiBrdGhyZWFkIHNob3VsZCAKYmUgZXhwbGljaXQg aW4gdGhlIGNvbW1pdCBtZXNzYWdlLCBsaWtlIGl0IGlzIGluIHRoZSBkb2N1bWVudGF0aW9uLgoK PiAKPiBJbXBsZW1lbnRhdGlvbiBkZXRhaWxzOgo+IFN1cHByZXNzaW9uIGlzIGNoZWNrZWQgYXQg dHdvIHBvaW50cyBpbiB0aGUgd2FybmluZyBwYXRoOgo+IC0gSW4gd2Fybl9zbG93cGF0aF9mbXQo KSwgdGhlIGNoZWNrIHJ1bnMgYmVmb3JlIGFueSBvdXRwdXQsIGZ1bGx5Cj4gICAgc3VwcHJlc3Np bmcgYm90aCBtZXNzYWdlIGFuZCBiYWNrdHJhY2UuCj4gLSBJbiBfX3JlcG9ydF9idWcoKSwgdGhl IGNoZWNrIHJ1bnMgYmVmb3JlIF9fd2FybigpIGlzIGNhbGxlZCwKPiAgICBzdXBwcmVzc2luZyB0 aGUgYmFja3RyYWNlIGFuZCBzdGFjayBkdW1wLiBOb3RlIHRoYXQgb24gdGhpcyBwYXRoLAo+ICAg IHRoZSBXQVJOKCkgZm9ybWF0IG1lc3NhZ2UgbWF5IHN0aWxsIGFwcGVhciBpbiB0aGUga2VybmVs IGxvZyBzaW5jZQo+ICAgIF9fd2Fybl9wcmludGsoKSBydW5zIGJlZm9yZSB0aGUgdHJhcCB0aGF0 IGVudGVycyBfX3JlcG9ydF9idWcoKS4KCldvdWxkIGl0IG1ha2Ugc2Vuc2UgdG8gb3V0cHV0IGEg J2JhY2t0cmFjZSBzdXBwcmVzc2VkIGR1ZSB0byBydW5uaW5nIAp0ZXN0JyBtZXNzYWdlIGluIHRo aXMgbGF0dGVyIGNhc2UsIHNvIHdlIGRvbid0IGp1c3QgZW5kIHVwIHdpdGggdGhlIApXQVJOKCkg Zm9ybWF0IG1lc3NhZ2UgYnkgaXRzZWxmPyAoTXkgZ3V0IGZlZWxpbmcgaXMgJ25vLCBpdCBpc24n dCB3b3J0aCAKaXQnLCBidXQgaXQncyBmb29kIGZvciB0aG91Z2h0LikKCj4gCj4gQSBoZWxwZXIg ZnVuY3Rpb24sIGBfX2t1bml0X2lzX3N1cHByZXNzZWRfd2FybmluZygpYCwgd2Fsa3MgYW4KPiBS Q1UtcHJvdGVjdGVkIGxpc3Qgb2YgYWN0aXZlIHN1cHByZXNzaW9ucywgbWF0Y2hpbmcgYnkgY3Vy cmVudCB0YXNrLgo+IFRoZSBzdXBwcmVzc2lvbiBzdGF0ZSBpcyB0aWVkIHRvIHRoZSBLVW5pdCB0 ZXN0IGxpZmVjeWNsZSB2aWEKPiBrdW5pdF9hZGRfYWN0aW9uKCksIGVuc3VyaW5nIGF1dG9tYXRp YyBjbGVhbnVwIGF0IHRlc3QgZXhpdC4KPiAKPiBUaGUgbGlzdCBvZiBzdXBwcmVzc2VkIHdhcm5p bmdzIGlzIHByb3RlY3RlZCB3aXRoIFJDVSB0byBhbGxvdwo+IGNvbmN1cnJlbnQgcmVhZCBhY2Nl c3Mgd2l0aG91dCBsb2Nrcy4KPiAKPiBUaGUgaW1wbGVtZW50YXRpb24gaXMgZGVsaWJlcmF0ZWx5 IHNpbXBsZSBhbmQgYXZvaWRzIGFyY2hpdGVjdHVyZS1zcGVjaWZpYwo+IG9wdGltaXphdGlvbnMg dG8gcHJlc2VydmUgcG9ydGFiaWxpdHkuCj4gCj4gU2lnbmVkLW9mZi1ieTogR3VlbnRlciBSb2Vj ayA8bGludXhAcm9lY2stdXMubmV0Pgo+IFNpZ25lZC1vZmYtYnk6IEFsZXNzYW5kcm8gQ2FybWlu YXRpIDxhY2FybWluYUByZWRoYXQuY29tPgo+IFJldmlld2VkLWJ5OiBLZWVzIENvb2sgPGtlZXNA a2VybmVsLm9yZz4KPiBTaWduZWQtb2ZmLWJ5OiBBbGJlcnQgRXN0ZXZlIDxhZXN0ZXZlQHJlZGhh dC5jb20+Cj4gLS0tCj4gICBpbmNsdWRlL2t1bml0L2J1Zy5oICB8IDU2ICsrKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrCj4gICBpbmNsdWRlL2t1bml0L3Rlc3QuaCB8ICAxICsKPiAg IGtlcm5lbC9wYW5pYy5jICAgICAgIHwgIDggKysrKy0KPiAgIGxpYi9idWcuYyAgICAgICAgICAg IHwgIDggKysrKysKPiAgIGxpYi9rdW5pdC9LY29uZmlnICAgIHwgIDkgKysrKysrCj4gICBsaWIv a3VuaXQvTWFrZWZpbGUgICB8ICA2ICsrLS0KPiAgIGxpYi9rdW5pdC9idWcuYyAgICAgIHwgODQg KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKwo+ICAg NyBmaWxlcyBjaGFuZ2VkLCAxNjkgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKPiAKPiBk aWZmIC0tZ2l0IGEvaW5jbHVkZS9rdW5pdC9idWcuaCBiL2luY2x1ZGUva3VuaXQvYnVnLmgKPiBu ZXcgZmlsZSBtb2RlIDEwMDY0NAo+IGluZGV4IDAwMDAwMDAwMDAwMDAuLmU1MmM5ZDIxZDlmZTYK PiAtLS0gL2Rldi9udWxsCj4gKysrIGIvaW5jbHVkZS9rdW5pdC9idWcuaAoKSXQncyBhIGJpdCBj b25mdXNpbmcgdG8gbmFtZSB0aGlzIGJ1Zy5oIHdoZW4gd2UgaGF2ZSB0aGUgKGFkbWl0dGVkbHkg CnRlcnJpYmx5LW5hbWVkKSB0ZXN0LWJ1Zy5oIGhlYWRlciBhbHJlYWR5LiBJJ20gcHJldHR5IHRl bXB0ZWQgdG8gcmVuYW1lIAp0aGUgbGF0dGVyIHRvIHNvbWV0aGluZyBsaWtlICdob29rcy5oJywg YXMgdGhhdCdzIHJlYWxseSB3aGF0IGl0J3MgZm9yLCAKYW5kIGhhdmluZyBhIHNlcGFyYXRlIGJ1 Zy5oIHdvdWxkIGJlIGFuIGluY2VudGl2ZSB0byBkbyBzbywgdGhvdWdoLCBzaXQgCml0J3Mgbm90 IGEgYmlnIHByb2JsZW0uCgpJIGRvIHRoaW5rIHRoYXQgaXQnZCBiZSByZWFzb25hYmxlIHRvIGlu Y2x1ZGUgdGhlIGJhY2t0cmFjZSBzdXBwcmVzc2lvbiAKdHVmZiBpbiB0aGUgc2FtZSBmaWxlLCB0 aG91Z2gsIGlmIHlvdSdkIHJhdGhlci4gVGhlIApfX2t1bml0X2lzX3N1cHByZXNzZWRfd2Fybmlu ZygpIHN0dWZmIGluIHBhcnRpY3VsYXIgZml0cyB0aGUgY2F0ZWdvcnkgb2YgCiJjb2RlIGNhbGxl ZCB0byBjaGFuZ2UgYmVoYXZpb3VyIGJhc2VkIG9uIHdoZXRoZXIgb3Igbm90IGEgdGVzdCBpcyAK cnVubmluZyIsIHdoaWNoIGlzIGdlbmVyYWxseSB3aGF0IHRoZSBob29rcyBhcmUgZm9yLiAoQW5k LCBpZiB5b3UnZCAKcmF0aGVyLCB0aGVyZSdzIGEgYnVuY2ggb2YgZXhpc3RpbmcgaG9va3MgYW5k IGhvb2sgaW5mcmFzdHJ1Y3R1cmUgeW91IApjb3VsZCB1c2UuKQoKPiBAQCAtMCwwICsxLDU2IEBA Cj4gKy8qIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBHUEwtMi4wICovCj4gKy8qCj4gKyAqIEtV bml0IGhlbHBlcnMgZm9yIGJhY2t0cmFjZSBzdXBwcmVzc2lvbgo+ICsgKgo+ICsgKiBDb3B5cmln aHQgKEMpIDIwMjUgQWxlc3NhbmRybyBDYXJtaW5hdGkgPGFjYXJtaW5hQHJlZGhhdC5jb20+Cj4g KyAqIENvcHlyaWdodCAoQykgMjAyNCBHdWVudGVyIFJvZWNrIDxsaW51eEByb2Vjay11cy5uZXQ+ Cj4gKyAqLwo+ICsKPiArI2lmbmRlZiBfS1VOSVRfQlVHX0gKPiArI2RlZmluZSBfS1VOSVRfQlVH X0gKPiArCj4gKyNpZm5kZWYgX19BU1NFTUJMWV9fCj4gKwo+ICsjaW5jbHVkZSA8bGludXgva2Nv bmZpZy5oPgo+ICsKPiArc3RydWN0IGt1bml0Owo+ICsKPiArI2lmZGVmIENPTkZJR19LVU5JVF9T VVBQUkVTU19CQUNLVFJBQ0UKPiArCj4gKyNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgo+ICsKPiAr c3RydWN0IHRhc2tfc3RydWN0Owo+ICsKPiArc3RydWN0IF9fc3VwcHJlc3NlZF93YXJuaW5nIHsK PiArCXN0cnVjdCBsaXN0X2hlYWQgbm9kZTsKPiArCXN0cnVjdCB0YXNrX3N0cnVjdCAqdGFzazsK PiArCWludCBjb3VudGVyOwo+ICt9Owo+ICsKPiArc3RydWN0IF9fc3VwcHJlc3NlZF93YXJuaW5n ICoKPiArX19rdW5pdF9zdGFydF9zdXBwcmVzc193YXJuaW5nKHN0cnVjdCBrdW5pdCAqdGVzdCk7 Cj4gK3ZvaWQgX19rdW5pdF9lbmRfc3VwcHJlc3Nfd2FybmluZyhzdHJ1Y3Qga3VuaXQgKnRlc3Qs Cj4gKwkJCQkgIHN0cnVjdCBfX3N1cHByZXNzZWRfd2FybmluZyAqd2FybmluZyk7Cj4gK2ludCBf X2t1bml0X3N1cHByZXNzZWRfd2FybmluZ19jb3VudChzdHJ1Y3QgX19zdXBwcmVzc2VkX3dhcm5p bmcgKndhcm5pbmcpOwo+ICtib29sIF9fa3VuaXRfaXNfc3VwcHJlc3NlZF93YXJuaW5nKHZvaWQp Owo+ICsKPiArI2RlZmluZSBLVU5JVF9TVEFSVF9TVVBQUkVTU0VEX1dBUk5JTkcodGVzdCkgXAo+ ICsJc3RydWN0IF9fc3VwcHJlc3NlZF93YXJuaW5nICpfX2t1bml0X3N1cHByZXNzID0JXAo+ICsJ CV9fa3VuaXRfc3RhcnRfc3VwcHJlc3Nfd2FybmluZyh0ZXN0KQo+ICsKPiArI2RlZmluZSBLVU5J VF9FTkRfU1VQUFJFU1NFRF9XQVJOSU5HKHRlc3QpIFwKPiArCV9fa3VuaXRfZW5kX3N1cHByZXNz X3dhcm5pbmcodGVzdCwgX19rdW5pdF9zdXBwcmVzcykKPiArCj4gKyNkZWZpbmUgS1VOSVRfU1VQ UFJFU1NFRF9XQVJOSU5HX0NPVU5UKCkgXAo+ICsJX19rdW5pdF9zdXBwcmVzc2VkX3dhcm5pbmdf Y291bnQoX19rdW5pdF9zdXBwcmVzcykKClVzaW5nIGEgbG9jYWwgdmFyaWFibGUgKF9fa3VuaXRf c3VwcHJlc3MpIGhlcmUgbWVhbnMgdGhhdCBhbGwgb2YgdGhlIAphYm92ZSBtYWNyb3MgbXVzdCBs aXZlIGluIHRoZSBzYW1lIGZ1bmN0aW9uLiBUaGlzIGlzIHByb2JhYmx5IG9rYXkgZm9yIAptb3N0 IHVzZS1jYXNlcywgYnV0IG1vcmUgY29tcGxpY2F0ZWQgdGVzdHMgbWF5IGhhdmUgdG8gc3RydWN0 dXJlIHRoaW5ncyAKY2FyZWZ1bGx5LiBJdCBhbHNvIHByZXZlbnRzIHRoZXJlIGZyb20gYmVpbmcg bXVsdGlwbGUgU1RBUlQvRU5EIHBhaXJzIGluIAp0aGUgc2FtZSBmdW5jdGlvbiwgYW5kIHRoZSBL VU5JVF9TVVBQUkVTU0VEX1dBUk5JTkdfQ09VTlQoKSBtYWNybyBmcm9tIAphcHBlYXJpbmcgYmVm b3JlIF9TVEFSVCgpLgoKSXQgYWxzbyBtYWtlcyBpdCBsZXNzIG9idmlvdXMgdGhhdCB0aGlzIGNs ZWFucyB1cCBuaWNlbHkgaWYgdGhlIHRlc3QgCmV4aXRzIHVuY2xlYW5seSwgYXMgdGhlIHZhcmlh YmxlIHdpbGwgaGF2ZSBnb25lIG91dC1vZi1zY29wZS4gKEJ1dCBnaXZlbiAKd2UncmUganVzdCBz dG9yaW5nIGEgcG9pbnRlciB0byBoZWFwLWFsbG9jYXRlZCBtZW1vcnksIGFuZCAKa3VuaXRfYWRk X2FjdGlvbigpIGlzIHVzZWQsIGl0IHNob3VsZCBiZSBva2F5LikKCk9uZSBvdGhlciBvcHRpb24g d291bGQgYmUgdG8gYWxsb2NhdGUgdGhlIHN1cHByZXNzaW9uIGFzIGEgbmFtZWQgCnJlc291cmNl LCB3aGljaCBjb3VsZCB0aGVuIGJlIHJldHJpZXZlZCBmcm9tIGFueXdoZXJlIHdpdGhpbiB0aGUg dGVzdCAKd2l0aCBrdW5pdF9maW5kX25hbWVkX3Jlc291cmNlKCkuIChUaG91Z2ggaGFuZGxpbmcg bmVzdGVkIHN1cHByZXNzaW9ucyAKZ2V0cyBhIGxpdHRsZSBtb3JlIGNvbXBsaWNhdGVkIGhlcmUu KQoKT3IgeW91IGNvdWxkIG1ha2UgdGhlIHN0cnVjdCBfX3N1cHByZXNzZWRfd2FybmluZyBwb2lu dGVyIHJldHVybmVkIApleHBsaWNpdGx5IHVzZXItdmlzaWJsZSwgYW5kIGxldCB0aGUgdXNlciBw YXNzIGl0IGFyb3VuZCAodGhvdWdoIHRoYXQgCnNlZW1zIG1vcmUgd29yaykuCgoKPiArCj4gKyNl bHNlIC8qIENPTkZJR19LVU5JVF9TVVBQUkVTU19CQUNLVFJBQ0UgKi8KPiArCj4gKyNkZWZpbmUg S1VOSVRfU1RBUlRfU1VQUFJFU1NFRF9XQVJOSU5HKHRlc3QpCj4gKyNkZWZpbmUgS1VOSVRfRU5E X1NVUFBSRVNTRURfV0FSTklORyh0ZXN0KQo+ICsjZGVmaW5lIEtVTklUX1NVUFBSRVNTRURfV0FS TklOR19DT1VOVCgpIDAKPiArc3RhdGljIGlubGluZSBib29sIF9fa3VuaXRfaXNfc3VwcHJlc3Nl ZF93YXJuaW5nKHZvaWQpIHsgcmV0dXJuIGZhbHNlOyB9Cj4gKwo+ICsjZW5kaWYgLyogQ09ORklH X0tVTklUX1NVUFBSRVNTX0JBQ0tUUkFDRSAqLwo+ICsjZW5kaWYgLyogX19BU1NFTUJMWV9fICov Cj4gKyNlbmRpZiAvKiBfS1VOSVRfQlVHX0ggKi8KPiBkaWZmIC0tZ2l0IGEvaW5jbHVkZS9rdW5p dC90ZXN0LmggYi9pbmNsdWRlL2t1bml0L3Rlc3QuaAo+IGluZGV4IDljZDE1OTRhYjY5N2QuLjRl YzA3YjNmYTAyMDQgMTAwNjQ0Cj4gLS0tIGEvaW5jbHVkZS9rdW5pdC90ZXN0LmgKPiArKysgYi9p bmNsdWRlL2t1bml0L3Rlc3QuaAo+IEBAIC0xMCw2ICsxMCw3IEBACj4gICAjZGVmaW5lIF9LVU5J VF9URVNUX0gKPiAgIAo+ICAgI2luY2x1ZGUgPGt1bml0L2Fzc2VydC5oPgo+ICsjaW5jbHVkZSA8 a3VuaXQvYnVnLmg+Cj4gICAjaW5jbHVkZSA8a3VuaXQvdHJ5LWNhdGNoLmg+Cj4gICAKPiAgICNp bmNsdWRlIDxsaW51eC9hcmdzLmg+Cj4gZGlmZiAtLWdpdCBhL2tlcm5lbC9wYW5pYy5jIGIva2Vy bmVsL3BhbmljLmMKPiBpbmRleCBjNzg2MDAyMTJiNmMxLi5kN2E3YTY3OWY1NmM0IDEwMDY0NAo+ IC0tLSBhL2tlcm5lbC9wYW5pYy5jCj4gKysrIGIva2VybmVsL3BhbmljLmMKPiBAQCAtMzksNiAr MzksNyBAQAo+ICAgI2luY2x1ZGUgPGxpbnV4L3N5c19pbmZvLmg+Cj4gICAjaW5jbHVkZSA8dHJh Y2UvZXZlbnRzL2Vycm9yX3JlcG9ydC5oPgo+ICAgI2luY2x1ZGUgPGFzbS9zZWN0aW9ucy5oPgo+ ICsjaW5jbHVkZSA8a3VuaXQvYnVnLmg+Cj4gICAKPiAgICNkZWZpbmUgUEFOSUNfVElNRVJfU1RF UCAxMDAKPiAgICNkZWZpbmUgUEFOSUNfQkxJTktfU1BEIDE4Cj4gQEAgLTEwODAsOSArMTA4MSwx NCBAQCB2b2lkIF9fd2Fybihjb25zdCBjaGFyICpmaWxlLCBpbnQgbGluZSwgdm9pZCAqY2FsbGVy LCB1bnNpZ25lZCB0YWludCwKPiAgIHZvaWQgd2Fybl9zbG93cGF0aF9mbXQoY29uc3QgY2hhciAq ZmlsZSwgaW50IGxpbmUsIHVuc2lnbmVkIHRhaW50LAo+ICAgCQkgICAgICAgY29uc3QgY2hhciAq Zm10LCAuLi4pCj4gICB7Cj4gLQlib29sIHJjdSA9IHdhcm5fcmN1X2VudGVyKCk7Cj4gKwlib29s IHJjdTsKPiAgIAlzdHJ1Y3Qgd2Fybl9hcmdzIGFyZ3M7Cj4gICAKPiArCWlmIChfX2t1bml0X2lz X3N1cHByZXNzZWRfd2FybmluZygpKQo+ICsJCXJldHVybjsKPiArCj4gKwlyY3UgPSB3YXJuX3Jj dV9lbnRlcigpOwo+ICsKPiAgIAlwcl93YXJuKENVVF9IRVJFKTsKPiAgIAo+ICAgCWlmICghZm10 KSB7Cj4gZGlmZiAtLWdpdCBhL2xpYi9idWcuYyBiL2xpYi9idWcuYwo+IGluZGV4IDYyM2M0Njdh OGI3NmMuLjYwNjIwNWM4YzMwMmYgMTAwNjQ0Cj4gLS0tIGEvbGliL2J1Zy5jCj4gKysrIGIvbGli L2J1Zy5jCj4gQEAgLTQ4LDYgKzQ4LDcgQEAKPiAgICNpbmNsdWRlIDxsaW51eC9yY3VsaXN0Lmg+ Cj4gICAjaW5jbHVkZSA8bGludXgvZnRyYWNlLmg+Cj4gICAjaW5jbHVkZSA8bGludXgvY29udGV4 dF90cmFja2luZy5oPgo+ICsjaW5jbHVkZSA8a3VuaXQvYnVnLmg+Cj4gICAKPiAgIGV4dGVybiBz dHJ1Y3QgYnVnX2VudHJ5IF9fc3RhcnRfX19idWdfdGFibGVbXSwgX19zdG9wX19fYnVnX3RhYmxl W107Cj4gICAKPiBAQCAtMjIzLDYgKzIyNCwxMyBAQCBzdGF0aWMgZW51bSBidWdfdHJhcF90eXBl IF9fcmVwb3J0X2J1ZyhzdHJ1Y3QgYnVnX2VudHJ5ICpidWcsIHVuc2lnbmVkIGxvbmcgYnVnYQo+ ICAgCW5vX2N1dCAgID0gYnVnLT5mbGFncyAmIEJVR0ZMQUdfTk9fQ1VUX0hFUkU7Cj4gICAJaGFz X2FyZ3MgPSBidWctPmZsYWdzICYgQlVHRkxBR19BUkdTOwo+ICAgCj4gKwkvKgo+ICsJICogQmVm b3JlIHRoZSBvbmNlIGxvZ2ljIHNvIHN1cHByZXNzZWQgd2FybmluZ3MgZG8gbm90IGNvbnN1bWUK PiArCSAqIHRoZSBzaW5nbGUtZmlyZSBidWRnZXQgb2YgV0FSTl9PTl9PTkNFKCkuCj4gKwkgKi8K PiArCWlmICh3YXJuaW5nICYmIF9fa3VuaXRfaXNfc3VwcHJlc3NlZF93YXJuaW5nKCkpCj4gKwkJ cmV0dXJuIEJVR19UUkFQX1RZUEVfV0FSTjsKPiArCgpXaGlsZSBhbnkgY29tcGV0YW50IG9wdGlt aXNlciBzaG91bGQgZ2V0IHJpZCBvZiB0aGlzIGVudGlyZWx5LCBpdCBtaWdodCAKYmUgY2xlYXJl ciB0byBhbnlvbmUgcmVhZGluZyBpdCB0aGF0IHRoaXMgZGlzYXBwZWFycyBpZiB3ZSBqdXN0IHB1 dCBpdCAKYmVoaW5kIGFuICNpZmRlZj8KCj4gICAJaWYgKHdhcm5pbmcgJiYgb25jZSkgewo+ICAg CQlpZiAoZG9uZSkKPiAgIAkJCXJldHVybiBCVUdfVFJBUF9UWVBFX1dBUk47Cj4gZGlmZiAtLWdp dCBhL2xpYi9rdW5pdC9LY29uZmlnIGIvbGliL2t1bml0L0tjb25maWcKPiBpbmRleCA0OThjYzUx ZTQ5M2RjLi41NzUyNzQxOGZjZjA5IDEwMDY0NAo+IC0tLSBhL2xpYi9rdW5pdC9LY29uZmlnCj4g KysrIGIvbGliL2t1bml0L0tjb25maWcKPiBAQCAtMTUsNiArMTUsMTUgQEAgbWVudWNvbmZpZyBL VU5JVAo+ICAgCj4gICBpZiBLVU5JVAo+ICAgCj4gK2NvbmZpZyBLVU5JVF9TVVBQUkVTU19CQUNL VFJBQ0UKPiArCWJvb2wgIktVbml0IC0gRW5hYmxlIGJhY2t0cmFjZSBzdXBwcmVzc2lvbiIKPiAr CWRlZmF1bHQgeQo+ICsJaGVscAo+ICsJICBFbmFibGUgYmFja3RyYWNlIHN1cHByZXNzaW9uIGZv ciBLVW5pdC4gSWYgZW5hYmxlZCwgYmFja3RyYWNlcwo+ICsJICBnZW5lcmF0ZWQgaW50ZW50aW9u YWxseSBieSBLVW5pdCB0ZXN0cyBhcmUgc3VwcHJlc3NlZC4gRGlzYWJsZQo+ICsJICB0byByZWR1 Y2Uga2VybmVsIGltYWdlIHNpemUgaWYgaW1hZ2Ugc2l6ZSBpcyBtb3JlIGltcG9ydGFudCB0aGFu Cj4gKwkgIHN1cHByZXNzaW9uIG9mIGJhY2t0cmFjZXMgZ2VuZXJhdGVkIGJ5IEtVbml0IHRlc3Rz Lgo+ICsKPiAgIGNvbmZpZyBLVU5JVF9ERUJVR0ZTCj4gICAJYm9vbCAiS1VuaXQgLSBFbmFibGUg L3N5cy9rZXJuZWwvZGVidWcva3VuaXQgZGVidWdmcyByZXByZXNlbnRhdGlvbiIgaWYgIUtVTklU X0FMTF9URVNUUwo+ICAgCWRlZmF1bHQgS1VOSVRfQUxMX1RFU1RTCj4gZGlmZiAtLWdpdCBhL2xp Yi9rdW5pdC9NYWtlZmlsZSBiL2xpYi9rdW5pdC9NYWtlZmlsZQo+IGluZGV4IDY1NmYxZmEzNWFi Y2MuLmZlMTc3ZmYzZWJkZWYgMTAwNjQ0Cj4gLS0tIGEvbGliL2t1bml0L01ha2VmaWxlCj4gKysr IGIvbGliL2t1bml0L01ha2VmaWxlCj4gQEAgLTE2LDggKzE2LDEwIEBAIGlmZXEgKCQoQ09ORklH X0tVTklUX0RFQlVHRlMpLHkpCj4gICBrdW5pdC1vYmpzICs9CQkJCWRlYnVnZnMubwo+ICAgZW5k aWYKPiAgIAo+IC0jIEtVbml0ICdob29rcycgYXJlIGJ1aWx0LWluIGV2ZW4gd2hlbiBLVW5pdCBp cyBidWlsdCBhcyBhIG1vZHVsZS4KPiAtb2JqLSQoaWYgJChDT05GSUdfS1VOSVQpLHkpICs9CQlo b29rcy5vCj4gKyMgS1VuaXQgJ2hvb2tzJyBhbmQgYnVnIGhhbmRsaW5nIGFyZSBidWlsdC1pbiBl dmVuIHdoZW4gS1VuaXQgaXMgYnVpbHQKPiArIyBhcyBhIG1vZHVsZS4KPiArb2JqLSQoaWYgJChD T05GSUdfS1VOSVQpLHkpICs9CQlob29rcy5vIFwKPiArCQkJCQlidWcubwoKSXMgdGhlcmUgYW55 IHJlYXNvbiB3ZSBjb3VsZG4ndCBpbXBsZW1lbnQgdGhpcyBvbiB0b3Agb2YgdGhlIGhvb2tzIApt ZWNoYW5pc20/IFRoZW4gd2UgY291bGQgaW5jbHVkZSB0aGUgYnVnIHN1cHByZXNzaW9uIGNvZGUg aW4gdGhlIAprdW5pdC5rbyBtb2R1bGUgKGFsYmVpdCwgd2l0aCBmZXdlciBwb3NzaWJpbGl0aWVz IGZvciB0aGUgY29tcGlsZXIgdG8gCm9wdGltaXNlIHRoaW5ncywgYXMgdGhleSdkIGhhdmUgdG8g Z28gdGhyb3VnaCBhbiBpbmRpcmVjdCBwb2ludGVyKS4KCgo+ICAgCj4gICBvYmotJChDT05GSUdf S1VOSVRfVEVTVCkgKz0JCWt1bml0LXRlc3Qubwo+ICAgb2JqLSQoQ09ORklHX0tVTklUX1RFU1Qp ICs9CQlwbGF0Zm9ybS10ZXN0Lm8KPiBkaWZmIC0tZ2l0IGEvbGliL2t1bml0L2J1Zy5jIGIvbGli L2t1bml0L2J1Zy5jCj4gbmV3IGZpbGUgbW9kZSAxMDA2NDQKPiBpbmRleCAwMDAwMDAwMDAwMDAw Li4zNTZjOGE1OTI4ODI4Cj4gLS0tIC9kZXYvbnVsbAo+ICsrKyBiL2xpYi9rdW5pdC9idWcuYwo+ IEBAIC0wLDAgKzEsODQgQEAKPiArLy8gU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEdQTC0yLjAK PiArLyoKPiArICogS1VuaXQgaGVscGVycyBmb3IgYmFja3RyYWNlIHN1cHByZXNzaW9uCj4gKyAq Cj4gKyAqIENvcHlyaWdodCAoQykgMjAyNSBBbGVzc2FuZHJvIENhcm1pbmF0aSA8YWNhcm1pbmFA cmVkaGF0LmNvbT4KPiArICogQ29weXJpZ2h0IChDKSAyMDI0IEd1ZW50ZXIgUm9lY2sgPGxpbnV4 QHJvZWNrLXVzLm5ldD4KPiArICovCj4gKwo+ICsjaW5jbHVkZSA8a3VuaXQvYnVnLmg+Cj4gKyNp bmNsdWRlIDxrdW5pdC9yZXNvdXJjZS5oPgo+ICsjaW5jbHVkZSA8bGludXgvZXhwb3J0Lmg+Cj4g KyNpbmNsdWRlIDxsaW51eC9yY3VsaXN0Lmg+Cj4gKyNpbmNsdWRlIDxsaW51eC9zY2hlZC5oPgo+ ICsKPiArI2lmZGVmIENPTkZJR19LVU5JVF9TVVBQUkVTU19CQUNLVFJBQ0UKPiArCj4gK3N0YXRp YyBMSVNUX0hFQUQoc3VwcHJlc3NlZF93YXJuaW5ncyk7Cj4gKwo+ICtzdGF0aWMgdm9pZCBfX2t1 bml0X3N1cHByZXNzX3dhcm5pbmdfcmVtb3ZlKHN0cnVjdCBfX3N1cHByZXNzZWRfd2FybmluZyAq d2FybmluZykKPiArewo+ICsJbGlzdF9kZWxfcmN1KCZ3YXJuaW5nLT5ub2RlKTsKPiArCXN5bmNo cm9uaXplX3JjdSgpOyAvKiBXYWl0IGZvciByZWFkZXJzIHRvIGZpbmlzaCAqLwo+ICt9Cj4gKwo+ ICtLVU5JVF9ERUZJTkVfQUNUSU9OX1dSQVBQRVIoX19rdW5pdF9zdXBwcmVzc193YXJuaW5nX2Ns ZWFudXAsCj4gKwkJCSAgICBfX2t1bml0X3N1cHByZXNzX3dhcm5pbmdfcmVtb3ZlLAo+ICsJCQkg ICAgc3RydWN0IF9fc3VwcHJlc3NlZF93YXJuaW5nICopOwo+ICsKPiArc3RydWN0IF9fc3VwcHJl c3NlZF93YXJuaW5nICoKPiArX19rdW5pdF9zdGFydF9zdXBwcmVzc193YXJuaW5nKHN0cnVjdCBr dW5pdCAqdGVzdCkKPiArewo+ICsJc3RydWN0IF9fc3VwcHJlc3NlZF93YXJuaW5nICp3YXJuaW5n Owo+ICsJaW50IHJldDsKPiArCj4gKwl3YXJuaW5nID0ga3VuaXRfa3phbGxvYyh0ZXN0LCBzaXpl b2YoKndhcm5pbmcpLCBHRlBfS0VSTkVMKTsKPiArCWlmICghd2FybmluZykKPiArCQlyZXR1cm4g TlVMTDsKPiArCj4gKwl3YXJuaW5nLT50YXNrID0gY3VycmVudDsKPiArCWxpc3RfYWRkX3JjdSgm d2FybmluZy0+bm9kZSwgJnN1cHByZXNzZWRfd2FybmluZ3MpOwo+ICsKPiArCXJldCA9IGt1bml0 X2FkZF9hY3Rpb25fb3JfcmVzZXQodGVzdCwKPiArCQkJCQlfX2t1bml0X3N1cHByZXNzX3dhcm5p bmdfY2xlYW51cCwKPiArCQkJCQl3YXJuaW5nKTsKPiArCWlmIChyZXQpCj4gKwkJcmV0dXJuIE5V TEw7Cj4gKwo+ICsJcmV0dXJuIHdhcm5pbmc7Cj4gK30KPiArRVhQT1JUX1NZTUJPTF9HUEwoX19r dW5pdF9zdGFydF9zdXBwcmVzc193YXJuaW5nKTsKPiArCj4gK3ZvaWQgX19rdW5pdF9lbmRfc3Vw cHJlc3Nfd2FybmluZyhzdHJ1Y3Qga3VuaXQgKnRlc3QsCj4gKwkJCQkgIHN0cnVjdCBfX3N1cHBy ZXNzZWRfd2FybmluZyAqd2FybmluZykKPiArewo+ICsJaWYgKCF3YXJuaW5nKQo+ICsJCXJldHVy bjsKPiArCWt1bml0X3JlbGVhc2VfYWN0aW9uKHRlc3QsIF9fa3VuaXRfc3VwcHJlc3Nfd2Fybmlu Z19jbGVhbnVwLCB3YXJuaW5nKTsKPiArfQo+ICtFWFBPUlRfU1lNQk9MX0dQTChfX2t1bml0X2Vu ZF9zdXBwcmVzc193YXJuaW5nKTsKPiArCj4gK2ludCBfX2t1bml0X3N1cHByZXNzZWRfd2Fybmlu Z19jb3VudChzdHJ1Y3QgX19zdXBwcmVzc2VkX3dhcm5pbmcgKndhcm5pbmcpCj4gK3sKPiArCXJl dHVybiB3YXJuaW5nID8gd2FybmluZy0+Y291bnRlciA6IDA7Cj4gK30KPiArRVhQT1JUX1NZTUJP TF9HUEwoX19rdW5pdF9zdXBwcmVzc2VkX3dhcm5pbmdfY291bnQpOwo+ICsKPiArYm9vbCBfX2t1 bml0X2lzX3N1cHByZXNzZWRfd2FybmluZyh2b2lkKQo+ICt7Cj4gKwlzdHJ1Y3QgX19zdXBwcmVz c2VkX3dhcm5pbmcgKndhcm5pbmc7Cj4gKwo+ICsJcmN1X3JlYWRfbG9jaygpOwo+ICsJbGlzdF9m b3JfZWFjaF9lbnRyeV9yY3Uod2FybmluZywgJnN1cHByZXNzZWRfd2FybmluZ3MsIG5vZGUpIHsK PiArCQlpZiAod2FybmluZy0+dGFzayA9PSBjdXJyZW50KSB7Cj4gKwkJCXdhcm5pbmctPmNvdW50 ZXIrKzsKPiArCQkJcmN1X3JlYWRfdW5sb2NrKCk7Cj4gKwkJCXJldHVybiB0cnVlOwo+ICsJCX0K PiArCX0KPiArCXJjdV9yZWFkX3VubG9jaygpOwo+ICsKPiArCXJldHVybiBmYWxzZTsKPiArfQoK Tm90ZSB0byBzZWxmOiB0aGlzIGlzIF9ub3RfIGV4cG9ydGVkLCBhcyBidWcuYyBpcyBiZWluZyBi dWlsdC1pbiAKcmVnYXJkbGVzcyBvZiB3aGV0aGVyIG9yIG5vdCBLVW5pdCBpcyBhIG1vZHVsZS4g SWYgd2UgdXNlZCB0aGUgaG9vayAKc3lzdGVtLCBpdCBjb3VsZCBsaXZlIGluIGt1bml0LmtvLCBh bmQgd291bGQgYmUgbWFudWFsbHkgZXhwb3J0ZWQgYnkgCmt1bml0X2luc3RhbGxfaG9va3MoKQoK PiArCj4gKyNlbmRpZiAvKiBDT05GSUdfS1VOSVRfU1VQUFJFU1NfQkFDS1RSQUNFICovCj4gCgoK VGhhbmtzIGFnYWluLAotLSBEYXZpZAo=