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 6884DC678D4 for ; Wed, 1 Mar 2023 20:15:48 +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:MIME-Version:References:In-Reply-To: Message-Id:Date:Subject:Cc:To:From:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=EqHWEAErPdtsmwshWaxbCZH1xi/TKlckWjPIDPJvG+A=; b=bVD5v7FoeAVe8o l5Fd29HNMwyX1jaJ7XclMtbpAGH33Q5lAtjYXpwJReciOJzN/g9GZSG120tvx4J8wlqRQSOH4P8Iu arOSjNRX6CHMZHF6cLChlimVt48QLSbYtPhuWcb6p/bPDsA3Y7Y6YwgsldBgs9YJVvhokfui8iVpG ziU+VKLctaP0TuJ4ATh4M3qS/lzNt9D8RIwerCf7nPEoQlP+K1rQX4tXrzO1qcsWkc40/VIEfdsoh uXNFeHgH//Q4MOFIamuwMNIgvEVSzWuBwYotV9CmoDFWj4Kd/JxXsYhXhCZvr4YlXYZxnxGqSh2Cc 1bsVcwotYqv4935g7QkA==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1pXSrL-00HT4m-1r; Wed, 01 Mar 2023 20:15:31 +0000 Received: from mail-wm1-x32c.google.com ([2a00:1450:4864:20::32c]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1pXSrA-00HSyZ-Gu for linux-amlogic@lists.infradead.org; Wed, 01 Mar 2023 20:15:28 +0000 Received: by mail-wm1-x32c.google.com with SMTP id t25-20020a1c7719000000b003eb052cc5ccso294496wmi.4 for ; Wed, 01 Mar 2023 12:15:18 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1677701717; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=0HjbdoBjX6c5UeLhSG1rbDyM1zgsqlgq1fI+l+tcxLM=; b=PZThdnWgYCnM5QXUT5KQw/HJDXu3kU8O0fC6EifT3rkN47u/7ud/jFm2qGlEg2cATp bf9xV8Yt4F76ICcpwuLl9c9lEdU1wufZhwg4dPSfxxlL4DM6fAh3tiGJi9VUjtvKiaBb 6Uf1Ph3jxB5ALc3LhUsf3yKCAJ+mhbkpqq0RpVw41ThwEzoyDqcHOdVQAkxXVZV0NLxy lcR82YvEPfu7UKzO8/pwWZwW2hOsVMYhzGZRhtIT7CwpMM5H8aW6l107MGHkYFLn4LUR 2hgAoQRKozTWGpfClJhlQCpULRvkUiirT2xPYFa0H9Pr4LB0MRh73Si5c6kI2Xiwskzo EuHA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1677701717; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=0HjbdoBjX6c5UeLhSG1rbDyM1zgsqlgq1fI+l+tcxLM=; b=XIdRneAA4Xx3GkQ35wTFFRPBly61pKsGRGeq+A2JqiZlYCBVVNPHfSv8WisBIjIUE4 Omm2DRUwmEgVXYTbM+84WAE0xob3KTaoNnBl21lmksyQtwI9Mr91KL0d6FIvIqRtn1Vl PgYZFQaCurMQ0PoaZTj11s8uU8kbvjaxofEsMslDa/dUlnv2uKrBWuCtUEXkqnTXSaNn 3Wjvz/Wxjh/NmXlkJi2/oeGKf2o4A9deiGkGzeHJ9m2SNyWrzkyjxEzu98v92pjXh9of B0T4x1mDQPJJLzUF+9ZtCVBJ0EDyFjPtsZ5c/6ejq86vynAruiReOnu1eCqqQSiLpGeh DFzw== X-Gm-Message-State: AO0yUKXvBkbvPyOn5rOxr0vGk6mJSHaWFsdvvoUHMp0N06UlJrVH3nfa 1ZL2C31L8Lqq+bQv/8X7K0BETQ== X-Google-Smtp-Source: AK7set/t7hT2+c9eutqwVC2JnnYWqL+Fl4wrXn9xFR1MX66CpVZungkpfz9/cNEycvs7GsCw7W5XfQ== X-Received: by 2002:a05:600c:a293:b0:3eb:3e24:59e2 with SMTP id hu19-20020a05600ca29300b003eb3e2459e2mr5845407wmb.25.1677701716503; Wed, 01 Mar 2023 12:15:16 -0800 (PST) Received: from mai.box.freepro.com ([2a05:6e02:1041:c10:6ffe:ce4f:bd31:1e6d]) by smtp.gmail.com with ESMTPSA id x16-20020a1c7c10000000b003e70a7c1b73sm576546wmc.16.2023.03.01.12.15.13 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 01 Mar 2023 12:15:15 -0800 (PST) From: Daniel Lezcano To: rafael@kernel.org, daniel.lezcano@linaro.org Cc: linux-pm@vger.kernel.org, linux-kernel@vger.kernel.org, =?UTF-8?q?Niklas=20S=C3=B6derlund?= , Mark Brown , AngeloGioacchino Del Regno , Balsam CHIHI , Adam Ward , Baolin Wang , Jernej Skrabec , "Rafael J . Wysocki" , Florian Fainelli , Dhruva Gole , Guillaume La Roque , Amit Kucheria , Zhang Rui , Miquel Raynal , Broadcom internal kernel review list , Ray Jui , Scott Branden , Markus Mayer , Support Opensource , Shawn Guo , Sascha Hauer , Pengutronix Kernel Team , Fabio Estevam , NXP Linux Team , Thara Gopinath , Andy Gross , Bjorn Andersson , Konrad Dybcio , =?UTF-8?q?Niklas=20S=C3=B6derlund?= , Heiko Stuebner , Bartlomiej Zolnierkiewicz , Krzysztof Kozlowski , Alim Akhtar , Orson Zhai , Chunyan Zhang , Maxime Coquelin , Alexandre Torgue , Vasily Khoruzhick , Yangtao Li , Chen-Yu Tsai , Samuel Holland , Thierry Reding , Jonathan Hunter , Talel Shenhar , Eduardo Valentin , Keerthy , Kunihiko Hayashi , Masami Hiramatsu , Matthias Brugger , Stefan Wahren , Neil Armstrong , ye xingchen , Zheng Yongjun , Srinivas Pandruvada , Davidlohr Bueso , Sumeet Pawnikar , "Lee, Chun-Yi" , Shang XiaoJing , Tim Zimmermann , Yang Li , Jiang Jian , Daniel Golle , Randy Dunlap , Ido Schimmel , Minghao Chi , Johan Hovold , Mikko Perttunen , linux-amlogic@lists.infradead.org (open list:THERMAL DRIVER FOR AMLOGIC SOCS), linux-rpi-kernel@lists.infradead.org (moderated list:BROADCOM BCM2711/BCM2835 ARM ARCHITECTURE), linux-arm-kernel@lists.infradead.org (moderated list:BROADCOM BCM2711/BCM2835 ARM ARCHITECTURE), linux-arm-msm@vger.kernel.org (open list:QUALCOMM TSENS THERMAL DRIVER), linux-renesas-soc@vger.kernel.org (open list:RENESAS R-CAR THERMAL DRIVERS), linux-rockchip@lists.infradead.org (open list:ARM/Rockchip SoC support), linux-samsung-soc@vger.kernel.org (open list:SAMSUNG THERMAL DRIVER), linux-stm32@st-md-mailman.stormreply.com (moderated list:ARM/STM32 ARCHITECTURE), linux-sunxi@lists.linux.dev (open list:ARM/Allwinner sunXi SoC support), linux-tegra@vger.kernel.org (open list:TEGRA ARCHITECTURE SUPPORT), linux-omap@vger.kernel.org (open list:TI BANDGAP AND THERMAL DRIVER), linux-mediatek@lists.infradead.org (moderated list:ARM/Mediatek SoC support) Subject: [PATCH v5 02/18] thermal/core: Use the thermal zone 'devdata' accessor in thermal located drivers Date: Wed, 1 Mar 2023 21:14:30 +0100 Message-Id: <20230301201446.3713334-3-daniel.lezcano@linaro.org> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20230301201446.3713334-1-daniel.lezcano@linaro.org> References: <20230301201446.3713334-1-daniel.lezcano@linaro.org> MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20230301_121520_729793_F95B040C X-CRM114-Status: GOOD ( 18.32 ) 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 VGhlIHRoZXJtYWwgem9uZSBkZXZpY2Ugc3RydWN0dXJlIGlzIGV4cG9zZWQgdG8gdGhlIGRpZmZl cmVudCBkcml2ZXJzCmFuZCBvYnZpb3VzbHkgdGhleSBhY2Nlc3MgdGhlIGludGVybmFscyB3aGls ZSB0aGF0IHNob3VsZCBiZQpyZXN0cmljdGVkIHRvIHRoZSBjb3JlIHRoZXJtYWwgY29kZS4KCklu IG9yZGVyIHRvIHNlbGYtZW5jYXBzdWxhdGUgdGhlIHRoZXJtYWwgY29yZSBjb2RlLCB3ZSBuZWVk IHRvIHByZXZlbnQKdGhlIGRyaXZlcnMgYWNjZXNzaW5nIGRpcmVjdGx5IHRoZSB0aGVybWFsIHpv bmUgc3RydWN0dXJlIGFuZCBwcm92aWRlCmFjY2Vzc29yIGZ1bmN0aW9ucyB0byBkZWFsIHdpdGgu CgpVc2UgdGhlIGRldmRhdGEgYWNjZXNzb3IgaW50cm9kdWNlZCBpbiB0aGUgcHJldmlvdXMgcGF0 Y2guCgpObyBmdW5jdGlvbmFsIGNoYW5nZXMgaW50ZW5kZWQuCgpTaWduZWQtb2ZmLWJ5OiBEYW5p ZWwgTGV6Y2FubyA8ZGFuaWVsLmxlemNhbm9AbGluYXJvLm9yZz4KUmV2aWV3ZWQtYnk6IE5pa2xh cyBTw7ZkZXJsdW5kIDxuaWtsYXMuc29kZXJsdW5kK3JlbmVzYXNAcmFnbmF0ZWNoLnNlPiAjUi1D YXIKQWNrZWQtYnk6IE1hcmsgQnJvd24gPGJyb29uaWVAa2VybmVsLm9yZz4KUmV2aWV3ZWQtYnk6 IEFuZ2Vsb0dpb2FjY2hpbm8gRGVsIFJlZ25vIDxhbmdlbG9naW9hY2NoaW5vLmRlbHJlZ25vQGNv bGxhYm9yYS5jb20+ICNNZWRpYVRlayBhdXhhZGMgYW5kIGx2dHMKUmV2aWV3ZWQtYnk6IEJhbHNh bSBDSElISSA8YmNoaWhpQGJheWxpYnJlLmNvbT4gI01lZGlhdGVrIGx2dHMKUmV2aWV3ZWQtYnk6 IEFkYW0gV2FyZCA8RExHLUFkYW0uV2FyZC5vcGVuc291cmNlQGRtLnJlbmVzYXMuY29tPiAjZGE5 MDYyClJldmlld2VkLWJ5OiBCYW9saW4gV2FuZyA8YmFvbGluLndhbmdAbGludXguYWxpYmFiYS5j b20+ICAjc3ByZWFkCkFja2VkLWJ5OiBKZXJuZWogU2tyYWJlYyA8amVybmVqLnNrcmFiZWNAZ21h aWwuY29tPiAjc3VuOGlfdGhlcm1hbApBY2tlZC1ieTogUmFmYWVsIEouIFd5c29ja2kgPHJhZmFl bC5qLnd5c29ja2lAaW50ZWwuY29tPgpBY2tlZC1ieTogRmxvcmlhbiBGYWluZWxsaSA8Zi5mYWlu ZWxsaUBnbWFpbC5jb20+ICNCcm9hZGNvbQpSZXZpZXdlZC1ieTogRGhydXZhIEdvbGUgPGQtZ29s ZUB0aS5jb20+ICMgSzMgYmFuZGdhcAotLS0KIGRyaXZlcnMvdGhlcm1hbC9hbWxvZ2ljX3RoZXJt YWwuYyAgICAgICAgICAgICAgICAgICB8ICAyICstCiBkcml2ZXJzL3RoZXJtYWwvYXJtYWRhX3Ro ZXJtYWwuYyAgICAgICAgICAgICAgICAgICAgfCAgNCArKy0tCiBkcml2ZXJzL3RoZXJtYWwvYnJv YWRjb20vYmNtMjcxMV90aGVybWFsLmMgICAgICAgICAgfCAgMiArLQogZHJpdmVycy90aGVybWFs L2Jyb2FkY29tL2JjbTI4MzVfdGhlcm1hbC5jICAgICAgICAgIHwgIDIgKy0KIGRyaXZlcnMvdGhl cm1hbC9icm9hZGNvbS9icmNtc3RiX3RoZXJtYWwuYyAgICAgICAgICB8ICA0ICsrLS0KIGRyaXZl cnMvdGhlcm1hbC9icm9hZGNvbS9ucy10aGVybWFsLmMgICAgICAgICAgICAgICB8ICAyICstCiBk cml2ZXJzL3RoZXJtYWwvYnJvYWRjb20vc3ItdGhlcm1hbC5jICAgICAgICAgICAgICAgfCAgMiAr LQogZHJpdmVycy90aGVybWFsL2RhOTA2Mi10aGVybWFsLmMgICAgICAgICAgICAgICAgICAgIHwg IDIgKy0KIGRyaXZlcnMvdGhlcm1hbC9kYjg1MDBfdGhlcm1hbC5jICAgICAgICAgICAgICAgICAg ICB8ICAyICstCiBkcml2ZXJzL3RoZXJtYWwvZG92ZV90aGVybWFsLmMgICAgICAgICAgICAgICAg ICAgICAgfCAgMiArLQogZHJpdmVycy90aGVybWFsL2hpc2lfdGhlcm1hbC5jICAgICAgICAgICAg ICAgICAgICAgIHwgIDIgKy0KIGRyaXZlcnMvdGhlcm1hbC9pbXg4bW1fdGhlcm1hbC5jICAgICAg ICAgICAgICAgICAgICB8ICAyICstCiBkcml2ZXJzL3RoZXJtYWwvaW14X3NjX3RoZXJtYWwuYyAg ICAgICAgICAgICAgICAgICAgfCAgMiArLQogZHJpdmVycy90aGVybWFsL2lteF90aGVybWFsLmMg ICAgICAgICAgICAgICAgICAgICAgIHwgIDYgKysrLS0tCiAuLi4vdGhlcm1hbC9pbnRlbC9pbnQz NDB4X3RoZXJtYWwvaW50MzQwMF90aGVybWFsLmMgfCAgMiArLQogLi4uL2ludGVsL2ludDM0MHhf dGhlcm1hbC9pbnQzNDB4X3RoZXJtYWxfem9uZS5jICAgIHwgIDQgKystLQogLi4uL2ludDM0MHhf dGhlcm1hbC9wcm9jZXNzb3JfdGhlcm1hbF9kZXZpY2VfcGNpLmMgIHwgIDQgKystLQogZHJpdmVy cy90aGVybWFsL2ludGVsL2ludGVsX3BjaF90aGVybWFsLmMgICAgICAgICAgIHwgIDIgKy0KIGRy aXZlcnMvdGhlcm1hbC9pbnRlbC9pbnRlbF9xdWFya19kdHNfdGhlcm1hbC5jICAgICB8ICA2ICsr Ky0tLQogZHJpdmVycy90aGVybWFsL2ludGVsL2ludGVsX3NvY19kdHNfaW9zZi5jICAgICAgICAg IHwgMTMgKysrKystLS0tLS0tLQogZHJpdmVycy90aGVybWFsL2ludGVsL3g4Nl9wa2dfdGVtcF90 aGVybWFsLmMgICAgICAgIHwgIDQgKystLQogZHJpdmVycy90aGVybWFsL2szX2JhbmRnYXAuYyAg ICAgICAgICAgICAgICAgICAgICAgIHwgIDIgKy0KIGRyaXZlcnMvdGhlcm1hbC9rM19qNzJ4eF9i YW5kZ2FwLmMgICAgICAgICAgICAgICAgICB8ICAyICstCiBkcml2ZXJzL3RoZXJtYWwva2lya3dv b2RfdGhlcm1hbC5jICAgICAgICAgICAgICAgICAgfCAgMiArLQogZHJpdmVycy90aGVybWFsL21h eDc3NjIwX3RoZXJtYWwuYyAgICAgICAgICAgICAgICAgIHwgIDIgKy0KIGRyaXZlcnMvdGhlcm1h bC9tZWRpYXRlay9hdXhhZGNfdGhlcm1hbC5jICAgICAgICAgICB8ICAyICstCiBkcml2ZXJzL3Ro ZXJtYWwvbWVkaWF0ZWsvbHZ0c190aGVybWFsLmMgICAgICAgICAgICAgfCAgNCArKy0tCiBkcml2 ZXJzL3RoZXJtYWwvcWNvbS9xY29tLXNwbWktYWRjLXRtNS5jICAgICAgICAgICAgfCAgNCArKy0t CiBkcml2ZXJzL3RoZXJtYWwvcWNvbS9xY29tLXNwbWktdGVtcC1hbGFybS5jICAgICAgICAgfCAg NCArKy0tCiBkcml2ZXJzL3RoZXJtYWwvcWNvbS90c2Vucy5jICAgICAgICAgICAgICAgICAgICAg ICAgfCAgNCArKy0tCiBkcml2ZXJzL3RoZXJtYWwvcW9yaXFfdGhlcm1hbC5jICAgICAgICAgICAg ICAgICAgICAgfCAgMiArLQogZHJpdmVycy90aGVybWFsL3JjYXJfZ2VuM190aGVybWFsLmMgICAg ICAgICAgICAgICAgIHwgIDQgKystLQogZHJpdmVycy90aGVybWFsL3JjYXJfdGhlcm1hbC5jICAg ICAgICAgICAgICAgICAgICAgIHwgIDMgKy0tCiBkcml2ZXJzL3RoZXJtYWwvcm9ja2NoaXBfdGhl cm1hbC5jICAgICAgICAgICAgICAgICAgfCAgNCArKy0tCiBkcml2ZXJzL3RoZXJtYWwvcnpnMmxf dGhlcm1hbC5jICAgICAgICAgICAgICAgICAgICAgfCAgMiArLQogZHJpdmVycy90aGVybWFsL3Nh bXN1bmcvZXh5bm9zX3RtdS5jICAgICAgICAgICAgICAgIHwgIDQgKystLQogZHJpdmVycy90aGVy bWFsL3NwZWFyX3RoZXJtYWwuYyAgICAgICAgICAgICAgICAgICAgIHwgIDggKysrKy0tLS0KIGRy aXZlcnMvdGhlcm1hbC9zcHJkX3RoZXJtYWwuYyAgICAgICAgICAgICAgICAgICAgICB8ICAyICst CiBkcml2ZXJzL3RoZXJtYWwvc3Qvc3RfdGhlcm1hbC5jICAgICAgICAgICAgICAgICAgICAgfCAg MiArLQogZHJpdmVycy90aGVybWFsL3N0L3N0bV90aGVybWFsLmMgICAgICAgICAgICAgICAgICAg IHwgIDQgKystLQogZHJpdmVycy90aGVybWFsL3N1bjhpX3RoZXJtYWwuYyAgICAgICAgICAgICAg ICAgICAgIHwgIDIgKy0KIGRyaXZlcnMvdGhlcm1hbC90ZWdyYS9zb2N0aGVybS5jICAgICAgICAg ICAgICAgICAgICB8ICA2ICsrKy0tLQogZHJpdmVycy90aGVybWFsL3RlZ3JhL3RlZ3JhLWJwbXAt dGhlcm1hbC5jICAgICAgICAgIHwgIDYgKysrKy0tCiBkcml2ZXJzL3RoZXJtYWwvdGVncmEvdGVn cmEzMC10c2Vuc29yLmMgICAgICAgICAgICAgfCAgNCArKy0tCiBkcml2ZXJzL3RoZXJtYWwvdGhl cm1hbC1nZW5lcmljLWFkYy5jICAgICAgICAgICAgICAgfCAgMiArLQogZHJpdmVycy90aGVybWFs L3RoZXJtYWxfbW1pby5jICAgICAgICAgICAgICAgICAgICAgIHwgIDIgKy0KIGRyaXZlcnMvdGhl cm1hbC90aS1zb2MtdGhlcm1hbC90aS10aGVybWFsLWNvbW1vbi5jICB8ICA0ICsrLS0KIGRyaXZl cnMvdGhlcm1hbC91bmlwaGllcl90aGVybWFsLmMgICAgICAgICAgICAgICAgICB8ICAyICstCiA0 OCBmaWxlcyBjaGFuZ2VkLCA3OSBpbnNlcnRpb25zKCspLCA4MSBkZWxldGlvbnMoLSkKCmRpZmYg LS1naXQgYS9kcml2ZXJzL3RoZXJtYWwvYW1sb2dpY190aGVybWFsLmMgYi9kcml2ZXJzL3RoZXJt YWwvYW1sb2dpY190aGVybWFsLmMKaW5kZXggOTIzNWZkYTRlYzFlLi5kZmNjOTNlNDVjZGQgMTAw NjQ0Ci0tLSBhL2RyaXZlcnMvdGhlcm1hbC9hbWxvZ2ljX3RoZXJtYWwuYworKysgYi9kcml2ZXJz L3RoZXJtYWwvYW1sb2dpY190aGVybWFsLmMKQEAgLTE4MSw3ICsxODEsNyBAQCBzdGF0aWMgaW50 IGFtbG9naWNfdGhlcm1hbF9kaXNhYmxlKHN0cnVjdCBhbWxvZ2ljX3RoZXJtYWwgKmRhdGEpCiBz dGF0aWMgaW50IGFtbG9naWNfdGhlcm1hbF9nZXRfdGVtcChzdHJ1Y3QgdGhlcm1hbF96b25lX2Rl dmljZSAqdHosIGludCAqdGVtcCkKIHsKIAl1bnNpZ25lZCBpbnQgdHZhbDsKLQlzdHJ1Y3QgYW1s b2dpY190aGVybWFsICpwZGF0YSA9IHR6LT5kZXZkYXRhOworCXN0cnVjdCBhbWxvZ2ljX3RoZXJt YWwgKnBkYXRhID0gdGhlcm1hbF96b25lX2RldmljZV9wcml2KHR6KTsKIAogCWlmICghcGRhdGEp CiAJCXJldHVybiAtRUlOVkFMOwpkaWZmIC0tZ2l0IGEvZHJpdmVycy90aGVybWFsL2FybWFkYV90 aGVybWFsLmMgYi9kcml2ZXJzL3RoZXJtYWwvYXJtYWRhX3RoZXJtYWwuYwppbmRleCAyZWZjMjIy YTM3OWIuLmViZDYwNjg2MWE2MSAxMDA2NDQKLS0tIGEvZHJpdmVycy90aGVybWFsL2FybWFkYV90 aGVybWFsLmMKKysrIGIvZHJpdmVycy90aGVybWFsL2FybWFkYV90aGVybWFsLmMKQEAgLTM5OCw3 ICszOTgsNyBAQCBzdGF0aWMgaW50IGFybWFkYV9yZWFkX3NlbnNvcihzdHJ1Y3QgYXJtYWRhX3Ro ZXJtYWxfcHJpdiAqcHJpdiwgaW50ICp0ZW1wKQogc3RhdGljIGludCBhcm1hZGFfZ2V0X3RlbXBf bGVnYWN5KHN0cnVjdCB0aGVybWFsX3pvbmVfZGV2aWNlICp0aGVybWFsLAogCQkJCSAgaW50ICp0 ZW1wKQogewotCXN0cnVjdCBhcm1hZGFfdGhlcm1hbF9wcml2ICpwcml2ID0gdGhlcm1hbC0+ZGV2 ZGF0YTsKKwlzdHJ1Y3QgYXJtYWRhX3RoZXJtYWxfcHJpdiAqcHJpdiA9IHRoZXJtYWxfem9uZV9k ZXZpY2VfcHJpdih0aGVybWFsKTsKIAlpbnQgcmV0OwogCiAJLyogVmFsaWQgY2hlY2sgKi8KQEAg LTQyMCw3ICs0MjAsNyBAQCBzdGF0aWMgc3RydWN0IHRoZXJtYWxfem9uZV9kZXZpY2Vfb3BzIGxl Z2FjeV9vcHMgPSB7CiAKIHN0YXRpYyBpbnQgYXJtYWRhX2dldF90ZW1wKHN0cnVjdCB0aGVybWFs X3pvbmVfZGV2aWNlICp0eiwgaW50ICp0ZW1wKQogewotCXN0cnVjdCBhcm1hZGFfdGhlcm1hbF9z ZW5zb3IgKnNlbnNvciA9IHR6LT5kZXZkYXRhOworCXN0cnVjdCBhcm1hZGFfdGhlcm1hbF9zZW5z b3IgKnNlbnNvciA9IHRoZXJtYWxfem9uZV9kZXZpY2VfcHJpdih0eik7CiAJc3RydWN0IGFybWFk YV90aGVybWFsX3ByaXYgKnByaXYgPSBzZW5zb3ItPnByaXY7CiAJaW50IHJldDsKIApkaWZmIC0t Z2l0IGEvZHJpdmVycy90aGVybWFsL2Jyb2FkY29tL2JjbTI3MTFfdGhlcm1hbC5jIGIvZHJpdmVy cy90aGVybWFsL2Jyb2FkY29tL2JjbTI3MTFfdGhlcm1hbC5jCmluZGV4IDFmODY1MWQxNTE2MC4u ZmNmY2JiZjA0NGE0IDEwMDY0NAotLS0gYS9kcml2ZXJzL3RoZXJtYWwvYnJvYWRjb20vYmNtMjcx MV90aGVybWFsLmMKKysrIGIvZHJpdmVycy90aGVybWFsL2Jyb2FkY29tL2JjbTI3MTFfdGhlcm1h bC5jCkBAIC0zMyw3ICszMyw3IEBAIHN0cnVjdCBiY20yNzExX3RoZXJtYWxfcHJpdiB7CiAKIHN0 YXRpYyBpbnQgYmNtMjcxMV9nZXRfdGVtcChzdHJ1Y3QgdGhlcm1hbF96b25lX2RldmljZSAqdHos IGludCAqdGVtcCkKIHsKLQlzdHJ1Y3QgYmNtMjcxMV90aGVybWFsX3ByaXYgKnByaXYgPSB0ei0+ ZGV2ZGF0YTsKKwlzdHJ1Y3QgYmNtMjcxMV90aGVybWFsX3ByaXYgKnByaXYgPSB0aGVybWFsX3pv bmVfZGV2aWNlX3ByaXYodHopOwogCWludCBzbG9wZSA9IHRoZXJtYWxfem9uZV9nZXRfc2xvcGUo dHopOwogCWludCBvZmZzZXQgPSB0aGVybWFsX3pvbmVfZ2V0X29mZnNldCh0eik7CiAJdTMyIHZh bDsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvdGhlcm1hbC9icm9hZGNvbS9iY20yODM1X3RoZXJtYWwu YyBiL2RyaXZlcnMvdGhlcm1hbC9icm9hZGNvbS9iY20yODM1X3RoZXJtYWwuYwppbmRleCAyMzkx OGJiNzZhZTYuLjg2YWFmNDU5ZGUzNyAxMDA2NDQKLS0tIGEvZHJpdmVycy90aGVybWFsL2Jyb2Fk Y29tL2JjbTI4MzVfdGhlcm1hbC5jCisrKyBiL2RyaXZlcnMvdGhlcm1hbC9icm9hZGNvbS9iY20y ODM1X3RoZXJtYWwuYwpAQCAtOTAsNyArOTAsNyBAQCBzdGF0aWMgaW50IGJjbTI4MzVfdGhlcm1h bF90ZW1wMmFkYyhpbnQgdGVtcCwgaW50IG9mZnNldCwgaW50IHNsb3BlKQogCiBzdGF0aWMgaW50 IGJjbTI4MzVfdGhlcm1hbF9nZXRfdGVtcChzdHJ1Y3QgdGhlcm1hbF96b25lX2RldmljZSAqdHos IGludCAqdGVtcCkKIHsKLQlzdHJ1Y3QgYmNtMjgzNV90aGVybWFsX2RhdGEgKmRhdGEgPSB0ei0+ ZGV2ZGF0YTsKKwlzdHJ1Y3QgYmNtMjgzNV90aGVybWFsX2RhdGEgKmRhdGEgPSB0aGVybWFsX3pv bmVfZGV2aWNlX3ByaXYodHopOwogCXUzMiB2YWwgPSByZWFkbChkYXRhLT5yZWdzICsgQkNNMjgz NV9UU19UU0VOU1NUQVQpOwogCiAJaWYgKCEodmFsICYgQkNNMjgzNV9UU19UU0VOU1NUQVRfVkFM SUQpKQpkaWZmIC0tZ2l0IGEvZHJpdmVycy90aGVybWFsL2Jyb2FkY29tL2JyY21zdGJfdGhlcm1h bC5jIGIvZHJpdmVycy90aGVybWFsL2Jyb2FkY29tL2JyY21zdGJfdGhlcm1hbC5jCmluZGV4IDRk MDJjMjgzMzFlMy4uNjAxNzNjYzgzYzQ2IDEwMDY0NAotLS0gYS9kcml2ZXJzL3RoZXJtYWwvYnJv YWRjb20vYnJjbXN0Yl90aGVybWFsLmMKKysrIGIvZHJpdmVycy90aGVybWFsL2Jyb2FkY29tL2Jy Y21zdGJfdGhlcm1hbC5jCkBAIC0xNTIsNyArMTUyLDcgQEAgc3RhdGljIGlubGluZSB1MzIgYXZz X3Rtb25fdGVtcF90b19jb2RlKHN0cnVjdCBicmNtc3RiX3RoZXJtYWxfcHJpdiAqcHJpdiwKIAog c3RhdGljIGludCBicmNtc3RiX2dldF90ZW1wKHN0cnVjdCB0aGVybWFsX3pvbmVfZGV2aWNlICp0 eiwgaW50ICp0ZW1wKQogewotCXN0cnVjdCBicmNtc3RiX3RoZXJtYWxfcHJpdiAqcHJpdiA9IHR6 LT5kZXZkYXRhOworCXN0cnVjdCBicmNtc3RiX3RoZXJtYWxfcHJpdiAqcHJpdiA9IHRoZXJtYWxf em9uZV9kZXZpY2VfcHJpdih0eik7CiAJdTMyIHZhbDsKIAlsb25nIHQ7CiAKQEAgLTI2Miw3ICsy NjIsNyBAQCBzdGF0aWMgaXJxcmV0dXJuX3QgYnJjbXN0Yl90bW9uX2lycV90aHJlYWQoaW50IGly cSwgdm9pZCAqZGF0YSkKIAogc3RhdGljIGludCBicmNtc3RiX3NldF90cmlwcyhzdHJ1Y3QgdGhl cm1hbF96b25lX2RldmljZSAqdHosIGludCBsb3csIGludCBoaWdoKQogewotCXN0cnVjdCBicmNt c3RiX3RoZXJtYWxfcHJpdiAqcHJpdiA9IHR6LT5kZXZkYXRhOworCXN0cnVjdCBicmNtc3RiX3Ro ZXJtYWxfcHJpdiAqcHJpdiA9IHRoZXJtYWxfem9uZV9kZXZpY2VfcHJpdih0eik7CiAKIAlkZXZf ZGJnKHByaXYtPmRldiwgInNldCB0cmlwcyAlZCA8LS0+ICVkXG4iLCBsb3csIGhpZ2gpOwogCmRp ZmYgLS1naXQgYS9kcml2ZXJzL3RoZXJtYWwvYnJvYWRjb20vbnMtdGhlcm1hbC5jIGIvZHJpdmVy cy90aGVybWFsL2Jyb2FkY29tL25zLXRoZXJtYWwuYwppbmRleCAwN2E4YTNmNDliZDAuLmQyNTVh YTg3OWZjMCAxMDA2NDQKLS0tIGEvZHJpdmVycy90aGVybWFsL2Jyb2FkY29tL25zLXRoZXJtYWwu YworKysgYi9kcml2ZXJzL3RoZXJtYWwvYnJvYWRjb20vbnMtdGhlcm1hbC5jCkBAIC0xNiw3ICsx Niw3IEBACiAKIHN0YXRpYyBpbnQgbnNfdGhlcm1hbF9nZXRfdGVtcChzdHJ1Y3QgdGhlcm1hbF96 b25lX2RldmljZSAqdHosIGludCAqdGVtcCkKIHsKLQl2b2lkIF9faW9tZW0gKnB2dG1vbiA9IHR6 LT5kZXZkYXRhOworCXZvaWQgX19pb21lbSAqcHZ0bW9uID0gdGhlcm1hbF96b25lX2RldmljZV9w cml2KHR6KTsKIAlpbnQgb2Zmc2V0ID0gdGhlcm1hbF96b25lX2dldF9vZmZzZXQodHopOwogCWlu dCBzbG9wZSA9IHRoZXJtYWxfem9uZV9nZXRfc2xvcGUodHopOwogCXUzMiB2YWw7CmRpZmYgLS1n aXQgYS9kcml2ZXJzL3RoZXJtYWwvYnJvYWRjb20vc3ItdGhlcm1hbC5jIGIvZHJpdmVycy90aGVy bWFsL2Jyb2FkY29tL3NyLXRoZXJtYWwuYwppbmRleCAyYjkzNTAyNTQzZmYuLjc0NzkxNTg5MDAy MiAxMDA2NDQKLS0tIGEvZHJpdmVycy90aGVybWFsL2Jyb2FkY29tL3NyLXRoZXJtYWwuYworKysg Yi9kcml2ZXJzL3RoZXJtYWwvYnJvYWRjb20vc3ItdGhlcm1hbC5jCkBAIC0zMiw3ICszMiw3IEBA IHN0cnVjdCBzcl90aGVybWFsIHsKIAogc3RhdGljIGludCBzcl9nZXRfdGVtcChzdHJ1Y3QgdGhl cm1hbF96b25lX2RldmljZSAqdHosIGludCAqdGVtcCkKIHsKLQlzdHJ1Y3Qgc3JfdG1vbiAqdG1v biA9IHR6LT5kZXZkYXRhOworCXN0cnVjdCBzcl90bW9uICp0bW9uID0gdGhlcm1hbF96b25lX2Rl dmljZV9wcml2KHR6KTsKIAlzdHJ1Y3Qgc3JfdGhlcm1hbCAqc3JfdGhlcm1hbCA9IHRtb24tPnBy aXY7CiAKIAkqdGVtcCA9IHJlYWRsKHNyX3RoZXJtYWwtPnJlZ3MgKyBTUl9UTU9OX1RFTVBfQkFT RSh0bW9uLT50bW9uX2lkKSk7CmRpZmYgLS1naXQgYS9kcml2ZXJzL3RoZXJtYWwvZGE5MDYyLXRo ZXJtYWwuYyBiL2RyaXZlcnMvdGhlcm1hbC9kYTkwNjItdGhlcm1hbC5jCmluZGV4IGE4MDVhNjY2 NmM0NC4uZTcwOTdmMzU0NzUwIDEwMDY0NAotLS0gYS9kcml2ZXJzL3RoZXJtYWwvZGE5MDYyLXRo ZXJtYWwuYworKysgYi9kcml2ZXJzL3RoZXJtYWwvZGE5MDYyLXRoZXJtYWwuYwpAQCAtMTIzLDcg KzEyMyw3IEBAIHN0YXRpYyBpcnFyZXR1cm5fdCBkYTkwNjJfdGhlcm1hbF9pcnFfaGFuZGxlcihp bnQgaXJxLCB2b2lkICpkYXRhKQogc3RhdGljIGludCBkYTkwNjJfdGhlcm1hbF9nZXRfdGVtcChz dHJ1Y3QgdGhlcm1hbF96b25lX2RldmljZSAqeiwKIAkJCQkgICBpbnQgKnRlbXApCiB7Ci0Jc3Ry dWN0IGRhOTA2Ml90aGVybWFsICp0aGVybWFsID0gei0+ZGV2ZGF0YTsKKwlzdHJ1Y3QgZGE5MDYy X3RoZXJtYWwgKnRoZXJtYWwgPSB0aGVybWFsX3pvbmVfZGV2aWNlX3ByaXYoeik7CiAKIAltdXRl eF9sb2NrKCZ0aGVybWFsLT5sb2NrKTsKIAkqdGVtcCA9IHRoZXJtYWwtPnRlbXBlcmF0dXJlOwpk aWZmIC0tZ2l0IGEvZHJpdmVycy90aGVybWFsL2RiODUwMF90aGVybWFsLmMgYi9kcml2ZXJzL3Ro ZXJtYWwvZGI4NTAwX3RoZXJtYWwuYwppbmRleCBjYjEwZTI4MDY4MWYuLmMwNDE4NDk3NTIwYyAx MDA2NDQKLS0tIGEvZHJpdmVycy90aGVybWFsL2RiODUwMF90aGVybWFsLmMKKysrIGIvZHJpdmVy cy90aGVybWFsL2RiODUwMF90aGVybWFsLmMKQEAgLTYwLDcgKzYwLDcgQEAgc3RydWN0IGRiODUw MF90aGVybWFsX3pvbmUgewogLyogQ2FsbGJhY2sgdG8gZ2V0IGN1cnJlbnQgdGVtcGVyYXR1cmUg Ki8KIHN0YXRpYyBpbnQgZGI4NTAwX3RoZXJtYWxfZ2V0X3RlbXAoc3RydWN0IHRoZXJtYWxfem9u ZV9kZXZpY2UgKnR6LCBpbnQgKnRlbXApCiB7Ci0Jc3RydWN0IGRiODUwMF90aGVybWFsX3pvbmUg KnRoID0gdHotPmRldmRhdGE7CisJc3RydWN0IGRiODUwMF90aGVybWFsX3pvbmUgKnRoID0gdGhl cm1hbF96b25lX2RldmljZV9wcml2KHR6KTsKIAogCS8qCiAJICogVE9ETzogVGhlcmUgaXMgbm8g UFJDTVUgaW50ZXJmYWNlIHRvIGdldCB0ZW1wZXJhdHVyZSBkYXRhIGN1cnJlbnRseSwKZGlmZiAt LWdpdCBhL2RyaXZlcnMvdGhlcm1hbC9kb3ZlX3RoZXJtYWwuYyBiL2RyaXZlcnMvdGhlcm1hbC9k b3ZlX3RoZXJtYWwuYwppbmRleCAwNTY2MjJhNThkMDAuLjZkYjE4ODJlODIyOSAxMDA2NDQKLS0t IGEvZHJpdmVycy90aGVybWFsL2RvdmVfdGhlcm1hbC5jCisrKyBiL2RyaXZlcnMvdGhlcm1hbC9k b3ZlX3RoZXJtYWwuYwpAQCAtODcsNyArODcsNyBAQCBzdGF0aWMgaW50IGRvdmVfZ2V0X3RlbXAo c3RydWN0IHRoZXJtYWxfem9uZV9kZXZpY2UgKnRoZXJtYWwsCiAJCQkgIGludCAqdGVtcCkKIHsK IAl1bnNpZ25lZCBsb25nIHJlZzsKLQlzdHJ1Y3QgZG92ZV90aGVybWFsX3ByaXYgKnByaXYgPSB0 aGVybWFsLT5kZXZkYXRhOworCXN0cnVjdCBkb3ZlX3RoZXJtYWxfcHJpdiAqcHJpdiA9IHRoZXJt YWxfem9uZV9kZXZpY2VfcHJpdih0aGVybWFsKTsKIAogCS8qIFZhbGlkIGNoZWNrICovCiAJcmVn ID0gcmVhZGxfcmVsYXhlZChwcml2LT5jb250cm9sICsgUE1VX1RFTVBfRElPRF9DVFJMMV9SRUcp OwpkaWZmIC0tZ2l0IGEvZHJpdmVycy90aGVybWFsL2hpc2lfdGhlcm1hbC5jIGIvZHJpdmVycy90 aGVybWFsL2hpc2lfdGhlcm1hbC5jCmluZGV4IDMyYTdjM2NmMDczZC4uZjNhMzc0MjY2ZmEwIDEw MDY0NAotLS0gYS9kcml2ZXJzL3RoZXJtYWwvaGlzaV90aGVybWFsLmMKKysrIGIvZHJpdmVycy90 aGVybWFsL2hpc2lfdGhlcm1hbC5jCkBAIC00MzEsNyArNDMxLDcgQEAgc3RhdGljIGludCBoaTM2 NjBfdGhlcm1hbF9wcm9iZShzdHJ1Y3QgaGlzaV90aGVybWFsX2RhdGEgKmRhdGEpCiAKIHN0YXRp YyBpbnQgaGlzaV90aGVybWFsX2dldF90ZW1wKHN0cnVjdCB0aGVybWFsX3pvbmVfZGV2aWNlICp0 eiwgaW50ICp0ZW1wKQogewotCXN0cnVjdCBoaXNpX3RoZXJtYWxfc2Vuc29yICpzZW5zb3IgPSB0 ei0+ZGV2ZGF0YTsKKwlzdHJ1Y3QgaGlzaV90aGVybWFsX3NlbnNvciAqc2Vuc29yID0gdGhlcm1h bF96b25lX2RldmljZV9wcml2KHR6KTsKIAlzdHJ1Y3QgaGlzaV90aGVybWFsX2RhdGEgKmRhdGEg PSBzZW5zb3ItPmRhdGE7CiAKIAkqdGVtcCA9IGRhdGEtPm9wcy0+Z2V0X3RlbXAoc2Vuc29yKTsK ZGlmZiAtLWdpdCBhL2RyaXZlcnMvdGhlcm1hbC9pbXg4bW1fdGhlcm1hbC5jIGIvZHJpdmVycy90 aGVybWFsL2lteDhtbV90aGVybWFsLmMKaW5kZXggNzJiNWQ2ZjMxOWMxLi5lZmExYTRmZmMzNjgg MTAwNjQ0Ci0tLSBhL2RyaXZlcnMvdGhlcm1hbC9pbXg4bW1fdGhlcm1hbC5jCisrKyBiL2RyaXZl cnMvdGhlcm1hbC9pbXg4bW1fdGhlcm1hbC5jCkBAIC0xNDEsNyArMTQxLDcgQEAgc3RhdGljIGlu dCBpbXg4bXBfdG11X2dldF90ZW1wKHZvaWQgKmRhdGEsIGludCAqdGVtcCkKIAogc3RhdGljIGlu dCB0bXVfZ2V0X3RlbXAoc3RydWN0IHRoZXJtYWxfem9uZV9kZXZpY2UgKnR6LCBpbnQgKnRlbXAp CiB7Ci0Jc3RydWN0IHRtdV9zZW5zb3IgKnNlbnNvciA9IHR6LT5kZXZkYXRhOworCXN0cnVjdCB0 bXVfc2Vuc29yICpzZW5zb3IgPSB0aGVybWFsX3pvbmVfZGV2aWNlX3ByaXYodHopOwogCXN0cnVj dCBpbXg4bW1fdG11ICp0bXUgPSBzZW5zb3ItPnByaXY7CiAKIAlyZXR1cm4gdG11LT5zb2NkYXRh LT5nZXRfdGVtcChzZW5zb3IsIHRlbXApOwpkaWZmIC0tZ2l0IGEvZHJpdmVycy90aGVybWFsL2lt eF9zY190aGVybWFsLmMgYi9kcml2ZXJzL3RoZXJtYWwvaW14X3NjX3RoZXJtYWwuYwppbmRleCBm MzJlNTllNzQ2MjMuLmRkZGU0YmRmYzk0YSAxMDA2NDQKLS0tIGEvZHJpdmVycy90aGVybWFsL2lt eF9zY190aGVybWFsLmMKKysrIGIvZHJpdmVycy90aGVybWFsL2lteF9zY190aGVybWFsLmMKQEAg LTQ2LDcgKzQ2LDcgQEAgc3RhdGljIGludCBpbXhfc2NfdGhlcm1hbF9nZXRfdGVtcChzdHJ1Y3Qg dGhlcm1hbF96b25lX2RldmljZSAqdHosIGludCAqdGVtcCkKIHsKIAlzdHJ1Y3QgaW14X3NjX21z Z19taXNjX2dldF90ZW1wIG1zZzsKIAlzdHJ1Y3QgaW14X3NjX3JwY19tc2cgKmhkciA9ICZtc2cu aGRyOwotCXN0cnVjdCBpbXhfc2Nfc2Vuc29yICpzZW5zb3IgPSB0ei0+ZGV2ZGF0YTsKKwlzdHJ1 Y3QgaW14X3NjX3NlbnNvciAqc2Vuc29yID0gdGhlcm1hbF96b25lX2RldmljZV9wcml2KHR6KTsK IAlpbnQgcmV0OwogCiAJbXNnLmRhdGEucmVxLnJlc291cmNlX2lkID0gc2Vuc29yLT5yZXNvdXJj ZV9pZDsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvdGhlcm1hbC9pbXhfdGhlcm1hbC5jIGIvZHJpdmVy cy90aGVybWFsL2lteF90aGVybWFsLmMKaW5kZXggZmIwZDVjYWI3MGFmLi5hMjJiODA4NmEyMDkg MTAwNjQ0Ci0tLSBhL2RyaXZlcnMvdGhlcm1hbC9pbXhfdGhlcm1hbC5jCisrKyBiL2RyaXZlcnMv dGhlcm1hbC9pbXhfdGhlcm1hbC5jCkBAIC0yNTIsNyArMjUyLDcgQEAgc3RhdGljIHZvaWQgaW14 X3NldF9hbGFybV90ZW1wKHN0cnVjdCBpbXhfdGhlcm1hbF9kYXRhICpkYXRhLAogCiBzdGF0aWMg aW50IGlteF9nZXRfdGVtcChzdHJ1Y3QgdGhlcm1hbF96b25lX2RldmljZSAqdHosIGludCAqdGVt cCkKIHsKLQlzdHJ1Y3QgaW14X3RoZXJtYWxfZGF0YSAqZGF0YSA9IHR6LT5kZXZkYXRhOworCXN0 cnVjdCBpbXhfdGhlcm1hbF9kYXRhICpkYXRhID0gdGhlcm1hbF96b25lX2RldmljZV9wcml2KHR6 KTsKIAljb25zdCBzdHJ1Y3QgdGhlcm1hbF9zb2NfZGF0YSAqc29jX2RhdGEgPSBkYXRhLT5zb2Nk YXRhOwogCXN0cnVjdCByZWdtYXAgKm1hcCA9IGRhdGEtPnRlbXBtb247CiAJdW5zaWduZWQgaW50 IG5fbWVhczsKQEAgLTMxMSw3ICszMTEsNyBAQCBzdGF0aWMgaW50IGlteF9nZXRfdGVtcChzdHJ1 Y3QgdGhlcm1hbF96b25lX2RldmljZSAqdHosIGludCAqdGVtcCkKIHN0YXRpYyBpbnQgaW14X2No YW5nZV9tb2RlKHN0cnVjdCB0aGVybWFsX3pvbmVfZGV2aWNlICp0eiwKIAkJCSAgIGVudW0gdGhl cm1hbF9kZXZpY2VfbW9kZSBtb2RlKQogewotCXN0cnVjdCBpbXhfdGhlcm1hbF9kYXRhICpkYXRh ID0gdHotPmRldmRhdGE7CisJc3RydWN0IGlteF90aGVybWFsX2RhdGEgKmRhdGEgPSB0aGVybWFs X3pvbmVfZGV2aWNlX3ByaXYodHopOwogCiAJaWYgKG1vZGUgPT0gVEhFUk1BTF9ERVZJQ0VfRU5B QkxFRCkgewogCQlwbV9ydW50aW1lX2dldChkYXRhLT5kZXYpOwpAQCAtMzQyLDcgKzM0Miw3IEBA IHN0YXRpYyBpbnQgaW14X2dldF9jcml0X3RlbXAoc3RydWN0IHRoZXJtYWxfem9uZV9kZXZpY2Ug KnR6LCBpbnQgKnRlbXApCiBzdGF0aWMgaW50IGlteF9zZXRfdHJpcF90ZW1wKHN0cnVjdCB0aGVy bWFsX3pvbmVfZGV2aWNlICp0eiwgaW50IHRyaXAsCiAJCQkgICAgIGludCB0ZW1wKQogewotCXN0 cnVjdCBpbXhfdGhlcm1hbF9kYXRhICpkYXRhID0gdHotPmRldmRhdGE7CisJc3RydWN0IGlteF90 aGVybWFsX2RhdGEgKmRhdGEgPSB0aGVybWFsX3pvbmVfZGV2aWNlX3ByaXYodHopOwogCWludCBy ZXQ7CiAKIAlyZXQgPSBwbV9ydW50aW1lX3Jlc3VtZV9hbmRfZ2V0KGRhdGEtPmRldik7CmRpZmYg LS1naXQgYS9kcml2ZXJzL3RoZXJtYWwvaW50ZWwvaW50MzQweF90aGVybWFsL2ludDM0MDBfdGhl cm1hbC5jIGIvZHJpdmVycy90aGVybWFsL2ludGVsL2ludDM0MHhfdGhlcm1hbC9pbnQzNDAwX3Ro ZXJtYWwuYwppbmRleCBkMDI5NTEyM2NjM2UuLjgxMDIzMWI1OWRjZCAxMDA2NDQKLS0tIGEvZHJp dmVycy90aGVybWFsL2ludGVsL2ludDM0MHhfdGhlcm1hbC9pbnQzNDAwX3RoZXJtYWwuYworKysg Yi9kcml2ZXJzL3RoZXJtYWwvaW50ZWwvaW50MzQweF90aGVybWFsL2ludDM0MDBfdGhlcm1hbC5j CkBAIC00OTcsNyArNDk3LDcgQEAgc3RhdGljIGludCBpbnQzNDAwX3RoZXJtYWxfZ2V0X3RlbXAo c3RydWN0IHRoZXJtYWxfem9uZV9kZXZpY2UgKnRoZXJtYWwsCiBzdGF0aWMgaW50IGludDM0MDBf dGhlcm1hbF9jaGFuZ2VfbW9kZShzdHJ1Y3QgdGhlcm1hbF96b25lX2RldmljZSAqdGhlcm1hbCwK IAkJCQkgICAgICAgZW51bSB0aGVybWFsX2RldmljZV9tb2RlIG1vZGUpCiB7Ci0Jc3RydWN0IGlu dDM0MDBfdGhlcm1hbF9wcml2ICpwcml2ID0gdGhlcm1hbC0+ZGV2ZGF0YTsKKwlzdHJ1Y3QgaW50 MzQwMF90aGVybWFsX3ByaXYgKnByaXYgPSB0aGVybWFsX3pvbmVfZGV2aWNlX3ByaXYodGhlcm1h bCk7CiAJaW50IHJlc3VsdCA9IDA7CiAKIAlpZiAoIXByaXYpCmRpZmYgLS1naXQgYS9kcml2ZXJz L3RoZXJtYWwvaW50ZWwvaW50MzQweF90aGVybWFsL2ludDM0MHhfdGhlcm1hbF96b25lLmMgYi9k cml2ZXJzL3RoZXJtYWwvaW50ZWwvaW50MzQweF90aGVybWFsL2ludDM0MHhfdGhlcm1hbF96b25l LmMKaW5kZXggMDA2NjU5NjdjYTUyLi44OWNmMDA3MTQ2ZWEgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMv dGhlcm1hbC9pbnRlbC9pbnQzNDB4X3RoZXJtYWwvaW50MzQweF90aGVybWFsX3pvbmUuYworKysg Yi9kcml2ZXJzL3RoZXJtYWwvaW50ZWwvaW50MzQweF90aGVybWFsL2ludDM0MHhfdGhlcm1hbF96 b25lLmMKQEAgLTE0LDcgKzE0LDcgQEAKIHN0YXRpYyBpbnQgaW50MzQweF90aGVybWFsX2dldF96 b25lX3RlbXAoc3RydWN0IHRoZXJtYWxfem9uZV9kZXZpY2UgKnpvbmUsCiAJCQkJCSBpbnQgKnRl bXApCiB7Ci0Jc3RydWN0IGludDM0eF90aGVybWFsX3pvbmUgKmQgPSB6b25lLT5kZXZkYXRhOwor CXN0cnVjdCBpbnQzNHhfdGhlcm1hbF96b25lICpkID0gdGhlcm1hbF96b25lX2RldmljZV9wcml2 KHpvbmUpOwogCXVuc2lnbmVkIGxvbmcgbG9uZyB0bXA7CiAJYWNwaV9zdGF0dXMgc3RhdHVzOwog CkBAIC00MSw3ICs0MSw3IEBAIHN0YXRpYyBpbnQgaW50MzQweF90aGVybWFsX2dldF96b25lX3Rl bXAoc3RydWN0IHRoZXJtYWxfem9uZV9kZXZpY2UgKnpvbmUsCiBzdGF0aWMgaW50IGludDM0MHhf dGhlcm1hbF9zZXRfdHJpcF90ZW1wKHN0cnVjdCB0aGVybWFsX3pvbmVfZGV2aWNlICp6b25lLAog CQkJCQkgaW50IHRyaXAsIGludCB0ZW1wKQogewotCXN0cnVjdCBpbnQzNHhfdGhlcm1hbF96b25l ICpkID0gem9uZS0+ZGV2ZGF0YTsKKwlzdHJ1Y3QgaW50MzR4X3RoZXJtYWxfem9uZSAqZCA9IHRo ZXJtYWxfem9uZV9kZXZpY2VfcHJpdih6b25lKTsKIAljaGFyIG5hbWVbXSA9IHsnUCcsICdBJywg J1QnLCAnMCcgKyB0cmlwLCAnXDAnfTsKIAlhY3BpX3N0YXR1cyBzdGF0dXM7CiAKZGlmZiAtLWdp dCBhL2RyaXZlcnMvdGhlcm1hbC9pbnRlbC9pbnQzNDB4X3RoZXJtYWwvcHJvY2Vzc29yX3RoZXJt YWxfZGV2aWNlX3BjaS5jIGIvZHJpdmVycy90aGVybWFsL2ludGVsL2ludDM0MHhfdGhlcm1hbC9w cm9jZXNzb3JfdGhlcm1hbF9kZXZpY2VfcGNpLmMKaW5kZXggNDA3MjVjYmM2ZWIwLi4wNDA0ZDRk YjcwZjAgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvdGhlcm1hbC9pbnRlbC9pbnQzNDB4X3RoZXJtYWwv cHJvY2Vzc29yX3RoZXJtYWxfZGV2aWNlX3BjaS5jCisrKyBiL2RyaXZlcnMvdGhlcm1hbC9pbnRl bC9pbnQzNDB4X3RoZXJtYWwvcHJvY2Vzc29yX3RoZXJtYWxfZGV2aWNlX3BjaS5jCkBAIC0xMzUs NyArMTM1LDcgQEAgc3RhdGljIGlycXJldHVybl90IHByb2NfdGhlcm1hbF9pcnFfaGFuZGxlcihp bnQgaXJxLCB2b2lkICpkZXZpZCkKIAogc3RhdGljIGludCBzeXNfZ2V0X2N1cnJfdGVtcChzdHJ1 Y3QgdGhlcm1hbF96b25lX2RldmljZSAqdHpkLCBpbnQgKnRlbXApCiB7Ci0Jc3RydWN0IHByb2Nf dGhlcm1hbF9wY2kgKnBjaV9pbmZvID0gdHpkLT5kZXZkYXRhOworCXN0cnVjdCBwcm9jX3RoZXJt YWxfcGNpICpwY2lfaW5mbyA9IHRoZXJtYWxfem9uZV9kZXZpY2VfcHJpdih0emQpOwogCXUzMiBf dGVtcDsKIAogCXByb2NfdGhlcm1hbF9tbWlvX3JlYWQocGNpX2luZm8sIFBST0NfVEhFUk1BTF9N TUlPX1BLR19URU1QLCAmX3RlbXApOwpAQCAtMTQ2LDcgKzE0Niw3IEBAIHN0YXRpYyBpbnQgc3lz X2dldF9jdXJyX3RlbXAoc3RydWN0IHRoZXJtYWxfem9uZV9kZXZpY2UgKnR6ZCwgaW50ICp0ZW1w KQogCiBzdGF0aWMgaW50IHN5c19zZXRfdHJpcF90ZW1wKHN0cnVjdCB0aGVybWFsX3pvbmVfZGV2 aWNlICp0emQsIGludCB0cmlwLCBpbnQgdGVtcCkKIHsKLQlzdHJ1Y3QgcHJvY190aGVybWFsX3Bj aSAqcGNpX2luZm8gPSB0emQtPmRldmRhdGE7CisJc3RydWN0IHByb2NfdGhlcm1hbF9wY2kgKnBj aV9pbmZvID0gdGhlcm1hbF96b25lX2RldmljZV9wcml2KHR6ZCk7CiAJaW50IHRqbWF4LCBfdGVt cDsKIAogCWlmICh0ZW1wIDw9IDApIHsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvdGhlcm1hbC9pbnRl bC9pbnRlbF9wY2hfdGhlcm1hbC5jIGIvZHJpdmVycy90aGVybWFsL2ludGVsL2ludGVsX3BjaF90 aGVybWFsLmMKaW5kZXggYjg1NWQwMzFhODU1Li5kY2U1MGQyMzkzNTcgMTAwNjQ0Ci0tLSBhL2Ry aXZlcnMvdGhlcm1hbC9pbnRlbC9pbnRlbF9wY2hfdGhlcm1hbC5jCisrKyBiL2RyaXZlcnMvdGhl cm1hbC9pbnRlbC9pbnRlbF9wY2hfdGhlcm1hbC5jCkBAIC0xMTksNyArMTE5LDcgQEAgc3RhdGlj IGludCBwY2hfd3B0X2FkZF9hY3BpX3Bzdl90cmlwKHN0cnVjdCBwY2hfdGhlcm1hbF9kZXZpY2Ug KnB0ZCwgaW50IHRyaXApCiAKIHN0YXRpYyBpbnQgcGNoX3RoZXJtYWxfZ2V0X3RlbXAoc3RydWN0 IHRoZXJtYWxfem9uZV9kZXZpY2UgKnR6ZCwgaW50ICp0ZW1wKQogewotCXN0cnVjdCBwY2hfdGhl cm1hbF9kZXZpY2UgKnB0ZCA9IHR6ZC0+ZGV2ZGF0YTsKKwlzdHJ1Y3QgcGNoX3RoZXJtYWxfZGV2 aWNlICpwdGQgPSB0aGVybWFsX3pvbmVfZGV2aWNlX3ByaXYodHpkKTsKIAogCSp0ZW1wID0gR0VU X1dQVF9URU1QKFdQVF9URU1QX1RTUiAmIHJlYWR3KHB0ZC0+aHdfYmFzZSArIFdQVF9URU1QKSk7 CiAJcmV0dXJuIDA7CmRpZmYgLS1naXQgYS9kcml2ZXJzL3RoZXJtYWwvaW50ZWwvaW50ZWxfcXVh cmtfZHRzX3RoZXJtYWwuYyBiL2RyaXZlcnMvdGhlcm1hbC9pbnRlbC9pbnRlbF9xdWFya19kdHNf dGhlcm1hbC5jCmluZGV4IDk3Yjg0M2ZhNzU2OC4uNjM1NjkxODVlZDgyIDEwMDY0NAotLS0gYS9k cml2ZXJzL3RoZXJtYWwvaW50ZWwvaW50ZWxfcXVhcmtfZHRzX3RoZXJtYWwuYworKysgYi9kcml2 ZXJzL3RoZXJtYWwvaW50ZWwvaW50ZWxfcXVhcmtfZHRzX3RoZXJtYWwuYwpAQCAtMTIwLDcgKzEy MCw3IEBAIHN0YXRpYyBERUZJTkVfTVVURVgoZHRzX3VwZGF0ZV9tdXRleCk7CiBzdGF0aWMgaW50 IHNvY19kdHNfZW5hYmxlKHN0cnVjdCB0aGVybWFsX3pvbmVfZGV2aWNlICp0emQpCiB7CiAJdTMy IG91dDsKLQlzdHJ1Y3Qgc29jX3NlbnNvcl9lbnRyeSAqYXV4X2VudHJ5ID0gdHpkLT5kZXZkYXRh OworCXN0cnVjdCBzb2Nfc2Vuc29yX2VudHJ5ICphdXhfZW50cnkgPSB0aGVybWFsX3pvbmVfZGV2 aWNlX3ByaXYodHpkKTsKIAlpbnQgcmV0OwogCiAJcmV0ID0gaW9zZl9tYmlfcmVhZChRUktfTUJJ X1VOSVRfUk1VLCBNQklfUkVHX1JFQUQsCkBAIC0xNDgsNyArMTQ4LDcgQEAgc3RhdGljIGludCBz b2NfZHRzX2VuYWJsZShzdHJ1Y3QgdGhlcm1hbF96b25lX2RldmljZSAqdHpkKQogc3RhdGljIGlu dCBzb2NfZHRzX2Rpc2FibGUoc3RydWN0IHRoZXJtYWxfem9uZV9kZXZpY2UgKnR6ZCkKIHsKIAl1 MzIgb3V0OwotCXN0cnVjdCBzb2Nfc2Vuc29yX2VudHJ5ICphdXhfZW50cnkgPSB0emQtPmRldmRh dGE7CisJc3RydWN0IHNvY19zZW5zb3JfZW50cnkgKmF1eF9lbnRyeSA9IHRoZXJtYWxfem9uZV9k ZXZpY2VfcHJpdih0emQpOwogCWludCByZXQ7CiAKIAlyZXQgPSBpb3NmX21iaV9yZWFkKFFSS19N QklfVU5JVF9STVUsIE1CSV9SRUdfUkVBRCwKQEAgLTI1MCw3ICsyNTAsNyBAQCBzdGF0aWMgaW50 IHVwZGF0ZV90cmlwX3RlbXAoc3RydWN0IHNvY19zZW5zb3JfZW50cnkgKmF1eF9lbnRyeSwKIHN0 YXRpYyBpbmxpbmUgaW50IHN5c19zZXRfdHJpcF90ZW1wKHN0cnVjdCB0aGVybWFsX3pvbmVfZGV2 aWNlICp0emQsIGludCB0cmlwLAogCQkJCWludCB0ZW1wKQogewotCXJldHVybiB1cGRhdGVfdHJp cF90ZW1wKHR6ZC0+ZGV2ZGF0YSwgdHJpcCwgdGVtcCk7CisJcmV0dXJuIHVwZGF0ZV90cmlwX3Rl bXAodGhlcm1hbF96b25lX2RldmljZV9wcml2KHR6ZCksIHRyaXAsIHRlbXApOwogfQogCiBzdGF0 aWMgaW50IHN5c19nZXRfY3Vycl90ZW1wKHN0cnVjdCB0aGVybWFsX3pvbmVfZGV2aWNlICp0emQs CmRpZmYgLS1naXQgYS9kcml2ZXJzL3RoZXJtYWwvaW50ZWwvaW50ZWxfc29jX2R0c19pb3NmLmMg Yi9kcml2ZXJzL3RoZXJtYWwvaW50ZWwvaW50ZWxfc29jX2R0c19pb3NmLmMKaW5kZXggOGMyNmY3 YjIzMTZiLi5mOTlkYzdlNGFlODkgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvdGhlcm1hbC9pbnRlbC9p bnRlbF9zb2NfZHRzX2lvc2YuYworKysgYi9kcml2ZXJzL3RoZXJtYWwvaW50ZWwvaW50ZWxfc29j X2R0c19pb3NmLmMKQEAgLTU0LDcgKzU0LDcgQEAgc3RhdGljIGludCBzeXNfZ2V0X3RyaXBfdGVt cChzdHJ1Y3QgdGhlcm1hbF96b25lX2RldmljZSAqdHpkLCBpbnQgdHJpcCwKIAlzdHJ1Y3QgaW50 ZWxfc29jX2R0c19zZW5zb3JfZW50cnkgKmR0czsKIAlzdHJ1Y3QgaW50ZWxfc29jX2R0c19zZW5z b3JzICpzZW5zb3JzOwogCi0JZHRzID0gdHpkLT5kZXZkYXRhOworCWR0cyA9IHRoZXJtYWxfem9u ZV9kZXZpY2VfcHJpdih0emQpOwogCXNlbnNvcnMgPSBkdHMtPnNlbnNvcnM7CiAJbXV0ZXhfbG9j aygmc2Vuc29ycy0+ZHRzX3VwZGF0ZV9sb2NrKTsKIAlzdGF0dXMgPSBpb3NmX21iaV9yZWFkKEJU X01CSV9VTklUX1BNQywgTUJJX1JFR19SRUFELApAQCAtMTY4LDcgKzE2OCw3IEBAIHN0YXRpYyBp bnQgdXBkYXRlX3RyaXBfdGVtcChzdHJ1Y3QgaW50ZWxfc29jX2R0c19zZW5zb3JfZW50cnkgKmR0 cywKIHN0YXRpYyBpbnQgc3lzX3NldF90cmlwX3RlbXAoc3RydWN0IHRoZXJtYWxfem9uZV9kZXZp Y2UgKnR6ZCwgaW50IHRyaXAsCiAJCQkgICAgIGludCB0ZW1wKQogewotCXN0cnVjdCBpbnRlbF9z b2NfZHRzX3NlbnNvcl9lbnRyeSAqZHRzID0gdHpkLT5kZXZkYXRhOworCXN0cnVjdCBpbnRlbF9z b2NfZHRzX3NlbnNvcl9lbnRyeSAqZHRzID0gdGhlcm1hbF96b25lX2RldmljZV9wcml2KHR6ZCk7 CiAJc3RydWN0IGludGVsX3NvY19kdHNfc2Vuc29ycyAqc2Vuc29ycyA9IGR0cy0+c2Vuc29yczsK IAlpbnQgc3RhdHVzOwogCkBAIC0xNzYsNyArMTc2LDcgQEAgc3RhdGljIGludCBzeXNfc2V0X3Ry aXBfdGVtcChzdHJ1Y3QgdGhlcm1hbF96b25lX2RldmljZSAqdHpkLCBpbnQgdHJpcCwKIAkJcmV0 dXJuIC1FSU5WQUw7CiAKIAltdXRleF9sb2NrKCZzZW5zb3JzLT5kdHNfdXBkYXRlX2xvY2spOwot CXN0YXR1cyA9IHVwZGF0ZV90cmlwX3RlbXAodHpkLT5kZXZkYXRhLCB0cmlwLCB0ZW1wLAorCXN0 YXR1cyA9IHVwZGF0ZV90cmlwX3RlbXAoZHRzLCB0cmlwLCB0ZW1wLAogCQkJCSAgZHRzLT50cmlw X3R5cGVzW3RyaXBdKTsKIAltdXRleF91bmxvY2soJnNlbnNvcnMtPmR0c191cGRhdGVfbG9jayk7 CiAKQEAgLTE4Niw5ICsxODYsNyBAQCBzdGF0aWMgaW50IHN5c19zZXRfdHJpcF90ZW1wKHN0cnVj dCB0aGVybWFsX3pvbmVfZGV2aWNlICp0emQsIGludCB0cmlwLAogc3RhdGljIGludCBzeXNfZ2V0 X3RyaXBfdHlwZShzdHJ1Y3QgdGhlcm1hbF96b25lX2RldmljZSAqdHpkLAogCQkJICAgICBpbnQg dHJpcCwgZW51bSB0aGVybWFsX3RyaXBfdHlwZSAqdHlwZSkKIHsKLQlzdHJ1Y3QgaW50ZWxfc29j X2R0c19zZW5zb3JfZW50cnkgKmR0czsKLQotCWR0cyA9IHR6ZC0+ZGV2ZGF0YTsKKwlzdHJ1Y3Qg aW50ZWxfc29jX2R0c19zZW5zb3JfZW50cnkgKmR0cyA9IHRoZXJtYWxfem9uZV9kZXZpY2VfcHJp dih0emQpOwogCiAJKnR5cGUgPSBkdHMtPnRyaXBfdHlwZXNbdHJpcF07CiAKQEAgLTIwMCwxMSAr MTk4LDEwIEBAIHN0YXRpYyBpbnQgc3lzX2dldF9jdXJyX3RlbXAoc3RydWN0IHRoZXJtYWxfem9u ZV9kZXZpY2UgKnR6ZCwKIHsKIAlpbnQgc3RhdHVzOwogCXUzMiBvdXQ7Ci0Jc3RydWN0IGludGVs X3NvY19kdHNfc2Vuc29yX2VudHJ5ICpkdHM7CisJc3RydWN0IGludGVsX3NvY19kdHNfc2Vuc29y X2VudHJ5ICpkdHMgPSB0aGVybWFsX3pvbmVfZGV2aWNlX3ByaXYodHpkKTsKIAlzdHJ1Y3QgaW50 ZWxfc29jX2R0c19zZW5zb3JzICpzZW5zb3JzOwogCXVuc2lnbmVkIGxvbmcgcmF3OwogCi0JZHRz ID0gdHpkLT5kZXZkYXRhOwogCXNlbnNvcnMgPSBkdHMtPnNlbnNvcnM7CiAJc3RhdHVzID0gaW9z Zl9tYmlfcmVhZChCVF9NQklfVU5JVF9QTUMsIE1CSV9SRUdfUkVBRCwKIAkJCSAgICAgICBTT0Nf RFRTX09GRlNFVF9URU1QLCAmb3V0KTsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvdGhlcm1hbC9pbnRl bC94ODZfcGtnX3RlbXBfdGhlcm1hbC5jIGIvZHJpdmVycy90aGVybWFsL2ludGVsL3g4Nl9wa2df dGVtcF90aGVybWFsLmMKaW5kZXggMWMyZGU4NDc0MmRmLi5jNGVjMzE0NDQxYmUgMTAwNjQ0Ci0t LSBhL2RyaXZlcnMvdGhlcm1hbC9pbnRlbC94ODZfcGtnX3RlbXBfdGhlcm1hbC5jCisrKyBiL2Ry aXZlcnMvdGhlcm1hbC9pbnRlbC94ODZfcGtnX3RlbXBfdGhlcm1hbC5jCkBAIC0xMDcsNyArMTA3 LDcgQEAgc3RhdGljIHN0cnVjdCB6b25lX2RldmljZSAqcGtnX3RlbXBfdGhlcm1hbF9nZXRfZGV2 KHVuc2lnbmVkIGludCBjcHUpCiAKIHN0YXRpYyBpbnQgc3lzX2dldF9jdXJyX3RlbXAoc3RydWN0 IHRoZXJtYWxfem9uZV9kZXZpY2UgKnR6ZCwgaW50ICp0ZW1wKQogewotCXN0cnVjdCB6b25lX2Rl dmljZSAqem9uZWRldiA9IHR6ZC0+ZGV2ZGF0YTsKKwlzdHJ1Y3Qgem9uZV9kZXZpY2UgKnpvbmVk ZXYgPSB0aGVybWFsX3pvbmVfZGV2aWNlX3ByaXYodHpkKTsKIAlpbnQgdmFsOwogCiAJdmFsID0g aW50ZWxfdGNjX2dldF90ZW1wKHpvbmVkZXYtPmNwdSwgdHJ1ZSk7CkBAIC0xMjIsNyArMTIyLDcg QEAgc3RhdGljIGludCBzeXNfZ2V0X2N1cnJfdGVtcChzdHJ1Y3QgdGhlcm1hbF96b25lX2Rldmlj ZSAqdHpkLCBpbnQgKnRlbXApCiBzdGF0aWMgaW50CiBzeXNfc2V0X3RyaXBfdGVtcChzdHJ1Y3Qg dGhlcm1hbF96b25lX2RldmljZSAqdHpkLCBpbnQgdHJpcCwgaW50IHRlbXApCiB7Ci0Jc3RydWN0 IHpvbmVfZGV2aWNlICp6b25lZGV2ID0gdHpkLT5kZXZkYXRhOworCXN0cnVjdCB6b25lX2Rldmlj ZSAqem9uZWRldiA9IHRoZXJtYWxfem9uZV9kZXZpY2VfcHJpdih0emQpOwogCXUzMiBsLCBoLCBt YXNrLCBzaGlmdCwgaW50cjsKIAlpbnQgdGpfbWF4LCByZXQ7CiAKZGlmZiAtLWdpdCBhL2RyaXZl cnMvdGhlcm1hbC9rM19iYW5kZ2FwLmMgYi9kcml2ZXJzL3RoZXJtYWwvazNfYmFuZGdhcC5jCmlu ZGV4IDIyYzliY2I4OTljMy4uYjVjZDJjODVlMGMzIDEwMDY0NAotLS0gYS9kcml2ZXJzL3RoZXJt YWwvazNfYmFuZGdhcC5jCisrKyBiL2RyaXZlcnMvdGhlcm1hbC9rM19iYW5kZ2FwLmMKQEAgLTE0 MSw3ICsxNDEsNyBAQCBzdGF0aWMgaW50IGszX2JncF9yZWFkX3RlbXAoc3RydWN0IGszX3RoZXJt YWxfZGF0YSAqZGV2ZGF0YSwKIAogc3RhdGljIGludCBrM190aGVybWFsX2dldF90ZW1wKHN0cnVj dCB0aGVybWFsX3pvbmVfZGV2aWNlICp0eiwgaW50ICp0ZW1wKQogewotCXN0cnVjdCBrM190aGVy bWFsX2RhdGEgKmRhdGEgPSB0ei0+ZGV2ZGF0YTsKKwlzdHJ1Y3QgazNfdGhlcm1hbF9kYXRhICpk YXRhID0gdGhlcm1hbF96b25lX2RldmljZV9wcml2KHR6KTsKIAlpbnQgcmV0ID0gMDsKIAogCXJl dCA9IGszX2JncF9yZWFkX3RlbXAoZGF0YSwgdGVtcCk7CmRpZmYgLS1naXQgYS9kcml2ZXJzL3Ro ZXJtYWwvazNfajcyeHhfYmFuZGdhcC5jIGIvZHJpdmVycy90aGVybWFsL2szX2o3Mnh4X2JhbmRn YXAuYwppbmRleCAwMzFlYTEwOTE5MDkuLjViZTFmMDllZWIyYyAxMDA2NDQKLS0tIGEvZHJpdmVy cy90aGVybWFsL2szX2o3Mnh4X2JhbmRnYXAuYworKysgYi9kcml2ZXJzL3RoZXJtYWwvazNfajcy eHhfYmFuZGdhcC5jCkBAIC0yNDgsNyArMjQ4LDcgQEAgc3RhdGljIGlubGluZSBpbnQgazNfYmdw X3JlYWRfdGVtcChzdHJ1Y3QgazNfdGhlcm1hbF9kYXRhICpkZXZkYXRhLAogLyogR2V0IHRlbXBl cmF0dXJlIGNhbGxiYWNrIGZ1bmN0aW9uIGZvciB0aGVybWFsIHpvbmUgKi8KIHN0YXRpYyBpbnQg azNfdGhlcm1hbF9nZXRfdGVtcChzdHJ1Y3QgdGhlcm1hbF96b25lX2RldmljZSAqdHosIGludCAq dGVtcCkKIHsKLQlyZXR1cm4gazNfYmdwX3JlYWRfdGVtcCh0ei0+ZGV2ZGF0YSwgdGVtcCk7CisJ cmV0dXJuIGszX2JncF9yZWFkX3RlbXAodGhlcm1hbF96b25lX2RldmljZV9wcml2KHR6KSwgdGVt cCk7CiB9CiAKIHN0YXRpYyBjb25zdCBzdHJ1Y3QgdGhlcm1hbF96b25lX2RldmljZV9vcHMgazNf b2ZfdGhlcm1hbF9vcHMgPSB7CmRpZmYgLS1naXQgYS9kcml2ZXJzL3RoZXJtYWwva2lya3dvb2Rf dGhlcm1hbC5jIGIvZHJpdmVycy90aGVybWFsL2tpcmt3b29kX3RoZXJtYWwuYwppbmRleCBiZWM3 ZWMyMGU3OWQuLjkyYjNjZTQyNmI5ZCAxMDA2NDQKLS0tIGEvZHJpdmVycy90aGVybWFsL2tpcmt3 b29kX3RoZXJtYWwuYworKysgYi9kcml2ZXJzL3RoZXJtYWwva2lya3dvb2RfdGhlcm1hbC5jCkBA IC0yNyw3ICsyNyw3IEBAIHN0YXRpYyBpbnQga2lya3dvb2RfZ2V0X3RlbXAoc3RydWN0IHRoZXJt YWxfem9uZV9kZXZpY2UgKnRoZXJtYWwsCiAJCQkgIGludCAqdGVtcCkKIHsKIAl1bnNpZ25lZCBs b25nIHJlZzsKLQlzdHJ1Y3Qga2lya3dvb2RfdGhlcm1hbF9wcml2ICpwcml2ID0gdGhlcm1hbC0+ ZGV2ZGF0YTsKKwlzdHJ1Y3Qga2lya3dvb2RfdGhlcm1hbF9wcml2ICpwcml2ID0gdGhlcm1hbF96 b25lX2RldmljZV9wcml2KHRoZXJtYWwpOwogCiAJcmVnID0gcmVhZGxfcmVsYXhlZChwcml2LT5z ZW5zb3IpOwogCmRpZmYgLS1naXQgYS9kcml2ZXJzL3RoZXJtYWwvbWF4Nzc2MjBfdGhlcm1hbC5j IGIvZHJpdmVycy90aGVybWFsL21heDc3NjIwX3RoZXJtYWwuYwppbmRleCA2NDUxYTU1ZWI1ODIu LmJmMTY3OTc2NWYxYiAxMDA2NDQKLS0tIGEvZHJpdmVycy90aGVybWFsL21heDc3NjIwX3RoZXJt YWwuYworKysgYi9kcml2ZXJzL3RoZXJtYWwvbWF4Nzc2MjBfdGhlcm1hbC5jCkBAIC00Niw3ICs0 Niw3IEBAIHN0cnVjdCBtYXg3NzYyMF90aGVybV9pbmZvIHsKIAogc3RhdGljIGludCBtYXg3NzYy MF90aGVybWFsX3JlYWRfdGVtcChzdHJ1Y3QgdGhlcm1hbF96b25lX2RldmljZSAqdHosIGludCAq dGVtcCkKIHsKLQlzdHJ1Y3QgbWF4Nzc2MjBfdGhlcm1faW5mbyAqbXRoZXJtID0gdHotPmRldmRh dGE7CisJc3RydWN0IG1heDc3NjIwX3RoZXJtX2luZm8gKm10aGVybSA9IHRoZXJtYWxfem9uZV9k ZXZpY2VfcHJpdih0eik7CiAJdW5zaWduZWQgaW50IHZhbDsKIAlpbnQgcmV0OwogCmRpZmYgLS1n aXQgYS9kcml2ZXJzL3RoZXJtYWwvbWVkaWF0ZWsvYXV4YWRjX3RoZXJtYWwuYyBiL2RyaXZlcnMv dGhlcm1hbC9tZWRpYXRlay9hdXhhZGNfdGhlcm1hbC5jCmluZGV4IGFiNzMwZjk1NTJkMC4uNzU1 YmFhNGU1YmQyIDEwMDY0NAotLS0gYS9kcml2ZXJzL3RoZXJtYWwvbWVkaWF0ZWsvYXV4YWRjX3Ro ZXJtYWwuYworKysgYi9kcml2ZXJzL3RoZXJtYWwvbWVkaWF0ZWsvYXV4YWRjX3RoZXJtYWwuYwpA QCAtNzYzLDcgKzc2Myw3IEBAIHN0YXRpYyBpbnQgbXRrX3RoZXJtYWxfYmFua190ZW1wZXJhdHVy ZShzdHJ1Y3QgbXRrX3RoZXJtYWxfYmFuayAqYmFuaykKIAogc3RhdGljIGludCBtdGtfcmVhZF90 ZW1wKHN0cnVjdCB0aGVybWFsX3pvbmVfZGV2aWNlICp0eiwgaW50ICp0ZW1wZXJhdHVyZSkKIHsK LQlzdHJ1Y3QgbXRrX3RoZXJtYWwgKm10ID0gdHotPmRldmRhdGE7CisJc3RydWN0IG10a190aGVy bWFsICptdCA9IHRoZXJtYWxfem9uZV9kZXZpY2VfcHJpdih0eik7CiAJaW50IGk7CiAJaW50IHRl bXBtYXggPSBJTlRfTUlOOwogCmRpZmYgLS1naXQgYS9kcml2ZXJzL3RoZXJtYWwvbWVkaWF0ZWsv bHZ0c190aGVybWFsLmMgYi9kcml2ZXJzL3RoZXJtYWwvbWVkaWF0ZWsvbHZ0c190aGVybWFsLmMK aW5kZXggODRiYTY1YTI3YWNmLi5mYjRiMWI0ZGIyNDUgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvdGhl cm1hbC9tZWRpYXRlay9sdnRzX3RoZXJtYWwuYworKysgYi9kcml2ZXJzL3RoZXJtYWwvbWVkaWF0 ZWsvbHZ0c190aGVybWFsLmMKQEAgLTI1Miw3ICsyNTIsNyBAQCBzdGF0aWMgdTMyIGx2dHNfdGVt cF90b19yYXcoaW50IHRlbXBlcmF0dXJlKQogCiBzdGF0aWMgaW50IGx2dHNfZ2V0X3RlbXAoc3Ry dWN0IHRoZXJtYWxfem9uZV9kZXZpY2UgKnR6LCBpbnQgKnRlbXApCiB7Ci0Jc3RydWN0IGx2dHNf c2Vuc29yICpsdnRzX3NlbnNvciA9IHR6LT5kZXZkYXRhOworCXN0cnVjdCBsdnRzX3NlbnNvciAq bHZ0c19zZW5zb3IgPSB0aGVybWFsX3pvbmVfZGV2aWNlX3ByaXYodHopOwogCXZvaWQgX19pb21l bSAqbXNyID0gbHZ0c19zZW5zb3ItPm1zcjsKIAl1MzIgdmFsdWU7CiAKQEAgLTI5MCw3ICsyOTAs NyBAQCBzdGF0aWMgaW50IGx2dHNfZ2V0X3RlbXAoc3RydWN0IHRoZXJtYWxfem9uZV9kZXZpY2Ug KnR6LCBpbnQgKnRlbXApCiAKIHN0YXRpYyBpbnQgbHZ0c19zZXRfdHJpcHMoc3RydWN0IHRoZXJt YWxfem9uZV9kZXZpY2UgKnR6LCBpbnQgbG93LCBpbnQgaGlnaCkKIHsKLQlzdHJ1Y3QgbHZ0c19z ZW5zb3IgKmx2dHNfc2Vuc29yID0gdHotPmRldmRhdGE7CisJc3RydWN0IGx2dHNfc2Vuc29yICps dnRzX3NlbnNvciA9IHRoZXJtYWxfem9uZV9kZXZpY2VfcHJpdih0eik7CiAJdm9pZCBfX2lvbWVt ICpiYXNlID0gbHZ0c19zZW5zb3ItPmJhc2U7CiAJdTMyIHJhd19sb3cgPSBsdnRzX3RlbXBfdG9f cmF3KGxvdyk7CiAJdTMyIHJhd19oaWdoID0gbHZ0c190ZW1wX3RvX3JhdyhoaWdoKTsKZGlmZiAt LWdpdCBhL2RyaXZlcnMvdGhlcm1hbC9xY29tL3Fjb20tc3BtaS1hZGMtdG01LmMgYi9kcml2ZXJz L3RoZXJtYWwvcWNvbS9xY29tLXNwbWktYWRjLXRtNS5jCmluZGV4IDMxMTY0YWRlMmRkMS4uZWQy MDQ0ODlhOTUwIDEwMDY0NAotLS0gYS9kcml2ZXJzL3RoZXJtYWwvcWNvbS9xY29tLXNwbWktYWRj LXRtNS5jCisrKyBiL2RyaXZlcnMvdGhlcm1hbC9xY29tL3Fjb20tc3BtaS1hZGMtdG01LmMKQEAg LTM2MCw3ICszNjAsNyBAQCBzdGF0aWMgaXJxcmV0dXJuX3QgYWRjX3RtNV9nZW4yX2lzcihpbnQg aXJxLCB2b2lkICpkYXRhKQogCiBzdGF0aWMgaW50IGFkY190bTVfZ2V0X3RlbXAoc3RydWN0IHRo ZXJtYWxfem9uZV9kZXZpY2UgKnR6LCBpbnQgKnRlbXApCiB7Ci0Jc3RydWN0IGFkY190bTVfY2hh bm5lbCAqY2hhbm5lbCA9IHR6LT5kZXZkYXRhOworCXN0cnVjdCBhZGNfdG01X2NoYW5uZWwgKmNo YW5uZWwgPSB0aGVybWFsX3pvbmVfZGV2aWNlX3ByaXYodHopOwogCWludCByZXQ7CiAKIAlpZiAo IWNoYW5uZWwgfHwgIWNoYW5uZWwtPmlpbykKQEAgLTY0Miw3ICs2NDIsNyBAQCBzdGF0aWMgaW50 IGFkY190bTVfZ2VuMl9jb25maWd1cmUoc3RydWN0IGFkY190bTVfY2hhbm5lbCAqY2hhbm5lbCwg aW50IGxvdywgaW50CiAKIHN0YXRpYyBpbnQgYWRjX3RtNV9zZXRfdHJpcHMoc3RydWN0IHRoZXJt YWxfem9uZV9kZXZpY2UgKnR6LCBpbnQgbG93LCBpbnQgaGlnaCkKIHsKLQlzdHJ1Y3QgYWRjX3Rt NV9jaGFubmVsICpjaGFubmVsID0gdHotPmRldmRhdGE7CisJc3RydWN0IGFkY190bTVfY2hhbm5l bCAqY2hhbm5lbCA9IHRoZXJtYWxfem9uZV9kZXZpY2VfcHJpdih0eik7CiAJc3RydWN0IGFkY190 bTVfY2hpcCAqY2hpcDsKIAlpbnQgcmV0OwogCmRpZmYgLS1naXQgYS9kcml2ZXJzL3RoZXJtYWwv cWNvbS9xY29tLXNwbWktdGVtcC1hbGFybS5jIGIvZHJpdmVycy90aGVybWFsL3Fjb20vcWNvbS1z cG1pLXRlbXAtYWxhcm0uYwppbmRleCAxMDFjNzVkMGUxM2YuLmIxOTZkOGQwMTcyNiAxMDA2NDQK LS0tIGEvZHJpdmVycy90aGVybWFsL3Fjb20vcWNvbS1zcG1pLXRlbXAtYWxhcm0uYworKysgYi9k cml2ZXJzL3RoZXJtYWwvcWNvbS9xY29tLXNwbWktdGVtcC1hbGFybS5jCkBAIC0xODcsNyArMTg3 LDcgQEAgc3RhdGljIGludCBxcG5wX3RtX3VwZGF0ZV90ZW1wX25vX2FkYyhzdHJ1Y3QgcXBucF90 bV9jaGlwICpjaGlwKQogCiBzdGF0aWMgaW50IHFwbnBfdG1fZ2V0X3RlbXAoc3RydWN0IHRoZXJt YWxfem9uZV9kZXZpY2UgKnR6LCBpbnQgKnRlbXApCiB7Ci0Jc3RydWN0IHFwbnBfdG1fY2hpcCAq Y2hpcCA9IHR6LT5kZXZkYXRhOworCXN0cnVjdCBxcG5wX3RtX2NoaXAgKmNoaXAgPSB0aGVybWFs X3pvbmVfZGV2aWNlX3ByaXYodHopOwogCWludCByZXQsIG1pbGlfY2Vsc2l1czsKIAogCWlmICgh dGVtcCkKQEAgLTI2NSw3ICsyNjUsNyBAQCBzdGF0aWMgaW50IHFwbnBfdG1fdXBkYXRlX2NyaXRp Y2FsX3RyaXBfdGVtcChzdHJ1Y3QgcXBucF90bV9jaGlwICpjaGlwLAogCiBzdGF0aWMgaW50IHFw bnBfdG1fc2V0X3RyaXBfdGVtcChzdHJ1Y3QgdGhlcm1hbF96b25lX2RldmljZSAqdHosIGludCB0 cmlwX2lkLCBpbnQgdGVtcCkKIHsKLQlzdHJ1Y3QgcXBucF90bV9jaGlwICpjaGlwID0gdHotPmRl dmRhdGE7CisJc3RydWN0IHFwbnBfdG1fY2hpcCAqY2hpcCA9IHRoZXJtYWxfem9uZV9kZXZpY2Vf cHJpdih0eik7CiAJc3RydWN0IHRoZXJtYWxfdHJpcCB0cmlwOwogCWludCByZXQ7CiAKZGlmZiAt LWdpdCBhL2RyaXZlcnMvdGhlcm1hbC9xY29tL3RzZW5zLmMgYi9kcml2ZXJzL3RoZXJtYWwvcWNv bS90c2Vucy5jCmluZGV4IDgwMjBlYWQyNzk0ZS4uNmNjOTM1Mzc5ZjAwIDEwMDY0NAotLS0gYS9k cml2ZXJzL3RoZXJtYWwvcWNvbS90c2Vucy5jCisrKyBiL2RyaXZlcnMvdGhlcm1hbC9xY29tL3Rz ZW5zLmMKQEAgLTY3Myw3ICs2NzMsNyBAQCBzdGF0aWMgaXJxcmV0dXJuX3QgdHNlbnNfY29tYmlu ZWRfaXJxX3RocmVhZChpbnQgaXJxLCB2b2lkICpkYXRhKQogCiBzdGF0aWMgaW50IHRzZW5zX3Nl dF90cmlwcyhzdHJ1Y3QgdGhlcm1hbF96b25lX2RldmljZSAqdHosIGludCBsb3csIGludCBoaWdo KQogewotCXN0cnVjdCB0c2Vuc19zZW5zb3IgKnMgPSB0ei0+ZGV2ZGF0YTsKKwlzdHJ1Y3QgdHNl bnNfc2Vuc29yICpzID0gdGhlcm1hbF96b25lX2RldmljZV9wcml2KHR6KTsKIAlzdHJ1Y3QgdHNl bnNfcHJpdiAqcHJpdiA9IHMtPnByaXY7CiAJc3RydWN0IGRldmljZSAqZGV2ID0gcHJpdi0+ZGV2 OwogCXN0cnVjdCB0c2Vuc19pcnFfZGF0YSBkOwpAQCAtMTA1Nyw3ICsxMDU3LDcgQEAgaW50IF9f aW5pdCBpbml0X2NvbW1vbihzdHJ1Y3QgdHNlbnNfcHJpdiAqcHJpdikKIAogc3RhdGljIGludCB0 c2Vuc19nZXRfdGVtcChzdHJ1Y3QgdGhlcm1hbF96b25lX2RldmljZSAqdHosIGludCAqdGVtcCkK IHsKLQlzdHJ1Y3QgdHNlbnNfc2Vuc29yICpzID0gdHotPmRldmRhdGE7CisJc3RydWN0IHRzZW5z X3NlbnNvciAqcyA9IHRoZXJtYWxfem9uZV9kZXZpY2VfcHJpdih0eik7CiAJc3RydWN0IHRzZW5z X3ByaXYgKnByaXYgPSBzLT5wcml2OwogCiAJcmV0dXJuIHByaXYtPm9wcy0+Z2V0X3RlbXAocywg dGVtcCk7CmRpZmYgLS1naXQgYS9kcml2ZXJzL3RoZXJtYWwvcW9yaXFfdGhlcm1hbC5jIGIvZHJp dmVycy90aGVybWFsL3FvcmlxX3RoZXJtYWwuYwppbmRleCA0MzFjMjljMDg5OGEuLmQyZGM5OTI0 N2Y2MSAxMDA2NDQKLS0tIGEvZHJpdmVycy90aGVybWFsL3FvcmlxX3RoZXJtYWwuYworKysgYi9k cml2ZXJzL3RoZXJtYWwvcW9yaXFfdGhlcm1hbC5jCkBAIC04Myw3ICs4Myw3IEBAIHN0YXRpYyBz dHJ1Y3QgcW9yaXFfdG11X2RhdGEgKnFvcmlxX3NlbnNvcl90b19kYXRhKHN0cnVjdCBxb3JpcV9z ZW5zb3IgKnMpCiAKIHN0YXRpYyBpbnQgdG11X2dldF90ZW1wKHN0cnVjdCB0aGVybWFsX3pvbmVf ZGV2aWNlICp0eiwgaW50ICp0ZW1wKQogewotCXN0cnVjdCBxb3JpcV9zZW5zb3IgKnFzZW5zb3Ig PSB0ei0+ZGV2ZGF0YTsKKwlzdHJ1Y3QgcW9yaXFfc2Vuc29yICpxc2Vuc29yID0gdGhlcm1hbF96 b25lX2RldmljZV9wcml2KHR6KTsKIAlzdHJ1Y3QgcW9yaXFfdG11X2RhdGEgKnFkYXRhID0gcW9y aXFfc2Vuc29yX3RvX2RhdGEocXNlbnNvcik7CiAJdTMyIHZhbDsKIAkvKgpkaWZmIC0tZ2l0IGEv ZHJpdmVycy90aGVybWFsL3JjYXJfZ2VuM190aGVybWFsLmMgYi9kcml2ZXJzL3RoZXJtYWwvcmNh cl9nZW4zX3RoZXJtYWwuYwppbmRleCBkNmI1YjU5YzVjNTMuLjJiNzUzN2VmMTQxZCAxMDA2NDQK LS0tIGEvZHJpdmVycy90aGVybWFsL3JjYXJfZ2VuM190aGVybWFsLmMKKysrIGIvZHJpdmVycy90 aGVybWFsL3JjYXJfZ2VuM190aGVybWFsLmMKQEAgLTE2Nyw3ICsxNjcsNyBAQCBzdGF0aWMgaW50 IHJjYXJfZ2VuM190aGVybWFsX3JvdW5kKGludCB0ZW1wKQogCiBzdGF0aWMgaW50IHJjYXJfZ2Vu M190aGVybWFsX2dldF90ZW1wKHN0cnVjdCB0aGVybWFsX3pvbmVfZGV2aWNlICp0eiwgaW50ICp0 ZW1wKQogewotCXN0cnVjdCByY2FyX2dlbjNfdGhlcm1hbF90c2MgKnRzYyA9IHR6LT5kZXZkYXRh OworCXN0cnVjdCByY2FyX2dlbjNfdGhlcm1hbF90c2MgKnRzYyA9IHRoZXJtYWxfem9uZV9kZXZp Y2VfcHJpdih0eik7CiAJaW50IG1jZWxzaXVzLCB2YWw7CiAJaW50IHJlZzsKIApAQCAtMjA2LDcg KzIwNiw3IEBAIHN0YXRpYyBpbnQgcmNhcl9nZW4zX3RoZXJtYWxfbWNlbHNpdXNfdG9fdGVtcChz dHJ1Y3QgcmNhcl9nZW4zX3RoZXJtYWxfdHNjICp0c2MsCiAKIHN0YXRpYyBpbnQgcmNhcl9nZW4z X3RoZXJtYWxfc2V0X3RyaXBzKHN0cnVjdCB0aGVybWFsX3pvbmVfZGV2aWNlICp0eiwgaW50IGxv dywgaW50IGhpZ2gpCiB7Ci0Jc3RydWN0IHJjYXJfZ2VuM190aGVybWFsX3RzYyAqdHNjID0gdHot PmRldmRhdGE7CisJc3RydWN0IHJjYXJfZ2VuM190aGVybWFsX3RzYyAqdHNjID0gdGhlcm1hbF96 b25lX2RldmljZV9wcml2KHR6KTsKIAl1MzIgaXJxbXNrID0gMDsKIAogCWlmIChsb3cgIT0gLUlO VF9NQVgpIHsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvdGhlcm1hbC9yY2FyX3RoZXJtYWwuYyBiL2Ry aXZlcnMvdGhlcm1hbC9yY2FyX3RoZXJtYWwuYwppbmRleCA0MzZmNWY5Y2Y3MjkuLmUwNDQwZjYz YWU3NyAxMDA2NDQKLS0tIGEvZHJpdmVycy90aGVybWFsL3JjYXJfdGhlcm1hbC5jCisrKyBiL2Ry aXZlcnMvdGhlcm1hbC9yY2FyX3RoZXJtYWwuYwpAQCAtMTAxLDcgKzEwMSw2IEBAIHN0cnVjdCBy Y2FyX3RoZXJtYWxfcHJpdiB7CiAJbGlzdF9mb3JfZWFjaF9lbnRyeShwb3MsICZjb21tb24tPmhl YWQsIGxpc3QpCiAKICNkZWZpbmUgTUNFTFNJVVModGVtcCkJCQkoKHRlbXApICogMTAwMCkKLSNk ZWZpbmUgcmNhcl96b25lX3RvX3ByaXYoem9uZSkJCSgoem9uZSktPmRldmRhdGEpCiAjZGVmaW5l IHJjYXJfcHJpdl90b19kZXYocHJpdikJCSgocHJpdiktPmNvbW1vbi0+ZGV2KQogI2RlZmluZSBy Y2FyX2hhc19pcnFfc3VwcG9ydChwcml2KQkoKHByaXYpLT5jb21tb24tPmJhc2UpCiAjZGVmaW5l IHJjYXJfaWRfdG9fc2hpZnQocHJpdikJCSgocHJpdiktPmlkICogOCkKQEAgLTI3Myw3ICsyNzIs NyBAQCBzdGF0aWMgaW50IHJjYXJfdGhlcm1hbF9nZXRfY3VycmVudF90ZW1wKHN0cnVjdCByY2Fy X3RoZXJtYWxfcHJpdiAqcHJpdiwKIAogc3RhdGljIGludCByY2FyX3RoZXJtYWxfZ2V0X3RlbXAo c3RydWN0IHRoZXJtYWxfem9uZV9kZXZpY2UgKnpvbmUsIGludCAqdGVtcCkKIHsKLQlzdHJ1Y3Qg cmNhcl90aGVybWFsX3ByaXYgKnByaXYgPSByY2FyX3pvbmVfdG9fcHJpdih6b25lKTsKKwlzdHJ1 Y3QgcmNhcl90aGVybWFsX3ByaXYgKnByaXYgPSB0aGVybWFsX3pvbmVfZGV2aWNlX3ByaXYoem9u ZSk7CiAKIAlyZXR1cm4gcmNhcl90aGVybWFsX2dldF9jdXJyZW50X3RlbXAocHJpdiwgdGVtcCk7 CiB9CmRpZmYgLS1naXQgYS9kcml2ZXJzL3RoZXJtYWwvcm9ja2NoaXBfdGhlcm1hbC5jIGIvZHJp dmVycy90aGVybWFsL3JvY2tjaGlwX3RoZXJtYWwuYwppbmRleCA0YjdjNDNmMzRkMWEuLjhhNTFl YjI2ZTc5OCAxMDA2NDQKLS0tIGEvZHJpdmVycy90aGVybWFsL3JvY2tjaGlwX3RoZXJtYWwuYwor KysgYi9kcml2ZXJzL3RoZXJtYWwvcm9ja2NoaXBfdGhlcm1hbC5jCkBAIC0xMjEzLDcgKzEyMTMs NyBAQCBzdGF0aWMgaXJxcmV0dXJuX3Qgcm9ja2NoaXBfdGhlcm1hbF9hbGFybV9pcnFfdGhyZWFk KGludCBpcnEsIHZvaWQgKmRldikKIAogc3RhdGljIGludCByb2NrY2hpcF90aGVybWFsX3NldF90 cmlwcyhzdHJ1Y3QgdGhlcm1hbF96b25lX2RldmljZSAqdHosIGludCBsb3csIGludCBoaWdoKQog ewotCXN0cnVjdCByb2NrY2hpcF90aGVybWFsX3NlbnNvciAqc2Vuc29yID0gdHotPmRldmRhdGE7 CisJc3RydWN0IHJvY2tjaGlwX3RoZXJtYWxfc2Vuc29yICpzZW5zb3IgPSB0aGVybWFsX3pvbmVf ZGV2aWNlX3ByaXYodHopOwogCXN0cnVjdCByb2NrY2hpcF90aGVybWFsX2RhdGEgKnRoZXJtYWwg PSBzZW5zb3ItPnRoZXJtYWw7CiAJY29uc3Qgc3RydWN0IHJvY2tjaGlwX3RzYWRjX2NoaXAgKnRz YWRjID0gdGhlcm1hbC0+Y2hpcDsKIApAQCAtMTIyNiw3ICsxMjI2LDcgQEAgc3RhdGljIGludCBy b2NrY2hpcF90aGVybWFsX3NldF90cmlwcyhzdHJ1Y3QgdGhlcm1hbF96b25lX2RldmljZSAqdHos IGludCBsb3csIGkKIAogc3RhdGljIGludCByb2NrY2hpcF90aGVybWFsX2dldF90ZW1wKHN0cnVj dCB0aGVybWFsX3pvbmVfZGV2aWNlICp0eiwgaW50ICpvdXRfdGVtcCkKIHsKLQlzdHJ1Y3Qgcm9j a2NoaXBfdGhlcm1hbF9zZW5zb3IgKnNlbnNvciA9IHR6LT5kZXZkYXRhOworCXN0cnVjdCByb2Nr Y2hpcF90aGVybWFsX3NlbnNvciAqc2Vuc29yID0gdGhlcm1hbF96b25lX2RldmljZV9wcml2KHR6 KTsKIAlzdHJ1Y3Qgcm9ja2NoaXBfdGhlcm1hbF9kYXRhICp0aGVybWFsID0gc2Vuc29yLT50aGVy bWFsOwogCWNvbnN0IHN0cnVjdCByb2NrY2hpcF90c2FkY19jaGlwICp0c2FkYyA9IHNlbnNvci0+ dGhlcm1hbC0+Y2hpcDsKIAlpbnQgcmV0dmFsOwpkaWZmIC0tZ2l0IGEvZHJpdmVycy90aGVybWFs L3J6ZzJsX3RoZXJtYWwuYyBiL2RyaXZlcnMvdGhlcm1hbC9yemcybF90aGVybWFsLmMKaW5kZXgg MmUwNjQ5ZjM4NTA2Li43NjMxNDMwY2U4YTkgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvdGhlcm1hbC9y emcybF90aGVybWFsLmMKKysrIGIvZHJpdmVycy90aGVybWFsL3J6ZzJsX3RoZXJtYWwuYwpAQCAt NzUsNyArNzUsNyBAQCBzdGF0aWMgaW5saW5lIHZvaWQgcnpnMmxfdGhlcm1hbF93cml0ZShzdHJ1 Y3QgcnpnMmxfdGhlcm1hbF9wcml2ICpwcml2LCB1MzIgcmVnLAogCiBzdGF0aWMgaW50IHJ6ZzJs X3RoZXJtYWxfZ2V0X3RlbXAoc3RydWN0IHRoZXJtYWxfem9uZV9kZXZpY2UgKnR6LCBpbnQgKnRl bXApCiB7Ci0Jc3RydWN0IHJ6ZzJsX3RoZXJtYWxfcHJpdiAqcHJpdiA9IHR6LT5kZXZkYXRhOwor CXN0cnVjdCByemcybF90aGVybWFsX3ByaXYgKnByaXYgPSB0aGVybWFsX3pvbmVfZGV2aWNlX3By aXYodHopOwogCXUzMiByZXN1bHQgPSAwLCBkc2Vuc29yLCB0c19jb2RlX2F2ZTsKIAlpbnQgdmFs LCBpOwogCmRpZmYgLS1naXQgYS9kcml2ZXJzL3RoZXJtYWwvc2Ftc3VuZy9leHlub3NfdG11LmMg Yi9kcml2ZXJzL3RoZXJtYWwvc2Ftc3VuZy9leHlub3NfdG11LmMKaW5kZXggNTI3ZDFlYjA2NjNh Li40NWU1Yzg0MGQxMzAgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvdGhlcm1hbC9zYW1zdW5nL2V4eW5v c190bXUuYworKysgYi9kcml2ZXJzL3RoZXJtYWwvc2Ftc3VuZy9leHlub3NfdG11LmMKQEAgLTY0 NSw3ICs2NDUsNyBAQCBzdGF0aWMgdm9pZCBleHlub3M3X3RtdV9jb250cm9sKHN0cnVjdCBwbGF0 Zm9ybV9kZXZpY2UgKnBkZXYsIGJvb2wgb24pCiAKIHN0YXRpYyBpbnQgZXh5bm9zX2dldF90ZW1w KHN0cnVjdCB0aGVybWFsX3pvbmVfZGV2aWNlICp0eiwgaW50ICp0ZW1wKQogewotCXN0cnVjdCBl eHlub3NfdG11X2RhdGEgKmRhdGEgPSB0ei0+ZGV2ZGF0YTsKKwlzdHJ1Y3QgZXh5bm9zX3RtdV9k YXRhICpkYXRhID0gdGhlcm1hbF96b25lX2RldmljZV9wcml2KHR6KTsKIAlpbnQgdmFsdWUsIHJl dCA9IDA7CiAKIAlpZiAoIWRhdGEgfHwgIWRhdGEtPnRtdV9yZWFkKQpAQCAtNzIzLDcgKzcyMyw3 IEBAIHN0YXRpYyB2b2lkIGV4eW5vczQ0MTJfdG11X3NldF9lbXVsYXRpb24oc3RydWN0IGV4eW5v c190bXVfZGF0YSAqZGF0YSwKIAogc3RhdGljIGludCBleHlub3NfdG11X3NldF9lbXVsYXRpb24o c3RydWN0IHRoZXJtYWxfem9uZV9kZXZpY2UgKnR6LCBpbnQgdGVtcCkKIHsKLQlzdHJ1Y3QgZXh5 bm9zX3RtdV9kYXRhICpkYXRhID0gdHotPmRldmRhdGE7CisJc3RydWN0IGV4eW5vc190bXVfZGF0 YSAqZGF0YSA9IHRoZXJtYWxfem9uZV9kZXZpY2VfcHJpdih0eik7CiAJaW50IHJldCA9IC1FSU5W QUw7CiAKIAlpZiAoZGF0YS0+c29jID09IFNPQ19BUkNIX0VYWU5PUzQyMTApCmRpZmYgLS1naXQg YS9kcml2ZXJzL3RoZXJtYWwvc3BlYXJfdGhlcm1hbC5jIGIvZHJpdmVycy90aGVybWFsL3NwZWFy X3RoZXJtYWwuYwppbmRleCA2YTcyMmIxMGQ3MzguLjY1MzQzOWI5NjVjOCAxMDA2NDQKLS0tIGEv ZHJpdmVycy90aGVybWFsL3NwZWFyX3RoZXJtYWwuYworKysgYi9kcml2ZXJzL3RoZXJtYWwvc3Bl YXJfdGhlcm1hbC5jCkBAIC0zMSw3ICszMSw3IEBAIHN0cnVjdCBzcGVhcl90aGVybWFsX2RldiB7 CiBzdGF0aWMgaW5saW5lIGludCB0aGVybWFsX2dldF90ZW1wKHN0cnVjdCB0aGVybWFsX3pvbmVf ZGV2aWNlICp0aGVybWFsLAogCQkJCWludCAqdGVtcCkKIHsKLQlzdHJ1Y3Qgc3BlYXJfdGhlcm1h bF9kZXYgKnN0ZGV2ID0gdGhlcm1hbC0+ZGV2ZGF0YTsKKwlzdHJ1Y3Qgc3BlYXJfdGhlcm1hbF9k ZXYgKnN0ZGV2ID0gdGhlcm1hbF96b25lX2RldmljZV9wcml2KHRoZXJtYWwpOwogCiAJLyoKIAkg KiBEYXRhIGFyZSByZWFkeSB0byBiZSByZWFkIGFmdGVyIDYyOCB1c2VjIGZyb20gUE9XRVJET1dO IHNpZ25hbApAQCAtNDgsNyArNDgsNyBAQCBzdGF0aWMgc3RydWN0IHRoZXJtYWxfem9uZV9kZXZp Y2Vfb3BzIG9wcyA9IHsKIHN0YXRpYyBpbnQgX19tYXliZV91bnVzZWQgc3BlYXJfdGhlcm1hbF9z dXNwZW5kKHN0cnVjdCBkZXZpY2UgKmRldikKIHsKIAlzdHJ1Y3QgdGhlcm1hbF96b25lX2Rldmlj ZSAqc3BlYXJfdGhlcm1hbCA9IGRldl9nZXRfZHJ2ZGF0YShkZXYpOwotCXN0cnVjdCBzcGVhcl90 aGVybWFsX2RldiAqc3RkZXYgPSBzcGVhcl90aGVybWFsLT5kZXZkYXRhOworCXN0cnVjdCBzcGVh cl90aGVybWFsX2RldiAqc3RkZXYgPSB0aGVybWFsX3pvbmVfZGV2aWNlX3ByaXYoc3BlYXJfdGhl cm1hbCk7CiAJdW5zaWduZWQgaW50IGFjdHVhbF9tYXNrID0gMDsKIAogCS8qIERpc2FibGUgU1BF QXIgVGhlcm1hbCBTZW5zb3IgKi8KQEAgLTY0LDcgKzY0LDcgQEAgc3RhdGljIGludCBfX21heWJl X3VudXNlZCBzcGVhcl90aGVybWFsX3N1c3BlbmQoc3RydWN0IGRldmljZSAqZGV2KQogc3RhdGlj IGludCBfX21heWJlX3VudXNlZCBzcGVhcl90aGVybWFsX3Jlc3VtZShzdHJ1Y3QgZGV2aWNlICpk ZXYpCiB7CiAJc3RydWN0IHRoZXJtYWxfem9uZV9kZXZpY2UgKnNwZWFyX3RoZXJtYWwgPSBkZXZf Z2V0X2RydmRhdGEoZGV2KTsKLQlzdHJ1Y3Qgc3BlYXJfdGhlcm1hbF9kZXYgKnN0ZGV2ID0gc3Bl YXJfdGhlcm1hbC0+ZGV2ZGF0YTsKKwlzdHJ1Y3Qgc3BlYXJfdGhlcm1hbF9kZXYgKnN0ZGV2ID0g dGhlcm1hbF96b25lX2RldmljZV9wcml2KHNwZWFyX3RoZXJtYWwpOwogCXVuc2lnbmVkIGludCBh Y3R1YWxfbWFzayA9IDA7CiAJaW50IHJldCA9IDA7CiAKQEAgLTE1NCw3ICsxNTQsNyBAQCBzdGF0 aWMgaW50IHNwZWFyX3RoZXJtYWxfZXhpdChzdHJ1Y3QgcGxhdGZvcm1fZGV2aWNlICpwZGV2KQog ewogCXVuc2lnbmVkIGludCBhY3R1YWxfbWFzayA9IDA7CiAJc3RydWN0IHRoZXJtYWxfem9uZV9k ZXZpY2UgKnNwZWFyX3RoZXJtYWwgPSBwbGF0Zm9ybV9nZXRfZHJ2ZGF0YShwZGV2KTsKLQlzdHJ1 Y3Qgc3BlYXJfdGhlcm1hbF9kZXYgKnN0ZGV2ID0gc3BlYXJfdGhlcm1hbC0+ZGV2ZGF0YTsKKwlz dHJ1Y3Qgc3BlYXJfdGhlcm1hbF9kZXYgKnN0ZGV2ID0gdGhlcm1hbF96b25lX2RldmljZV9wcml2 KHNwZWFyX3RoZXJtYWwpOwogCiAJdGhlcm1hbF96b25lX2RldmljZV91bnJlZ2lzdGVyKHNwZWFy X3RoZXJtYWwpOwogCmRpZmYgLS1naXQgYS9kcml2ZXJzL3RoZXJtYWwvc3ByZF90aGVybWFsLmMg Yi9kcml2ZXJzL3RoZXJtYWwvc3ByZF90aGVybWFsLmMKaW5kZXggYWM4ODQ1MTRmMTE2Li4yZmI5 MGZkYWQ3NmUgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvdGhlcm1hbC9zcHJkX3RoZXJtYWwuYworKysg Yi9kcml2ZXJzL3RoZXJtYWwvc3ByZF90aGVybWFsLmMKQEAgLTIwNiw3ICsyMDYsNyBAQCBzdGF0 aWMgaW50IHNwcmRfdGhtX3RlbXBfdG9fcmF3ZGF0YShpbnQgdGVtcCwgc3RydWN0IHNwcmRfdGhl cm1hbF9zZW5zb3IgKnNlbikKIAogc3RhdGljIGludCBzcHJkX3RobV9yZWFkX3RlbXAoc3RydWN0 IHRoZXJtYWxfem9uZV9kZXZpY2UgKnR6LCBpbnQgKnRlbXApCiB7Ci0Jc3RydWN0IHNwcmRfdGhl cm1hbF9zZW5zb3IgKnNlbiA9IHR6LT5kZXZkYXRhOworCXN0cnVjdCBzcHJkX3RoZXJtYWxfc2Vu c29yICpzZW4gPSB0aGVybWFsX3pvbmVfZGV2aWNlX3ByaXYodHopOwogCXUzMiBkYXRhOwogCiAJ ZGF0YSA9IHJlYWRsKHNlbi0+ZGF0YS0+YmFzZSArIFNQUkRfVEhNX1RFTVAoc2VuLT5pZCkpICYK ZGlmZiAtLWdpdCBhL2RyaXZlcnMvdGhlcm1hbC9zdC9zdF90aGVybWFsLmMgYi9kcml2ZXJzL3Ro ZXJtYWwvc3Qvc3RfdGhlcm1hbC5jCmluZGV4IDEwMDlmMDhlNjRlMy4uNmVkMzkzMjE4ZWI4IDEw MDY0NAotLS0gYS9kcml2ZXJzL3RoZXJtYWwvc3Qvc3RfdGhlcm1hbC5jCisrKyBiL2RyaXZlcnMv dGhlcm1hbC9zdC9zdF90aGVybWFsLmMKQEAgLTEwOCw3ICsxMDgsNyBAQCBzdGF0aWMgaW50IHN0 X3RoZXJtYWxfY2FsaWJyYXRpb24oc3RydWN0IHN0X3RoZXJtYWxfc2Vuc29yICpzZW5zb3IpCiAv KiBDYWxsYmFjayB0byBnZXQgdGVtcGVyYXR1cmUgZnJvbSBIVyovCiBzdGF0aWMgaW50IHN0X3Ro ZXJtYWxfZ2V0X3RlbXAoc3RydWN0IHRoZXJtYWxfem9uZV9kZXZpY2UgKnRoLCBpbnQgKnRlbXBl cmF0dXJlKQogewotCXN0cnVjdCBzdF90aGVybWFsX3NlbnNvciAqc2Vuc29yID0gdGgtPmRldmRh dGE7CisJc3RydWN0IHN0X3RoZXJtYWxfc2Vuc29yICpzZW5zb3IgPSB0aGVybWFsX3pvbmVfZGV2 aWNlX3ByaXYodGgpOwogCXN0cnVjdCBkZXZpY2UgKmRldiA9IHNlbnNvci0+ZGV2OwogCXVuc2ln bmVkIGludCB0ZW1wOwogCXVuc2lnbmVkIGludCBvdmVyZmxvdzsKZGlmZiAtLWdpdCBhL2RyaXZl cnMvdGhlcm1hbC9zdC9zdG1fdGhlcm1hbC5jIGIvZHJpdmVycy90aGVybWFsL3N0L3N0bV90aGVy bWFsLmMKaW5kZXggNzM1NDAxOTU4ZjAxLi42ZjJiYWQ4ZWY4MmYgMTAwNjQ0Ci0tLSBhL2RyaXZl cnMvdGhlcm1hbC9zdC9zdG1fdGhlcm1hbC5jCisrKyBiL2RyaXZlcnMvdGhlcm1hbC9zdC9zdG1f dGhlcm1hbC5jCkBAIC0zMDMsNyArMzAzLDcgQEAgc3RhdGljIGludCBzdG1fZGlzYWJsZV9pcnEo c3RydWN0IHN0bV90aGVybWFsX3NlbnNvciAqc2Vuc29yKQogCiBzdGF0aWMgaW50IHN0bV90aGVy bWFsX3NldF90cmlwcyhzdHJ1Y3QgdGhlcm1hbF96b25lX2RldmljZSAqdHosIGludCBsb3csIGlu dCBoaWdoKQogewotCXN0cnVjdCBzdG1fdGhlcm1hbF9zZW5zb3IgKnNlbnNvciA9IHR6LT5kZXZk YXRhOworCXN0cnVjdCBzdG1fdGhlcm1hbF9zZW5zb3IgKnNlbnNvciA9IHRoZXJtYWxfem9uZV9k ZXZpY2VfcHJpdih0eik7CiAJdTMyIGl0cjEsIHRoOwogCWludCByZXQ7CiAKQEAgLTM1MSw3ICsz NTEsNyBAQCBzdGF0aWMgaW50IHN0bV90aGVybWFsX3NldF90cmlwcyhzdHJ1Y3QgdGhlcm1hbF96 b25lX2RldmljZSAqdHosIGludCBsb3csIGludCBoaQogLyogQ2FsbGJhY2sgdG8gZ2V0IHRlbXBl cmF0dXJlIGZyb20gSFcgKi8KIHN0YXRpYyBpbnQgc3RtX3RoZXJtYWxfZ2V0X3RlbXAoc3RydWN0 IHRoZXJtYWxfem9uZV9kZXZpY2UgKnR6LCBpbnQgKnRlbXApCiB7Ci0Jc3RydWN0IHN0bV90aGVy bWFsX3NlbnNvciAqc2Vuc29yID0gdHotPmRldmRhdGE7CisJc3RydWN0IHN0bV90aGVybWFsX3Nl bnNvciAqc2Vuc29yID0gdGhlcm1hbF96b25lX2RldmljZV9wcml2KHR6KTsKIAl1MzIgcGVyaW9k czsKIAlpbnQgZnJlcU0sIHJldDsKIApkaWZmIC0tZ2l0IGEvZHJpdmVycy90aGVybWFsL3N1bjhp X3RoZXJtYWwuYyBiL2RyaXZlcnMvdGhlcm1hbC9zdW44aV90aGVybWFsLmMKaW5kZXggNDk3YmVh YzYzZTVkLi42YjU1MGYwZjkwYmYgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvdGhlcm1hbC9zdW44aV90 aGVybWFsLmMKKysrIGIvZHJpdmVycy90aGVybWFsL3N1bjhpX3RoZXJtYWwuYwpAQCAtMTEwLDcg KzExMCw3IEBAIHN0YXRpYyBpbnQgc3VuNTBpX2g1X2NhbGNfdGVtcChzdHJ1Y3QgdGhzX2Rldmlj ZSAqdG1kZXYsCiAKIHN0YXRpYyBpbnQgc3VuOGlfdGhzX2dldF90ZW1wKHN0cnVjdCB0aGVybWFs X3pvbmVfZGV2aWNlICp0eiwgaW50ICp0ZW1wKQogewotCXN0cnVjdCB0c2Vuc29yICpzID0gdHot PmRldmRhdGE7CisJc3RydWN0IHRzZW5zb3IgKnMgPSB0aGVybWFsX3pvbmVfZGV2aWNlX3ByaXYo dHopOwogCXN0cnVjdCB0aHNfZGV2aWNlICp0bWRldiA9IHMtPnRtZGV2OwogCWludCB2YWwgPSAw OwogCmRpZmYgLS1naXQgYS9kcml2ZXJzL3RoZXJtYWwvdGVncmEvc29jdGhlcm0uYyBiL2RyaXZl cnMvdGhlcm1hbC90ZWdyYS9zb2N0aGVybS5jCmluZGV4IDIyMDg3MzI5OGQ3Ny4uZWE2NmNiYTA5 ZTU2IDEwMDY0NAotLS0gYS9kcml2ZXJzL3RoZXJtYWwvdGVncmEvc29jdGhlcm0uYworKysgYi9k cml2ZXJzL3RoZXJtYWwvdGVncmEvc29jdGhlcm0uYwpAQCAtNDIzLDcgKzQyMyw3IEBAIHN0YXRp YyBpbnQgdHJhbnNsYXRlX3RlbXAodTE2IHZhbCkKIAogc3RhdGljIGludCB0ZWdyYV90aGVybWN0 bF9nZXRfdGVtcChzdHJ1Y3QgdGhlcm1hbF96b25lX2RldmljZSAqdHosIGludCAqb3V0X3RlbXAp CiB7Ci0Jc3RydWN0IHRlZ3JhX3RoZXJtY3RsX3pvbmUgKnpvbmUgPSB0ei0+ZGV2ZGF0YTsKKwlz dHJ1Y3QgdGVncmFfdGhlcm1jdGxfem9uZSAqem9uZSA9IHRoZXJtYWxfem9uZV9kZXZpY2VfcHJp dih0eik7CiAJdTMyIHZhbDsKIAogCXZhbCA9IHJlYWRsKHpvbmUtPnJlZyk7CkBAIC01ODQsNyAr NTg0LDcgQEAgc3RhdGljIGludCB0c2Vuc29yX2dyb3VwX3RoZXJtdHJpcF9nZXQoc3RydWN0IHRl Z3JhX3NvY3RoZXJtICp0cywgaW50IGlkKQogCiBzdGF0aWMgaW50IHRlZ3JhX3RoZXJtY3RsX3Nl dF90cmlwX3RlbXAoc3RydWN0IHRoZXJtYWxfem9uZV9kZXZpY2UgKnR6LCBpbnQgdHJpcF9pZCwg aW50IHRlbXApCiB7Ci0Jc3RydWN0IHRlZ3JhX3RoZXJtY3RsX3pvbmUgKnpvbmUgPSB0ei0+ZGV2 ZGF0YTsKKwlzdHJ1Y3QgdGVncmFfdGhlcm1jdGxfem9uZSAqem9uZSA9IHRoZXJtYWxfem9uZV9k ZXZpY2VfcHJpdih0eik7CiAJc3RydWN0IHRlZ3JhX3NvY3RoZXJtICp0cyA9IHpvbmUtPnRzOwog CXN0cnVjdCB0aGVybWFsX3RyaXAgdHJpcDsKIAljb25zdCBzdHJ1Y3QgdGVncmFfdHNlbnNvcl9n cm91cCAqc2cgPSB6b25lLT5zZzsKQEAgLTY1OCw3ICs2NTgsNyBAQCBzdGF0aWMgdm9pZCB0aGVy bWFsX2lycV9kaXNhYmxlKHN0cnVjdCB0ZWdyYV90aGVybWN0bF96b25lICp6bikKIAogc3RhdGlj IGludCB0ZWdyYV90aGVybWN0bF9zZXRfdHJpcHMoc3RydWN0IHRoZXJtYWxfem9uZV9kZXZpY2Ug KnR6LCBpbnQgbG8sIGludCBoaSkKIHsKLQlzdHJ1Y3QgdGVncmFfdGhlcm1jdGxfem9uZSAqem9u ZSA9IHR6LT5kZXZkYXRhOworCXN0cnVjdCB0ZWdyYV90aGVybWN0bF96b25lICp6b25lID0gdGhl cm1hbF96b25lX2RldmljZV9wcml2KHR6KTsKIAl1MzIgcjsKIAogCXRoZXJtYWxfaXJxX2Rpc2Fi bGUoem9uZSk7CmRpZmYgLS1naXQgYS9kcml2ZXJzL3RoZXJtYWwvdGVncmEvdGVncmEtYnBtcC10 aGVybWFsLmMgYi9kcml2ZXJzL3RoZXJtYWwvdGVncmEvdGVncmEtYnBtcC10aGVybWFsLmMKaW5k ZXggMGI3YTFhMTk0OGNiLi43YmQ4ZWE3NzBmYTEgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvdGhlcm1h bC90ZWdyYS90ZWdyYS1icG1wLXRoZXJtYWwuYworKysgYi9kcml2ZXJzL3RoZXJtYWwvdGVncmEv dGVncmEtYnBtcC10aGVybWFsLmMKQEAgLTYyLDEyICs2MiwxNCBAQCBzdGF0aWMgaW50IF9fdGVn cmFfYnBtcF90aGVybWFsX2dldF90ZW1wKHN0cnVjdCB0ZWdyYV9icG1wX3RoZXJtYWxfem9uZSAq em9uZSwKIAogc3RhdGljIGludCB0ZWdyYV9icG1wX3RoZXJtYWxfZ2V0X3RlbXAoc3RydWN0IHRo ZXJtYWxfem9uZV9kZXZpY2UgKnR6LCBpbnQgKm91dF90ZW1wKQogewotCXJldHVybiBfX3RlZ3Jh X2JwbXBfdGhlcm1hbF9nZXRfdGVtcCh0ei0+ZGV2ZGF0YSwgb3V0X3RlbXApOworCXN0cnVjdCB0 ZWdyYV9icG1wX3RoZXJtYWxfem9uZSAqem9uZSA9IHRoZXJtYWxfem9uZV9kZXZpY2VfcHJpdih0 eik7CisJCisJcmV0dXJuIF9fdGVncmFfYnBtcF90aGVybWFsX2dldF90ZW1wKHpvbmUsIG91dF90 ZW1wKTsKIH0KIAogc3RhdGljIGludCB0ZWdyYV9icG1wX3RoZXJtYWxfc2V0X3RyaXBzKHN0cnVj dCB0aGVybWFsX3pvbmVfZGV2aWNlICp0eiwgaW50IGxvdywgaW50IGhpZ2gpCiB7Ci0Jc3RydWN0 IHRlZ3JhX2JwbXBfdGhlcm1hbF96b25lICp6b25lID0gdHotPmRldmRhdGE7CisJc3RydWN0IHRl Z3JhX2JwbXBfdGhlcm1hbF96b25lICp6b25lID0gdGhlcm1hbF96b25lX2RldmljZV9wcml2KHR6 KTsKIAlzdHJ1Y3QgbXJxX3RoZXJtYWxfaG9zdF90b19icG1wX3JlcXVlc3QgcmVxOwogCXN0cnVj dCB0ZWdyYV9icG1wX21lc3NhZ2UgbXNnOwogCWludCBlcnI7CmRpZmYgLS1naXQgYS9kcml2ZXJz L3RoZXJtYWwvdGVncmEvdGVncmEzMC10c2Vuc29yLmMgYi9kcml2ZXJzL3RoZXJtYWwvdGVncmEv dGVncmEzMC10c2Vuc29yLmMKaW5kZXggYjMyMThiNzFiNmQ5Li40MmM2ZmI0OTRkZDkgMTAwNjQ0 Ci0tLSBhL2RyaXZlcnMvdGhlcm1hbC90ZWdyYS90ZWdyYTMwLXRzZW5zb3IuYworKysgYi9kcml2 ZXJzL3RoZXJtYWwvdGVncmEvdGVncmEzMC10c2Vuc29yLmMKQEAgLTE2MCw3ICsxNjAsNyBAQCBz dGF0aWMgdm9pZCBkZXZtX3RlZ3JhX3RzZW5zb3JfaHdfZGlzYWJsZSh2b2lkICpkYXRhKQogCiBz dGF0aWMgaW50IHRlZ3JhX3RzZW5zb3JfZ2V0X3RlbXAoc3RydWN0IHRoZXJtYWxfem9uZV9kZXZp Y2UgKnR6LCBpbnQgKnRlbXApCiB7Ci0JY29uc3Qgc3RydWN0IHRlZ3JhX3RzZW5zb3JfY2hhbm5l bCAqdHNjID0gdHotPmRldmRhdGE7CisJY29uc3Qgc3RydWN0IHRlZ3JhX3RzZW5zb3JfY2hhbm5l bCAqdHNjID0gdGhlcm1hbF96b25lX2RldmljZV9wcml2KHR6KTsKIAljb25zdCBzdHJ1Y3QgdGVn cmFfdHNlbnNvciAqdHMgPSB0c2MtPnRzOwogCWludCBlcnIsIGMxLCBjMiwgYzMsIGM0LCBjb3Vu dGVyOwogCXUzMiB2YWw7CkBAIC0yMTgsNyArMjE4LDcgQEAgc3RhdGljIGludCB0ZWdyYV90c2Vu c29yX3RlbXBfdG9fY291bnRlcihjb25zdCBzdHJ1Y3QgdGVncmFfdHNlbnNvciAqdHMsIGludCB0 ZW0KIAogc3RhdGljIGludCB0ZWdyYV90c2Vuc29yX3NldF90cmlwcyhzdHJ1Y3QgdGhlcm1hbF96 b25lX2RldmljZSAqdHosIGludCBsb3csIGludCBoaWdoKQogewotCWNvbnN0IHN0cnVjdCB0ZWdy YV90c2Vuc29yX2NoYW5uZWwgKnRzYyA9IHR6LT5kZXZkYXRhOworCWNvbnN0IHN0cnVjdCB0ZWdy YV90c2Vuc29yX2NoYW5uZWwgKnRzYyA9IHRoZXJtYWxfem9uZV9kZXZpY2VfcHJpdih0eik7CiAJ Y29uc3Qgc3RydWN0IHRlZ3JhX3RzZW5zb3IgKnRzID0gdHNjLT50czsKIAl1MzIgdmFsOwogCmRp ZmYgLS1naXQgYS9kcml2ZXJzL3RoZXJtYWwvdGhlcm1hbC1nZW5lcmljLWFkYy5jIGIvZHJpdmVy cy90aGVybWFsL3RoZXJtYWwtZ2VuZXJpYy1hZGMuYwppbmRleCAzMjNlMjczZTMyOTguLjJjMjgz ZTc2MmQ4MSAxMDA2NDQKLS0tIGEvZHJpdmVycy90aGVybWFsL3RoZXJtYWwtZ2VuZXJpYy1hZGMu YworKysgYi9kcml2ZXJzL3RoZXJtYWwvdGhlcm1hbC1nZW5lcmljLWFkYy5jCkBAIC01NCw3ICs1 NCw3IEBAIHN0YXRpYyBpbnQgZ2FkY190aGVybWFsX2FkY190b190ZW1wKHN0cnVjdCBnYWRjX3Ro ZXJtYWxfaW5mbyAqZ3RpLCBpbnQgdmFsKQogCiBzdGF0aWMgaW50IGdhZGNfdGhlcm1hbF9nZXRf dGVtcChzdHJ1Y3QgdGhlcm1hbF96b25lX2RldmljZSAqdHosIGludCAqdGVtcCkKIHsKLQlzdHJ1 Y3QgZ2FkY190aGVybWFsX2luZm8gKmd0aSA9IHR6LT5kZXZkYXRhOworCXN0cnVjdCBnYWRjX3Ro ZXJtYWxfaW5mbyAqZ3RpID0gdGhlcm1hbF96b25lX2RldmljZV9wcml2KHR6KTsKIAlpbnQgdmFs OwogCWludCByZXQ7CiAKZGlmZiAtLWdpdCBhL2RyaXZlcnMvdGhlcm1hbC90aGVybWFsX21taW8u YyBiL2RyaXZlcnMvdGhlcm1hbC90aGVybWFsX21taW8uYwppbmRleCBlYTYxNjczMTA2NmMuLjY4 NDU3NTZhZDVlNyAxMDA2NDQKLS0tIGEvZHJpdmVycy90aGVybWFsL3RoZXJtYWxfbW1pby5jCisr KyBiL2RyaXZlcnMvdGhlcm1hbC90aGVybWFsX21taW8uYwpAQCAtMjMsNyArMjMsNyBAQCBzdGF0 aWMgdTMyIHRoZXJtYWxfbW1pb19yZWFkYih2b2lkIF9faW9tZW0gKm1taW9fYmFzZSkKIHN0YXRp YyBpbnQgdGhlcm1hbF9tbWlvX2dldF90ZW1wZXJhdHVyZShzdHJ1Y3QgdGhlcm1hbF96b25lX2Rl dmljZSAqdHosIGludCAqdGVtcCkKIHsKIAlpbnQgdDsKLQlzdHJ1Y3QgdGhlcm1hbF9tbWlvICpz ZW5zb3IgPSB0ei0+ZGV2ZGF0YTsKKwlzdHJ1Y3QgdGhlcm1hbF9tbWlvICpzZW5zb3IgPSB0aGVy bWFsX3pvbmVfZGV2aWNlX3ByaXYodHopOwogCiAJdCA9IHNlbnNvci0+cmVhZF9tbWlvKHNlbnNv ci0+bW1pb19iYXNlKSAmIHNlbnNvci0+bWFzazsKIAl0ICo9IHNlbnNvci0+ZmFjdG9yOwpkaWZm IC0tZ2l0IGEvZHJpdmVycy90aGVybWFsL3RpLXNvYy10aGVybWFsL3RpLXRoZXJtYWwtY29tbW9u LmMgYi9kcml2ZXJzL3RoZXJtYWwvdGktc29jLXRoZXJtYWwvdGktdGhlcm1hbC1jb21tb24uYwpp bmRleCA4YTkwNTViZDM3NmUuLjNlOTk4Yzk3OTliYiAxMDA2NDQKLS0tIGEvZHJpdmVycy90aGVy bWFsL3RpLXNvYy10aGVybWFsL3RpLXRoZXJtYWwtY29tbW9uLmMKKysrIGIvZHJpdmVycy90aGVy bWFsL3RpLXNvYy10aGVybWFsL3RpLXRoZXJtYWwtY29tbW9uLmMKQEAgLTY4LDcgKzY4LDcgQEAg c3RhdGljIGlubGluZSBpbnQgdGlfdGhlcm1hbF9ob3RzcG90X3RlbXBlcmF0dXJlKGludCB0LCBp bnQgcywgaW50IGMpCiBzdGF0aWMgaW5saW5lIGludCBfX3RpX3RoZXJtYWxfZ2V0X3RlbXAoc3Ry dWN0IHRoZXJtYWxfem9uZV9kZXZpY2UgKnR6LCBpbnQgKnRlbXApCiB7CiAJc3RydWN0IHRoZXJt YWxfem9uZV9kZXZpY2UgKnBjYl90eiA9IE5VTEw7Ci0Jc3RydWN0IHRpX3RoZXJtYWxfZGF0YSAq ZGF0YSA9IHR6LT5kZXZkYXRhOworCXN0cnVjdCB0aV90aGVybWFsX2RhdGEgKmRhdGEgPSB0aGVy bWFsX3pvbmVfZGV2aWNlX3ByaXYodHopOwogCXN0cnVjdCB0aV9iYW5kZ2FwICpiZ3A7CiAJY29u c3Qgc3RydWN0IHRpX3RlbXBfc2Vuc29yICpzOwogCWludCByZXQsIHRtcCwgc2xvcGUsIGNvbnN0 YW50OwpAQCAtMTA5LDcgKzEwOSw3IEBAIHN0YXRpYyBpbmxpbmUgaW50IF9fdGlfdGhlcm1hbF9n ZXRfdGVtcChzdHJ1Y3QgdGhlcm1hbF96b25lX2RldmljZSAqdHosIGludCAqdGVtCiAKIHN0YXRp YyBpbnQgX190aV90aGVybWFsX2dldF90cmVuZChzdHJ1Y3QgdGhlcm1hbF96b25lX2RldmljZSAq dHosIGludCB0cmlwLCBlbnVtIHRoZXJtYWxfdHJlbmQgKnRyZW5kKQogewotCXN0cnVjdCB0aV90 aGVybWFsX2RhdGEgKmRhdGEgPSB0ei0+ZGV2ZGF0YTsKKwlzdHJ1Y3QgdGlfdGhlcm1hbF9kYXRh ICpkYXRhID0gdGhlcm1hbF96b25lX2RldmljZV9wcml2KHR6KTsKIAlzdHJ1Y3QgdGlfYmFuZGdh cCAqYmdwOwogCWludCBpZCwgdHIsIHJldCA9IDA7CiAKZGlmZiAtLWdpdCBhL2RyaXZlcnMvdGhl cm1hbC91bmlwaGllcl90aGVybWFsLmMgYi9kcml2ZXJzL3RoZXJtYWwvdW5pcGhpZXJfdGhlcm1h bC5jCmluZGV4IDQ3ODAxODQxYjNmNS4uYWVmNjExOWNjMDA0IDEwMDY0NAotLS0gYS9kcml2ZXJz L3RoZXJtYWwvdW5pcGhpZXJfdGhlcm1hbC5jCisrKyBiL2RyaXZlcnMvdGhlcm1hbC91bmlwaGll cl90aGVybWFsLmMKQEAgLTE4Nyw3ICsxODcsNyBAQCBzdGF0aWMgdm9pZCB1bmlwaGllcl90bV9k aXNhYmxlX3NlbnNvcihzdHJ1Y3QgdW5pcGhpZXJfdG1fZGV2ICp0ZGV2KQogCiBzdGF0aWMgaW50 IHVuaXBoaWVyX3RtX2dldF90ZW1wKHN0cnVjdCB0aGVybWFsX3pvbmVfZGV2aWNlICp0eiwgaW50 ICpvdXRfdGVtcCkKIHsKLQlzdHJ1Y3QgdW5pcGhpZXJfdG1fZGV2ICp0ZGV2ID0gdHotPmRldmRh dGE7CisJc3RydWN0IHVuaXBoaWVyX3RtX2RldiAqdGRldiA9IHRoZXJtYWxfem9uZV9kZXZpY2Vf cHJpdih0eik7CiAJc3RydWN0IHJlZ21hcCAqbWFwID0gdGRldi0+cmVnbWFwOwogCWludCByZXQ7 CiAJdTMyIHRlbXA7Ci0tIAoyLjM0LjEKCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fXwpsaW51eC1hbWxvZ2ljIG1haWxpbmcgbGlzdApsaW51eC1hbWxvZ2lj QGxpc3RzLmluZnJhZGVhZC5vcmcKaHR0cDovL2xpc3RzLmluZnJhZGVhZC5vcmcvbWFpbG1hbi9s aXN0aW5mby9saW51eC1hbWxvZ2ljCg==