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 4E2F6CA0EC2 for ; Mon, 4 Aug 2025 15:55:49 +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:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:Cc:To:In-Reply-To:References:Message-Id :MIME-Version:Subject:Date:From:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=tiCZGPDT8p8cYK+pGbfN3w+XL3J3Ql8R8nDPFDq1rfs=; b=32mV9DcQyZxk+8 PdyB9A6H0SWihryWwiHXUrvAtzWqVzVRdGV2KG2UTs2S4xHfpOTqeNCTlDkHJ1leVHchQkMNsLr7i A0OX2EYQrWJ0DIYOEpQcxjGUhTpqx8jd3BLUfG/aaMekdTu0J/ajlP6vXorXTJyEI9KQqs75B62Nl 0CkLX5Ww+XFKbhG34elVUnZoBS+qnhGBj8Hkca39tbTyJ8VDdx3Z7tnUDajEUyTVP/SVl2jVaeXuH ZXgpdSokClP4fMQdjN4SMyeL1KrXoZWZDTjqoL4LLpJxUX42i2DR1FOUPeaIVyfNYF4pRkm+zDbbd P5rT5WjcNfx8uqJk6K+A==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.98.2 #2 (Red Hat Linux)) id 1uixXK-0000000AuIZ-3FBP; Mon, 04 Aug 2025 15:55:42 +0000 Received: from perceval.ideasonboard.com ([213.167.242.64]) by bombadil.infradead.org with esmtps (Exim 4.98.2 #2 (Red Hat Linux)) id 1ui8Wv-00000007PXl-2Cp4; Sat, 02 Aug 2025 09:27:56 +0000 Received: from [192.168.0.172] (mob-5-90-138-121.net.vodafone.it [5.90.138.121]) by perceval.ideasonboard.com (Postfix) with ESMTPSA id F3FB23B05; Sat, 2 Aug 2025 11:26:56 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com; s=mail; t=1754126827; bh=Yobm/1MGg7bPFLQtQWEvVqLgOCfJr7HoqcnOsRBfzUY=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=tb0X9eBIOaImES639/omP3+bgTrW7SC2+A3C4hbXWza6N9MZX4V1hAY9CmkS/1Y0Y grEbDaabanOy+dRjK8cWvnSqPGGq52yv4RPUTWCubgtks/3ccnM9HJxoLrgX5EylfZ 2QJtUQkALJrbXmmQtnj//lbFfnb0ZVJcW6mp53aE= From: Jacopo Mondi Date: Sat, 02 Aug 2025 11:22:48 +0200 Subject: [PATCH 26/65] media: Set file->private_data in v4l2_fh_add() MIME-Version: 1.0 Message-Id: <20250802-media-private-data-v1-26-eb140ddd6a9d@ideasonboard.com> References: <20250802-media-private-data-v1-0-eb140ddd6a9d@ideasonboard.com> In-Reply-To: <20250802-media-private-data-v1-0-eb140ddd6a9d@ideasonboard.com> To: Mauro Carvalho Chehab , Devarsh Thakkar , Benoit Parrot , Hans Verkuil , Mike Isely , Laurent Pinchart , Hans de Goede , Parthiban Veerasooran , Christian Gromm , Greg Kroah-Hartman , Alex Shi , Yanteng Si , Dongliang Mu , Jonathan Corbet , Tomasz Figa , Marek Szyprowski , Andy Walls , Michael Tretter , Pengutronix Kernel Team , Bin Liu , Matthias Brugger , AngeloGioacchino Del Regno , Dmitry Osipenko , Thierry Reding , Jonathan Hunter , Mirela Rabulea , Shawn Guo , Sascha Hauer , Fabio Estevam , Kieran Bingham , Michal Simek , Ming Qian , Zhou Peng , Xavier Roumegue , Philipp Zabel , Vikash Garodia , Dikshita Agarwal , Abhinav Kumar , Bryan O'Donoghue , Sylwester Nawrocki , Jernej Skrabec , Chen-Yu Tsai , Samuel Holland , Daniel Almeida , Neil Armstrong , Kevin Hilman , Jerome Brunet , Martin Blumenstingl , Nas Chung , Jackson Lee , Minghsiu Tsai , Houlong Wei , Andrew-CT Chen , Tiffany Lin , Yunfei Dong , Geert Uytterhoeven , Magnus Damm , Mikhail Ulyanov , Jacob Chen , Ezequiel Garcia , Heiko Stuebner , Detlev Casanova , Krzysztof Kozlowski , Alim Akhtar , Sylwester Nawrocki , =?utf-8?q?=C5=81ukasz_Stelmach?= , Andrzej Pietrasiewicz , Jacek Anaszewski , Andrzej Hajda , Fabien Dessenne , Hugues Fruchet , Jean-Christophe Trotin , Maxime Coquelin , Alexandre Torgue , Nicolas Dufresne , Benjamin Gaignard , Steve Longerbeam , Maxime Ripard , Paul Kocialkowski , =?utf-8?q?Niklas_S=C3=B6derlund?= , Robert Foss , Todor Tomov , Vladimir Zapolskiy , Corentin Labbe , Sakari Ailus , Bingbu Cao , Tianshu Qiu , Stanislaw Gruszka Cc: linux-media@vger.kernel.org, linux-kernel@vger.kernel.org, linux-staging@lists.linux.dev, linux-doc@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org, linux-tegra@vger.kernel.org, imx@lists.linux.dev, linux-renesas-soc@vger.kernel.org, linux-arm-msm@vger.kernel.org, linux-samsung-soc@vger.kernel.org, linux-sunxi@lists.linux.dev, linux-usb@vger.kernel.org, linux-amlogic@lists.infradead.org, linux-rockchip@lists.infradead.org, linux-stm32@st-md-mailman.stormreply.com, mjpeg-users@lists.sourceforge.net, Jacopo Mondi X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=49506; i=jacopo.mondi@ideasonboard.com; h=from:subject:message-id; bh=AjjOw1FEkl+flV1iD9X3J3U+zDgZ+uBJPuJ8D/AKRho=; b=owEBbQKS/ZANAwAKAXI0Bo8WoVY8AcsmYgBojdj60moBa2sYWifVD3BYJyFsFLUsO8YipbF7Q mObETTgb6aJAjMEAAEKAB0WIQS1xD1IgJogio9YOMByNAaPFqFWPAUCaI3Y+gAKCRByNAaPFqFW PNh0EACisCJhsBqYBnUT08VIyZS01ltJOUhjGNP1Q5VtcSV4zCPWF17wgA1TxN2Vpu3+4qrnMhs WK9B0bE7SSSeEXux7YTqyULe2Z1FjPXhx+m2031K6HROtTGpLj4AHf1yJvUwlsif7SheIKi0Rqu hOcoUkNRGSyrgcUVMMC62m4E9nq4ficNkp6ku/bcuFjscF/EWcoCSNAGOy1PHYIjdMnddT/VviX 634F7yAfxHPz7YhZKQfDyncRkrZ5j0tml3nFz9CF0LPNqwSvmf+hIjkekcUr9Y8T8g+xhiv4v/2 6JhLMLMZa3D12gj4RtcoJcpfBTl7d/y8FILCw5lvmuasUdqUVPyZa7gF6fAkFDpINullW5pYZoh boqLyuoXsQ+1W39xA7Q1STAAzf2tsSCx29o8pfJggjgmB9sVZPKJ2uhAW4Kv7eBLFmDHU7oFXEy K5vDz1CPD7fxV+ivNLgUKCqF1wEVvvTMGdPmmrVyuy4Frh+g00TiqlZV4U78PnzQpvGUNn6vTYL MYzyvP/OqBvyIMuhnAeeq8dFm6gSMVTVNSwvQ5MvM2nNuEjA3hdNmo5IoRceRNeHWYuDtGgjKU3 KibUlxWu7pO7j1Exjb5PgLWw4zhhlux+8YKKdiB+rfYmeBGbhfqjHrFbfYx0LN+2p3ttuwQ1ZUB REQPI37HstKsoug== X-Developer-Key: i=jacopo.mondi@ideasonboard.com; a=openpgp; fpr=72392EDC88144A65C701EA9BA5826A2587AD026B X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20250802_022754_021143_1EDF5364 X-CRM114-Status: GOOD ( 22.21 ) X-Mailman-Approved-At: Mon, 04 Aug 2025 08:40:54 -0700 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: , 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 RnJvbTogTGF1cmVudCBQaW5jaGFydCA8bGF1cmVudC5waW5jaGFydEBpZGVhc29uYm9hcmQuY29t PgoKQWxsIHRoZSBkcml2ZXJzIHRoYXQgdXNlIHY0bDJfZmggYW5kIGNhbGwgdjRsMl9maF9hZGQo KSBtYW51YWxseSBzdG9yZSBhCnBvaW50ZXIgdG8gdGhlIHY0bDJfZmggaW5zdGFuY2UgaW4gZmls ZS0+cHJpdmF0ZV9kYXRhIGluIHRoZWlyIHZpZGVvCmRldmljZSAub3BlbigpIGZpbGUgb3BlcmF0 aW9uIGhhbmRsZXIuIE1vdmUgdGhlIGNvZGUgdG8gdGhlCnY0bDJfZmhfYWRkKCkgZnVuY3Rpb24g dG8gYXZvaWQgZGlyZWN0IGFjY2VzcyB0byBmaWxlLT5wcml2YXRlX2RhdGEgaW4KZHJpdmVycy4g VGhpcyByZXF1aXJlcyBhZGRpbmcgYSBmaWxlIHBvaW50ZXIgYXJndW1lbnQgdG8gdGhlIGZ1bmN0 aW9uLgoKQ2hhbmdlcyB0byBkcml2ZXJzIGhhdmUgYmVlbiBnZW5lcmF0ZWQgd2l0aCB0aGUgZm9s bG93aW5nIGNvY2NpbmVsbGUKc2VtYW50aWMgcGF0Y2g6CgpAQApleHByZXNzaW9uIGZoOwppZGVu dGlmaWVyIGZpbHA7CmlkZW50aWZpZXIgb3BlbjsKdHlwZSByZXQ7CkBACnJldCBvcGVuKC4uLiwg c3RydWN0IGZpbGUgKmZpbHAsIC4uLikKewoJPC4uLgotCWZpbHAtPnByaXZhdGVfZGF0YSA9IGZo OwoJLi4uCi0JdjRsMl9maF9hZGQoZmgpOworCXY0bDJfZmhfYWRkKGZoLCBmaWxwKTsKCS4uLj4K fQoKQEAKZXhwcmVzc2lvbiBmaDsKaWRlbnRpZmllciBmaWxwOwppZGVudGlmaWVyIG9wZW47CnR5 cGUgcmV0OwpAQApyZXQgb3BlbiguLi4sIHN0cnVjdCBmaWxlICpmaWxwLCAuLi4pCnsKCTwuLi4K LQl2NGwyX2ZoX2FkZChmaCk7CisJdjRsMl9maF9hZGQoZmgsIGZpbHApOwoJLi4uCi0JZmlscC0+ cHJpdmF0ZV9kYXRhID0gZmg7CgkuLi4+Cn0KCk1hbnVhbCBjaGFuZ2VzIGhhdmUgYmVlbiBhcHBs aWVkIHRvIERvY3VtZW50YXRpb24vIHRvIHVwZGF0ZSB0aGUgdXNhZ2UKcGF0dGVybnMsIHRvIGRy aXZlcnMvbWVkaWEvdjRsMi1jb3JlL3Y0bDItZmguYyB0byB1cGRhdGUgdGhlCnY0bDJfZmhfYWRk KCkgcHJvdG90eXBlIHNldCBmaWxlLT5wcml2YXRlX2RhdGEsIGFuZCB0bwppbmNsdWRlL21lZGlh L3Y0bDItZmguaCB0byB1cGRhdGUgdGhlIHY0bDJfZmhfYWRkKCkgZnVuY3Rpb24gcHJvdG90eXBl CmFuZCBpdHMgZG9jdW1lbnRhdGlvbi4KCkFkZGl0aW9uYWxseSwgd2hpdGUgc3BhY2UgaXNzdWVz IGhhdmUgYmVlbiBmaXhlZCBtYW51YWxseSBpbgpkcml2ZXJzL21lZGlhL3BsYXRmb3JtL252aWRp YS90ZWdyYS12ZGUvdjRsMi5jLApkcml2ZXJzL21lZGlhL3BsYXRmb3JtL3JvY2tjaGlwL3JrdmRl Yy9ya3ZkZWMuYywKZHJpdmVycy9tZWRpYS92NGwyLWNvcmUvdjRsMi1maC5jIGFuZApkcml2ZXJz L3N0YWdpbmcvbW9zdC92aWRlby92aWRlby5jLgoKU2lnbmVkLW9mZi1ieTogTGF1cmVudCBQaW5j aGFydCA8bGF1cmVudC5waW5jaGFydEBpZGVhc29uYm9hcmQuY29tPgpTaWduZWQtb2ZmLWJ5OiBK YWNvcG8gTW9uZGkgPGphY29wby5tb25kaUBpZGVhc29uYm9hcmQuY29tPgotLS0KIERvY3VtZW50 YXRpb24vZHJpdmVyLWFwaS9tZWRpYS92NGwyLWZoLnJzdCAgICAgICAgIHwgNDYgKysrKysrKysr KystLS0tLS0tLS0tLQogLi4uL3poX0NOL3ZpZGVvNGxpbnV4L3Y0bDItZnJhbWV3b3JrLnR4dCAg ICAgICAgICAgfCAgNSArLS0KIGRyaXZlcnMvbWVkaWEvcGNpL2N4MTgvY3gxOC1maWxlb3BzLmMg ICAgICAgICAgICAgIHwgIDMgKy0KIGRyaXZlcnMvbWVkaWEvcGNpL2l2dHYvaXZ0di1maWxlb3Bz LmMgICAgICAgICAgICAgIHwgIDQgKy0KIGRyaXZlcnMvbWVkaWEvcGNpL3NhYTcxNjQvc2FhNzE2 NC1lbmNvZGVyLmMgICAgICAgIHwgIDMgKy0KIGRyaXZlcnMvbWVkaWEvcGNpL3NhYTcxNjQvc2Fh NzE2NC12YmkuYyAgICAgICAgICAgIHwgIDMgKy0KIGRyaXZlcnMvbWVkaWEvcGxhdGZvcm0vYWxs ZWdyby1kdnQvYWxsZWdyby1jb3JlLmMgIHwgIDMgKy0KIGRyaXZlcnMvbWVkaWEvcGxhdGZvcm0v YW1sb2dpYy9tZXNvbi1nZTJkL2dlMmQuYyAgIHwgIDMgKy0KIGRyaXZlcnMvbWVkaWEvcGxhdGZv cm0vYW1waGlvbi92cHVfdjRsMi5jICAgICAgICAgIHwgIDMgKy0KIC4uLi9tZWRpYS9wbGF0Zm9y bS9jaGlwcy1tZWRpYS9jb2RhL2NvZGEtY29tbW9uLmMgIHwgIDMgKy0KIC4uLi9wbGF0Zm9ybS9j aGlwcy1tZWRpYS93YXZlNS93YXZlNS12cHUtZGVjLmMgICAgIHwgIDMgKy0KIC4uLi9wbGF0Zm9y bS9jaGlwcy1tZWRpYS93YXZlNS93YXZlNS12cHUtZW5jLmMgICAgIHwgIDMgKy0KIC4uLi9tZWRp YS9wbGF0Zm9ybS9pbWFnaW5hdGlvbi9lNTAxMC1qcGVnLWVuYy5jICAgIHwgIDMgKy0KIGRyaXZl cnMvbWVkaWEvcGxhdGZvcm0vbTJtLWRlaW50ZXJsYWNlLmMgICAgICAgICAgIHwgIDMgKy0KIC4u Li9tZWRpYS9wbGF0Zm9ybS9tZWRpYXRlay9qcGVnL210a19qcGVnX2NvcmUuYyAgIHwgIDMgKy0K IGRyaXZlcnMvbWVkaWEvcGxhdGZvcm0vbWVkaWF0ZWsvbWRwL210a19tZHBfbTJtLmMgIHwgIDMg Ky0KIC4uLi9tZWRpYS9wbGF0Zm9ybS9tZWRpYXRlay9tZHAzL210ay1tZHAzLW0ybS5jICAgIHwg IDMgKy0KIC4uLi9tZWRpYXRlay92Y29kZWMvZGVjb2Rlci9tdGtfdmNvZGVjX2RlY19kcnYuYyAg IHwgIDMgKy0KIC4uLi9tZWRpYXRlay92Y29kZWMvZW5jb2Rlci9tdGtfdmNvZGVjX2VuY19kcnYu YyAgIHwgIDMgKy0KIGRyaXZlcnMvbWVkaWEvcGxhdGZvcm0vbnZpZGlhL3RlZ3JhLXZkZS92NGwy LmMgICAgIHwgIDMgKy0KIGRyaXZlcnMvbWVkaWEvcGxhdGZvcm0vbnhwL2R3MTAwL2R3MTAwLmMg ICAgICAgICAgIHwgIDMgKy0KIGRyaXZlcnMvbWVkaWEvcGxhdGZvcm0vbnhwL2lteC1qcGVnL214 Yy1qcGVnLmMgICAgIHwgIDMgKy0KIGRyaXZlcnMvbWVkaWEvcGxhdGZvcm0vbnhwL2lteC1weHAu YyAgICAgICAgICAgICAgIHwgIDMgKy0KIGRyaXZlcnMvbWVkaWEvcGxhdGZvcm0vbnhwL2lteDgt aXNpL2lteDgtaXNpLW0ybS5jIHwgIDMgKy0KIGRyaXZlcnMvbWVkaWEvcGxhdGZvcm0vbnhwL214 Ml9lbW1hcHJwLmMgICAgICAgICAgIHwgIDMgKy0KIGRyaXZlcnMvbWVkaWEvcGxhdGZvcm0vcWNv bS9pcmlzL2lyaXNfdmlkYy5jICAgICAgIHwgIDMgKy0KIGRyaXZlcnMvbWVkaWEvcGxhdGZvcm0v cWNvbS92ZW51cy92ZGVjLmMgICAgICAgICAgIHwgIDMgKy0KIGRyaXZlcnMvbWVkaWEvcGxhdGZv cm0vcWNvbS92ZW51cy92ZW5jLmMgICAgICAgICAgIHwgIDMgKy0KIGRyaXZlcnMvbWVkaWEvcGxh dGZvcm0vcmVuZXNhcy9yY2FyX2ZkcDEuYyAgICAgICAgIHwgIDMgKy0KIGRyaXZlcnMvbWVkaWEv cGxhdGZvcm0vcmVuZXNhcy9yY2FyX2pwdS5jICAgICAgICAgIHwgIDMgKy0KIGRyaXZlcnMvbWVk aWEvcGxhdGZvcm0vcmVuZXNhcy92c3AxL3ZzcDFfdmlkZW8uYyAgIHwgIDQgKy0KIGRyaXZlcnMv bWVkaWEvcGxhdGZvcm0vcm9ja2NoaXAvcmdhL3JnYS5jICAgICAgICAgIHwgIDMgKy0KIGRyaXZl cnMvbWVkaWEvcGxhdGZvcm0vcm9ja2NoaXAvcmt2ZGVjL3JrdmRlYy5jICAgIHwgIDMgKy0KIC4u Li9tZWRpYS9wbGF0Zm9ybS9zYW1zdW5nL2V4eW5vcy1nc2MvZ3NjLW0ybS5jICAgIHwgIDMgKy0K IC4uLi9tZWRpYS9wbGF0Zm9ybS9zYW1zdW5nL2V4eW5vczQtaXMvZmltYy1tMm0uYyAgIHwgIDMg Ky0KIGRyaXZlcnMvbWVkaWEvcGxhdGZvcm0vc2Ftc3VuZy9zNXAtZzJkL2cyZC5jICAgICAgIHwg IDMgKy0KIC4uLi9tZWRpYS9wbGF0Zm9ybS9zYW1zdW5nL3M1cC1qcGVnL2pwZWctY29yZS5jICAg IHwgIDMgKy0KIGRyaXZlcnMvbWVkaWEvcGxhdGZvcm0vc2Ftc3VuZy9zNXAtbWZjL3M1cF9tZmMu YyAgIHwgIDMgKy0KIGRyaXZlcnMvbWVkaWEvcGxhdGZvcm0vc3Qvc3RpL2JkaXNwL2JkaXNwLXY0 bDIuYyAgIHwgIDMgKy0KIGRyaXZlcnMvbWVkaWEvcGxhdGZvcm0vc3Qvc3RpL2RlbHRhL2RlbHRh LXY0bDIuYyAgIHwgIDMgKy0KIGRyaXZlcnMvbWVkaWEvcGxhdGZvcm0vc3Qvc3RpL2h2YS9odmEt djRsMi5jICAgICAgIHwgIDMgKy0KIGRyaXZlcnMvbWVkaWEvcGxhdGZvcm0vc3Qvc3RtMzIvZG1h MmQvZG1hMmQuYyAgICAgIHwgIDMgKy0KIGRyaXZlcnMvbWVkaWEvcGxhdGZvcm0vc3VueGkvc3Vu OGktZGkvc3VuOGktZGkuYyAgIHwgIDMgKy0KIC4uLi9wbGF0Zm9ybS9zdW54aS9zdW44aS1yb3Rh dGUvc3VuOGlfcm90YXRlLmMgICAgIHwgIDMgKy0KIGRyaXZlcnMvbWVkaWEvcGxhdGZvcm0vdGkv b21hcDNpc3AvaXNwdmlkZW8uYyAgICAgIHwgIDMgKy0KIGRyaXZlcnMvbWVkaWEvcGxhdGZvcm0v dGkvdnBlL3ZwZS5jICAgICAgICAgICAgICAgIHwgIDMgKy0KIGRyaXZlcnMvbWVkaWEvcGxhdGZv cm0vdmVyaXNpbGljb24vaGFudHJvX2Rydi5jICAgIHwgIDMgKy0KIGRyaXZlcnMvbWVkaWEvdGVz dC1kcml2ZXJzL3ZpY29kZWMvdmljb2RlYy1jb3JlLmMgIHwgIDMgKy0KIGRyaXZlcnMvbWVkaWEv dGVzdC1kcml2ZXJzL3ZpbTJtLmMgICAgICAgICAgICAgICAgIHwgIDMgKy0KIGRyaXZlcnMvbWVk aWEvdGVzdC1kcml2ZXJzL3Zpc2wvdmlzbC1jb3JlLmMgICAgICAgIHwgIDMgKy0KIGRyaXZlcnMv bWVkaWEvdXNiL2hkcHZyL2hkcHZyLXZpZGVvLmMgICAgICAgICAgICAgIHwgIDMgKy0KIGRyaXZl cnMvbWVkaWEvdXNiL3B2cnVzYjIvcHZydXNiMi12NGwyLmMgICAgICAgICAgIHwgIDMgKy0KIGRy aXZlcnMvbWVkaWEvdXNiL3V2Yy91dmNfdjRsMi5jICAgICAgICAgICAgICAgICAgIHwgIDMgKy0K IGRyaXZlcnMvbWVkaWEvdjRsMi1jb3JlL3Y0bDItZmguYyAgICAgICAgICAgICAgICAgIHwgIDcg KystLQogZHJpdmVycy9tZWRpYS92NGwyLWNvcmUvdjRsMi1zdWJkZXYuYyAgICAgICAgICAgICAg fCAgMyArLQogZHJpdmVycy9zdGFnaW5nL21lZGlhL2lteC9pbXgtbWVkaWEtY3NjLXNjYWxlci5j ICAgfCAgMyArLQogZHJpdmVycy9zdGFnaW5nL21lZGlhL21lc29uL3ZkZWMvdmRlYy5jICAgICAg ICAgICAgfCAgMyArLQogZHJpdmVycy9zdGFnaW5nL21lZGlhL3N1bnhpL2NlZHJ1cy9jZWRydXMu YyAgICAgICAgfCAgMyArLQogZHJpdmVycy9zdGFnaW5nL21vc3QvdmlkZW8vdmlkZW8uYyAgICAg ICAgICAgICAgICAgfCAgNCArLQogZHJpdmVycy91c2IvZ2FkZ2V0L2Z1bmN0aW9uL3V2Y192NGwy LmMgICAgICAgICAgICAgfCAgMyArLQogaW5jbHVkZS9tZWRpYS92NGwyLWZoLmggICAgICAgICAg ICAgICAgICAgICAgICAgICAgfCAgNSArKy0KIDYxIGZpbGVzIGNoYW5nZWQsIDkxIGluc2VydGlv bnMoKyksIDE0NiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL2RyaXZl ci1hcGkvbWVkaWEvdjRsMi1maC5yc3QgYi9Eb2N1bWVudGF0aW9uL2RyaXZlci1hcGkvbWVkaWEv djRsMi1maC5yc3QKaW5kZXggMmM4N2I3NDU3OGQ5N2ExNzFhZDA2ZDNlYjYwYTAyY2Q1OGI1NTdi MS4uYTczOTMwNjdmNWRiMjE4M2FhNjc3ZTE1ZWNlNTEyMjk2NDU1ZTIzYiAxMDA2NDQKLS0tIGEv RG9jdW1lbnRhdGlvbi9kcml2ZXItYXBpL21lZGlhL3Y0bDItZmgucnN0CisrKyBiL0RvY3VtZW50 YXRpb24vZHJpdmVyLWFwaS9tZWRpYS92NGwyLWZoLnJzdApAQCAtMTEsMjUgKzExLDIyIEBAIGRh dGEgdGhhdCBpcyB1c2VkIGJ5IHRoZSBWNEwyIGZyYW1ld29yay4KIAlzaW5jZSBpdCBpcyBhbHNv IHVzZWQgdG8gaW1wbGVtZW50IHByaW9yaXR5IGhhbmRsaW5nCiAJKDpyZWY6YFZJRElPQ19HX1BS SU9SSVRZYCkuCiAKLVRoZSB1c2VycyBvZiA6Yzp0eXBlOmB2NGwyX2ZoYCAoaW4gdGhlIFY0TDIg ZnJhbWV3b3JrLCBub3QgdGhlIGRyaXZlcikga25vdwotd2hldGhlciBhIGRyaXZlciB1c2VzIDpj OnR5cGU6YHY0bDJfZmhgIGFzIGl0cyBgYGZpbGUtPnByaXZhdGVfZGF0YWBgIHBvaW50ZXIKLWJ5 IHRlc3RpbmcgdGhlIGBgVjRMMl9GTF9VU0VTX1Y0TDJfRkhgYCBiaXQgaW4gOmM6dHlwZTpgdmlk ZW9fZGV2aWNlYC0+ZmxhZ3MuCi1UaGlzIGJpdCBpcyBzZXQgd2hlbmV2ZXIgOmM6ZnVuYzpgdjRs Ml9maF9pbml0YCBpcyBjYWxsZWQuCi0KLXN0cnVjdCB2NGwyX2ZoIGlzIGFsbG9jYXRlZCBhcyBh IHBhcnQgb2YgdGhlIGRyaXZlcidzIG93biBmaWxlIGhhbmRsZQotc3RydWN0dXJlIGFuZCBgYGZp bGUtPnByaXZhdGVfZGF0YWBgIGlzIHNldCB0byBpdCBpbiB0aGUgZHJpdmVyJ3MgYGBvcGVuKClg YAotZnVuY3Rpb24gYnkgdGhlIGRyaXZlci4gVGhlIDpjOnR5cGU6YHY0bDJfZmhgIGZpbGUgaGFu ZGxlIGNhbiBiZSByZXRyaWV2ZWQKLWZyb20gdGhlIDpjOnR5cGU6YGZpbGVgIHVzaW5nIDpjOmZ1 bmM6YGZpbGVfdG9fdjRsMl9maGAuIERyaXZlcnMgbXVzdCBub3QKLWFjY2VzcyBgYGZpbGUtPnBy aXZhdGVfZGF0YWBgIGRpcmVjdGx5LgotCi1JbiBtYW55IGNhc2VzIHRoZSBzdHJ1Y3QgdjRsMl9m aCB3aWxsIGJlIGVtYmVkZGVkIGluIGEgbGFyZ2VyCi1zdHJ1Y3R1cmUuIEluIHRoYXQgY2FzZSB5 b3Ugc2hvdWxkIGNhbGw6Ci0KLSMpIDpjOmZ1bmM6YHY0bDJfZmhfaW5pdGAgYW5kIDpjOmZ1bmM6 YHY0bDJfZmhfYWRkYCBpbiBgYG9wZW4oKWBgCi0jKSA6YzpmdW5jOmB2NGwyX2ZoX2RlbGAgYW5k IDpjOmZ1bmM6YHY0bDJfZmhfZXhpdGAgaW4gYGByZWxlYXNlKClgYAotCi1Ecml2ZXJzIGNhbiBl eHRyYWN0IHRoZWlyIG93biBmaWxlIGhhbmRsZSBzdHJ1Y3R1cmUgYnkgdXNpbmcgdGhlIGNvbnRh aW5lcl9vZgotbWFjcm8uCitzdHJ1Y3QgdjRsMl9maCBpcyBhbGxvY2F0ZWQgaW4gdGhlIGRyaXZl cidzIGBgb3BlbigpYGAgZmlsZSBvcGVyYXRpb24gaGFuZGxlci4KK0l0IGlzIHR5cGljYWxseSBl bWJlZGRlZCBpbiBhIGxhcmdlciBkcml2ZXItc3BlY2lmaWMgc3RydWN0dXJlLiBUaGUKKzpjOnR5 cGU6YHY0bDJfZmhgIG11c3QgYmUgaW5pdGlhbGl6ZWQgd2l0aCBhIGNhbGwgdG8gOmM6ZnVuYzpg djRsMl9maF9pbml0YCwKK2FuZCBhZGRlZCB0byB0aGUgdmlkZW8gZGV2aWNlIHdpdGggOmM6ZnVu YzpgdjRsMl9maF9hZGRgLiBUaGlzIGFzc29jaWF0ZXMgdGhlCis6Yzp0eXBlOmB2NGwyX2ZoYCB3 aXRoIHRoZSA6Yzp0eXBlOmBmaWxlYCBieSBzZXR0aW5nIGBgZmlsZS0+cHJpdmF0ZV9kYXRhYGAg dG8KK3BvaW50IHRvIHRoZSA6Yzp0eXBlOmB2NGwyX2ZoYC4KKworU2ltaWxhcmx5LCB0aGUgc3Ry dWN0IHY0bDJfZmggaXMgZnJlZWQgaW4gdGhlIGRyaXZlcidzIGBgcmVsZWFzZSgpYGAgZmlsZQor b3BlcmF0aW9uIGhhbmRsZXIuIEl0IG11c3QgYmUgcmVtb3ZlZCBmcm9tIHRoZSB2aWRlbyBkZXZp Y2Ugd2l0aAorOmM6ZnVuYzpgdjRsMl9maF9kZWxgIGFuZCBjbGVhbmVkIHVwIHdpdGggOmM6ZnVu YzpgdjRsMl9maF9leGl0YCBiZWZvcmUgYmVpbmcKK2ZyZWVkLgorCitEcml2ZXJzIG11c3Qgbm90 IGFjY2VzcyBgYGZpbGUtPnByaXZhdGVfZGF0YWBgIGRpcmVjdGx5LiBUaGV5IGNhbiByZXRyaWV2 ZSB0aGUKKzpjOnR5cGU6YHY0bDJfZmhgIGFzc29jaWF0ZWQgd2l0aCBhIDpjOnR5cGU6YGZpbGVg IGJ5IGNhbGxpbmcKKzpjOmZ1bmM6YGZpbGVfdG9fdjRsMl9maGAuIERyaXZlcnMgY2FuIGV4dHJh Y3QgdGhlaXIgb3duIGZpbGUgaGFuZGxlIHN0cnVjdHVyZQorYnkgdXNpbmcgdGhlIGNvbnRhaW5l cl9vZiBtYWNyby4KIAogRXhhbXBsZToKIApAQCAtNTgsOCArNTUsNyBAQCBFeGFtcGxlOgogCiAJ CS4uLgogCi0JCWZpbGUtPnByaXZhdGVfZGF0YSA9ICZteV9maC0+Zmg7Ci0JCXY0bDJfZmhfYWRk KCZteV9maC0+ZmgpOworCQl2NGwyX2ZoX2FkZCgmbXlfZmgtPmZoLCBmaWxlKTsKIAkJcmV0dXJu IDA7CiAJfQogCkBAIC04NCw3ICs4MCw3IEBAIEJlbG93IGlzIGEgc2hvcnQgZGVzY3JpcHRpb24g b2YgdGhlIDpjOnR5cGU6YHY0bDJfZmhgIGZ1bmN0aW9ucyB1c2VkOgogICA6Yzp0eXBlOmB2NGwy X2ZpbGVfb3BlcmF0aW9uc2AtPm9wZW4oKSBoYW5kbGVyLgogCiA6YzpmdW5jOmB2NGwyX2ZoX2Fk ZCA8djRsMl9maF9hZGQ+YAotKDpjOnR5cGU6YGZoIDx2NGwyX2ZoPmApCisoOmM6dHlwZTpgZmgg PHY0bDJfZmg+YCwgc3RydWN0IGZpbGUgXCpmaWxwKQogCiAtIEFkZCBhIDpjOnR5cGU6YHY0bDJf ZmhgIHRvIDpjOnR5cGU6YHZpZGVvX2RldmljZWAgZmlsZSBoYW5kbGUgbGlzdC4KICAgTXVzdCBi ZSBjYWxsZWQgb25jZSB0aGUgZmlsZSBoYW5kbGUgaXMgY29tcGxldGVseSBpbml0aWFsaXplZC4K QEAgLTEzOCw2ICsxMzQsMTIgQEAgYXNzb2NpYXRlZCBkZXZpY2Ugbm9kZToKIAogLSBTYW1lLCBi dXQgaXQgY2FsbHMgdjRsMl9maF9pc19zaW5ndWxhciB3aXRoIGZpbHAtPnByaXZhdGVfZGF0YS4K IAorLi4gbm90ZTo6CisgICAgICAgIFRoZSBWNEwyIGZyYW1ld29yayBrbm93cyB3aGV0aGVyIGEg ZHJpdmVyIHVzZXMgOmM6dHlwZTpgdjRsMl9maGAgYXMgaXRzCisgICAgICAgIGBgZmlsZS0+cHJp dmF0ZV9kYXRhYGAgcG9pbnRlciBieSB0ZXN0aW5nIHRoZSBgYFY0TDJfRkxfVVNFU19WNEwyX0ZI YGAKKyAgICAgICAgYml0IGluIDpjOnR5cGU6YHZpZGVvX2RldmljZWAtPmZsYWdzLiBUaGlzIGJp dCBpcyBzZXQgd2hlbmV2ZXIKKyAgICAgICAgOmM6ZnVuYzpgdjRsMl9maF9pbml0YCBpcyBjYWxs ZWQuCisKIAogVjRMMiBmaCBmdW5jdGlvbnMgYW5kIGRhdGEgc3RydWN0dXJlcwogXl5eXl5eXl5e Xl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXgpkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi90 cmFuc2xhdGlvbnMvemhfQ04vdmlkZW80bGludXgvdjRsMi1mcmFtZXdvcmsudHh0IGIvRG9jdW1l bnRhdGlvbi90cmFuc2xhdGlvbnMvemhfQ04vdmlkZW80bGludXgvdjRsMi1mcmFtZXdvcmsudHh0 CmluZGV4IGE5ZWI2MmZhMTUzMWM2OTExMGZmMTc5NDVmYTJmY2ZhNTk2ZjRkZjguLjJkMzhhZTE3 ZDk0MDRkOWQ0MGM2M2JjODMyOWYzY2M2OTk5YjdhMTEgMTAwNjQ0Ci0tLSBhL0RvY3VtZW50YXRp b24vdHJhbnNsYXRpb25zL3poX0NOL3ZpZGVvNGxpbnV4L3Y0bDItZnJhbWV3b3JrLnR4dAorKysg Yi9Eb2N1bWVudGF0aW9uL3RyYW5zbGF0aW9ucy96aF9DTi92aWRlbzRsaW51eC92NGwyLWZyYW1l d29yay50eHQKQEAgLTgxMiw4ICs4MTIsNyBAQCBpbnQgbXlfb3BlbihzdHJ1Y3QgZmlsZSAqZmls ZSkKIAogCS4uLgogCi0JZmlsZS0+cHJpdmF0ZV9kYXRhID0gJm15X2ZoLT5maDsKLQl2NGwyX2Zo X2FkZCgmbXlfZmgtPmZoKTsKKwl2NGwyX2ZoX2FkZCgmbXlfZmgtPmZoLCBmaWxlKTsKIAlyZXR1 cm4gMDsKIH0KIApAQCAtODM2LDcgKzgzNSw3IEBAIHZvaWQgdjRsMl9maF9pbml0KHN0cnVjdCB2 NGwyX2ZoICpmaCwgc3RydWN0IHZpZGVvX2RldmljZSAqdmRldikKICAg5Yid5aeL5YyW5paH5Lu2 5Y+l5p+E44CC6L+ZKuW/hemhuyrlnKjpqbHliqjnmoQgdjRsMl9maWxlX29wZXJhdGlvbnMtPm9w ZW4oKQogICDlh73mlbDkuK3miafooYzjgIIKIAotdm9pZCB2NGwyX2ZoX2FkZChzdHJ1Y3QgdjRs Ml9maCAqZmgpCit2b2lkIHY0bDJfZmhfYWRkKHN0cnVjdCB2NGwyX2ZoICpmaCwgc3RydWN0IGZp bGUgKmZpbHApCiAKICAg5re75Yqg5LiA5LiqIHY0bDJfZmgg5YiwIHZpZGVvX2RldmljZSDmlofk u7blj6Xmn4TliJfooajjgILkuIDml6bmlofku7blj6Xmn4QKICAg5Yid5aeL5YyW5a6M5oiQ5bCx 5b+F6aG76LCD55So44CCCmRpZmYgLS1naXQgYS9kcml2ZXJzL21lZGlhL3BjaS9jeDE4L2N4MTgt ZmlsZW9wcy5jIGIvZHJpdmVycy9tZWRpYS9wY2kvY3gxOC9jeDE4LWZpbGVvcHMuYwppbmRleCA4 OWUzOGIzMDM2MzA5YWYwNzQ3MzYyYmFmYWQ1MDI0NDEzYzJjNWJkLi5mOTBiNTQ3ZjVkNjc2MzA4 ZWQ1Yzc5NTZhOGRhMDJlMjA4Yjk0NDZlIDEwMDY0NAotLS0gYS9kcml2ZXJzL21lZGlhL3BjaS9j eDE4L2N4MTgtZmlsZW9wcy5jCisrKyBiL2RyaXZlcnMvbWVkaWEvcGNpL2N4MTgvY3gxOC1maWxl b3BzLmMKQEAgLTc0Myw4ICs3NDMsNyBAQCBzdGF0aWMgaW50IGN4MThfc2VyaWFsaXplZF9vcGVu KHN0cnVjdCBjeDE4X3N0cmVhbSAqcywgc3RydWN0IGZpbGUgKmZpbHApCiAJaXRlbS0+dHlwZSA9 IHMtPnR5cGU7CiAKIAlpdGVtLT5vcGVuX2lkID0gY3gtPm9wZW5faWQrKzsKLQlmaWxwLT5wcml2 YXRlX2RhdGEgPSAmaXRlbS0+Zmg7Ci0JdjRsMl9maF9hZGQoJml0ZW0tPmZoKTsKKwl2NGwyX2Zo X2FkZCgmaXRlbS0+ZmgsIGZpbHApOwogCiAJaWYgKGl0ZW0tPnR5cGUgPT0gQ1gxOF9FTkNfU1RS RUFNX1RZUEVfUkFEICYmCiAJCQl2NGwyX2ZoX2lzX3Npbmd1bGFyX2ZpbGUoZmlscCkpIHsKZGlm ZiAtLWdpdCBhL2RyaXZlcnMvbWVkaWEvcGNpL2l2dHYvaXZ0di1maWxlb3BzLmMgYi9kcml2ZXJz L21lZGlhL3BjaS9pdnR2L2l2dHYtZmlsZW9wcy5jCmluZGV4IDY3OTY0YTNjMzgyYzY2MjdhN2Iz Y2U2MzgwYTJkYTk3ZGNjNDdjM2QuLmFhNWY1ZjE2NDI3YzQ4MTIzY2QzMTQ5MzJhN2Q4YmM0OGYw N2MwMzEgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvbWVkaWEvcGNpL2l2dHYvaXZ0di1maWxlb3BzLmMK KysrIGIvZHJpdmVycy9tZWRpYS9wY2kvaXZ0di9pdnR2LWZpbGVvcHMuYwpAQCAtOTk4LDkgKzk5 OCw3IEBAIHN0YXRpYyBpbnQgaXZ0dl9vcGVuKHN0cnVjdCBmaWxlICpmaWxwKQogCXY0bDJfZmhf aW5pdCgmaXRlbS0+ZmgsICZzLT52ZGV2KTsKIAlpdGVtLT5pdHYgPSBpdHY7CiAJaXRlbS0+dHlw ZSA9IHMtPnR5cGU7Ci0KLQlmaWxwLT5wcml2YXRlX2RhdGEgPSAmaXRlbS0+Zmg7Ci0JdjRsMl9m aF9hZGQoJml0ZW0tPmZoKTsKKwl2NGwyX2ZoX2FkZCgmaXRlbS0+ZmgsIGZpbHApOwogCiAJaWYg KGl0ZW0tPnR5cGUgPT0gSVZUVl9FTkNfU1RSRUFNX1RZUEVfUkFEICYmCiAJCQl2NGwyX2ZoX2lz X3Npbmd1bGFyX2ZpbGUoZmlscCkpIHsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvbWVkaWEvcGNpL3Nh YTcxNjQvc2FhNzE2NC1lbmNvZGVyLmMgYi9kcml2ZXJzL21lZGlhL3BjaS9zYWE3MTY0L3NhYTcx NjQtZW5jb2Rlci5jCmluZGV4IDI5NmY1MGI2YjhkMzhlMGFiNjE3ZjA5OTBkOGY2OTdiYTk2YjAw MTYuLmU2ZTM1M2EyNTFjZjU0ODUyNWM0NGU4NzY5NWY3ZDQ1YmRlMzAyYTYgMTAwNjQ0Ci0tLSBh L2RyaXZlcnMvbWVkaWEvcGNpL3NhYTcxNjQvc2FhNzE2NC1lbmNvZGVyLmMKKysrIGIvZHJpdmVy cy9tZWRpYS9wY2kvc2FhNzE2NC9zYWE3MTY0LWVuY29kZXIuYwpAQCAtNzI1LDggKzcyNSw3IEBA IHN0YXRpYyBpbnQgZm9wc19vcGVuKHN0cnVjdCBmaWxlICpmaWxlKQogCiAJZmgtPnBvcnQgPSBw b3J0OwogCXY0bDJfZmhfaW5pdCgmZmgtPmZoLCB2aWRlb19kZXZkYXRhKGZpbGUpKTsKLQl2NGwy X2ZoX2FkZCgmZmgtPmZoKTsKLQlmaWxlLT5wcml2YXRlX2RhdGEgPSAmZmgtPmZoOworCXY0bDJf ZmhfYWRkKCZmaC0+ZmgsIGZpbGUpOwogCiAJcmV0dXJuIDA7CiB9CmRpZmYgLS1naXQgYS9kcml2 ZXJzL21lZGlhL3BjaS9zYWE3MTY0L3NhYTcxNjQtdmJpLmMgYi9kcml2ZXJzL21lZGlhL3BjaS9z YWE3MTY0L3NhYTcxNjQtdmJpLmMKaW5kZXggYTdlMzk4ZjMwNDcyNWM3ZmE1YWE0Y2YxZWRmMGRl YjBkZjA1OTY0MS4uMTgxNDQyZmNiNDNiMDhjZDk2ZjI5YzIzNTdiY2ZhZGQzZGRjZWRiNCAxMDA2 NDQKLS0tIGEvZHJpdmVycy9tZWRpYS9wY2kvc2FhNzE2NC9zYWE3MTY0LXZiaS5jCisrKyBiL2Ry aXZlcnMvbWVkaWEvcGNpL3NhYTcxNjQvc2FhNzE2NC12YmkuYwpAQCAtNDI4LDggKzQyOCw3IEBA IHN0YXRpYyBpbnQgZm9wc19vcGVuKHN0cnVjdCBmaWxlICpmaWxlKQogCiAJZmgtPnBvcnQgPSBw b3J0OwogCXY0bDJfZmhfaW5pdCgmZmgtPmZoLCB2aWRlb19kZXZkYXRhKGZpbGUpKTsKLQl2NGwy X2ZoX2FkZCgmZmgtPmZoKTsKLQlmaWxlLT5wcml2YXRlX2RhdGEgPSAmZmgtPmZoOworCXY0bDJf ZmhfYWRkKCZmaC0+ZmgsIGZpbGUpOwogCiAJcmV0dXJuIDA7CiB9CmRpZmYgLS1naXQgYS9kcml2 ZXJzL21lZGlhL3BsYXRmb3JtL2FsbGVncm8tZHZ0L2FsbGVncm8tY29yZS5jIGIvZHJpdmVycy9t ZWRpYS9wbGF0Zm9ybS9hbGxlZ3JvLWR2dC9hbGxlZ3JvLWNvcmUuYwppbmRleCA3NDk3N2YzYWU0 ODQ0MDIyYzA0ZGU4NzdmMzFiNGZjNmFhYWMwNzQ5Li44YzMwZjNjZDRmYzU0NTEzM2Y2OTc5NzNi MGYwMDJlYTg4OGEzYTRhIDEwMDY0NAotLS0gYS9kcml2ZXJzL21lZGlhL3BsYXRmb3JtL2FsbGVn cm8tZHZ0L2FsbGVncm8tY29yZS5jCisrKyBiL2RyaXZlcnMvbWVkaWEvcGxhdGZvcm0vYWxsZWdy by1kdnQvYWxsZWdyby1jb3JlLmMKQEAgLTMyMTksOCArMzIxOSw3IEBAIHN0YXRpYyBpbnQgYWxs ZWdyb19vcGVuKHN0cnVjdCBmaWxlICpmaWxlKQogCX0KIAogCWxpc3RfYWRkKCZjaGFubmVsLT5s aXN0LCAmZGV2LT5jaGFubmVscyk7Ci0JZmlsZS0+cHJpdmF0ZV9kYXRhID0gJmNoYW5uZWwtPmZo OwotCXY0bDJfZmhfYWRkKCZjaGFubmVsLT5maCk7CisJdjRsMl9maF9hZGQoJmNoYW5uZWwtPmZo LCBmaWxlKTsKIAogCWFsbGVncm9fY2hhbm5lbF9hZGp1c3QoY2hhbm5lbCk7CiAKZGlmZiAtLWdp dCBhL2RyaXZlcnMvbWVkaWEvcGxhdGZvcm0vYW1sb2dpYy9tZXNvbi1nZTJkL2dlMmQuYyBiL2Ry aXZlcnMvbWVkaWEvcGxhdGZvcm0vYW1sb2dpYy9tZXNvbi1nZTJkL2dlMmQuYwppbmRleCBjN2Rm MjlhMmQ4MjAxMmI3ZmMyOTBlZGYzZjYyOWEwYzNlZDdiY2M4Li5kMzY4OTFiNTQ2YmNhNDE3ZThi OThjNWUwNDU4ZWJiMTVlMjRjMjEzIDEwMDY0NAotLS0gYS9kcml2ZXJzL21lZGlhL3BsYXRmb3Jt L2FtbG9naWMvbWVzb24tZ2UyZC9nZTJkLmMKKysrIGIvZHJpdmVycy9tZWRpYS9wbGF0Zm9ybS9h bWxvZ2ljL21lc29uLWdlMmQvZ2UyZC5jCkBAIC04NjAsOCArODYwLDcgQEAgc3RhdGljIGludCBn ZTJkX29wZW4oc3RydWN0IGZpbGUgKmZpbGUpCiAJCXJldHVybiByZXQ7CiAJfQogCXY0bDJfZmhf aW5pdCgmY3R4LT5maCwgdmlkZW9fZGV2ZGF0YShmaWxlKSk7Ci0JZmlsZS0+cHJpdmF0ZV9kYXRh ID0gJmN0eC0+Zmg7Ci0JdjRsMl9maF9hZGQoJmN0eC0+ZmgpOworCXY0bDJfZmhfYWRkKCZjdHgt PmZoLCBmaWxlKTsKIAogCWdlMmRfc2V0dXBfY3RybHMoY3R4KTsKIApkaWZmIC0tZ2l0IGEvZHJp dmVycy9tZWRpYS9wbGF0Zm9ybS9hbXBoaW9uL3ZwdV92NGwyLmMgYi9kcml2ZXJzL21lZGlhL3Bs YXRmb3JtL2FtcGhpb24vdnB1X3Y0bDIuYwppbmRleCA1N2NhNjI2MmJiMDRiMzU2YTg1ZTIxN2Vm NTFjZmIxM2NiOWEwYTM2Li5lMTNiZmUwOWFmMWJmMDkyNmJmNjAwNWI4M2E4YWFlN2UzNGEyMTIy IDEwMDY0NAotLS0gYS9kcml2ZXJzL21lZGlhL3BsYXRmb3JtL2FtcGhpb24vdnB1X3Y0bDIuYwor KysgYi9kcml2ZXJzL21lZGlhL3BsYXRmb3JtL2FtcGhpb24vdnB1X3Y0bDIuYwpAQCAtNzYwLDcg Kzc2MCw3IEBAIGludCB2cHVfdjRsMl9vcGVuKHN0cnVjdCBmaWxlICpmaWxlLCBzdHJ1Y3QgdnB1 X2luc3QgKmluc3QpCiAJaW5zdC0+bWluX2J1ZmZlcl9jYXAgPSAyOwogCWluc3QtPm1pbl9idWZm ZXJfb3V0ID0gMjsKIAl2NGwyX2ZoX2luaXQoJmluc3QtPmZoLCBmdW5jLT52ZmQpOwotCXY0bDJf ZmhfYWRkKCZpbnN0LT5maCk7CisJdjRsMl9maF9hZGQoJmluc3QtPmZoLCBmaWxlKTsKIAogCXJl dCA9IGNhbGxfdm9wKGluc3QsIGN0cmxfaW5pdCk7CiAJaWYgKHJldCkKQEAgLTc3NCw3ICs3NzQs NiBAQCBpbnQgdnB1X3Y0bDJfb3BlbihzdHJ1Y3QgZmlsZSAqZmlsZSwgc3RydWN0IHZwdV9pbnN0 ICppbnN0KQogCX0KIAogCWluc3QtPmZoLmN0cmxfaGFuZGxlciA9ICZpbnN0LT5jdHJsX2hhbmRs ZXI7Ci0JZmlsZS0+cHJpdmF0ZV9kYXRhID0gJmluc3QtPmZoOwogCWluc3QtPnN0YXRlID0gVlBV X0NPREVDX1NUQVRFX0RFSU5JVDsKIAlpbnN0LT53b3JrcXVldWUgPSBhbGxvY19vcmRlcmVkX3dv cmtxdWV1ZSgidnB1X2luc3QiLCBXUV9NRU1fUkVDTEFJTSk7CiAJaWYgKGluc3QtPndvcmtxdWV1 ZSkgewpkaWZmIC0tZ2l0IGEvZHJpdmVycy9tZWRpYS9wbGF0Zm9ybS9jaGlwcy1tZWRpYS9jb2Rh L2NvZGEtY29tbW9uLmMgYi9kcml2ZXJzL21lZGlhL3BsYXRmb3JtL2NoaXBzLW1lZGlhL2NvZGEv Y29kYS1jb21tb24uYwppbmRleCA5MmZiMjRjYWNlOGVmNzVlNzBlYjJhYWU5NmJjMTY5YTdjZjk3 NTYzLi45ZDhhMWM5YmVhNmU5ZjRkOWZjMmMyYWUxNjVkNTg3ZTNiM2I5NjUwIDEwMDY0NAotLS0g YS9kcml2ZXJzL21lZGlhL3BsYXRmb3JtL2NoaXBzLW1lZGlhL2NvZGEvY29kYS1jb21tb24uYwor KysgYi9kcml2ZXJzL21lZGlhL3BsYXRmb3JtL2NoaXBzLW1lZGlhL2NvZGEvY29kYS1jb21tb24u YwpAQCAtMjY0Miw4ICsyNjQyLDcgQEAgc3RhdGljIGludCBjb2RhX29wZW4oc3RydWN0IGZpbGUg KmZpbGUpCiAJaWYgKGN0eC0+b3BzLT5zZXFfZW5kX3dvcmspCiAJCUlOSVRfV09SSygmY3R4LT5z ZXFfZW5kX3dvcmssIGN0eC0+b3BzLT5zZXFfZW5kX3dvcmspOwogCXY0bDJfZmhfaW5pdCgmY3R4 LT5maCwgdmlkZW9fZGV2ZGF0YShmaWxlKSk7Ci0JZmlsZS0+cHJpdmF0ZV9kYXRhID0gJmN0eC0+ Zmg7Ci0JdjRsMl9maF9hZGQoJmN0eC0+ZmgpOworCXY0bDJfZmhfYWRkKCZjdHgtPmZoLCBmaWxl KTsKIAljdHgtPmRldiA9IGRldjsKIAljdHgtPmlkeCA9IGlkeDsKIApkaWZmIC0tZ2l0IGEvZHJp dmVycy9tZWRpYS9wbGF0Zm9ybS9jaGlwcy1tZWRpYS93YXZlNS93YXZlNS12cHUtZGVjLmMgYi9k cml2ZXJzL21lZGlhL3BsYXRmb3JtL2NoaXBzLW1lZGlhL3dhdmU1L3dhdmU1LXZwdS1kZWMuYwpp bmRleCBmMzE4OGQ3MjBlZDNlMTgzZjM0MDA4MTZhOWM5MzkwMTQyMTM3MTFkLi44OGViOTMzYTUx NDQ4Nzg4MzczNzc1ZTQyM2FlMmFjNTA0MmNmOGI2IDEwMDY0NAotLS0gYS9kcml2ZXJzL21lZGlh L3BsYXRmb3JtL2NoaXBzLW1lZGlhL3dhdmU1L3dhdmU1LXZwdS1kZWMuYworKysgYi9kcml2ZXJz L21lZGlhL3BsYXRmb3JtL2NoaXBzLW1lZGlhL3dhdmU1L3dhdmU1LXZwdS1kZWMuYwpAQCAtMTc2 MSw4ICsxNzYxLDcgQEAgc3RhdGljIGludCB3YXZlNV92cHVfb3Blbl9kZWMoc3RydWN0IGZpbGUg KmZpbHApCiAJCXJldHVybiAtRU5PTUVNOwogCiAJdjRsMl9maF9pbml0KCZpbnN0LT52NGwyX2Zo LCB2ZGV2KTsKLQlmaWxwLT5wcml2YXRlX2RhdGEgPSAmaW5zdC0+djRsMl9maDsKLQl2NGwyX2Zo X2FkZCgmaW5zdC0+djRsMl9maCk7CisJdjRsMl9maF9hZGQoJmluc3QtPnY0bDJfZmgsIGZpbHAp OwogCiAJSU5JVF9MSVNUX0hFQUQoJmluc3QtPmxpc3QpOwogCmRpZmYgLS1naXQgYS9kcml2ZXJz L21lZGlhL3BsYXRmb3JtL2NoaXBzLW1lZGlhL3dhdmU1L3dhdmU1LXZwdS1lbmMuYyBiL2RyaXZl cnMvbWVkaWEvcGxhdGZvcm0vY2hpcHMtbWVkaWEvd2F2ZTUvd2F2ZTUtdnB1LWVuYy5jCmluZGV4 IGI2OWExMjA2ZmExMmMyZmY1ZjNhMzJkMjY5YjhmZDNiODBhNTk3YWEuLjMyMmMxNDk4NzU4YTBh NTY5ZWI5NGNhYjBkNjYxMmNlMThjZDRjN2IgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvbWVkaWEvcGxh dGZvcm0vY2hpcHMtbWVkaWEvd2F2ZTUvd2F2ZTUtdnB1LWVuYy5jCisrKyBiL2RyaXZlcnMvbWVk aWEvcGxhdGZvcm0vY2hpcHMtbWVkaWEvd2F2ZTUvd2F2ZTUtdnB1LWVuYy5jCkBAIC0xNTg3LDgg KzE1ODcsNyBAQCBzdGF0aWMgaW50IHdhdmU1X3ZwdV9vcGVuX2VuYyhzdHJ1Y3QgZmlsZSAqZmls cCkKIAkJcmV0dXJuIC1FTk9NRU07CiAKIAl2NGwyX2ZoX2luaXQoJmluc3QtPnY0bDJfZmgsIHZk ZXYpOwotCWZpbHAtPnByaXZhdGVfZGF0YSA9ICZpbnN0LT52NGwyX2ZoOwotCXY0bDJfZmhfYWRk KCZpbnN0LT52NGwyX2ZoKTsKKwl2NGwyX2ZoX2FkZCgmaW5zdC0+djRsMl9maCwgZmlscCk7CiAK IAlJTklUX0xJU1RfSEVBRCgmaW5zdC0+bGlzdCk7CiAKZGlmZiAtLWdpdCBhL2RyaXZlcnMvbWVk aWEvcGxhdGZvcm0vaW1hZ2luYXRpb24vZTUwMTAtanBlZy1lbmMuYyBiL2RyaXZlcnMvbWVkaWEv cGxhdGZvcm0vaW1hZ2luYXRpb24vZTUwMTAtanBlZy1lbmMuYwppbmRleCAyOTU0NjEzMjU4NjJm YjJiY2FjNzU1Y2Y4MTU5NTU5NTViMzdlNmYwLi4xZGEwMGZmNGIxZTM2YTY0ODZjZTU0ZTAyMTM5 ZjY0ODlkNmFjZjIyIDEwMDY0NAotLS0gYS9kcml2ZXJzL21lZGlhL3BsYXRmb3JtL2ltYWdpbmF0 aW9uL2U1MDEwLWpwZWctZW5jLmMKKysrIGIvZHJpdmVycy9tZWRpYS9wbGF0Zm9ybS9pbWFnaW5h dGlvbi9lNTAxMC1qcGVnLWVuYy5jCkBAIC03NDIsOCArNzQyLDcgQEAgc3RhdGljIGludCBlNTAx MF9vcGVuKHN0cnVjdCBmaWxlICpmaWxlKQogCX0KIAogCXY0bDJfZmhfaW5pdCgmY3R4LT5maCwg dmRldik7Ci0JZmlsZS0+cHJpdmF0ZV9kYXRhID0gJmN0eC0+Zmg7Ci0JdjRsMl9maF9hZGQoJmN0 eC0+ZmgpOworCXY0bDJfZmhfYWRkKCZjdHgtPmZoLCBmaWxlKTsKIAogCWN0eC0+ZTUwMTAgPSBl NTAxMDsKIAljdHgtPmZoLm0ybV9jdHggPSB2NGwyX20ybV9jdHhfaW5pdChlNTAxMC0+bTJtX2Rl diwgY3R4LCBxdWV1ZV9pbml0KTsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvbWVkaWEvcGxhdGZvcm0v bTJtLWRlaW50ZXJsYWNlLmMgYi9kcml2ZXJzL21lZGlhL3BsYXRmb3JtL20ybS1kZWludGVybGFj ZS5jCmluZGV4IDE4MTJjMDc4MzdhZDMzZTEwZGI5MDA1ZmQyMDA5YjRlYTJhNzk5ZDAuLmEzNDNk ZmZkMTlmMDNjNjg1NTc0MTVhZmFlMmE4ZGI0YjM2MTRkMmUgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMv bWVkaWEvcGxhdGZvcm0vbTJtLWRlaW50ZXJsYWNlLmMKKysrIGIvZHJpdmVycy9tZWRpYS9wbGF0 Zm9ybS9tMm0tZGVpbnRlcmxhY2UuYwpAQCAtODQ3LDcgKzg0Nyw2IEBAIHN0YXRpYyBpbnQgZGVp bnRlcmxhY2Vfb3BlbihzdHJ1Y3QgZmlsZSAqZmlsZSkKIAkJcmV0dXJuIC1FTk9NRU07CiAKIAl2 NGwyX2ZoX2luaXQoJmN0eC0+ZmgsIHZpZGVvX2RldmRhdGEoZmlsZSkpOwotCWZpbGUtPnByaXZh dGVfZGF0YSA9ICZjdHgtPmZoOwogCWN0eC0+ZGV2ID0gcGNkZXY7CiAKIAljdHgtPmZoLm0ybV9j dHggPSB2NGwyX20ybV9jdHhfaW5pdChwY2Rldi0+bTJtX2RldiwgY3R4LCAmcXVldWVfaW5pdCk7 CkBAIC04NjYsNyArODY1LDcgQEAgc3RhdGljIGludCBkZWludGVybGFjZV9vcGVuKHN0cnVjdCBm aWxlICpmaWxlKQogCX0KIAogCWN0eC0+Y29sb3JzcGFjZSA9IFY0TDJfQ09MT1JTUEFDRV9SRUM3 MDk7Ci0JdjRsMl9maF9hZGQoJmN0eC0+ZmgpOworCXY0bDJfZmhfYWRkKCZjdHgtPmZoLCBmaWxl KTsKIAogCWRwcmludGsocGNkZXYsICJDcmVhdGVkIGluc3RhbmNlICVwLCBtMm1fY3R4OiAlcFxu IiwKIAkJY3R4LCBjdHgtPmZoLm0ybV9jdHgpOwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9tZWRpYS9w bGF0Zm9ybS9tZWRpYXRlay9qcGVnL210a19qcGVnX2NvcmUuYyBiL2RyaXZlcnMvbWVkaWEvcGxh dGZvcm0vbWVkaWF0ZWsvanBlZy9tdGtfanBlZ19jb3JlLmMKaW5kZXggYmY3Y2FlMTk5M2Q1ZTIx OTc1YmM5ZGZmY2JjZmIzZmUxODQzZDU3NS4uNGJmNTJlOWQ5NjA0MzExOTRjMDU4NzA3NDNjYzYy OGU0ZTQyOTNlMiAxMDA2NDQKLS0tIGEvZHJpdmVycy9tZWRpYS9wbGF0Zm9ybS9tZWRpYXRlay9q cGVnL210a19qcGVnX2NvcmUuYworKysgYi9kcml2ZXJzL21lZGlhL3BsYXRmb3JtL21lZGlhdGVr L2pwZWcvbXRrX2pwZWdfY29yZS5jCkBAIC0xMTc2LDggKzExNzYsNyBAQCBzdGF0aWMgaW50IG10 a19qcGVnX29wZW4oc3RydWN0IGZpbGUgKmZpbGUpCiAJSU5JVF9MSVNUX0hFQUQoJmN0eC0+ZHN0 X2RvbmVfcXVldWUpOwogCXNwaW5fbG9ja19pbml0KCZjdHgtPmRvbmVfcXVldWVfbG9jayk7CiAJ djRsMl9maF9pbml0KCZjdHgtPmZoLCB2ZmQpOwotCWZpbGUtPnByaXZhdGVfZGF0YSA9ICZjdHgt PmZoOwotCXY0bDJfZmhfYWRkKCZjdHgtPmZoKTsKKwl2NGwyX2ZoX2FkZCgmY3R4LT5maCwgZmls ZSk7CiAKIAljdHgtPmpwZWcgPSBqcGVnOwogCWN0eC0+ZmgubTJtX2N0eCA9IHY0bDJfbTJtX2N0 eF9pbml0KGpwZWctPm0ybV9kZXYsIGN0eCwKZGlmZiAtLWdpdCBhL2RyaXZlcnMvbWVkaWEvcGxh dGZvcm0vbWVkaWF0ZWsvbWRwL210a19tZHBfbTJtLmMgYi9kcml2ZXJzL21lZGlhL3BsYXRmb3Jt L21lZGlhdGVrL21kcC9tdGtfbWRwX20ybS5jCmluZGV4IGUzZTAxYTlhMGY3OGNiMmZlNjY1MTMy YmQxYmRlNjZhZmE2M2JkZGIuLjI1ZWZkNzZmMjkwZTRmMjlhNjBkMzI2ZTkyYTViY2IwNWMyYmJk MWUgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvbWVkaWEvcGxhdGZvcm0vbWVkaWF0ZWsvbWRwL210a19t ZHBfbTJtLmMKKysrIGIvZHJpdmVycy9tZWRpYS9wbGF0Zm9ybS9tZWRpYXRlay9tZHAvbXRrX21k cF9tMm0uYwpAQCAtMTA3MCwxNCArMTA3MCwxMyBAQCBzdGF0aWMgaW50IG10a19tZHBfbTJtX29w ZW4oc3RydWN0IGZpbGUgKmZpbGUpCiAJbXV0ZXhfaW5pdCgmY3R4LT5zbG9jayk7CiAJY3R4LT5p ZCA9IG1kcC0+aWRfY291bnRlcisrOwogCXY0bDJfZmhfaW5pdCgmY3R4LT5maCwgdmZkKTsKLQlm aWxlLT5wcml2YXRlX2RhdGEgPSAmY3R4LT5maDsKIAlyZXQgPSBtdGtfbWRwX2N0cmxzX2NyZWF0 ZShjdHgpOwogCWlmIChyZXQpCiAJCWdvdG8gZXJyb3JfY3RybHM7CiAKIAkvKiBVc2Ugc2VwYXJh dGUgY29udHJvbCBoYW5kbGVyIHBlciBmaWxlIGhhbmRsZSAqLwogCWN0eC0+ZmguY3RybF9oYW5k bGVyID0gJmN0eC0+Y3RybF9oYW5kbGVyOwotCXY0bDJfZmhfYWRkKCZjdHgtPmZoKTsKKwl2NGwy X2ZoX2FkZCgmY3R4LT5maCwgZmlsZSk7CiAJSU5JVF9MSVNUX0hFQUQoJmN0eC0+bGlzdCk7CiAK IAljdHgtPm1kcF9kZXYgPSBtZHA7CmRpZmYgLS1naXQgYS9kcml2ZXJzL21lZGlhL3BsYXRmb3Jt L21lZGlhdGVrL21kcDMvbXRrLW1kcDMtbTJtLmMgYi9kcml2ZXJzL21lZGlhL3BsYXRmb3JtL21l ZGlhdGVrL21kcDMvbXRrLW1kcDMtbTJtLmMKaW5kZXggOGViYWIxNGM1MzViZmUwMjNkNzIwOTY0 OTY1ZDk3Zjc1OGU1ZWI2My4uMThlNTQyYWQzMmU0ZmQwZDBkMjYyNjcwYjY0NDBmYjJlMzY2MWY3 ZiAxMDA2NDQKLS0tIGEvZHJpdmVycy9tZWRpYS9wbGF0Zm9ybS9tZWRpYXRlay9tZHAzL210ay1t ZHAzLW0ybS5jCisrKyBiL2RyaXZlcnMvbWVkaWEvcGxhdGZvcm0vbWVkaWF0ZWsvbWRwMy9tdGst bWRwMy1tMm0uYwpAQCAtNTkwLDE0ICs1OTAsMTMgQEAgc3RhdGljIGludCBtZHBfbTJtX29wZW4o c3RydWN0IGZpbGUgKmZpbGUpCiAJY3R4LT5tZHBfZGV2ID0gbWRwOwogCiAJdjRsMl9maF9pbml0 KCZjdHgtPmZoLCB2ZGV2KTsKLQlmaWxlLT5wcml2YXRlX2RhdGEgPSAmY3R4LT5maDsKIAlyZXQg PSBtZHBfbTJtX2N0cmxzX2NyZWF0ZShjdHgpOwogCWlmIChyZXQpCiAJCWdvdG8gZXJyX2V4aXRf Zmg7CiAKIAkvKiBVc2Ugc2VwYXJhdGUgY29udHJvbCBoYW5kbGVyIHBlciBmaWxlIGhhbmRsZSAq LwogCWN0eC0+ZmguY3RybF9oYW5kbGVyID0gJmN0eC0+Y3RybF9oYW5kbGVyOwotCXY0bDJfZmhf YWRkKCZjdHgtPmZoKTsKKwl2NGwyX2ZoX2FkZCgmY3R4LT5maCwgZmlsZSk7CiAKIAltdXRleF9p bml0KCZjdHgtPmN0eF9sb2NrKTsKIAljdHgtPm0ybV9jdHggPSB2NGwyX20ybV9jdHhfaW5pdCht ZHAtPm0ybV9kZXYsIGN0eCwgbWRwX20ybV9xdWV1ZV9pbml0KTsKZGlmZiAtLWdpdCBhL2RyaXZl cnMvbWVkaWEvcGxhdGZvcm0vbWVkaWF0ZWsvdmNvZGVjL2RlY29kZXIvbXRrX3Zjb2RlY19kZWNf ZHJ2LmMgYi9kcml2ZXJzL21lZGlhL3BsYXRmb3JtL21lZGlhdGVrL3Zjb2RlYy9kZWNvZGVyL210 a192Y29kZWNfZGVjX2Rydi5jCmluZGV4IDE4ODAxODgzYzMxYTgwYjIxNzllYjBkOTI4MDE1MGVl YjRhYTM3NzAuLjk1MmE3N2MzODNiZGI4ZGJhOTRjNzQ5MTY2NzRlNzI5ZWU1YWJhMzUgMTAwNjQ0 Ci0tLSBhL2RyaXZlcnMvbWVkaWEvcGxhdGZvcm0vbWVkaWF0ZWsvdmNvZGVjL2RlY29kZXIvbXRr X3Zjb2RlY19kZWNfZHJ2LmMKKysrIGIvZHJpdmVycy9tZWRpYS9wbGF0Zm9ybS9tZWRpYXRlay92 Y29kZWMvZGVjb2Rlci9tdGtfdmNvZGVjX2RlY19kcnYuYwpAQCAtMjA2LDggKzIwNiw3IEBAIHN0 YXRpYyBpbnQgZm9wc192Y29kZWNfb3BlbihzdHJ1Y3QgZmlsZSAqZmlsZSkKIAltdXRleF9sb2Nr KCZkZXYtPmRldl9tdXRleCk7CiAJY3R4LT5pZCA9IGRldi0+aWRfY291bnRlcisrOwogCXY0bDJf ZmhfaW5pdCgmY3R4LT5maCwgdmlkZW9fZGV2ZGF0YShmaWxlKSk7Ci0JZmlsZS0+cHJpdmF0ZV9k YXRhID0gJmN0eC0+Zmg7Ci0JdjRsMl9maF9hZGQoJmN0eC0+ZmgpOworCXY0bDJfZmhfYWRkKCZj dHgtPmZoLCBmaWxlKTsKIAlJTklUX0xJU1RfSEVBRCgmY3R4LT5saXN0KTsKIAljdHgtPmRldiA9 IGRldjsKIAlpZiAoY3R4LT5kZXYtPnZkZWNfcGRhdGEtPmlzX3N1YmRldl9zdXBwb3J0ZWQpIHsK ZGlmZiAtLWdpdCBhL2RyaXZlcnMvbWVkaWEvcGxhdGZvcm0vbWVkaWF0ZWsvdmNvZGVjL2VuY29k ZXIvbXRrX3Zjb2RlY19lbmNfZHJ2LmMgYi9kcml2ZXJzL21lZGlhL3BsYXRmb3JtL21lZGlhdGVr L3Zjb2RlYy9lbmNvZGVyL210a192Y29kZWNfZW5jX2Rydi5jCmluZGV4IGUyNmE2YzNmZmEwY2Vl MTczODU1NzUyMTViNTViNTc1YjE0ZTU4ZjQuLjljYWNiNmNiY2YyODM1NzgyNmRiMmRmN2UxNWMz NTg4ZTdiNGQ0YzggMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvbWVkaWEvcGxhdGZvcm0vbWVkaWF0ZWsv dmNvZGVjL2VuY29kZXIvbXRrX3Zjb2RlY19lbmNfZHJ2LmMKKysrIGIvZHJpdmVycy9tZWRpYS9w bGF0Zm9ybS9tZWRpYXRlay92Y29kZWMvZW5jb2Rlci9tdGtfdmNvZGVjX2VuY19kcnYuYwpAQCAt MTI5LDggKzEyOSw3IEBAIHN0YXRpYyBpbnQgZm9wc192Y29kZWNfb3BlbihzdHJ1Y3QgZmlsZSAq ZmlsZSkKIAkgKi8KIAljdHgtPmlkID0gZGV2LT5pZF9jb3VudGVyKys7CiAJdjRsMl9maF9pbml0 KCZjdHgtPmZoLCB2aWRlb19kZXZkYXRhKGZpbGUpKTsKLQlmaWxlLT5wcml2YXRlX2RhdGEgPSAm Y3R4LT5maDsKLQl2NGwyX2ZoX2FkZCgmY3R4LT5maCk7CisJdjRsMl9maF9hZGQoJmN0eC0+Zmgs IGZpbGUpOwogCUlOSVRfTElTVF9IRUFEKCZjdHgtPmxpc3QpOwogCWN0eC0+ZGV2ID0gZGV2Owog CWluaXRfd2FpdHF1ZXVlX2hlYWQoJmN0eC0+cXVldWVbMF0pOwpkaWZmIC0tZ2l0IGEvZHJpdmVy cy9tZWRpYS9wbGF0Zm9ybS9udmlkaWEvdGVncmEtdmRlL3Y0bDIuYyBiL2RyaXZlcnMvbWVkaWEv cGxhdGZvcm0vbnZpZGlhL3RlZ3JhLXZkZS92NGwyLmMKaW5kZXggMzkzZGMzZjA3ZDVjNzhmZjVh YjBhZTdiNjM2ODkxNDg1OTU2NDQ1OC4uNjg4Yjc3NmIzMDEwN2RmNGVjMzY0MmE0YmMwZTg5Njc1 OWNjZjBmZSAxMDA2NDQKLS0tIGEvZHJpdmVycy9tZWRpYS9wbGF0Zm9ybS9udmlkaWEvdGVncmEt dmRlL3Y0bDIuYworKysgYi9kcml2ZXJzL21lZGlhL3BsYXRmb3JtL252aWRpYS90ZWdyYS12ZGUv djRsMi5jCkBAIC04MzIsOCArODMyLDcgQEAgc3RhdGljIGludCB0ZWdyYV9vcGVuKHN0cnVjdCBm aWxlICpmaWxlKQogCQlnb3RvIGZyZWVfY3RybHM7CiAJfQogCi0JZmlsZS0+cHJpdmF0ZV9kYXRh ID0gJmN0eC0+Zmg7Ci0JdjRsMl9maF9hZGQoJmN0eC0+ZmgpOworCXY0bDJfZmhfYWRkKCZjdHgt PmZoLCBmaWxlKTsKIAogCXRlZ3JhX3Jlc2V0X2NvZGVkX2ZtdChjdHgpOwogCXRlZ3JhX3RyeV9j b2RlZF9mbXQoZmlsZSwgJmN0eC0+ZmgsICZjdHgtPmNvZGVkX2ZtdCk7CmRpZmYgLS1naXQgYS9k cml2ZXJzL21lZGlhL3BsYXRmb3JtL254cC9kdzEwMC9kdzEwMC5jIGIvZHJpdmVycy9tZWRpYS9w bGF0Zm9ybS9ueHAvZHcxMDAvZHcxMDAuYwppbmRleCAyNDYwZjA5YTY4MTNhMzIwZjc2MzdiYzMz MmU2NDFiNzc0MWNlZDIxLi4yYmQzMDkxMGRkZjk4NDAxZGZjOWQ4ZjJlM2IxOWZlODY3MjMyMGUz IDEwMDY0NAotLS0gYS9kcml2ZXJzL21lZGlhL3BsYXRmb3JtL254cC9kdzEwMC9kdzEwMC5jCisr KyBiL2RyaXZlcnMvbWVkaWEvcGxhdGZvcm0vbnhwL2R3MTAwL2R3MTAwLmMKQEAgLTYwNyw3ICs2 MDcsNiBAQCBzdGF0aWMgaW50IGR3MTAwX29wZW4oc3RydWN0IGZpbGUgKmZpbGUpCiAKIAltdXRl eF9pbml0KCZjdHgtPnZxX211dGV4KTsKIAl2NGwyX2ZoX2luaXQoJmN0eC0+ZmgsIHZpZGVvX2Rl dmRhdGEoZmlsZSkpOwotCWZpbGUtPnByaXZhdGVfZGF0YSA9ICZjdHgtPmZoOwogCWN0eC0+ZHdf ZGV2ID0gZHdfZGV2OwogCiAJY3R4LT5xX2RhdGFbRFcxMDBfUVVFVUVfU1JDXS5mbXQgPSAmZm9y bWF0c1swXTsKQEAgLTY1MSw3ICs2NTAsNyBAQCBzdGF0aWMgaW50IGR3MTAwX29wZW4oc3RydWN0 IGZpbGUgKmZpbGUpCiAJCWdvdG8gZXJyOwogCX0KIAotCXY0bDJfZmhfYWRkKCZjdHgtPmZoKTsK Kwl2NGwyX2ZoX2FkZCgmY3R4LT5maCwgZmlsZSk7CiAKIAlyZXR1cm4gMDsKIApkaWZmIC0tZ2l0 IGEvZHJpdmVycy9tZWRpYS9wbGF0Zm9ybS9ueHAvaW14LWpwZWcvbXhjLWpwZWcuYyBiL2RyaXZl cnMvbWVkaWEvcGxhdGZvcm0vbnhwL2lteC1qcGVnL214Yy1qcGVnLmMKaW5kZXggYTE3YTAyMGVh NGM2OThiZmE1NzI1M2YwZjUzYTE3MjMwZDUyZGVhMy4uMTNlNjgxYTBlYzBhYmNiNDliMTQ0NTU3 NzNkYTNhYjJmNWRjMzcyYiAxMDA2NDQKLS0tIGEvZHJpdmVycy9tZWRpYS9wbGF0Zm9ybS9ueHAv aW14LWpwZWcvbXhjLWpwZWcuYworKysgYi9kcml2ZXJzL21lZGlhL3BsYXRmb3JtL254cC9pbXgt anBlZy9teGMtanBlZy5jCkBAIC0yMjA1LDggKzIyMDUsNyBAQCBzdGF0aWMgaW50IG14Y19qcGVn X29wZW4oc3RydWN0IGZpbGUgKmZpbGUpCiAJfQogCiAJdjRsMl9maF9pbml0KCZjdHgtPmZoLCBt eGNfdmZkKTsKLQlmaWxlLT5wcml2YXRlX2RhdGEgPSAmY3R4LT5maDsKLQl2NGwyX2ZoX2FkZCgm Y3R4LT5maCk7CisJdjRsMl9maF9hZGQoJmN0eC0+ZmgsIGZpbGUpOwogCiAJY3R4LT5teGNfanBl ZyA9IG14Y19qcGVnOwogCmRpZmYgLS1naXQgYS9kcml2ZXJzL21lZGlhL3BsYXRmb3JtL254cC9p bXgtcHhwLmMgYi9kcml2ZXJzL21lZGlhL3BsYXRmb3JtL254cC9pbXgtcHhwLmMKaW5kZXggODc5 YjE4MDNhMmIzOGM2NzQ4ZmE0NzQ4ZjI1NTA0NjY1ZjgxMDZiYi4uOTYwMjQwOWYzZWNlZjdlMmE3 N2E1OGY5YzMzNzY4MjNhNzJlYzU1MSAxMDA2NDQKLS0tIGEvZHJpdmVycy9tZWRpYS9wbGF0Zm9y bS9ueHAvaW14LXB4cC5jCisrKyBiL2RyaXZlcnMvbWVkaWEvcGxhdGZvcm0vbnhwL2lteC1weHAu YwpAQCAtMTY2MCw3ICsxNjYwLDYgQEAgc3RhdGljIGludCBweHBfb3BlbihzdHJ1Y3QgZmlsZSAq ZmlsZSkKIAl9CiAKIAl2NGwyX2ZoX2luaXQoJmN0eC0+ZmgsIHZpZGVvX2RldmRhdGEoZmlsZSkp OwotCWZpbGUtPnByaXZhdGVfZGF0YSA9ICZjdHgtPmZoOwogCWN0eC0+ZGV2ID0gZGV2OwogCWhk bCA9ICZjdHgtPmhkbDsKIAl2NGwyX2N0cmxfaGFuZGxlcl9pbml0KGhkbCwgNCk7CkBAIC0xNjk5 LDcgKzE2OTgsNyBAQCBzdGF0aWMgaW50IHB4cF9vcGVuKHN0cnVjdCBmaWxlICpmaWxlKQogCQln b3RvIG9wZW5fdW5sb2NrOwogCX0KIAotCXY0bDJfZmhfYWRkKCZjdHgtPmZoKTsKKwl2NGwyX2Zo X2FkZCgmY3R4LT5maCwgZmlsZSk7CiAJYXRvbWljX2luYygmZGV2LT5udW1faW5zdCk7CiAKIAlk cHJpbnRrKGRldiwgIkNyZWF0ZWQgaW5zdGFuY2U6ICVwLCBtMm1fY3R4OiAlcFxuIiwKZGlmZiAt LWdpdCBhL2RyaXZlcnMvbWVkaWEvcGxhdGZvcm0vbnhwL2lteDgtaXNpL2lteDgtaXNpLW0ybS5j IGIvZHJpdmVycy9tZWRpYS9wbGF0Zm9ybS9ueHAvaW14OC1pc2kvaW14OC1pc2ktbTJtLmMKaW5k ZXggOTIyNmU0MmI5NWZjOTFlZDU0OTBiZTE1OTlhNTM5ZjBmZGVlYjEyMy4uNDgwNjY5YTI1Nzhh YjJmNGQ2ZDUxMDQ2NThiYTU2ZWE3NzZhNjYzOSAxMDA2NDQKLS0tIGEvZHJpdmVycy9tZWRpYS9w bGF0Zm9ybS9ueHAvaW14OC1pc2kvaW14OC1pc2ktbTJtLmMKKysrIGIvZHJpdmVycy9tZWRpYS9w bGF0Zm9ybS9ueHAvaW14OC1pc2kvaW14OC1pc2ktbTJtLmMKQEAgLTY3Myw3ICs2NzMsNiBAQCBz dGF0aWMgaW50IG14Y19pc2lfbTJtX29wZW4oc3RydWN0IGZpbGUgKmZpbGUpCiAJbXV0ZXhfaW5p dCgmY3R4LT52YjJfbG9jayk7CiAKIAl2NGwyX2ZoX2luaXQoJmN0eC0+ZmgsIHZkZXYpOwotCWZp bGUtPnByaXZhdGVfZGF0YSA9ICZjdHgtPmZoOwogCiAJY3R4LT5maC5tMm1fY3R4ID0gdjRsMl9t Mm1fY3R4X2luaXQobTJtLT5tMm1fZGV2LCBjdHgsCiAJCQkJCSAgICAmbXhjX2lzaV9tMm1fcXVl dWVfaW5pdCk7CkBAIC02OTQsNyArNjkzLDcgQEAgc3RhdGljIGludCBteGNfaXNpX20ybV9vcGVu KHN0cnVjdCBmaWxlICpmaWxlKQogCWlmIChyZXQpCiAJCWdvdG8gZXJyX2N0cmxzOwogCi0JdjRs Ml9maF9hZGQoJmN0eC0+ZmgpOworCXY0bDJfZmhfYWRkKCZjdHgtPmZoLCBmaWxlKTsKIAogCXJl dHVybiAwOwogCmRpZmYgLS1naXQgYS9kcml2ZXJzL21lZGlhL3BsYXRmb3JtL254cC9teDJfZW1t YXBycC5jIGIvZHJpdmVycy9tZWRpYS9wbGF0Zm9ybS9ueHAvbXgyX2VtbWFwcnAuYwppbmRleCA1 YzhjNjI4NWVjMWU3YjJlOGRmNjQxMzIyMjhlNzFlMWIwOTcxODNlLi44YzhmODM0ZTYyNTBmNWVm ZmNiYjdmMDk4ZjM4OGE5Y2NjOTYzMDJjIDEwMDY0NAotLS0gYS9kcml2ZXJzL21lZGlhL3BsYXRm b3JtL254cC9teDJfZW1tYXBycC5jCisrKyBiL2RyaXZlcnMvbWVkaWEvcGxhdGZvcm0vbnhwL214 Ml9lbW1hcHJwLmMKQEAgLTczMCw3ICs3MzAsNiBAQCBzdGF0aWMgaW50IGVtbWFwcnBfb3Blbihz dHJ1Y3QgZmlsZSAqZmlsZSkKIAkJcmV0dXJuIC1FTk9NRU07CiAKIAl2NGwyX2ZoX2luaXQoJmN0 eC0+ZmgsIHZpZGVvX2RldmRhdGEoZmlsZSkpOwotCWZpbGUtPnByaXZhdGVfZGF0YSA9ICZjdHgt PmZoOwogCWN0eC0+ZGV2ID0gcGNkZXY7CiAKIAlpZiAobXV0ZXhfbG9ja19pbnRlcnJ1cHRpYmxl KCZwY2Rldi0+ZGV2X211dGV4KSkgewpAQCAtNzUyLDcgKzc1MSw3IEBAIHN0YXRpYyBpbnQgZW1t YXBycF9vcGVuKHN0cnVjdCBmaWxlICpmaWxlKQogCWNsa19wcmVwYXJlX2VuYWJsZShwY2Rldi0+ Y2xrX2VtbWFfYWhiKTsKIAljdHgtPnFfZGF0YVtWNEwyX00yTV9TUkNdLmZtdCA9ICZmb3JtYXRz WzFdOwogCWN0eC0+cV9kYXRhW1Y0TDJfTTJNX0RTVF0uZm10ID0gJmZvcm1hdHNbMF07Ci0JdjRs Ml9maF9hZGQoJmN0eC0+ZmgpOworCXY0bDJfZmhfYWRkKCZjdHgtPmZoLCBmaWxlKTsKIAltdXRl eF91bmxvY2soJnBjZGV2LT5kZXZfbXV0ZXgpOwogCiAJZHByaW50ayhwY2RldiwgIkNyZWF0ZWQg aW5zdGFuY2UgJXAsIG0ybV9jdHg6ICVwXG4iLCBjdHgsIGN0eC0+ZmgubTJtX2N0eCk7CmRpZmYg LS1naXQgYS9kcml2ZXJzL21lZGlhL3BsYXRmb3JtL3Fjb20vaXJpcy9pcmlzX3ZpZGMuYyBiL2Ry aXZlcnMvbWVkaWEvcGxhdGZvcm0vcWNvbS9pcmlzL2lyaXNfdmlkYy5jCmluZGV4IDY0ZWJlYzJj YTZiM2Q1ODExOGFjMWE2ZjRkZGVlZDJlNDNkZTZkNWIuLmNkZDM0YTNiNzFmZjQzMDk4MjlmMGYx NTkyNDFjMzgxNTY1OGJjYjggMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvbWVkaWEvcGxhdGZvcm0vcWNv bS9pcmlzL2lyaXNfdmlkYy5jCisrKyBiL2RyaXZlcnMvbWVkaWEvcGxhdGZvcm0vcWNvbS9pcmlz L2lyaXNfdmlkYy5jCkBAIC0yNSw4ICsyNSw3IEBAIHN0YXRpYyB2b2lkIGlyaXNfdjRsMl9maF9p bml0KHN0cnVjdCBpcmlzX2luc3QgKmluc3QsIHN0cnVjdCBmaWxlICpmaWxwKQogewogCXY0bDJf ZmhfaW5pdCgmaW5zdC0+ZmgsIGluc3QtPmNvcmUtPnZkZXZfZGVjKTsKIAlpbnN0LT5maC5jdHJs X2hhbmRsZXIgPSAmaW5zdC0+Y3RybF9oYW5kbGVyOwotCXY0bDJfZmhfYWRkKCZpbnN0LT5maCk7 Ci0JZmlscC0+cHJpdmF0ZV9kYXRhID0gJmluc3QtPmZoOworCXY0bDJfZmhfYWRkKCZpbnN0LT5m aCwgZmlscCk7CiB9CiAKIHN0YXRpYyB2b2lkIGlyaXNfdjRsMl9maF9kZWluaXQoc3RydWN0IGly aXNfaW5zdCAqaW5zdCwgc3RydWN0IGZpbGUgKmZpbHApCmRpZmYgLS1naXQgYS9kcml2ZXJzL21l ZGlhL3BsYXRmb3JtL3Fjb20vdmVudXMvdmRlYy5jIGIvZHJpdmVycy9tZWRpYS9wbGF0Zm9ybS9x Y29tL3ZlbnVzL3ZkZWMuYwppbmRleCBkMTBjYTZkODlmNmQ3NmMwNTJiMjdiMTE1NGM4ZGQ5YzQ5 NDY2ZTIzLi41NWMyNzM0NWI3ZDg5YmY0MDBlMjE2ZWQ5YWE1OWE4NzFlNTAxYTQ0IDEwMDY0NAot LS0gYS9kcml2ZXJzL21lZGlhL3BsYXRmb3JtL3Fjb20vdmVudXMvdmRlYy5jCisrKyBiL2RyaXZl cnMvbWVkaWEvcGxhdGZvcm0vcWNvbS92ZW51cy92ZGVjLmMKQEAgLTE3MzIsOSArMTczMiw4IEBA IHN0YXRpYyBpbnQgdmRlY19vcGVuKHN0cnVjdCBmaWxlICpmaWxlKQogCXY0bDJfZmhfaW5pdCgm aW5zdC0+ZmgsIGNvcmUtPnZkZXZfZGVjKTsKIAogCWluc3QtPmZoLmN0cmxfaGFuZGxlciA9ICZp bnN0LT5jdHJsX2hhbmRsZXI7Ci0JdjRsMl9maF9hZGQoJmluc3QtPmZoKTsKKwl2NGwyX2ZoX2Fk ZCgmaW5zdC0+ZmgsIGZpbGUpOwogCWluc3QtPmZoLm0ybV9jdHggPSBpbnN0LT5tMm1fY3R4Owot CWZpbGUtPnByaXZhdGVfZGF0YSA9ICZpbnN0LT5maDsKIAogCXJldHVybiAwOwogCmRpZmYgLS1n aXQgYS9kcml2ZXJzL21lZGlhL3BsYXRmb3JtL3Fjb20vdmVudXMvdmVuYy5jIGIvZHJpdmVycy9t ZWRpYS9wbGF0Zm9ybS9xY29tL3ZlbnVzL3ZlbmMuYwppbmRleCAwODM4ZDY0Y2U4ZmVlNWRkODI5 OWQ1YzM5NGU5NzkxMGYxMGY3ZWUzLi5mYmEwNzU1N2EzOTk2YTU1ZmNkNmE0ZjY1Mzc2YzQxOGVj MGM5MmE3IDEwMDY0NAotLS0gYS9kcml2ZXJzL21lZGlhL3BsYXRmb3JtL3Fjb20vdmVudXMvdmVu Yy5jCisrKyBiL2RyaXZlcnMvbWVkaWEvcGxhdGZvcm0vcWNvbS92ZW51cy92ZW5jLmMKQEAgLTE1 MTUsOSArMTUxNSw4IEBAIHN0YXRpYyBpbnQgdmVuY19vcGVuKHN0cnVjdCBmaWxlICpmaWxlKQog CXY0bDJfZmhfaW5pdCgmaW5zdC0+ZmgsIGNvcmUtPnZkZXZfZW5jKTsKIAogCWluc3QtPmZoLmN0 cmxfaGFuZGxlciA9ICZpbnN0LT5jdHJsX2hhbmRsZXI7Ci0JdjRsMl9maF9hZGQoJmluc3QtPmZo KTsKKwl2NGwyX2ZoX2FkZCgmaW5zdC0+ZmgsIGZpbGUpOwogCWluc3QtPmZoLm0ybV9jdHggPSBp bnN0LT5tMm1fY3R4OwotCWZpbGUtPnByaXZhdGVfZGF0YSA9ICZpbnN0LT5maDsKIAogCXJldHVy biAwOwogCmRpZmYgLS1naXQgYS9kcml2ZXJzL21lZGlhL3BsYXRmb3JtL3JlbmVzYXMvcmNhcl9m ZHAxLmMgYi9kcml2ZXJzL21lZGlhL3BsYXRmb3JtL3JlbmVzYXMvcmNhcl9mZHAxLmMKaW5kZXgg ZjExZWE5ZGM1MDI3YmRkODkyNjIyNzBmNGUzOTc5YTA2NjUwZDliYy4uZTBkMTJiNTc5ZDg3MDI1 ZTNmMzA5ZjY1OTNjMDY4YWQ4N2YxODU2YiAxMDA2NDQKLS0tIGEvZHJpdmVycy9tZWRpYS9wbGF0 Zm9ybS9yZW5lc2FzL3JjYXJfZmRwMS5jCisrKyBiL2RyaXZlcnMvbWVkaWEvcGxhdGZvcm0vcmVu ZXNhcy9yY2FyX2ZkcDEuYwpAQCAtMjA5Myw3ICsyMDkzLDYgQEAgc3RhdGljIGludCBmZHAxX29w ZW4oc3RydWN0IGZpbGUgKmZpbGUpCiAJfQogCiAJdjRsMl9maF9pbml0KCZjdHgtPmZoLCB2aWRl b19kZXZkYXRhKGZpbGUpKTsKLQlmaWxlLT5wcml2YXRlX2RhdGEgPSAmY3R4LT5maDsKIAljdHgt PmZkcDEgPSBmZHAxOwogCiAJLyogSW5pdGlhbGlzZSBRdWV1ZXMgKi8KQEAgLTIxNDIsNyArMjE0 MSw3IEBAIHN0YXRpYyBpbnQgZmRwMV9vcGVuKHN0cnVjdCBmaWxlICpmaWxlKQogCWlmIChyZXQg PCAwKQogCQlnb3RvIGVycm9yX3BtOwogCi0JdjRsMl9maF9hZGQoJmN0eC0+ZmgpOworCXY0bDJf ZmhfYWRkKCZjdHgtPmZoLCBmaWxlKTsKIAogCWRwcmludGsoZmRwMSwgIkNyZWF0ZWQgaW5zdGFu Y2U6ICVwLCBtMm1fY3R4OiAlcFxuIiwKIAkJY3R4LCBjdHgtPmZoLm0ybV9jdHgpOwpkaWZmIC0t Z2l0IGEvZHJpdmVycy9tZWRpYS9wbGF0Zm9ybS9yZW5lc2FzL3JjYXJfanB1LmMgYi9kcml2ZXJz L21lZGlhL3BsYXRmb3JtL3JlbmVzYXMvcmNhcl9qcHUuYwppbmRleCAzZWU1MWY1M2IwY2QxYzIy MWNlZmQwY2U5M2FjYmNkYTU1ZmFhNGE2Li4yNmM1Yzc3ZTRhMTdiMjZjNDUzZTNlYTgwYjBmN2M3 NTJlMmY4MDI5IDEwMDY0NAotLS0gYS9kcml2ZXJzL21lZGlhL3BsYXRmb3JtL3JlbmVzYXMvcmNh cl9qcHUuYworKysgYi9kcml2ZXJzL21lZGlhL3BsYXRmb3JtL3JlbmVzYXMvcmNhcl9qcHUuYwpA QCAtMTIzMSw4ICsxMjMxLDcgQEAgc3RhdGljIGludCBqcHVfb3BlbihzdHJ1Y3QgZmlsZSAqZmls ZSkKIAogCXY0bDJfZmhfaW5pdCgmY3R4LT5maCwgdmZkKTsKIAljdHgtPmZoLmN0cmxfaGFuZGxl ciA9ICZjdHgtPmN0cmxfaGFuZGxlcjsKLQlmaWxlLT5wcml2YXRlX2RhdGEgPSAmY3R4LT5maDsK LQl2NGwyX2ZoX2FkZCgmY3R4LT5maCk7CisJdjRsMl9maF9hZGQoJmN0eC0+ZmgsIGZpbGUpOwog CiAJY3R4LT5qcHUgPSBqcHU7CiAJY3R4LT5lbmNvZGVyID0gdmZkID09ICZqcHUtPnZmZF9lbmNv ZGVyOwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9tZWRpYS9wbGF0Zm9ybS9yZW5lc2FzL3ZzcDEvdnNw MV92aWRlby5jIGIvZHJpdmVycy9tZWRpYS9wbGF0Zm9ybS9yZW5lc2FzL3ZzcDEvdnNwMV92aWRl by5jCmluZGV4IDY1NmZiNWU2Y2IzMDNjZmNkZTFkOTFjODM5YTlhY2VjYTc5Yzc3ZjcuLmI2ZGMx ZWUzZGM1MGFjOGQwZWI3OTQwOGIwNmM2MDFjYjUwMWU5YjggMTAwNjQ0Ci0tLSBhL2RyaXZlcnMv bWVkaWEvcGxhdGZvcm0vcmVuZXNhcy92c3AxL3ZzcDFfdmlkZW8uYworKysgYi9kcml2ZXJzL21l ZGlhL3BsYXRmb3JtL3JlbmVzYXMvdnNwMS92c3AxX3ZpZGVvLmMKQEAgLTEwNzksOSArMTA3OSw3 IEBAIHN0YXRpYyBpbnQgdnNwMV92aWRlb19vcGVuKHN0cnVjdCBmaWxlICpmaWxlKQogCQlyZXR1 cm4gLUVOT01FTTsKIAogCXY0bDJfZmhfaW5pdCh2ZmgsICZ2aWRlby0+dmlkZW8pOwotCXY0bDJf ZmhfYWRkKHZmaCk7Ci0KLQlmaWxlLT5wcml2YXRlX2RhdGEgPSB2Zmg7CisJdjRsMl9maF9hZGQo dmZoLCBmaWxlKTsKIAogCXJldCA9IHZzcDFfZGV2aWNlX2dldCh2aWRlby0+dnNwMSk7CiAJaWYg KHJldCA8IDApIHsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvbWVkaWEvcGxhdGZvcm0vcm9ja2NoaXAv cmdhL3JnYS5jIGIvZHJpdmVycy9tZWRpYS9wbGF0Zm9ybS9yb2NrY2hpcC9yZ2EvcmdhLmMKaW5k ZXggOGE2ZTYxOGQ2MDVjMjE2YjUxMTMwNjJkOTBkZjAzZGM2MzJkYzdjOC4uZDg4ODE3MDIzOTk2 YjI5YWZjNzljZGQ2ZmJkZDQyZGZjNTgyOWIxMyAxMDA2NDQKLS0tIGEvZHJpdmVycy9tZWRpYS9w bGF0Zm9ybS9yb2NrY2hpcC9yZ2EvcmdhLmMKKysrIGIvZHJpdmVycy9tZWRpYS9wbGF0Zm9ybS9y b2NrY2hpcC9yZ2EvcmdhLmMKQEAgLTM5NSw4ICszOTUsNyBAQCBzdGF0aWMgaW50IHJnYV9vcGVu KHN0cnVjdCBmaWxlICpmaWxlKQogCQlyZXR1cm4gcmV0OwogCX0KIAl2NGwyX2ZoX2luaXQoJmN0 eC0+ZmgsIHZpZGVvX2RldmRhdGEoZmlsZSkpOwotCWZpbGUtPnByaXZhdGVfZGF0YSA9ICZjdHgt PmZoOwotCXY0bDJfZmhfYWRkKCZjdHgtPmZoKTsKKwl2NGwyX2ZoX2FkZCgmY3R4LT5maCwgZmls ZSk7CiAKIAlyZ2Ffc2V0dXBfY3RybHMoY3R4KTsKIApkaWZmIC0tZ2l0IGEvZHJpdmVycy9tZWRp YS9wbGF0Zm9ybS9yb2NrY2hpcC9ya3ZkZWMvcmt2ZGVjLmMgYi9kcml2ZXJzL21lZGlhL3BsYXRm b3JtL3JvY2tjaGlwL3JrdmRlYy9ya3ZkZWMuYwppbmRleCA0MWFiOTBjYmNjMGNkYmUyNzlmNjUx MmRlY2M0MzAxYjZjZmYyZGZhLi4yZmJhZDY4NWU5MmNlZTQ5MTY0MjA1NjVhMjhjNzc4YjFhNWUx YThlIDEwMDY0NAotLS0gYS9kcml2ZXJzL21lZGlhL3BsYXRmb3JtL3JvY2tjaGlwL3JrdmRlYy9y a3ZkZWMuYworKysgYi9kcml2ZXJzL21lZGlhL3BsYXRmb3JtL3JvY2tjaGlwL3JrdmRlYy9ya3Zk ZWMuYwpAQCAtOTM4LDggKzkzOCw3IEBAIHN0YXRpYyBpbnQgcmt2ZGVjX29wZW4oc3RydWN0IGZp bGUgKmZpbHApCiAJaWYgKHJldCkKIAkJZ290byBlcnJfY2xlYW51cF9tMm1fY3R4OwogCi0JZmls cC0+cHJpdmF0ZV9kYXRhID0gJmN0eC0+Zmg7Ci0JdjRsMl9maF9hZGQoJmN0eC0+ZmgpOworCXY0 bDJfZmhfYWRkKCZjdHgtPmZoLCBmaWxwKTsKIAogCXJldHVybiAwOwogCmRpZmYgLS1naXQgYS9k cml2ZXJzL21lZGlhL3BsYXRmb3JtL3NhbXN1bmcvZXh5bm9zLWdzYy9nc2MtbTJtLmMgYi9kcml2 ZXJzL21lZGlhL3BsYXRmb3JtL3NhbXN1bmcvZXh5bm9zLWdzYy9nc2MtbTJtLmMKaW5kZXggOTY4 YmI0MzI3YjdhMTY5NzY0MTgxNWRmYjA4ZGM2NDI1MWY1ZTkyNy4uMzlkODRmZmQxYjA1OTkwYmE0 YjhhZjI4MWFiYTA5ZTNmOWNjNTM0MCAxMDA2NDQKLS0tIGEvZHJpdmVycy9tZWRpYS9wbGF0Zm9y bS9zYW1zdW5nL2V4eW5vcy1nc2MvZ3NjLW0ybS5jCisrKyBiL2RyaXZlcnMvbWVkaWEvcGxhdGZv cm0vc2Ftc3VuZy9leHlub3MtZ3NjL2dzYy1tMm0uYwpAQCAtNjI1LDggKzYyNSw3IEBAIHN0YXRp YyBpbnQgZ3NjX20ybV9vcGVuKHN0cnVjdCBmaWxlICpmaWxlKQogCiAJLyogVXNlIHNlcGFyYXRl IGNvbnRyb2wgaGFuZGxlciBwZXIgZmlsZSBoYW5kbGUgKi8KIAljdHgtPmZoLmN0cmxfaGFuZGxl ciA9ICZjdHgtPmN0cmxfaGFuZGxlcjsKLQlmaWxlLT5wcml2YXRlX2RhdGEgPSAmY3R4LT5maDsK LQl2NGwyX2ZoX2FkZCgmY3R4LT5maCk7CisJdjRsMl9maF9hZGQoJmN0eC0+ZmgsIGZpbGUpOwog CiAJY3R4LT5nc2NfZGV2ID0gZ3NjOwogCS8qIERlZmF1bHQgY29sb3IgZm9ybWF0ICovCmRpZmYg LS1naXQgYS9kcml2ZXJzL21lZGlhL3BsYXRmb3JtL3NhbXN1bmcvZXh5bm9zNC1pcy9maW1jLW0y bS5jIGIvZHJpdmVycy9tZWRpYS9wbGF0Zm9ybS9zYW1zdW5nL2V4eW5vczQtaXMvZmltYy1tMm0u YwppbmRleCBmZWVkZjYwZGFkMDliZDQxM2NiOGZlNjVkOTY1ZmQzOWIyNmI4NzY0Li5iMDAyYjAy YTg5OWVmZGQ5NWRmNGFlOGE1ZGI1OWI5ZjE0NGE2MWRiIDEwMDY0NAotLS0gYS9kcml2ZXJzL21l ZGlhL3BsYXRmb3JtL3NhbXN1bmcvZXh5bm9zNC1pcy9maW1jLW0ybS5jCisrKyBiL2RyaXZlcnMv bWVkaWEvcGxhdGZvcm0vc2Ftc3VuZy9leHlub3M0LWlzL2ZpbWMtbTJtLmMKQEAgLTYzNCw4ICs2 MzQsNyBAQCBzdGF0aWMgaW50IGZpbWNfbTJtX29wZW4oc3RydWN0IGZpbGUgKmZpbGUpCiAKIAkv KiBVc2Ugc2VwYXJhdGUgY29udHJvbCBoYW5kbGVyIHBlciBmaWxlIGhhbmRsZSAqLwogCWN0eC0+ ZmguY3RybF9oYW5kbGVyID0gJmN0eC0+Y3RybHMuaGFuZGxlcjsKLQlmaWxlLT5wcml2YXRlX2Rh dGEgPSAmY3R4LT5maDsKLQl2NGwyX2ZoX2FkZCgmY3R4LT5maCk7CisJdjRsMl9maF9hZGQoJmN0 eC0+ZmgsIGZpbGUpOwogCiAJLyogU2V0dXAgdGhlIGRldmljZSBjb250ZXh0IGZvciBtZW1vcnkt dG8tbWVtb3J5IG1vZGUgKi8KIAljdHgtPnN0YXRlID0gRklNQ19DVFhfTTJNOwpkaWZmIC0tZ2l0 IGEvZHJpdmVycy9tZWRpYS9wbGF0Zm9ybS9zYW1zdW5nL3M1cC1nMmQvZzJkLmMgYi9kcml2ZXJz L21lZGlhL3BsYXRmb3JtL3NhbXN1bmcvczVwLWcyZC9nMmQuYwppbmRleCA0NGZjZWRiYmM5MGE5 ODYzODI3YWFjYmNkNWY1NmQ4NTBjYjU1MmVhLi5lMzRjYWU5YzljZjY1ZDMxNjE4MjJiNjgyMzNk Mjg0NzIxNzFmOTE3IDEwMDY0NAotLS0gYS9kcml2ZXJzL21lZGlhL3BsYXRmb3JtL3NhbXN1bmcv czVwLWcyZC9nMmQuYworKysgYi9kcml2ZXJzL21lZGlhL3BsYXRmb3JtL3NhbXN1bmcvczVwLWcy ZC9nMmQuYwpAQCAtMjU3LDggKzI1Nyw3IEBAIHN0YXRpYyBpbnQgZzJkX29wZW4oc3RydWN0IGZp bGUgKmZpbGUpCiAJCXJldHVybiByZXQ7CiAJfQogCXY0bDJfZmhfaW5pdCgmY3R4LT5maCwgdmlk ZW9fZGV2ZGF0YShmaWxlKSk7Ci0JZmlsZS0+cHJpdmF0ZV9kYXRhID0gJmN0eC0+Zmg7Ci0JdjRs Ml9maF9hZGQoJmN0eC0+ZmgpOworCXY0bDJfZmhfYWRkKCZjdHgtPmZoLCBmaWxlKTsKIAogCWcy ZF9zZXR1cF9jdHJscyhjdHgpOwogCmRpZmYgLS1naXQgYS9kcml2ZXJzL21lZGlhL3BsYXRmb3Jt L3NhbXN1bmcvczVwLWpwZWcvanBlZy1jb3JlLmMgYi9kcml2ZXJzL21lZGlhL3BsYXRmb3JtL3Nh bXN1bmcvczVwLWpwZWcvanBlZy1jb3JlLmMKaW5kZXggYThkMGRkZGIxZmI1YjUzNDRhYzljOTY2 NTdmY2YxN2E1NzVkNmEyNi4uYzRhZDAxOTZlZDhmMWJmNTc5MzY1YTBhMjFkZDhjNGE3OGJkYWEx MCAxMDA2NDQKLS0tIGEvZHJpdmVycy9tZWRpYS9wbGF0Zm9ybS9zYW1zdW5nL3M1cC1qcGVnL2pw ZWctY29yZS5jCisrKyBiL2RyaXZlcnMvbWVkaWEvcGxhdGZvcm0vc2Ftc3VuZy9zNXAtanBlZy9q cGVnLWNvcmUuYwpAQCAtOTcwLDggKzk3MCw3IEBAIHN0YXRpYyBpbnQgczVwX2pwZWdfb3Blbihz dHJ1Y3QgZmlsZSAqZmlsZSkKIAl2NGwyX2ZoX2luaXQoJmN0eC0+ZmgsIHZmZCk7CiAJLyogVXNl IHNlcGFyYXRlIGNvbnRyb2wgaGFuZGxlciBwZXIgZmlsZSBoYW5kbGUgKi8KIAljdHgtPmZoLmN0 cmxfaGFuZGxlciA9ICZjdHgtPmN0cmxfaGFuZGxlcjsKLQlmaWxlLT5wcml2YXRlX2RhdGEgPSAm Y3R4LT5maDsKLQl2NGwyX2ZoX2FkZCgmY3R4LT5maCk7CisJdjRsMl9maF9hZGQoJmN0eC0+Zmgs IGZpbGUpOwogCiAJY3R4LT5qcGVnID0ganBlZzsKIAlpZiAodmZkID09IGpwZWctPnZmZF9lbmNv ZGVyKSB7CmRpZmYgLS1naXQgYS9kcml2ZXJzL21lZGlhL3BsYXRmb3JtL3NhbXN1bmcvczVwLW1m Yy9zNXBfbWZjLmMgYi9kcml2ZXJzL21lZGlhL3BsYXRmb3JtL3NhbXN1bmcvczVwLW1mYy9zNXBf bWZjLmMKaW5kZXggZGQ5NzYxZGY1OWRmNWRkN2IwN2I0ZTlhZmQyZDc5MzljNDZjYjJkZS4uNzQ2 MjlkYjA1MTIxYWM5MTgxYWY5ZGFhNDcxYzExMzg3NmY5ZDMyMyAxMDA2NDQKLS0tIGEvZHJpdmVy cy9tZWRpYS9wbGF0Zm9ybS9zYW1zdW5nL3M1cC1tZmMvczVwX21mYy5jCisrKyBiL2RyaXZlcnMv bWVkaWEvcGxhdGZvcm0vc2Ftc3VuZy9zNXAtbWZjL3M1cF9tZmMuYwpAQCAtODAxLDggKzgwMSw3 IEBAIHN0YXRpYyBpbnQgczVwX21mY19vcGVuKHN0cnVjdCBmaWxlICpmaWxlKQogCX0KIAlpbml0 X3dhaXRxdWV1ZV9oZWFkKCZjdHgtPnF1ZXVlKTsKIAl2NGwyX2ZoX2luaXQoJmN0eC0+ZmgsIHZk ZXYpOwotCWZpbGUtPnByaXZhdGVfZGF0YSA9ICZjdHgtPmZoOwotCXY0bDJfZmhfYWRkKCZjdHgt PmZoKTsKKwl2NGwyX2ZoX2FkZCgmY3R4LT5maCwgZmlsZSk7CiAJY3R4LT5kZXYgPSBkZXY7CiAJ SU5JVF9MSVNUX0hFQUQoJmN0eC0+c3JjX3F1ZXVlKTsKIAlJTklUX0xJU1RfSEVBRCgmY3R4LT5k c3RfcXVldWUpOwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9tZWRpYS9wbGF0Zm9ybS9zdC9zdGkvYmRp c3AvYmRpc3AtdjRsMi5jIGIvZHJpdmVycy9tZWRpYS9wbGF0Zm9ybS9zdC9zdGkvYmRpc3AvYmRp c3AtdjRsMi5jCmluZGV4IDI2YzRlNDhlNWU4NGJjZjMxNTY5MjUxNTQ0OGFlNjE1NzI3YzQ1NGYu LjU3ZGNjNjI1MDk2YjRiNjg0Y2ZkZTAwNTFkMjAwYmY4YzE4ZTRiYTQgMTAwNjQ0Ci0tLSBhL2Ry aXZlcnMvbWVkaWEvcGxhdGZvcm0vc3Qvc3RpL2JkaXNwL2JkaXNwLXY0bDIuYworKysgYi9kcml2 ZXJzL21lZGlhL3BsYXRmb3JtL3N0L3N0aS9iZGlzcC9iZGlzcC12NGwyLmMKQEAgLTYwOCw4ICs2 MDgsNyBAQCBzdGF0aWMgaW50IGJkaXNwX29wZW4oc3RydWN0IGZpbGUgKmZpbGUpCiAKIAkvKiBV c2Ugc2VwYXJhdGUgY29udHJvbCBoYW5kbGVyIHBlciBmaWxlIGhhbmRsZSAqLwogCWN0eC0+Zmgu Y3RybF9oYW5kbGVyID0gJmN0eC0+Y3RybF9oYW5kbGVyOwotCWZpbGUtPnByaXZhdGVfZGF0YSA9 ICZjdHgtPmZoOwotCXY0bDJfZmhfYWRkKCZjdHgtPmZoKTsKKwl2NGwyX2ZoX2FkZCgmY3R4LT5m aCwgZmlsZSk7CiAKIAkvKiBEZWZhdWx0IGZvcm1hdCAqLwogCWN0eC0+c3JjID0gYmRpc3BfZGZs dF9mbXQ7CmRpZmYgLS1naXQgYS9kcml2ZXJzL21lZGlhL3BsYXRmb3JtL3N0L3N0aS9kZWx0YS9k ZWx0YS12NGwyLmMgYi9kcml2ZXJzL21lZGlhL3BsYXRmb3JtL3N0L3N0aS9kZWx0YS9kZWx0YS12 NGwyLmMKaW5kZXggODI4MmU3MmFmNjcwODRkZGJiOTRlZDc4ZGY4N2EwN2UxZThiODYwZi4uYjJk Zjk0ZGNiZTIxNzA5ZjViMzE0NDZjODU0MDg3MjhlNzBkNWJjYSAxMDA2NDQKLS0tIGEvZHJpdmVy cy9tZWRpYS9wbGF0Zm9ybS9zdC9zdGkvZGVsdGEvZGVsdGEtdjRsMi5jCisrKyBiL2RyaXZlcnMv bWVkaWEvcGxhdGZvcm0vc3Qvc3RpL2RlbHRhL2RlbHRhLXY0bDIuYwpAQCAtMTYzOSw4ICsxNjM5 LDcgQEAgc3RhdGljIGludCBkZWx0YV9vcGVuKHN0cnVjdCBmaWxlICpmaWxlKQogCWN0eC0+ZGV2 ID0gZGVsdGE7CiAKIAl2NGwyX2ZoX2luaXQoJmN0eC0+ZmgsIHZpZGVvX2RldmRhdGEoZmlsZSkp OwotCWZpbGUtPnByaXZhdGVfZGF0YSA9ICZjdHgtPmZoOwotCXY0bDJfZmhfYWRkKCZjdHgtPmZo KTsKKwl2NGwyX2ZoX2FkZCgmY3R4LT5maCwgZmlsZSk7CiAKIAlJTklUX1dPUksoJmN0eC0+cnVu X3dvcmssIGRlbHRhX3J1bl93b3JrKTsKIAltdXRleF9pbml0KCZjdHgtPmxvY2spOwpkaWZmIC0t Z2l0IGEvZHJpdmVycy9tZWRpYS9wbGF0Zm9ybS9zdC9zdGkvaHZhL2h2YS12NGwyLmMgYi9kcml2 ZXJzL21lZGlhL3BsYXRmb3JtL3N0L3N0aS9odmEvaHZhLXY0bDIuYwppbmRleCAyOTE0MmM4MDZj Yjc0YTUxMGIyZjI3ZTc5YzllMTBjYTQwODhiMWU5Li4yZjk0MTNmYTczMThmNDJiMzkwZjk2NDQ3 ZGNiMWE5MDU4MzY3MDNlIDEwMDY0NAotLS0gYS9kcml2ZXJzL21lZGlhL3BsYXRmb3JtL3N0L3N0 aS9odmEvaHZhLXY0bDIuYworKysgYi9kcml2ZXJzL21lZGlhL3BsYXRmb3JtL3N0L3N0aS9odmEv aHZhLXY0bDIuYwpAQCAtMTE3NCw4ICsxMTc0LDcgQEAgc3RhdGljIGludCBodmFfb3BlbihzdHJ1 Y3QgZmlsZSAqZmlsZSkKIAogCUlOSVRfV09SSygmY3R4LT5ydW5fd29yaywgaHZhX3J1bl93b3Jr KTsKIAl2NGwyX2ZoX2luaXQoJmN0eC0+ZmgsIHZpZGVvX2RldmRhdGEoZmlsZSkpOwotCWZpbGUt PnByaXZhdGVfZGF0YSA9ICZjdHgtPmZoOwotCXY0bDJfZmhfYWRkKCZjdHgtPmZoKTsKKwl2NGwy X2ZoX2FkZCgmY3R4LT5maCwgZmlsZSk7CiAKIAlyZXQgPSBodmFfY3RybHNfc2V0dXAoY3R4KTsK IAlpZiAocmV0KSB7CmRpZmYgLS1naXQgYS9kcml2ZXJzL21lZGlhL3BsYXRmb3JtL3N0L3N0bTMy L2RtYTJkL2RtYTJkLmMgYi9kcml2ZXJzL21lZGlhL3BsYXRmb3JtL3N0L3N0bTMyL2RtYTJkL2Rt YTJkLmMKaW5kZXggZjRjNWQ3MzQ0N2E3YzNlZmIwYWQ1ZDliYjhhMDk0MzJjMWE4ZmE2MC4uYjJi Y2VkMDZhMWU2MDNmNzQ3OTYyMGQ1ZGIzYzEyZWU4OWU1MTQ5ZSAxMDA2NDQKLS0tIGEvZHJpdmVy cy9tZWRpYS9wbGF0Zm9ybS9zdC9zdG0zMi9kbWEyZC9kbWEyZC5jCisrKyBiL2RyaXZlcnMvbWVk aWEvcGxhdGZvcm0vc3Qvc3RtMzIvZG1hMmQvZG1hMmQuYwpAQCAtMzA0LDggKzMwNCw3IEBAIHN0 YXRpYyBpbnQgZG1hMmRfb3BlbihzdHJ1Y3QgZmlsZSAqZmlsZSkKIAl9CiAKIAl2NGwyX2ZoX2lu aXQoJmN0eC0+ZmgsIHZpZGVvX2RldmRhdGEoZmlsZSkpOwotCWZpbGUtPnByaXZhdGVfZGF0YSA9 ICZjdHgtPmZoOwotCXY0bDJfZmhfYWRkKCZjdHgtPmZoKTsKKwl2NGwyX2ZoX2FkZCgmY3R4LT5m aCwgZmlsZSk7CiAKIAlkbWEyZF9zZXR1cF9jdHJscyhjdHgpOwogCmRpZmYgLS1naXQgYS9kcml2 ZXJzL21lZGlhL3BsYXRmb3JtL3N1bnhpL3N1bjhpLWRpL3N1bjhpLWRpLmMgYi9kcml2ZXJzL21l ZGlhL3BsYXRmb3JtL3N1bnhpL3N1bjhpLWRpL3N1bjhpLWRpLmMKaW5kZXggZTljN2M5OWZiYzU1 OWRlODVjMzM3MzZhOGY0NTljZDIxNmI4Y2RiZi4uNzgyM2ViOTdmYWY3ZTliZDEzMjg2YWIxNGRi MmI0MzZmYzVjYWYxZiAxMDA2NDQKLS0tIGEvZHJpdmVycy9tZWRpYS9wbGF0Zm9ybS9zdW54aS9z dW44aS1kaS9zdW44aS1kaS5jCisrKyBiL2RyaXZlcnMvbWVkaWEvcGxhdGZvcm0vc3VueGkvc3Vu OGktZGkvc3VuOGktZGkuYwpAQCAtNzMwLDcgKzczMCw2IEBAIHN0YXRpYyBpbnQgZGVpbnRlcmxh Y2Vfb3BlbihzdHJ1Y3QgZmlsZSAqZmlsZSkKIAlkZWludGVybGFjZV9wcmVwYXJlX2Zvcm1hdCgm Y3R4LT5kc3RfZm10KTsKIAogCXY0bDJfZmhfaW5pdCgmY3R4LT5maCwgdmlkZW9fZGV2ZGF0YShm aWxlKSk7Ci0JZmlsZS0+cHJpdmF0ZV9kYXRhID0gJmN0eC0+Zmg7CiAJY3R4LT5kZXYgPSBkZXY7 CiAKIAljdHgtPmZoLm0ybV9jdHggPSB2NGwyX20ybV9jdHhfaW5pdChkZXYtPm0ybV9kZXYsIGN0 eCwKQEAgLTc0MCw3ICs3MzksNyBAQCBzdGF0aWMgaW50IGRlaW50ZXJsYWNlX29wZW4oc3RydWN0 IGZpbGUgKmZpbGUpCiAJCWdvdG8gZXJyX2ZyZWU7CiAJfQogCi0JdjRsMl9maF9hZGQoJmN0eC0+ ZmgpOworCXY0bDJfZmhfYWRkKCZjdHgtPmZoLCBmaWxlKTsKIAogCW11dGV4X3VubG9jaygmZGV2 LT5kZXZfbXV0ZXgpOwogCmRpZmYgLS1naXQgYS9kcml2ZXJzL21lZGlhL3BsYXRmb3JtL3N1bnhp L3N1bjhpLXJvdGF0ZS9zdW44aV9yb3RhdGUuYyBiL2RyaXZlcnMvbWVkaWEvcGxhdGZvcm0vc3Vu eGkvc3VuOGktcm90YXRlL3N1bjhpX3JvdGF0ZS5jCmluZGV4IDllYTY1Y2I3MTg3ZmVlMzIzMDUx YjFjYjYyYjM0MmUxMTlmN2JiM2QuLjM2OGE4NThiOGMwZmRlYTQ2MmI4NWM4YzcxZTIyMDU4ZDEw YTZjMDUgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvbWVkaWEvcGxhdGZvcm0vc3VueGkvc3VuOGktcm90 YXRlL3N1bjhpX3JvdGF0ZS5jCisrKyBiL2RyaXZlcnMvbWVkaWEvcGxhdGZvcm0vc3VueGkvc3Vu OGktcm90YXRlL3N1bjhpX3JvdGF0ZS5jCkBAIC02NTksNyArNjU5LDYgQEAgc3RhdGljIGludCBy b3RhdGVfb3BlbihzdHJ1Y3QgZmlsZSAqZmlsZSkKIAlyb3RhdGVfc2V0X2NhcF9mb3JtYXQoY3R4 LCAmY3R4LT5kc3RfZm10LCBjdHgtPnJvdGF0ZSk7CiAKIAl2NGwyX2ZoX2luaXQoJmN0eC0+Zmgs IHZpZGVvX2RldmRhdGEoZmlsZSkpOwotCWZpbGUtPnByaXZhdGVfZGF0YSA9ICZjdHgtPmZoOwog CWN0eC0+ZGV2ID0gZGV2OwogCiAJY3R4LT5maC5tMm1fY3R4ID0gdjRsMl9tMm1fY3R4X2luaXQo ZGV2LT5tMm1fZGV2LCBjdHgsCkBAIC02NjksNyArNjY4LDcgQEAgc3RhdGljIGludCByb3RhdGVf b3BlbihzdHJ1Y3QgZmlsZSAqZmlsZSkKIAkJZ290byBlcnJfZnJlZTsKIAl9CiAKLQl2NGwyX2Zo X2FkZCgmY3R4LT5maCk7CisJdjRsMl9maF9hZGQoJmN0eC0+ZmgsIGZpbGUpOwogCiAJcmV0ID0g cm90YXRlX3NldHVwX2N0cmxzKGN0eCk7CiAJaWYgKHJldCkKZGlmZiAtLWdpdCBhL2RyaXZlcnMv bWVkaWEvcGxhdGZvcm0vdGkvb21hcDNpc3AvaXNwdmlkZW8uYyBiL2RyaXZlcnMvbWVkaWEvcGxh dGZvcm0vdGkvb21hcDNpc3AvaXNwdmlkZW8uYwppbmRleCBiNzZkNDBhZWNhMTdjZjViOGI3NjE5 Y2FkZjBhZmU2NmZmMjgzYTlkLi5kMTBhMmI5NmMxM2NmMWY1MTAzNTA0YThiZDEwYzY1MTExMzky YTFlIDEwMDY0NAotLS0gYS9kcml2ZXJzL21lZGlhL3BsYXRmb3JtL3RpL29tYXAzaXNwL2lzcHZp ZGVvLmMKKysrIGIvZHJpdmVycy9tZWRpYS9wbGF0Zm9ybS90aS9vbWFwM2lzcC9pc3B2aWRlby5j CkBAIC0xMjk3LDcgKzEyOTcsNyBAQCBzdGF0aWMgaW50IGlzcF92aWRlb19vcGVuKHN0cnVjdCBm aWxlICpmaWxlKQogCQlyZXR1cm4gLUVOT01FTTsKIAogCXY0bDJfZmhfaW5pdCgmaGFuZGxlLT52 ZmgsICZ2aWRlby0+dmlkZW8pOwotCXY0bDJfZmhfYWRkKCZoYW5kbGUtPnZmaCk7CisJdjRsMl9m aF9hZGQoJmhhbmRsZS0+dmZoLCBmaWxlKTsKIAogCS8qIElmIHRoaXMgaXMgdGhlIGZpcnN0IHVz ZXIsIGluaXRpYWxpc2UgdGhlIHBpcGVsaW5lLiAqLwogCWlmIChvbWFwM2lzcF9nZXQodmlkZW8t PmlzcCkgPT0gTlVMTCkgewpAQCAtMTMzMyw3ICsxMzMzLDYgQEAgc3RhdGljIGludCBpc3Bfdmlk ZW9fb3BlbihzdHJ1Y3QgZmlsZSAqZmlsZSkKIAloYW5kbGUtPnRpbWVwZXJmcmFtZS5kZW5vbWlu YXRvciA9IDE7CiAKIAloYW5kbGUtPnZpZGVvID0gdmlkZW87Ci0JZmlsZS0+cHJpdmF0ZV9kYXRh ID0gJmhhbmRsZS0+dmZoOwogCiBkb25lOgogCWlmIChyZXQgPCAwKSB7CmRpZmYgLS1naXQgYS9k cml2ZXJzL21lZGlhL3BsYXRmb3JtL3RpL3ZwZS92cGUuYyBiL2RyaXZlcnMvbWVkaWEvcGxhdGZv cm0vdGkvdnBlL3ZwZS5jCmluZGV4IDRiOWIyYmVjNzM3N2Q3MjRjMjcyZmY3NmZiODExNmI2NTIy N2M1NDIuLmE0N2M1ZDMxYzQ3NTUwY2Q5YzZjODgwM2IyNWNkYTEyNTNmOTA2YTkgMTAwNjQ0Ci0t LSBhL2RyaXZlcnMvbWVkaWEvcGxhdGZvcm0vdGkvdnBlL3ZwZS5jCisrKyBiL2RyaXZlcnMvbWVk aWEvcGxhdGZvcm0vdGkvdnBlL3ZwZS5jCkBAIC0yMzEwLDcgKzIzMTAsNiBAQCBzdGF0aWMgaW50 IHZwZV9vcGVuKHN0cnVjdCBmaWxlICpmaWxlKQogCWluaXRfYWRiX2hkcnMoY3R4KTsKIAogCXY0 bDJfZmhfaW5pdCgmY3R4LT5maCwgdmlkZW9fZGV2ZGF0YShmaWxlKSk7Ci0JZmlsZS0+cHJpdmF0 ZV9kYXRhID0gJmN0eC0+Zmg7CiAKIAloZGwgPSAmY3R4LT5oZGw7CiAJdjRsMl9jdHJsX2hhbmRs ZXJfaW5pdChoZGwsIDEpOwpAQCAtMjM2NCw3ICsyMzYzLDcgQEAgc3RhdGljIGludCB2cGVfb3Bl bihzdHJ1Y3QgZmlsZSAqZmlsZSkKIAkJZ290byBleGl0X2ZoOwogCX0KIAotCXY0bDJfZmhfYWRk KCZjdHgtPmZoKTsKKwl2NGwyX2ZoX2FkZCgmY3R4LT5maCwgZmlsZSk7CiAKIAkvKgogCSAqIGZv ciBub3csIGp1c3QgcmVwb3J0IHRoZSBjcmVhdGlvbiBvZiB0aGUgZmlyc3QgaW5zdGFuY2UsIHdl IGNhbiBsYXRlcgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9tZWRpYS9wbGF0Zm9ybS92ZXJpc2lsaWNv bi9oYW50cm9fZHJ2LmMgYi9kcml2ZXJzL21lZGlhL3BsYXRmb3JtL3ZlcmlzaWxpY29uL2hhbnRy b19kcnYuYwppbmRleCBiMjBiOWM3ZjQxMzE5ZTFkOTU4NmQ2NDEyMDBhZWVlYmJkMWVlNzYxLi5h YWRjM2Q4ZmIzZDFjMTI2N2IzNzBlZGFjNjcyM2I5OWJkMDBmOWJmIDEwMDY0NAotLS0gYS9kcml2 ZXJzL21lZGlhL3BsYXRmb3JtL3ZlcmlzaWxpY29uL2hhbnRyb19kcnYuYworKysgYi9kcml2ZXJz L21lZGlhL3BsYXRmb3JtL3ZlcmlzaWxpY29uL2hhbnRyb19kcnYuYwpAQCAtNjYzLDggKzY2Myw3 IEBAIHN0YXRpYyBpbnQgaGFudHJvX29wZW4oc3RydWN0IGZpbGUgKmZpbHApCiAJfQogCiAJdjRs Ml9maF9pbml0KCZjdHgtPmZoLCB2ZGV2KTsKLQlmaWxwLT5wcml2YXRlX2RhdGEgPSAmY3R4LT5m aDsKLQl2NGwyX2ZoX2FkZCgmY3R4LT5maCk7CisJdjRsMl9maF9hZGQoJmN0eC0+ZmgsIGZpbHAp OwogCiAJaGFudHJvX3Jlc2V0X2ZtdHMoY3R4KTsKIApkaWZmIC0tZ2l0IGEvZHJpdmVycy9tZWRp YS90ZXN0LWRyaXZlcnMvdmljb2RlYy92aWNvZGVjLWNvcmUuYyBiL2RyaXZlcnMvbWVkaWEvdGVz dC1kcml2ZXJzL3ZpY29kZWMvdmljb2RlYy1jb3JlLmMKaW5kZXggZTI3ZjY3NjFjYmExOGU3OGUx ODMzNzQ1ZTc3MzQ3Zjc0MDU5NTdlMC4uZjIwZDlkOTY0M2Y1ZTNkMzlmNDgwN2FkMzM3ZjA1Yzk1 NzU5NGUxZSAxMDA2NDQKLS0tIGEvZHJpdmVycy9tZWRpYS90ZXN0LWRyaXZlcnMvdmljb2RlYy92 aWNvZGVjLWNvcmUuYworKysgYi9kcml2ZXJzL21lZGlhL3Rlc3QtZHJpdmVycy92aWNvZGVjL3Zp Y29kZWMtY29yZS5jCkBAIC0xODQ4LDcgKzE4NDgsNiBAQCBzdGF0aWMgaW50IHZpY29kZWNfb3Bl bihzdHJ1Y3QgZmlsZSAqZmlsZSkKIAkJY3R4LT5pc19zdGF0ZWxlc3MgPSB0cnVlOwogCiAJdjRs Ml9maF9pbml0KCZjdHgtPmZoLCB2aWRlb19kZXZkYXRhKGZpbGUpKTsKLQlmaWxlLT5wcml2YXRl X2RhdGEgPSAmY3R4LT5maDsKIAljdHgtPmRldiA9IGRldjsKIAloZGwgPSAmY3R4LT5oZGw7CiAJ djRsMl9jdHJsX2hhbmRsZXJfaW5pdChoZGwsIDUpOwpAQCAtMTkzMiw3ICsxOTMxLDcgQEAgc3Rh dGljIGludCB2aWNvZGVjX29wZW4oc3RydWN0IGZpbGUgKmZpbGUpCiAJCWdvdG8gb3Blbl91bmxv Y2s7CiAJfQogCi0JdjRsMl9maF9hZGQoJmN0eC0+ZmgpOworCXY0bDJfZmhfYWRkKCZjdHgtPmZo LCBmaWxlKTsKIAogb3Blbl91bmxvY2s6CiAJbXV0ZXhfdW5sb2NrKHZmZC0+bG9jayk7CmRpZmYg LS1naXQgYS9kcml2ZXJzL21lZGlhL3Rlc3QtZHJpdmVycy92aW0ybS5jIGIvZHJpdmVycy9tZWRp YS90ZXN0LWRyaXZlcnMvdmltMm0uYwppbmRleCA1NWQ4ODViZTViY2MwNTQxZTRlYTUzOWEyZmFm ZWViMmQ3NjY4MGUzLi4yNDU3NDAyNWY1OGZjMzRhMGI5OGU4MDQ4Mjk0NjI0NjA3ZTM5ZTJhIDEw MDY0NAotLS0gYS9kcml2ZXJzL21lZGlhL3Rlc3QtZHJpdmVycy92aW0ybS5jCisrKyBiL2RyaXZl cnMvbWVkaWEvdGVzdC1kcml2ZXJzL3ZpbTJtLmMKQEAgLTEzODksNyArMTM4OSw2IEBAIHN0YXRp YyBpbnQgdmltMm1fb3BlbihzdHJ1Y3QgZmlsZSAqZmlsZSkKIAl9CiAKIAl2NGwyX2ZoX2luaXQo JmN0eC0+ZmgsIHZpZGVvX2RldmRhdGEoZmlsZSkpOwotCWZpbGUtPnByaXZhdGVfZGF0YSA9ICZj dHgtPmZoOwogCWN0eC0+ZGV2ID0gZGV2OwogCWhkbCA9ICZjdHgtPmhkbDsKIAl2NGwyX2N0cmxf aGFuZGxlcl9pbml0KGhkbCwgNCk7CkBAIC0xNDMzLDcgKzE0MzIsNyBAQCBzdGF0aWMgaW50IHZp bTJtX29wZW4oc3RydWN0IGZpbGUgKmZpbGUpCiAJCWdvdG8gb3Blbl91bmxvY2s7CiAJfQogCi0J djRsMl9maF9hZGQoJmN0eC0+ZmgpOworCXY0bDJfZmhfYWRkKCZjdHgtPmZoLCBmaWxlKTsKIAlh dG9taWNfaW5jKCZkZXYtPm51bV9pbnN0KTsKIAogCWRwcmludGsoZGV2LCAxLCAiQ3JlYXRlZCBp bnN0YW5jZTogJXAsIG0ybV9jdHg6ICVwXG4iLApkaWZmIC0tZ2l0IGEvZHJpdmVycy9tZWRpYS90 ZXN0LWRyaXZlcnMvdmlzbC92aXNsLWNvcmUuYyBiL2RyaXZlcnMvbWVkaWEvdGVzdC1kcml2ZXJz L3Zpc2wvdmlzbC1jb3JlLmMKaW5kZXggNWJmMzEzNmIzNmViMzBiZTVjZjZiN2Y2NWNhM2FiNzMx NGQ4NGY5OC4uMGY0M2VjMjNmNDBiNDAzNjI5Nzk2NDZiNDdiMDliNzViNzc4NmZiMiAxMDA2NDQK LS0tIGEvZHJpdmVycy9tZWRpYS90ZXN0LWRyaXZlcnMvdmlzbC92aXNsLWNvcmUuYworKysgYi9k cml2ZXJzL21lZGlhL3Rlc3QtZHJpdmVycy92aXNsL3Zpc2wtY29yZS5jCkBAIC0zNDEsNyArMzQx LDYgQEAgc3RhdGljIGludCB2aXNsX29wZW4oc3RydWN0IGZpbGUgKmZpbGUpCiAJY3R4LT50cGdf c3RyX2J1ZiA9IGt6YWxsb2MoVFBHX1NUUl9CVUZfU1osIEdGUF9LRVJORUwpOwogCiAJdjRsMl9m aF9pbml0KCZjdHgtPmZoLCB2aWRlb19kZXZkYXRhKGZpbGUpKTsKLQlmaWxlLT5wcml2YXRlX2Rh dGEgPSAmY3R4LT5maDsKIAljdHgtPmRldiA9IGRldjsKIAogCXJjID0gdmlzbF9pbml0X2N0cmxz KGN0eCk7CkBAIC0zNjEsNyArMzYwLDcgQEAgc3RhdGljIGludCB2aXNsX29wZW4oc3RydWN0IGZp bGUgKmZpbGUpCiAJaWYgKHJjKQogCQlnb3RvIGZyZWVfbTJtX2N0eDsKIAotCXY0bDJfZmhfYWRk KCZjdHgtPmZoKTsKKwl2NGwyX2ZoX2FkZCgmY3R4LT5maCwgZmlsZSk7CiAKIAlkcHJpbnRrKGRl diwgIkNyZWF0ZWQgaW5zdGFuY2U6ICVwLCBtMm1fY3R4OiAlcFxuIiwKIAkJY3R4LCBjdHgtPmZo Lm0ybV9jdHgpOwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9tZWRpYS91c2IvaGRwdnIvaGRwdnItdmlk ZW8uYyBiL2RyaXZlcnMvbWVkaWEvdXNiL2hkcHZyL2hkcHZyLXZpZGVvLmMKaW5kZXggZWExN2Yx YTVmNWIwYTAxZDdhZTE1OWI3ZjAwZDY1Y2U5NTJmNDk3NC4uNmM2ZTQ2N2Y4NTU0OWU4NjU5OGU3 M2QyOTM1MmE4NGRlN2RmMmY0ZCAxMDA2NDQKLS0tIGEvZHJpdmVycy9tZWRpYS91c2IvaGRwdnIv aGRwdnItdmlkZW8uYworKysgYi9kcml2ZXJzL21lZGlhL3VzYi9oZHB2ci9oZHB2ci12aWRlby5j CkBAIC0zODAsOCArMzgwLDcgQEAgc3RhdGljIGludCBoZHB2cl9vcGVuKHN0cnVjdCBmaWxlICpm aWxlKQogCQlyZXR1cm4gLUVOT01FTTsKIAlmaC0+bGVnYWN5X21vZGUgPSB0cnVlOwogCXY0bDJf ZmhfaW5pdCgmZmgtPmZoLCB2aWRlb19kZXZkYXRhKGZpbGUpKTsKLQl2NGwyX2ZoX2FkZCgmZmgt PmZoKTsKLQlmaWxlLT5wcml2YXRlX2RhdGEgPSAmZmgtPmZoOworCXY0bDJfZmhfYWRkKCZmaC0+ ZmgsIGZpbGUpOwogCXJldHVybiAwOwogfQogCmRpZmYgLS1naXQgYS9kcml2ZXJzL21lZGlhL3Vz Yi9wdnJ1c2IyL3B2cnVzYjItdjRsMi5jIGIvZHJpdmVycy9tZWRpYS91c2IvcHZydXNiMi9wdnJ1 c2IyLXY0bDIuYwppbmRleCA0ODFiMDNiYmVjZjgxMzRmNzViMzk4OGU0NWZjMzkyZjA3YWU5MGZk Li4wNGM3N2FmMGM1MWVjMjE3NDE5MzM4NzI1MzAxNTM4M2Q2ZmFjNDg2IDEwMDY0NAotLS0gYS9k cml2ZXJzL21lZGlhL3VzYi9wdnJ1c2IyL3B2cnVzYjItdjRsMi5jCisrKyBiL2RyaXZlcnMvbWVk aWEvdXNiL3B2cnVzYjIvcHZydXNiMi12NGwyLmMKQEAgLTEwMDMsMTAgKzEwMDMsOSBAQCBzdGF0 aWMgaW50IHB2cjJfdjRsMl9vcGVuKHN0cnVjdCBmaWxlICpmaWxlKQogCX0KIAogCWZocC0+Zmls ZSA9IGZpbGU7Ci0JZmlsZS0+cHJpdmF0ZV9kYXRhID0gJmZocC0+Zmg7CiAKIAlmaHAtPmZ3X21v ZGVfZmxhZyA9IHB2cjJfaGR3X2NwdWZ3X2dldF9lbmFibGVkKGhkdyk7Ci0JdjRsMl9maF9hZGQo JmZocC0+ZmgpOworCXY0bDJfZmhfYWRkKCZmaHAtPmZoLCBmaWxlKTsKIAogCXJldHVybiAwOwog fQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9tZWRpYS91c2IvdXZjL3V2Y192NGwyLmMgYi9kcml2ZXJz L21lZGlhL3VzYi91dmMvdXZjX3Y0bDIuYwppbmRleCA2ZGQzMjlhOTcyZmRhNWMyNTc0MjMxYjg1 MjYxMDU2NzZkZjNkNGExLi4wOTY3N2VkNjM5YWU5MjUyYTU3Y2UwOWNkYmNmZDU2N2FkN2FhYmMy IDEwMDY0NAotLS0gYS9kcml2ZXJzL21lZGlhL3VzYi91dmMvdXZjX3Y0bDIuYworKysgYi9kcml2 ZXJzL21lZGlhL3VzYi91dmMvdXZjX3Y0bDIuYwpAQCAtNjAwLDEwICs2MDAsOSBAQCBzdGF0aWMg aW50IHV2Y192NGwyX29wZW4oc3RydWN0IGZpbGUgKmZpbGUpCiAJCXJldHVybiAtRU5PTUVNOwog CiAJdjRsMl9maF9pbml0KCZoYW5kbGUtPnZmaCwgJnN0cmVhbS0+dmRldik7Ci0JdjRsMl9maF9h ZGQoJmhhbmRsZS0+dmZoKTsKKwl2NGwyX2ZoX2FkZCgmaGFuZGxlLT52ZmgsIGZpbGUpOwogCWhh bmRsZS0+Y2hhaW4gPSBzdHJlYW0tPmNoYWluOwogCWhhbmRsZS0+c3RyZWFtID0gc3RyZWFtOwot CWZpbGUtPnByaXZhdGVfZGF0YSA9ICZoYW5kbGUtPnZmaDsKIAogCXJldHVybiAwOwogfQpkaWZm IC0tZ2l0IGEvZHJpdmVycy9tZWRpYS92NGwyLWNvcmUvdjRsMi1maC5jIGIvZHJpdmVycy9tZWRp YS92NGwyLWNvcmUvdjRsMi1maC5jCmluZGV4IDdhNWY3YWE1ZTI1MzQxZGY2MmJiNGUzMzgwYmYx OWY0NmUyZGY5NTUuLmI1OWIxMDg0ZDhjZGYxYjYyZGExMjg3OWUyMWRiZTU2YzIxMDk2NDggMTAw NjQ0Ci0tLSBhL2RyaXZlcnMvbWVkaWEvdjRsMi1jb3JlL3Y0bDItZmguYworKysgYi9kcml2ZXJz L21lZGlhL3Y0bDItY29yZS92NGwyLWZoLmMKQEAgLTQxLDEwICs0MSwxMiBAQCB2b2lkIHY0bDJf ZmhfaW5pdChzdHJ1Y3QgdjRsMl9maCAqZmgsIHN0cnVjdCB2aWRlb19kZXZpY2UgKnZkZXYpCiB9 CiBFWFBPUlRfU1lNQk9MX0dQTCh2NGwyX2ZoX2luaXQpOwogCi12b2lkIHY0bDJfZmhfYWRkKHN0 cnVjdCB2NGwyX2ZoICpmaCkKK3ZvaWQgdjRsMl9maF9hZGQoc3RydWN0IHY0bDJfZmggKmZoLCBz dHJ1Y3QgZmlsZSAqZmlscCkKIHsKIAl1bnNpZ25lZCBsb25nIGZsYWdzOwogCisJZmlscC0+cHJp dmF0ZV9kYXRhID0gZmg7CisKIAl2NGwyX3ByaW9fb3BlbihmaC0+dmRldi0+cHJpbywgJmZoLT5w cmlvKTsKIAlzcGluX2xvY2tfaXJxc2F2ZSgmZmgtPnZkZXYtPmZoX2xvY2ssIGZsYWdzKTsKIAls aXN0X2FkZCgmZmgtPmxpc3QsICZmaC0+dmRldi0+ZmhfbGlzdCk7CkBAIC01NywxMSArNTksMTAg QEAgaW50IHY0bDJfZmhfb3BlbihzdHJ1Y3QgZmlsZSAqZmlscCkKIAlzdHJ1Y3QgdmlkZW9fZGV2 aWNlICp2ZGV2ID0gdmlkZW9fZGV2ZGF0YShmaWxwKTsKIAlzdHJ1Y3QgdjRsMl9maCAqZmggPSBr emFsbG9jKHNpemVvZigqZmgpLCBHRlBfS0VSTkVMKTsKIAotCWZpbHAtPnByaXZhdGVfZGF0YSA9 IGZoOwogCWlmIChmaCA9PSBOVUxMKQogCQlyZXR1cm4gLUVOT01FTTsKIAl2NGwyX2ZoX2luaXQo ZmgsIHZkZXYpOwotCXY0bDJfZmhfYWRkKGZoKTsKKwl2NGwyX2ZoX2FkZChmaCwgZmlscCk7CiAJ cmV0dXJuIDA7CiB9CiBFWFBPUlRfU1lNQk9MX0dQTCh2NGwyX2ZoX29wZW4pOwpkaWZmIC0tZ2l0 IGEvZHJpdmVycy9tZWRpYS92NGwyLWNvcmUvdjRsMi1zdWJkZXYuYyBiL2RyaXZlcnMvbWVkaWEv djRsMi1jb3JlL3Y0bDItc3ViZGV2LmMKaW5kZXggMjlkM2I3ODhiMjg4Njc1YzllYzg0OWJiMTRl MTkzNjM1NmQ5NTc0My4uYmYzNWFjNDM2MjQ5ZmRiZjIxOGVkMDhhNzEyYWJmNTQ2YTQ5YjRlYiAx MDA2NDQKLS0tIGEvZHJpdmVycy9tZWRpYS92NGwyLWNvcmUvdjRsMi1zdWJkZXYuYworKysgYi9k cml2ZXJzL21lZGlhL3Y0bDItY29yZS92NGwyLXN1YmRldi5jCkBAIC04Niw4ICs4Niw3IEBAIHN0 YXRpYyBpbnQgc3ViZGV2X29wZW4oc3RydWN0IGZpbGUgKmZpbGUpCiAJfQogCiAJdjRsMl9maF9p bml0KCZzdWJkZXZfZmgtPnZmaCwgdmRldik7Ci0JdjRsMl9maF9hZGQoJnN1YmRldl9maC0+dmZo KTsKLQlmaWxlLT5wcml2YXRlX2RhdGEgPSAmc3ViZGV2X2ZoLT52Zmg7CisJdjRsMl9maF9hZGQo JnN1YmRldl9maC0+dmZoLCBmaWxlKTsKIAogCWlmIChzZC0+djRsMl9kZXYtPm1kZXYgJiYgc2Qt PmVudGl0eS5ncmFwaF9vYmoubWRldi0+ZGV2KSB7CiAJCXN0cnVjdCBtb2R1bGUgKm93bmVyOwpk aWZmIC0tZ2l0IGEvZHJpdmVycy9zdGFnaW5nL21lZGlhL2lteC9pbXgtbWVkaWEtY3NjLXNjYWxl ci5jIGIvZHJpdmVycy9zdGFnaW5nL21lZGlhL2lteC9pbXgtbWVkaWEtY3NjLXNjYWxlci5jCmlu ZGV4IDA1YTU0MjQyMzU2YzUzZDE5NzcwMDg2ZGZjYzJlZDgxZTFjZGE0YzEuLjlkYzA5NTRlZDlh YWM3MDg4ZTQyYmVhMDNjNmFhZGE0ZWU4ZjJhZTggMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvc3RhZ2lu Zy9tZWRpYS9pbXgvaW14LW1lZGlhLWNzYy1zY2FsZXIuYworKysgYi9kcml2ZXJzL3N0YWdpbmcv bWVkaWEvaW14L2lteC1tZWRpYS1jc2Mtc2NhbGVyLmMKQEAgLTc2NSw4ICs3NjUsNyBAQCBzdGF0 aWMgaW50IGlwdV9jc2Nfc2NhbGVyX29wZW4oc3RydWN0IGZpbGUgKmZpbGUpCiAJY3R4LT5yb3Rf bW9kZSA9IElQVV9ST1RBVEVfTk9ORTsKIAogCXY0bDJfZmhfaW5pdCgmY3R4LT5maCwgdmlkZW9f ZGV2ZGF0YShmaWxlKSk7Ci0JZmlsZS0+cHJpdmF0ZV9kYXRhID0gJmN0eC0+Zmg7Ci0JdjRsMl9m aF9hZGQoJmN0eC0+ZmgpOworCXY0bDJfZmhfYWRkKCZjdHgtPmZoLCBmaWxlKTsKIAljdHgtPnBy aXYgPSBwcml2OwogCiAJY3R4LT5maC5tMm1fY3R4ID0gdjRsMl9tMm1fY3R4X2luaXQocHJpdi0+ bTJtX2RldiwgY3R4LApkaWZmIC0tZ2l0IGEvZHJpdmVycy9zdGFnaW5nL21lZGlhL21lc29uL3Zk ZWMvdmRlYy5jIGIvZHJpdmVycy9zdGFnaW5nL21lZGlhL21lc29uL3ZkZWMvdmRlYy5jCmluZGV4 IGYxZWU1M2Y5ZjI5ODY4YWU3Y2IwMmNlMDA3NjQ2MzFmODIxZWU3NGIuLmI5MjY2NmZmNTBhMTUx OTZkZTAxNDNmMmJhNWJmNDc2YzZmNzcyOWQgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvc3RhZ2luZy9t ZWRpYS9tZXNvbi92ZGVjL3ZkZWMuYworKysgYi9kcml2ZXJzL3N0YWdpbmcvbWVkaWEvbWVzb24v dmRlYy92ZGVjLmMKQEAgLTkwOCw5ICs5MDgsOCBAQCBzdGF0aWMgaW50IHZkZWNfb3BlbihzdHJ1 Y3QgZmlsZSAqZmlsZSkKIAogCXY0bDJfZmhfaW5pdCgmc2Vzcy0+ZmgsIGNvcmUtPnZkZXZfZGVj KTsKIAlzZXNzLT5maC5jdHJsX2hhbmRsZXIgPSAmc2Vzcy0+Y3RybF9oYW5kbGVyOwotCXY0bDJf ZmhfYWRkKCZzZXNzLT5maCk7CisJdjRsMl9maF9hZGQoJnNlc3MtPmZoLCBmaWxlKTsKIAlzZXNz LT5maC5tMm1fY3R4ID0gc2Vzcy0+bTJtX2N0eDsKLQlmaWxlLT5wcml2YXRlX2RhdGEgPSAmc2Vz cy0+Zmg7CiAKIAlyZXR1cm4gMDsKIApkaWZmIC0tZ2l0IGEvZHJpdmVycy9zdGFnaW5nL21lZGlh L3N1bnhpL2NlZHJ1cy9jZWRydXMuYyBiL2RyaXZlcnMvc3RhZ2luZy9tZWRpYS9zdW54aS9jZWRy dXMvY2VkcnVzLmMKaW5kZXggODBiNDMxODdmNmVlZjgyN2M3MjEyYTYwMWFhMjA1NmRiYzYwNmJk NC4uZWJlZmQ2NDZkYmRiNGU5OThiZjZhOGEwZjBiZTZkN2U0YmY3ZDI4YiAxMDA2NDQKLS0tIGEv ZHJpdmVycy9zdGFnaW5nL21lZGlhL3N1bnhpL2NlZHJ1cy9jZWRydXMuYworKysgYi9kcml2ZXJz L3N0YWdpbmcvbWVkaWEvc3VueGkvY2VkcnVzL2NlZHJ1cy5jCkBAIC0zNjYsNyArMzY2LDYgQEAg c3RhdGljIGludCBjZWRydXNfb3BlbihzdHJ1Y3QgZmlsZSAqZmlsZSkKIAl9CiAKIAl2NGwyX2Zo X2luaXQoJmN0eC0+ZmgsIHZpZGVvX2RldmRhdGEoZmlsZSkpOwotCWZpbGUtPnByaXZhdGVfZGF0 YSA9ICZjdHgtPmZoOwogCWN0eC0+ZGV2ID0gZGV2OwogCWN0eC0+Yml0X2RlcHRoID0gODsKIApA QCAtMzgzLDcgKzM4Miw3IEBAIHN0YXRpYyBpbnQgY2VkcnVzX29wZW4oc3RydWN0IGZpbGUgKmZp bGUpCiAJaWYgKHJldCkKIAkJZ290byBlcnJfbTJtX3JlbGVhc2U7CiAKLQl2NGwyX2ZoX2FkZCgm Y3R4LT5maCk7CisJdjRsMl9maF9hZGQoJmN0eC0+ZmgsIGZpbGUpOwogCiAJbXV0ZXhfdW5sb2Nr KCZkZXYtPmRldl9tdXRleCk7CiAKZGlmZiAtLWdpdCBhL2RyaXZlcnMvc3RhZ2luZy9tb3N0L3Zp ZGVvL3ZpZGVvLmMgYi9kcml2ZXJzL3N0YWdpbmcvbW9zdC92aWRlby92aWRlby5jCmluZGV4IDEx NjMzMWNlYWQyYTY2NzZmMmMwMThiM2Y4ZmMxMGIwNzE2ZGZjM2EuLjI0YTY4ZTNlNTQxOTVjZjVm ODk1MmEzNWZlMTAzZDkzYmIwZmQzZTUgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvc3RhZ2luZy9tb3N0 L3ZpZGVvL3ZpZGVvLmMKKysrIGIvZHJpdmVycy9zdGFnaW5nL21vc3QvdmlkZW8vdmlkZW8uYwpA QCAtOTYsOSArOTYsNyBAQCBzdGF0aWMgaW50IGNvbXBfdmRldl9vcGVuKHN0cnVjdCBmaWxlICpm aWxwKQogCiAJZmgtPm1kZXYgPSBtZGV2OwogCXY0bDJfZmhfaW5pdCgmZmgtPmZoLCB2ZGV2KTsK LQlmaWxwLT5wcml2YXRlX2RhdGEgPSAmZmgtPmZoOwotCi0JdjRsMl9maF9hZGQoJmZoLT5maCk7 CisJdjRsMl9maF9hZGQoJmZoLT5maCwgZmlscCk7CiAKIAlyZXQgPSBtb3N0X3N0YXJ0X2NoYW5u ZWwobWRldi0+aWZhY2UsIG1kZXYtPmNoX2lkeCwgJmNvbXApOwogCWlmIChyZXQpIHsKZGlmZiAt LWdpdCBhL2RyaXZlcnMvdXNiL2dhZGdldC9mdW5jdGlvbi91dmNfdjRsMi5jIGIvZHJpdmVycy91 c2IvZ2FkZ2V0L2Z1bmN0aW9uL3V2Y192NGwyLmMKaW5kZXggODg2MzAwYTI5YjkwOGE2ZGRhM2Uy ZGZjYjZiMzQxNGY3ODJiMTcyYi4uNjgwZjI1ZDE3ZGMyYzdiOTk1Mjk0NDFkZThmMDc5YWJlM2Iz NDExZiAxMDA2NDQKLS0tIGEvZHJpdmVycy91c2IvZ2FkZ2V0L2Z1bmN0aW9uL3V2Y192NGwyLmMK KysrIGIvZHJpdmVycy91c2IvZ2FkZ2V0L2Z1bmN0aW9uL3V2Y192NGwyLmMKQEAgLTY3MiwxMCAr NjcyLDkgQEAgdXZjX3Y0bDJfb3BlbihzdHJ1Y3QgZmlsZSAqZmlsZSkKIAkJcmV0dXJuIC1FTk9N RU07CiAKIAl2NGwyX2ZoX2luaXQoJmhhbmRsZS0+dmZoLCB2ZGV2KTsKLQl2NGwyX2ZoX2FkZCgm aGFuZGxlLT52ZmgpOworCXY0bDJfZmhfYWRkKCZoYW5kbGUtPnZmaCwgZmlsZSk7CiAKIAloYW5k bGUtPmRldmljZSA9ICZ1dmMtPnZpZGVvOwotCWZpbGUtPnByaXZhdGVfZGF0YSA9ICZoYW5kbGUt PnZmaDsKIAogCXJldHVybiAwOwogfQpkaWZmIC0tZ2l0IGEvaW5jbHVkZS9tZWRpYS92NGwyLWZo LmggYi9pbmNsdWRlL21lZGlhL3Y0bDItZmguaAppbmRleCAxNGU3MTM2ZTY5M2YwYTdiOGIyNTk1 OTIwMDYwMzAyOGUwZGIzNmFjLi5kOGZjZjQ5ZjEwZTA5NDUyYjczNDk5ZjRhOWJkMTI4NWJjMjgz NWE1IDEwMDY0NAotLS0gYS9pbmNsdWRlL21lZGlhL3Y0bDItZmguaAorKysgYi9pbmNsdWRlL21l ZGlhL3Y0bDItZmguaApAQCAtODcsMTEgKzg3LDE0IEBAIHZvaWQgdjRsMl9maF9pbml0KHN0cnVj dCB2NGwyX2ZoICpmaCwgc3RydWN0IHZpZGVvX2RldmljZSAqdmRldik7CiAgKiB2NGwyX2ZoX2Fk ZCAtIEFkZCB0aGUgZmggdG8gdGhlIGxpc3Qgb2YgZmlsZSBoYW5kbGVzIG9uIGEgdmlkZW9fZGV2 aWNlLgogICoKICAqIEBmaDogcG9pbnRlciB0byAmc3RydWN0IHY0bDJfZmgKKyAqIEBmaWxwOiBw b2ludGVyIHRvICZzdHJ1Y3QgZmlsZSBhc3NvY2lhdGVkIHdpdGggQGZoCisgKgorICogVGhlIGZ1 bmN0aW9uIHNldHMgZmlscC0+cHJpdmF0ZV9kYXRhIHRvIHBvaW50IHRvIEBmaC4KICAqCiAgKiAu LiBub3RlOjoKICAqICAgIFRoZSBAZmggZmlsZSBoYW5kbGUgbXVzdCBiZSBpbml0aWFsaXNlZCBm aXJzdC4KICAqLwotdm9pZCB2NGwyX2ZoX2FkZChzdHJ1Y3QgdjRsMl9maCAqZmgpOwordm9pZCB2 NGwyX2ZoX2FkZChzdHJ1Y3QgdjRsMl9maCAqZmgsIHN0cnVjdCBmaWxlICpmaWxwKTsKIAogLyoq CiAgKiB2NGwyX2ZoX29wZW4gLSBBbmNpbGxhcnkgcm91dGluZSB0aGF0IGNhbiBiZSB1c2VkIGFz IHRoZSBvcGVuXChcKSBvcAoKLS0gCjIuNDkuMAoKCl9fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fCmxpbnV4LWFtbG9naWMgbWFpbGluZyBsaXN0CmxpbnV4LWFt bG9naWNAbGlzdHMuaW5mcmFkZWFkLm9yZwpodHRwOi8vbGlzdHMuaW5mcmFkZWFkLm9yZy9tYWls bWFuL2xpc3RpbmZvL2xpbnV4LWFtbG9naWMK