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 X-Spam-Level: X-Spam-Status: No, score=-6.8 required=3.0 tests=DKIM_ADSP_CUSTOM_MED, DKIM_SIGNED,DKIM_VALID,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY, SPF_PASS autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 77369C43381 for ; Tue, 19 Feb 2019 12:17:54 +0000 (UTC) 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 mail.kernel.org (Postfix) with ESMTPS id 3310221738 for ; Tue, 19 Feb 2019 12:17:54 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=lists.infradead.org header.i=@lists.infradead.org header.b="HZWmPw7r"; dkim=fail reason="signature verification failed" (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="A4Vbhlbc" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 3310221738 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=gmail.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-arm-kernel-bounces+infradead-linux-arm-kernel=archiver.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20170209; h=Sender:Content-Type: Content-Transfer-Encoding:Cc:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:In-Reply-To:MIME-Version:Date:Message-ID:From: References:To:Subject:Reply-To:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=vHRdrChnyk49IfxnHGQo1Ql6L/4Ifrn+pwcX373as80=; b=HZWmPw7rV64JqkXEfHevEusyw PnZanekEIzQyvkGAuzuM/E4S5XtNMS0OjP6zJHFJvhkI0onvO5HGa+FKUNQmkj8ikrCoF96HdMjzk 8TtjJGrCET6sMc7hmTbC3cWol/rcT76GKj4YHW480tynQe42tK3w4+o/DVlGr8QeP3R7hdOYwFC1f sf+a/XyIf2OcEQrevmR/kO9JXe5GD95YPeS73lHfksFWdKtC7sUa5BxQORh/QD/A5xdELasg7mjsN D3iOy4oKHFQ8K7UsfNYF2zqh+Dui5SbyekyS4+A/lKRiQLDdAXAqiqHBZqau/eVSFq1D70VwC0gqR t2gc9eBSA==; Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.90_1 #2 (Red Hat Linux)) id 1gw4LK-00047a-2o; Tue, 19 Feb 2019 12:17:46 +0000 Received: from mail-lf1-x143.google.com ([2a00:1450:4864:20::143]) by bombadil.infradead.org with esmtps (Exim 4.90_1 #2 (Red Hat Linux)) id 1gw4L4-00045I-3o; Tue, 19 Feb 2019 12:17:42 +0000 Received: by mail-lf1-x143.google.com with SMTP id g2so14699775lfh.11; Tue, 19 Feb 2019 04:17:29 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=subject:to:cc:references:from:message-id:date:user-agent :mime-version:in-reply-to:content-language:content-transfer-encoding; bh=7YZAxbvUS5FyJgzN08XvAk38XB549TvGeEpz0F8Iao0=; b=A4VbhlbcVzoWsafVwuwQyZ2PtaY+aegUjpEiuaWQG+h+dm5qRr04Fss1JaTyAMk0M9 EknTK8LFXyHTZgqQpqiz+NFJFZqc/IdaFZDQ28nn1xE2nRecHH0c/0C5TE+qXl3GL9Bc /xVi3pRZbvI+J8qHhMeMELlXQYuh6ceA/phACM47ksODg32pE0PD9DDp5K89LQWm5xk4 DYc86CxpKSfI8tSh0e8TfsU4OergEEqXFdu8neVRemgqbPugjgIBaxEES4DAkXRmsOlO tb4bWJwbvdvnC1m83dOZywJTKJysWqL7FDbJh2eJrmgRV47Dz+hYnyX5Xpl+5WLVr3Qf YVDQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:to:cc:references:from:message-id:date :user-agent:mime-version:in-reply-to:content-language :content-transfer-encoding; bh=7YZAxbvUS5FyJgzN08XvAk38XB549TvGeEpz0F8Iao0=; b=d8ahpVbOtNPQaxp34sgcWgK2nhJ/Tyu3t0PfsLscqiyZHA5JJx/W4bTbIJFJASa2TN AMzBXCFWlmwWnehBoZidF5TvnNK8b3e2lkJENFWXOh3SVhikUrUyH1Rgv6/NkQp17Kfm 1ZjeFYkCNWNJYLY+2CFksgWRxvNEqUXaData48Rk8kiwtv1Qu2g+Y9Z6Jlu7ueVtJ5WQ 3oyNMeH3DODBTw5c9UIYtHj7oPvlaPrUObGRsezDOkSmAOojyfQ7WQGfNiJw7vDzWesA KHBr8VuUxOF6/tlo5HgSEQg5NdTJyP9mH++Kms/5UiMjBD3KxolNcz8As40JGa26stSp gqVg== X-Gm-Message-State: AHQUAuaitecQaBDFxNEqu9FzXG2vecCx6fi3ptml320JUrXmIvkuRUWc sdiETA+LWZsQN3g5Gcsafws= X-Google-Smtp-Source: AHgI3Ib69yUSubAQbProMdiHh3jYlHfCIWD/N8bFFNaq7E5al/uxAc0jQyCYZP0N32PVbLtA7Ynkyw== X-Received: by 2002:a19:ec0c:: with SMTP id b12mr17795868lfa.27.1550578647272; Tue, 19 Feb 2019 04:17:27 -0800 (PST) Received: from [192.168.0.106] (rev-10.ethnet.com.pl. [87.204.29.10]) by smtp.gmail.com with ESMTPSA id r2-v6sm4457554lja.78.2019.02.19.04.17.25 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 19 Feb 2019 04:17:26 -0800 (PST) Subject: Re: [PATCH 06/14] media: platform: fix several typos To: Mauro Carvalho Chehab References: <362e90167292e8d0c03a8d0753cc26b89549d854.1550518128.git.mchehab+samsung@kernel.org> From: Andrzej Pietrasiewicz Message-ID: <8328b00f-d48f-187e-e53f-c52ac50b5b61@gmail.com> Date: Tue, 19 Feb 2019 13:17:24 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.4.0 MIME-Version: 1.0 In-Reply-To: <362e90167292e8d0c03a8d0753cc26b89549d854.1550518128.git.mchehab+samsung@kernel.org> Content-Language: en-US X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20190219_041737_648428_9876B8BC X-CRM114-Status: GOOD ( 28.59 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Andrew-CT Chen , Alexandre Belloni , Minghsiu Tsai , Heiko Stuebner , Maxime Ripard , Stanimir Varbanov , Patrice Chotard , Andrzej Hajda , "Lad, Prabhakar" , Laurent Pinchart , Sylwester Nawrocki , Michal Simek , Alexandre Torgue , linux-samsung-soc@vger.kernel.org, Jonathan Corbet , Chen-Yu Tsai , Krzysztof Kozlowski , linux-stm32@st-md-mailman.stormreply.com, linux-rockchip@lists.infradead.org, Ludovic Desroches , Kukjin Kim , Linux Media Mailing List , Kamil Debski , Maxime Coquelin , linux-arm-msm@vger.kernel.org, Houlong Wei , Mauro Carvalho Chehab , Benoit Parrot , Jeongtae Park , linux-mediatek@lists.infradead.org, Jacek Anaszewski , Yong Deng , Matthias Brugger , Hugues Fruchet , Tiffany Lin , linux-arm-kernel@lists.infradead.org, Hyun Kwon , Jacob chen , linux-renesas-soc@vger.kernel.org, Kyungmin Park , Kieran Bingham , Jean-Christophe Trotin , Philipp Zabel , =?UTF-8?Q?Niklas_S=c3=b6derlund?= , Eugen Hristev Content-Transfer-Encoding: base64 Content-Type: text/plain; charset="utf-8"; Format="flowed" Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+infradead-linux-arm-kernel=archiver.kernel.org@lists.infradead.org SGkgTWF1cm8sCgoKVyBkbml1IDE4LjAyLjIwMTkgb8KgMjA6MjksIE1hdXJvIENhcnZhbGhvIENo ZWhhYiBwaXN6ZToKPiBVc2UgY29kZXNwZWxsIHRvIGZpeCBsb3RzIG9mIHR5cG9zIG92ZXIgZnJv bnRlbmRzLgo+IAo+IE1hbnVhbGx5IHZlcmlmaWVkIHRvIGF2b2lkIGZhbHNlLXBvc2l0aXZlcy4K PiAKPiBTaWduZWQtb2ZmLWJ5OiBNYXVybyBDYXJ2YWxobyBDaGVoYWIgPG1jaGVoYWIrc2Ftc3Vu Z0BrZXJuZWwub3JnPgoKZm9yIGRyaXZlcnMvbWVkaWEvcGxhdGZvcm0vc3A1LWpwZWcuYzoKCkFj a2VkLWJ5OiBBbmRyemVqIFBpZXRyYXNpZXdpY3ogPGFuZHJ6ZWp0cDIwMTBAZ21haWwuY29tPgoK PiAtLS0KPiAgIGRyaXZlcnMvbWVkaWEvcGxhdGZvcm0vS2NvbmZpZyAgICAgICAgICAgICAgICAg ICAgIHwgIDIgKy0KPiAgIGRyaXZlcnMvbWVkaWEvcGxhdGZvcm0vYXRtZWwvYXRtZWwtaXNpLmMg ICAgICAgICAgIHwgIDQgKystLQo+ICAgZHJpdmVycy9tZWRpYS9wbGF0Zm9ybS9jb2RhL2NvZGEt anBlZy5jICAgICAgICAgICAgfCAgMiArLQo+ICAgZHJpdmVycy9tZWRpYS9wbGF0Zm9ybS9kYXZp bmNpL2lzaWYuYyAgICAgICAgICAgICAgfCAgNCArKy0tCj4gICBkcml2ZXJzL21lZGlhL3BsYXRm b3JtL2RhdmluY2kvdnBiZS5jICAgICAgICAgICAgICB8ICAyICstCj4gICBkcml2ZXJzL21lZGlh L3BsYXRmb3JtL2RhdmluY2kvdnBpZi5jICAgICAgICAgICAgICB8ICAyICstCj4gICBkcml2ZXJz L21lZGlhL3BsYXRmb3JtL2RhdmluY2kvdnBpZl9kaXNwbGF5LmMgICAgICB8ICA0ICsrLS0KPiAg IC4uLi9tZWRpYS9wbGF0Zm9ybS9leHlub3M0LWlzL2ZpbWMtaXMtY29tbWFuZC5oICAgIHwgIDIg Ky0KPiAgIGRyaXZlcnMvbWVkaWEvcGxhdGZvcm0vZXh5bm9zNC1pcy9maW1jLWlzLXBhcmFtLmgg IHwgIDIgKy0KPiAgIGRyaXZlcnMvbWVkaWEvcGxhdGZvcm0vZXh5bm9zNC1pcy9tZWRpYS1kZXYu aCAgICAgIHwgIDIgKy0KPiAgIGRyaXZlcnMvbWVkaWEvcGxhdGZvcm0vZXh5bm9zNC1pcy9taXBp LWNzaXMuYyAgICAgIHwgIDQgKystLQo+ICAgZHJpdmVycy9tZWRpYS9wbGF0Zm9ybS9tYXJ2ZWxs LWNjaWMvbW1wLWRyaXZlci5jICAgfCAgNCArKy0tCj4gICBkcml2ZXJzL21lZGlhL3BsYXRmb3Jt L210ay1tZHAvbXRrX21kcF9jb3JlLmggICAgICB8ICA2ICsrKy0tLQo+ICAgZHJpdmVycy9tZWRp YS9wbGF0Zm9ybS9tdGstdmNvZGVjL210a192Y29kZWNfZGVjLmMgfCAgMiArLQo+ICAgZHJpdmVy cy9tZWRpYS9wbGF0Zm9ybS9tdGstdmNvZGVjL210a192Y29kZWNfZHJ2LmggfCAgNCArKy0tCj4g ICBkcml2ZXJzL21lZGlhL3BsYXRmb3JtL210ay12Y29kZWMvbXRrX3Zjb2RlY19lbmMuYyB8ICAy ICstCj4gICAuLi4vbWVkaWEvcGxhdGZvcm0vbXRrLXZjb2RlYy92ZGVjL3ZkZWNfaDI2NF9pZi5j ICB8ICA0ICsrLS0KPiAgIC4uLi9tZWRpYS9wbGF0Zm9ybS9tdGstdmNvZGVjL3ZkZWMvdmRlY192 cDhfaWYuYyAgIHwgIDIgKy0KPiAgIGRyaXZlcnMvbWVkaWEvcGxhdGZvcm0vbXRrLXZjb2RlYy92 ZGVjX2Rydl9pZi5oICAgIHwgIDIgKy0KPiAgIGRyaXZlcnMvbWVkaWEvcGxhdGZvcm0vbXRrLXZj b2RlYy92ZGVjX3ZwdV9pZi5oICAgIHwgIDIgKy0KPiAgIGRyaXZlcnMvbWVkaWEvcGxhdGZvcm0v b21hcC9vbWFwX3ZvdXQuYyAgICAgICAgICAgIHwgIDQgKystLQo+ICAgZHJpdmVycy9tZWRpYS9w bGF0Zm9ybS9vbWFwL29tYXBfdm91dGRlZi5oICAgICAgICAgfCAgNCArKy0tCj4gICBkcml2ZXJz L21lZGlhL3BsYXRmb3JtL29tYXAzaXNwL2lzcC5jICAgICAgICAgICAgICB8ICAyICstCj4gICBk cml2ZXJzL21lZGlhL3BsYXRmb3JtL29tYXAzaXNwL2lzcGNjZGMuYyAgICAgICAgICB8ICA0ICsr LS0KPiAgIGRyaXZlcnMvbWVkaWEvcGxhdGZvcm0vb21hcDNpc3AvaXNwY3NpMi5jICAgICAgICAg IHwgIDIgKy0KPiAgIGRyaXZlcnMvbWVkaWEvcGxhdGZvcm0vcHhhX2NhbWVyYS5jICAgICAgICAg ICAgICAgIHwgIDIgKy0KPiAgIGRyaXZlcnMvbWVkaWEvcGxhdGZvcm0vcWNvbS92ZW51cy9jb3Jl LmggICAgICAgICAgIHwgIDIgKy0KPiAgIGRyaXZlcnMvbWVkaWEvcGxhdGZvcm0vcmNhci12aW4v cmNhci1kbWEuYyAgICAgICAgIHwgIDIgKy0KPiAgIGRyaXZlcnMvbWVkaWEvcGxhdGZvcm0vcmNh ci12aW4vcmNhci12NGwyLmMgICAgICAgIHwgIDQgKystLQo+ICAgZHJpdmVycy9tZWRpYS9wbGF0 Zm9ybS9yb2NrY2hpcC9yZ2EvcmdhLWh3LmMgICAgICAgfCAgNiArKystLS0KPiAgIGRyaXZlcnMv bWVkaWEvcGxhdGZvcm0vczNjLWNhbWlmL2NhbWlmLWNvcmUuaCAgICAgIHwgIDIgKy0KPiAgIGRy aXZlcnMvbWVkaWEvcGxhdGZvcm0vczVwLWpwZWcvanBlZy1jb3JlLmggICAgICAgIHwgIDQgKyst LQo+ICAgZHJpdmVycy9tZWRpYS9wbGF0Zm9ybS9zNXAtbWZjL3M1cF9tZmNfY29tbW9uLmggICAg fCAgMiArLQo+ICAgZHJpdmVycy9tZWRpYS9wbGF0Zm9ybS9zNXAtbWZjL3M1cF9tZmNfY3RybC5j ICAgICAgfCAgMiArLQo+ICAgZHJpdmVycy9tZWRpYS9wbGF0Zm9ybS9zNXAtbWZjL3M1cF9tZmNf ZGVjLmMgICAgICAgfCAgMiArLQo+ICAgZHJpdmVycy9tZWRpYS9wbGF0Zm9ybS9zNXAtbWZjL3M1 cF9tZmNfb3ByX3Y1LmMgICAgfCAgMiArLQo+ICAgZHJpdmVycy9tZWRpYS9wbGF0Zm9ybS9zNXAt bWZjL3M1cF9tZmNfb3ByX3Y2LmMgICAgfCAgNCArKy0tCj4gICAuLi4vbWVkaWEvcGxhdGZvcm0v c3RpL2M4c2VjdHBmZS9jOHNlY3RwZmUtY29yZS5oICB8ICAyICstCj4gICBkcml2ZXJzL21lZGlh L3BsYXRmb3JtL3N0aS9kZWx0YS9kZWx0YS5oICAgICAgICAgICB8ICAyICstCj4gICBkcml2ZXJz L21lZGlhL3BsYXRmb3JtL3N0aS9odmEvaHZhLWgyNjQuYyAgICAgICAgICB8ICAyICstCj4gICBk cml2ZXJzL21lZGlhL3BsYXRmb3JtL3N0bTMyL3N0bTMyLWRjbWkuYyAgICAgICAgICB8ICAyICst Cj4gICBkcml2ZXJzL21lZGlhL3BsYXRmb3JtL3N1bnhpL3N1bjZpLWNzaS9zdW42aV9jc2kuaCB8 ICAyICstCj4gICBkcml2ZXJzL21lZGlhL3BsYXRmb3JtL3RpLXZwZS92cGRtYS5jICAgICAgICAg ICAgICB8IDE0ICsrKysrKystLS0tLS0tCj4gICBkcml2ZXJzL21lZGlhL3BsYXRmb3JtL3RpLXZw ZS92cGUuYyAgICAgICAgICAgICAgICB8ICAyICstCj4gICBkcml2ZXJzL21lZGlhL3BsYXRmb3Jt L3ZzcDEvdnNwMV9icnguYyAgICAgICAgICAgICB8ICA0ICsrLS0KPiAgIGRyaXZlcnMvbWVkaWEv cGxhdGZvcm0veGlsaW54L3hpbGlueC12aXAuYyAgICAgICAgIHwgIDIgKy0KPiAgIDQ2IGZpbGVz IGNoYW5nZWQsIDcwIGluc2VydGlvbnMoKyksIDcwIGRlbGV0aW9ucygtKQo+IAo+IGRpZmYgLS1n aXQgYS9kcml2ZXJzL21lZGlhL3BsYXRmb3JtL0tjb25maWcgYi9kcml2ZXJzL21lZGlhL3BsYXRm b3JtL0tjb25maWcKPiBpbmRleCA2Y2ZmMjZiMjlhMzguLjRhY2JlZDE4OTY0NCAxMDA2NDQKPiAt LS0gYS9kcml2ZXJzL21lZGlhL3BsYXRmb3JtL0tjb25maWcKPiArKysgYi9kcml2ZXJzL21lZGlh L3BsYXRmb3JtL0tjb25maWcKPiBAQCAtNjY4LDcgKzY2OCw3IEBAIG1lbnVjb25maWcgU0RSX1BM QVRGT1JNX0RSSVZFUlMKPiAgIGlmIFNEUl9QTEFURk9STV9EUklWRVJTCj4gICAKPiAgIGNvbmZp ZyBWSURFT19SQ0FSX0RSSUYKPiAtCXRyaXN0YXRlICJSZW5lc2FzIERpZ2l0aWFsIFJhZGlvIElu dGVyZmFjZSAoRFJJRikiCj4gKwl0cmlzdGF0ZSAiUmVuZXNhcyBEaWdpdGFsIFJhZGlvIEludGVy ZmFjZSAoRFJJRikiCj4gICAJZGVwZW5kcyBvbiBWSURFT19WNEwyCj4gICAJZGVwZW5kcyBvbiBB UkNIX1JFTkVTQVMgfHwgQ09NUElMRV9URVNUCj4gICAJc2VsZWN0IFZJREVPQlVGMl9WTUFMTE9D Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvbWVkaWEvcGxhdGZvcm0vYXRtZWwvYXRtZWwtaXNpLmMg Yi9kcml2ZXJzL21lZGlhL3BsYXRmb3JtL2F0bWVsL2F0bWVsLWlzaS5jCj4gaW5kZXggZmRiMjU1 ZTRhOTU2Li4wOGI4ZDU1ODMwODAgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9tZWRpYS9wbGF0Zm9y bS9hdG1lbC9hdG1lbC1pc2kuYwo+ICsrKyBiL2RyaXZlcnMvbWVkaWEvcGxhdGZvcm0vYXRtZWwv YXRtZWwtaXNpLmMKPiBAQCAtMTEwLDcgKzExMCw3IEBAIHN0cnVjdCBhdG1lbF9pc2kgewo+ICAg CWJvb2wJCQkJZW5hYmxlX3ByZXZpZXdfcGF0aDsKPiAgIAo+ICAgCXN0cnVjdCBjb21wbGV0aW9u CQljb21wbGV0ZTsKPiAtCS8qIElTSSBwZXJpcGhlcmlhbCBjbG9jayAqLwo+ICsJLyogSVNJIHBl cmlwaGVyYWwgY2xvY2sgKi8KPiAgIAlzdHJ1Y3QgY2xrCQkJKnBjbGs7Cj4gICAJdW5zaWduZWQg aW50CQkJaXJxOwo+ICAgCj4gQEAgLTEwNzgsNyArMTA3OCw3IEBAIHN0YXRpYyB2b2lkIGlzaV9n cmFwaF9ub3RpZnlfdW5iaW5kKHN0cnVjdCB2NGwyX2FzeW5jX25vdGlmaWVyICpub3RpZmllciwK PiAgIAo+ICAgCWRldl9kYmcoaXNpLT5kZXYsICJSZW1vdmluZyAlc1xuIiwgdmlkZW9fZGV2aWNl X25vZGVfbmFtZShpc2ktPnZkZXYpKTsKPiAgIAo+IC0JLyogQ2hlY2tzIGludGVybmFseSBpZiB2 ZGV2IGhhdmUgYmVlbiBpbml0IG9yIG5vdCAqLwo+ICsJLyogQ2hlY2tzIGludGVybmFsbHkgaWYg dmRldiBoYXZlIGJlZW4gaW5pdCBvciBub3QgKi8KPiAgIAl2aWRlb191bnJlZ2lzdGVyX2Rldmlj ZShpc2ktPnZkZXYpOwo+ICAgfQo+ICAgCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvbWVkaWEvcGxh dGZvcm0vY29kYS9jb2RhLWpwZWcuYyBiL2RyaXZlcnMvbWVkaWEvcGxhdGZvcm0vY29kYS9jb2Rh LWpwZWcuYwo+IGluZGV4IDlmODk5YTZjZWZlZC4uMzlhMjM1MWMxZTQ4IDEwMDY0NAo+IC0tLSBh L2RyaXZlcnMvbWVkaWEvcGxhdGZvcm0vY29kYS9jb2RhLWpwZWcuYwo+ICsrKyBiL2RyaXZlcnMv bWVkaWEvcGxhdGZvcm0vY29kYS9jb2RhLWpwZWcuYwo+IEBAIC0xMDMsNyArMTAzLDcgQEAgc3Rh dGljIGNvbnN0IHVuc2lnbmVkIGNoYXIgY2hyb21hX2FjX3ZhbHVlWzE2MiArIDJdID0gewo+ICAg Cj4gICAvKgo+ICAgICogUXVhbnRpemF0aW9uIHRhYmxlcyBmb3IgbHVtaW5hbmNlIGFuZCBjaHJv bWluYW5jZSBjb21wb25lbnRzIGluCj4gLSAqIHppZy16YWcgc2NhbiBvcmRlciBmcm9tIHRoZSBG cmVlc2NhbGUgaS5NWCBWUFUgbGliYXJpZXMKPiArICogemlnLXphZyBzY2FuIG9yZGVyIGZyb20g dGhlIEZyZWVzY2FsZSBpLk1YIFZQVSBsaWJyYXJpZXMKPiAgICAqLwo+ICAgCj4gICBzdGF0aWMg dW5zaWduZWQgY2hhciBsdW1hX3FbNjRdID0gewo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL21lZGlh L3BsYXRmb3JtL2RhdmluY2kvaXNpZi5jIGIvZHJpdmVycy9tZWRpYS9wbGF0Zm9ybS9kYXZpbmNp L2lzaWYuYwo+IGluZGV4IDM0MGY4MjE4ZjU0ZC4uNDdjZWNkMTBlYjlmIDEwMDY0NAo+IC0tLSBh L2RyaXZlcnMvbWVkaWEvcGxhdGZvcm0vZGF2aW5jaS9pc2lmLmMKPiArKysgYi9kcml2ZXJzL21l ZGlhL3BsYXRmb3JtL2RhdmluY2kvaXNpZi5jCj4gQEAgLTMyOCw3ICszMjgsNyBAQCBzdGF0aWMg dm9pZCBpc2lmX2NvbmZpZ19iY2xhbXAoc3RydWN0IGlzaWZfYmxhY2tfY2xhbXAgKmJjKQo+ICAg CWlmIChiYy0+ZW4pIHsKPiAgIAkJdmFsID0gYmMtPmJjX21vZGVfY29sb3IgPDwgSVNJRl9CQ19N T0RFX0NPTE9SX1NISUZUOwo+ICAgCj4gLQkJLyogRW5hYmxlIEJDIGFuZCBob3Jpem9udGFsIGNs YW1wIGNhY3VsYXRpb24gcGFyYW1hdGVycyAqLwo+ICsJCS8qIEVuYWJsZSBCQyBhbmQgaG9yaXpv bnRhbCBjbGFtcCBjYWxjdWxhdGlvbiBwYXJhbWV0ZXJzICovCj4gICAJCXZhbCA9IHZhbCB8IDEg fCAoYmMtPmhvcnoubW9kZSA8PCBJU0lGX0hPUlpfQkNfTU9ERV9TSElGVCk7Cj4gICAKPiAgIAkJ cmVndyh2YWwsIENMQU1QQ0ZHKTsKPiBAQCAtMzU4LDcgKzM1OCw3IEBAIHN0YXRpYyB2b2lkIGlz aWZfY29uZmlnX2JjbGFtcChzdHJ1Y3QgaXNpZl9ibGFja19jbGFtcCAqYmMpCj4gICAJCQlyZWd3 KGJjLT5ob3J6Lndpbl9zdGFydF92X2NhbGMsIENMSFdJTjIpOwo+ICAgCQl9Cj4gICAKPiAtCQkv KiB2ZXJ0aWNhbCBjbGFtcCBjYWN1bGF0aW9uIHBhcmFtYXRlcnMgKi8KPiArCQkvKiB2ZXJ0aWNh bCBjbGFtcCBjYWxjdWxhdGlvbiBwYXJhbWV0ZXJzICovCj4gICAKPiAgIAkJLyogUmVzZXQgY2xh bXAgdmFsdWUgc2VsIGZvciBwcmV2aW91cyBsaW5lICovCj4gICAJCXZhbCB8PQo+IGRpZmYgLS1n aXQgYS9kcml2ZXJzL21lZGlhL3BsYXRmb3JtL2RhdmluY2kvdnBiZS5jIGIvZHJpdmVycy9tZWRp YS9wbGF0Zm9ybS9kYXZpbmNpL3ZwYmUuYwo+IGluZGV4IDQ3NjZhN2EyM2QxNi4uODMzOTE2M2E1 MjMxIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvbWVkaWEvcGxhdGZvcm0vZGF2aW5jaS92cGJlLmMK PiArKysgYi9kcml2ZXJzL21lZGlhL3BsYXRmb3JtL2RhdmluY2kvdnBiZS5jCj4gQEAgLTI0Miw3 ICsyNDIsNyBAQCBzdGF0aWMgaW50IHZwYmVfc2V0X291dHB1dChzdHJ1Y3QgdnBiZV9kZXZpY2Ug KnZwYmVfZGV2LCBpbnQgaW5kZXgpCj4gICAJCWdvdG8gdW5sb2NrOwo+ICAgCj4gICAJLyoKPiAt CSAqIEl0IGlzIGFzc3VtZWQgdGhhdCB2ZW5jIG9yIGV4dGVuYWwgZW5jb2RlciB3aWxsIHNldCBh IGRlZmF1bHQKPiArCSAqIEl0IGlzIGFzc3VtZWQgdGhhdCB2ZW5jIG9yIGV4dGVybmFsIGVuY29k ZXIgd2lsbCBzZXQgYSBkZWZhdWx0Cj4gICAJICogbW9kZSBpbiB0aGUgc3ViIGRldmljZS4gRm9y IGV4dGVybmFsIGVuY29kZXIgb3IgTENEIHBhbm5lbCBvdXRwdXQsCj4gICAJICogd2UgYWxzbyBu ZWVkIHRvIHNldCB1cCB0aGUgbGNkIHBvcnQgZm9yIHRoZSByZXF1aXJlZCBtb2RlLiBTbyBzZXR1 cAo+ICAgCSAqIHRoZSBsY2QgcG9ydCBmb3IgdGhlIGRlZmF1bHQgbW9kZSB0aGF0IGlzIGNvbmZp Z3VyZWQgaW4gdGhlIGJvYXJkCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvbWVkaWEvcGxhdGZvcm0v ZGF2aW5jaS92cGlmLmMgYi9kcml2ZXJzL21lZGlhL3BsYXRmb3JtL2RhdmluY2kvdnBpZi5jCj4g aW5kZXggMTYzNTJlMjI2M2QyLi5kZjY2NDYxZjVkNGYgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9t ZWRpYS9wbGF0Zm9ybS9kYXZpbmNpL3ZwaWYuYwo+ICsrKyBiL2RyaXZlcnMvbWVkaWEvcGxhdGZv cm0vZGF2aW5jaS92cGlmLmMKPiBAQCAtMSw3ICsxLDcgQEAKPiAgIC8qCj4gICAgKiB2cGlmIC0g VmlkZW8gUG9ydCBJbnRlcmZhY2UgZHJpdmVyCj4gICAgKiBWUElGIGlzIGEgcmVjZWl2ZXIgYW5k IHRyYW5zbWl0dGVyIGZvciB2aWRlbyBkYXRhLiBJdCBoYXMgdHdvIGNoYW5uZWxzKDAsIDEpCj4g LSAqIHRoYXQgcmVjZWl2ZWluZyB2aWRlbyBieXRlIHN0cmVhbSBhbmQgdHdvIGNoYW5uZWxzKDIs IDMpIGZvciB2aWRlbyBvdXRwdXQuCj4gKyAqIHRoYXQgcmVjZWl2aW5nIHZpZGVvIGJ5dGUgc3Ry ZWFtIGFuZCB0d28gY2hhbm5lbHMoMiwgMykgZm9yIHZpZGVvIG91dHB1dC4KPiAgICAqIFRoZSBo YXJkd2FyZSBzdXBwb3J0cyBTRFRWLCBIRFRWIGZvcm1hdHMsIHJhdyBkYXRhIGNhcHR1cmUuCj4g ICAgKiBDdXJyZW50bHksIHRoZSBkcml2ZXIgc3VwcG9ydHMgTlRTQyBhbmQgUEFMIHN0YW5kYXJk cy4KPiAgICAqCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvbWVkaWEvcGxhdGZvcm0vZGF2aW5jaS92 cGlmX2Rpc3BsYXkuYyBiL2RyaXZlcnMvbWVkaWEvcGxhdGZvcm0vZGF2aW5jaS92cGlmX2Rpc3Bs YXkuYwo+IGluZGV4IDM1MTc0ODdkOTc2MC4uZjRiNGYyYTFkZmMwIDEwMDY0NAo+IC0tLSBhL2Ry aXZlcnMvbWVkaWEvcGxhdGZvcm0vZGF2aW5jaS92cGlmX2Rpc3BsYXkuYwo+ICsrKyBiL2RyaXZl cnMvbWVkaWEvcGxhdGZvcm0vZGF2aW5jaS92cGlmX2Rpc3BsYXkuYwo+IEBAIC0xMzgsNyArMTM4 LDcgQEAgc3RhdGljIGludCB2cGlmX2J1ZmZlcl9xdWV1ZV9zZXR1cChzdHJ1Y3QgdmIyX3F1ZXVl ICp2cSwKPiAgICAqIHZwaWZfYnVmZmVyX3F1ZXVlIDogQ2FsbGJhY2sgZnVuY3Rpb24gdG8gYWRk IGJ1ZmZlciB0byBETUEgcXVldWUKPiAgICAqIEB2YjogcHRyIHRvIHZiMl9idWZmZXIKPiAgICAq Cj4gLSAqIFRoaXMgY2FsbGJhY2sgZnVjbnRpb24gcXVldWVzIHRoZSBidWZmZXIgdG8gRE1BIGVu Z2luZQo+ICsgKiBUaGlzIGNhbGxiYWNrIGZ1bmN0aW9uIHF1ZXVlcyB0aGUgYnVmZmVyIHRvIERN QSBlbmdpbmUKPiAgICAqLwo+ICAgc3RhdGljIHZvaWQgdnBpZl9idWZmZXJfcXVldWUoc3RydWN0 IHZiMl9idWZmZXIgKnZiKQo+ICAgewo+IEBAIC02MzUsNyArNjM1LDcgQEAgc3RhdGljIGludCB2 cGlmX3RyeV9mbXRfdmlkX291dChzdHJ1Y3QgZmlsZSAqZmlsZSwgdm9pZCAqcHJpdiwKPiAgIAlz dHJ1Y3QgdjRsMl9waXhfZm9ybWF0ICpwaXhmbXQgPSAmZm10LT5mbXQucGl4Owo+ICAgCj4gICAJ LyoKPiAtCSAqIHRvIHN1cHJlc3MgdjRsLWNvbXBsaWFuY2Ugd2FybmluZ3Mgc2lsZW50bHkgY29y cmVjdAo+ICsJICogdG8gc3VwcHJlc3MgdjRsLWNvbXBsaWFuY2Ugd2FybmluZ3Mgc2lsZW50bHkg Y29ycmVjdAo+ICAgCSAqIHRoZSBwaXhlbGZvcm1hdAo+ICAgCSAqLwo+ICAgCWlmIChwaXhmbXQt PnBpeGVsZm9ybWF0ICE9IFY0TDJfUElYX0ZNVF9ZVVY0MjJQKQo+IGRpZmYgLS1naXQgYS9kcml2 ZXJzL21lZGlhL3BsYXRmb3JtL2V4eW5vczQtaXMvZmltYy1pcy1jb21tYW5kLmggYi9kcml2ZXJz L21lZGlhL3BsYXRmb3JtL2V4eW5vczQtaXMvZmltYy1pcy1jb21tYW5kLmgKPiBpbmRleCAwZDFm NTJlMzk0YjEuLmIwNmI1NmI4OTBkNSAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL21lZGlhL3BsYXRm b3JtL2V4eW5vczQtaXMvZmltYy1pcy1jb21tYW5kLmgKPiArKysgYi9kcml2ZXJzL21lZGlhL3Bs YXRmb3JtL2V4eW5vczQtaXMvZmltYy1pcy1jb21tYW5kLmgKPiBAQCAtMTgsNyArMTgsNyBAQAo+ ICAgCj4gICAjZGVmaW5lIEZJTUNfSVNfQ09NTUFORF9WRVIJMTEwIC8qIEZJTUMtSVMgY29tbWFu ZCBzZXQgdmVyc2lvbiAxLjEwICovCj4gICAKPiAtLyogRW51bWVyYXRpb24gb2YgY29tbWFuZHMg YmVldHdlZW4gdGhlIEZJTUMtSVMgYW5kIHRoZSBob3N0IHByb2Nlc3Nvci4gKi8KPiArLyogRW51 bWVyYXRpb24gb2YgY29tbWFuZHMgYmV0d2VlbiB0aGUgRklNQy1JUyBhbmQgdGhlIGhvc3QgcHJv Y2Vzc29yLiAqLwo+ICAgCj4gICAvKiBIT1NUIHRvIEZJTUMtSVMgKi8KPiAgICNkZWZpbmUgSElD X1BSRVZJRVdfU1RJTEwJMHgwMDAxCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvbWVkaWEvcGxhdGZv cm0vZXh5bm9zNC1pcy9maW1jLWlzLXBhcmFtLmggYi9kcml2ZXJzL21lZGlhL3BsYXRmb3JtL2V4 eW5vczQtaXMvZmltYy1pcy1wYXJhbS5oCj4gaW5kZXggOGUzMWY3NjQyNzc2Li4yMjkyM2EzZDQw NWUgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9tZWRpYS9wbGF0Zm9ybS9leHlub3M0LWlzL2ZpbWMt aXMtcGFyYW0uaAo+ICsrKyBiL2RyaXZlcnMvbWVkaWEvcGxhdGZvcm0vZXh5bm9zNC1pcy9maW1j LWlzLXBhcmFtLmgKPiBAQCAtMjk4LDcgKzI5OCw3IEBAIGVudW0gaXNwX2FmX21vZGUgewo+ICAg I2RlZmluZSBJU1BfRkxBU0hfQ09NTUFORF9BVVRPCQkJMgo+ICAgI2RlZmluZSBJU1BfRkxBU0hf Q09NTUFORF9UT1JDSAkJCTMgLyogMyBzZWMgKi8KPiAgIAo+IC0vKiBGbGFzaCByZWQtZXllIGNv bW1hZHMgKi8KPiArLyogRmxhc2ggcmVkLWV5ZSBjb21tYW5kcyAqLwo+ICAgI2RlZmluZSBJU1Bf RkxBU0hfUkVERVlFX0RJU0FCTEUJCTAKPiAgICNkZWZpbmUgSVNQX0ZMQVNIX1JFREVZRV9FTkFC TEUJCQkxCj4gICAKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9tZWRpYS9wbGF0Zm9ybS9leHlub3M0 LWlzL21lZGlhLWRldi5oIGIvZHJpdmVycy9tZWRpYS9wbGF0Zm9ybS9leHlub3M0LWlzL21lZGlh LWRldi5oCj4gaW5kZXggOWY1Mjc2NzAzOTVhLi5hN2M5NDkwYmJjYjQgMTAwNjQ0Cj4gLS0tIGEv ZHJpdmVycy9tZWRpYS9wbGF0Zm9ybS9leHlub3M0LWlzL21lZGlhLWRldi5oCj4gKysrIGIvZHJp dmVycy9tZWRpYS9wbGF0Zm9ybS9leHlub3M0LWlzL21lZGlhLWRldi5oCj4gQEAgLTc5LDcgKzc5 LDcgQEAgc3RydWN0IGZpbWNfY2FtY2xrX2luZm8gewo+ICAgCj4gICAvKioKPiAgICAqIHN0cnVj dCBmaW1jX3NlbnNvcl9pbmZvIC0gaW1hZ2UgZGF0YSBzb3VyY2Ugc3ViZGV2IGluZm9ybWF0aW9u Cj4gLSAqIEBwZGF0YTogc2Vuc29yJ3MgYXRycmlidXRlcyBwYXNzZWQgYXMgbWVkaWEgZGV2aWNl J3MgcGxhdGZvcm0gZGF0YQo+ICsgKiBAcGRhdGE6IHNlbnNvcidzIGF0dHJpYnV0ZXMgcGFzc2Vk IGFzIG1lZGlhIGRldmljZSdzIHBsYXRmb3JtIGRhdGEKPiAgICAqIEBhc2Q6IGFzeW5jaHJvbm91 cyBzdWJkZXYgcmVnaXN0cmF0aW9uIGRhdGEgc3RydWN0dXJlCj4gICAgKiBAc3ViZGV2OiBpbWFn ZSBzZW5zb3IgdjRsMiBzdWJkZXYKPiAgICAqIEBob3N0OiBmaW1jIGRldmljZSB0aGUgc2Vuc29y IGlzIGN1cnJlbnRseSBsaW5rZWQgdG8KPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9tZWRpYS9wbGF0 Zm9ybS9leHlub3M0LWlzL21pcGktY3Npcy5jIGIvZHJpdmVycy9tZWRpYS9wbGF0Zm9ybS9leHlu b3M0LWlzL21pcGktY3Npcy5jCj4gaW5kZXggMzVjYjAxNjIwODViLi4yMzRlMDQ3ZTNlOGYgMTAw NjQ0Cj4gLS0tIGEvZHJpdmVycy9tZWRpYS9wbGF0Zm9ybS9leHlub3M0LWlzL21pcGktY3Npcy5j Cj4gKysrIGIvZHJpdmVycy9tZWRpYS9wbGF0Zm9ybS9leHlub3M0LWlzL21pcGktY3Npcy5jCj4g QEAgLTE4Myw3ICsxODMsNyBAQCBzdHJ1Y3QgY3Npc19kcnZkYXRhIHsKPiAgICAqIEBpbmRleDog dGhlIGhhcmR3YXJlIGluc3RhbmNlIGluZGV4Cj4gICAgKiBAcGRldjogQ1NJUyBwbGF0Zm9ybSBk ZXZpY2UKPiAgICAqIEBwaHk6IHBvaW50ZXIgdG8gdGhlIENTSVMgZ2VuZXJpYyBQSFkKPiAtICog QHJlZ3M6IG1tYXBlZCBJL08gcmVnaXN0ZXJzIG1lbW9yeQo+ICsgKiBAcmVnczogbW1hcHBlZCBJ L08gcmVnaXN0ZXJzIG1lbW9yeQo+ICAgICogQHN1cHBsaWVzOiBDU0lTIHJlZ3VsYXRvciBzdXBw bGllcwo+ICAgICogQGNsb2NrOiBDU0lTIGNsb2Nrcwo+ICAgICogQGlycTogcmVxdWVzdGVkIHM1 cC1taXBpLWNzaXMgaXJxIG51bWJlcgo+IEBAIC03NDUsNyArNzQ1LDcgQEAgc3RhdGljIGludCBz NXBjc2lzX3BhcnNlX2R0KHN0cnVjdCBwbGF0Zm9ybV9kZXZpY2UgKnBkZXYsCj4gICAJCWdvdG8g ZXJyOwo+ICAgCX0KPiAgIAo+IC0JLyogR2V0IE1JUEkgQ1NJLTIgYnVzIGNvbmZpZ3JhdGlvbiBm cm9tIHRoZSBlbmRwb2ludCBub2RlLiAqLwo+ICsJLyogR2V0IE1JUEkgQ1NJLTIgYnVzIGNvbmZp Z3VyYXRpb24gZnJvbSB0aGUgZW5kcG9pbnQgbm9kZS4gKi8KPiAgIAlvZl9wcm9wZXJ0eV9yZWFk X3UzMihub2RlLCAic2Ftc3VuZyxjc2lzLWhzLXNldHRsZSIsCj4gICAJCQkJCSZzdGF0ZS0+aHNf c2V0dGxlKTsKPiAgIAlzdGF0ZS0+d2Nsa19leHQgPSBvZl9wcm9wZXJ0eV9yZWFkX2Jvb2wobm9k ZSwKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9tZWRpYS9wbGF0Zm9ybS9tYXJ2ZWxsLWNjaWMvbW1w LWRyaXZlci5jIGIvZHJpdmVycy9tZWRpYS9wbGF0Zm9ybS9tYXJ2ZWxsLWNjaWMvbW1wLWRyaXZl ci5jCj4gaW5kZXggNzBhMjgzM2RiMGQxLi5hZjc2ZWI2Mzc3NzMgMTAwNjQ0Cj4gLS0tIGEvZHJp dmVycy9tZWRpYS9wbGF0Zm9ybS9tYXJ2ZWxsLWNjaWMvbW1wLWRyaXZlci5jCj4gKysrIGIvZHJp dmVycy9tZWRpYS9wbGF0Zm9ybS9tYXJ2ZWxsLWNjaWMvbW1wLWRyaXZlci5jCj4gQEAgLTI0MCw4 ICsyNDAsOCBAQCBzdGF0aWMgdm9pZCBtbXBjYW1fY2FsY19kcGh5KHN0cnVjdCBtY2FtX2NhbWVy YSAqbWNhbSkKPiAgIAkgKiAgYml0IDggfiBiaXQgMTU6IEhTX1NFVFRMRQo+ICAgCSAqICAgVGlt ZSBpbnRlcnZhbCBkdXJpbmcgd2hpY2ggdGhlIEhTCj4gICAJICogICByZWNlaXZlciBzaGFsbCBp Z25vcmUgYW55IERhdGEgTGFuZQo+IC0JICogICBIUyB0cmFuc2lzdGlvbnMuCj4gLQkgKiAgIFRo ZSB2YXVsZSBoYXMgYmVlbiBjYWxpYnJhdGVkIG9uCj4gKwkgKiAgIEhTIHRyYW5zaXRpb25zLgo+ ICsJICogICBUaGUgdmFsdWUgaGFzIGJlZW4gY2FsaWJyYXRlZCBvbgo+ICAgCSAqICAgZGlmZmVy ZW50IGJvYXJkcy4gSXQgc2VlbXMgdG8gd29yayB3ZWxsLgo+ICAgCSAqCj4gICAJICogIE1vcmUg ZGV0YWlsIHBsZWFzZSByZWZlcgo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL21lZGlhL3BsYXRmb3Jt L210ay1tZHAvbXRrX21kcF9jb3JlLmggYi9kcml2ZXJzL21lZGlhL3BsYXRmb3JtL210ay1tZHAv bXRrX21kcF9jb3JlLmgKPiBpbmRleCBhZDFjZmYzMDZlZmQuLmU1YWJiMWFiYjNhMyAxMDA2NDQK PiAtLS0gYS9kcml2ZXJzL21lZGlhL3BsYXRmb3JtL210ay1tZHAvbXRrX21kcF9jb3JlLmgKPiAr KysgYi9kcml2ZXJzL21lZGlhL3BsYXRmb3JtL210ay1tZHAvbXRrX21kcF9jb3JlLmgKPiBAQCAt NDEsNyArNDEsNyBAQAo+ICAgI2RlZmluZSBNVEtfTURQX0NUWF9FUlJPUgkJQklUKDUpCj4gICAK PiAgIC8qKgo+IC0gKiAgc3RydWN0IG10a19tZHBfcGl4X2FsaWduIC0gYWxpZ25lbWVudCBvZiBp bWFnZQo+ICsgKiAgc3RydWN0IG10a19tZHBfcGl4X2FsaWduIC0gYWxpZ25tZW50IG9mIGltYWdl Cj4gICAgKiAgQG9yZ193OiBzb3VyY2UgYWxpZ25tZW50IG9mIHdpZHRoCj4gICAgKiAgQG9yZ19o OiBzb3VyY2UgYWxpZ25tZW50IG9mIGhlaWdodAo+ICAgICogIEB0YXJnZXRfdzogZHN0IGFsaWdu bWVudCBvZiB3aWR0aAo+IEBAIC0xMjIsOCArMTIyLDggQEAgc3RydWN0IG10a19tZHBfZnJhbWUg ewo+ICAgLyoqCj4gICAgKiBzdHJ1Y3QgbXRrX21kcF92YXJpYW50IC0gaW1hZ2UgcHJvY2Vzc29y IHZhcmlhbnQgaW5mb3JtYXRpb24KPiAgICAqIEBwaXhfbWF4OgkJbWF4aW11bSBsaW1pdCBvZiBp bWFnZSBzaXplCj4gLSAqIEBwaXhfbWluOgkJbWluaW11biBsaW1pdCBvZiBpbWFnZSBzaXplCj4g LSAqIEBwaXhfYWxpZ246CQlhbGlnbmVtZW50IG9mIGltYWdlCj4gKyAqIEBwaXhfbWluOgkJbWlu aW11bSBsaW1pdCBvZiBpbWFnZSBzaXplCj4gKyAqIEBwaXhfYWxpZ246CQlhbGlnbm1lbnQgb2Yg aW1hZ2UKPiAgICAqIEBoX3NjYWxlX3VwX21heDoJbWF4aW11bSBzY2FsZS11cCBpbiBob3Jpem9u dGFsCj4gICAgKiBAdl9zY2FsZV91cF9tYXg6CW1heGltdW0gc2NhbGUtdXAgaW4gdmVydGljYWwK PiAgICAqIEBoX3NjYWxlX2Rvd25fbWF4OgltYXhpbXVtIHNjYWxlLWRvd24gaW4gaG9yaXpvbnRh bAo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL21lZGlhL3BsYXRmb3JtL210ay12Y29kZWMvbXRrX3Zj b2RlY19kZWMuYyBiL2RyaXZlcnMvbWVkaWEvcGxhdGZvcm0vbXRrLXZjb2RlYy9tdGtfdmNvZGVj X2RlYy5jCj4gaW5kZXggYmE2MTk2NDdiYzEwLi43OTRhYmE2ODUxMjAgMTAwNjQ0Cj4gLS0tIGEv ZHJpdmVycy9tZWRpYS9wbGF0Zm9ybS9tdGstdmNvZGVjL210a192Y29kZWNfZGVjLmMKPiArKysg Yi9kcml2ZXJzL21lZGlhL3BsYXRmb3JtL210ay12Y29kZWMvbXRrX3Zjb2RlY19kZWMuYwo+IEBA IC0xMTcwLDcgKzExNzAsNyBAQCBzdGF0aWMgdm9pZCB2YjJvcHNfdmRlY19idWZfcXVldWUoc3Ry dWN0IHZiMl9idWZmZXIgKnZiKQo+ICAgCXJldCA9IHZkZWNfaWZfZGVjb2RlKGN0eCwgJnNyY19t ZW0sIE5VTEwsICZyZXNfY2hnKTsKPiAgIAlpZiAocmV0IHx8ICFyZXNfY2hnKSB7Cj4gICAJCS8q Cj4gLQkJICogZmIgPT0gTlVMTCBtZW5hcyB0byBwYXJzZSBTUFMvUFBTIGhlYWRlciBvcgo+ICsJ CSAqIGZiID09IE5VTEwgbWVhbnMgdG8gcGFyc2UgU1BTL1BQUyBoZWFkZXIgb3IKPiAgIAkJICog cmVzb2x1dGlvbiBpbmZvIGluIHNyY19tZW0uIERlY29kZSBjYW4gZmFpbAo+ICAgCQkgKiBpZiB0 aGVyZSBpcyBubyBTUFMgaGVhZGVyIG9yIHBpY3R1cmUgaW5mbwo+ICAgCQkgKiBpbiBicwo+IGRp ZmYgLS1naXQgYS9kcml2ZXJzL21lZGlhL3BsYXRmb3JtL210ay12Y29kZWMvbXRrX3Zjb2RlY19k cnYuaCBiL2RyaXZlcnMvbWVkaWEvcGxhdGZvcm0vbXRrLXZjb2RlYy9tdGtfdmNvZGVjX2Rydi5o Cj4gaW5kZXggOGFiYTY5NTU1YjEyLi5lN2UyYTEwOGRlZjkgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVy cy9tZWRpYS9wbGF0Zm9ybS9tdGstdmNvZGVjL210a192Y29kZWNfZHJ2LmgKPiArKysgYi9kcml2 ZXJzL21lZGlhL3BsYXRmb3JtL210ay12Y29kZWMvbXRrX3Zjb2RlY19kcnYuaAo+IEBAIC0xNTEs OSArMTUxLDkgQEAgc3RydWN0IG10a19xX2RhdGEgewo+ICAgICogQGludHJhX3BlcmlvZDogSSBm cmFtZSBwZXJpb2QKPiAgICAqIEBnb3Bfc2l6ZTogZ3JvdXAgb2YgcGljdHVyZSBzaXplLCBpdCdz IHVzZWQgYXMgdGhlIGludHJhIGZyYW1lIHBlcmlvZAo+ICAgICogQGZyYW1lcmF0ZV9udW06IGZy YW1lIHJhdGUgbnVtZXJhdG9yLiBleDogZnJhbWVyYXRlX251bT0zMCBhbmQKPiAtICoJCSAgIGZy YW1lcmF0ZV9kZW5vbT0xIG1lbmFzIEZQUyBpcyAzMAo+ICsgKgkJICAgZnJhbWVyYXRlX2Rlbm9t PTEgbWVhbnMgRlBTIGlzIDMwCj4gICAgKiBAZnJhbWVyYXRlX2Rlbm9tOiBmcmFtZSByYXRlIGRl bm9taW5hdG9yLiBleDogZnJhbWVyYXRlX251bT0zMCBhbmQKPiAtICoJCSAgICAgZnJhbWVyYXRl X2Rlbm9tPTEgbWVuYXMgRlBTIGlzIDMwCj4gKyAqCQkgICAgIGZyYW1lcmF0ZV9kZW5vbT0xIG1l YW5zIEZQUyBpcyAzMAo+ICAgICogQGgyNjRfbWF4X3FwOiBNYXggdmFsdWUgZm9yIEguMjY0IHF1 YW50aXphdGlvbiBwYXJhbWV0ZXIKPiAgICAqIEBoMjY0X3Byb2ZpbGU6IFY0TDIgZGVmaW5lZCBI LjI2NCBwcm9maWxlCj4gICAgKiBAaDI2NF9sZXZlbDogVjRMMiBkZWZpbmVkIEguMjY0IGxldmVs Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvbWVkaWEvcGxhdGZvcm0vbXRrLXZjb2RlYy9tdGtfdmNv ZGVjX2VuYy5jIGIvZHJpdmVycy9tZWRpYS9wbGF0Zm9ybS9tdGstdmNvZGVjL210a192Y29kZWNf ZW5jLmMKPiBpbmRleCBkMWYxMjI1N2JmNjYuLjJhZjY1NDI0MGQ5NiAxMDA2NDQKPiAtLS0gYS9k cml2ZXJzL21lZGlhL3BsYXRmb3JtL210ay12Y29kZWMvbXRrX3Zjb2RlY19lbmMuYwo+ICsrKyBi L2RyaXZlcnMvbWVkaWEvcGxhdGZvcm0vbXRrLXZjb2RlYy9tdGtfdmNvZGVjX2VuYy5jCj4gQEAg LTM5Myw3ICszOTMsNyBAQCBzdGF0aWMgdm9pZCBtdGtfdmVuY19zZXRfcGFyYW0oc3RydWN0IG10 a192Y29kZWNfY3R4ICpjdHgsCj4gICAJCXBhcmFtLT5pbnB1dF95dXZfZm10ID0gVkVOQ19ZVVZf Rk9STUFUX05WMjE7Cj4gICAJCWJyZWFrOwo+ICAgCWRlZmF1bHQ6Cj4gLQkJbXRrX3Y0bDJfZXJy KCJVbnN1cHBvcnQgZm91cmNjID0lZCIsIHFfZGF0YV9zcmMtPmZtdC0+Zm91cmNjKTsKPiArCQlt dGtfdjRsMl9lcnIoIlVuc3VwcG9ydGVkIGZvdXJjYyA9JWQiLCBxX2RhdGFfc3JjLT5mbXQtPmZv dXJjYyk7Cj4gICAJCWJyZWFrOwo+ICAgCX0KPiAgIAlwYXJhbS0+aDI2NF9wcm9maWxlID0gZW5j X3BhcmFtcy0+aDI2NF9wcm9maWxlOwo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL21lZGlhL3BsYXRm b3JtL210ay12Y29kZWMvdmRlYy92ZGVjX2gyNjRfaWYuYyBiL2RyaXZlcnMvbWVkaWEvcGxhdGZv cm0vbXRrLXZjb2RlYy92ZGVjL3ZkZWNfaDI2NF9pZi5jCj4gaW5kZXggYWEzY2U0MTg5OGJjLi4w MmM5NjBjNjNhYzAgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9tZWRpYS9wbGF0Zm9ybS9tdGstdmNv ZGVjL3ZkZWMvdmRlY19oMjY0X2lmLmMKPiArKysgYi9kcml2ZXJzL21lZGlhL3BsYXRmb3JtL210 ay12Y29kZWMvdmRlYy92ZGVjX2gyNjRfaWYuYwo+IEBAIC01NSw3ICs1NSw3IEBAIHN0cnVjdCBo MjY0X2ZiIHsKPiAgIAo+ICAgLyoqCj4gICAgKiBzdHJ1Y3QgaDI2NF9yaW5nX2ZiX2xpc3QgLSBy aW5nIGZyYW1lIGJ1ZmZlciBsaXN0Cj4gLSAqIEBmYl9saXN0ICAgOiBmcmFtZSBidWZmZXIgYXJy YXJ5Cj4gKyAqIEBmYl9saXN0ICAgOiBmcmFtZSBidWZmZXIgYXJyYXkKPiAgICAqIEByZWFkX2lk eCAgOiByZWFkIGluZGV4Cj4gICAgKiBAd3JpdGVfaWR4IDogd3JpdGUgaW5kZXgKPiAgICAqIEBj b3VudCAgICAgOiBidWZmZXIgY291bnQgaW4gbGlzdAo+IEBAIC03Miw3ICs3Miw3IEBAIHN0cnVj dCBoMjY0X3JpbmdfZmJfbGlzdCB7Cj4gICAvKioKPiAgICAqIHN0cnVjdCB2ZGVjX2gyNjRfZGVj X2luZm8gLSBkZWNvZGUgaW5mb3JtYXRpb24KPiAgICAqIEBkcGJfc3oJCTogZGVjb2RpbmcgcGlj dHVyZSBidWZmZXIgc2l6ZQo+IC0gKiBAcmVzb2x1dGlvbl9jaGFuZ2VkICA6IHJlc29sdGlvbiBj aGFuZ2UgaGFwcGVuCj4gKyAqIEByZXNvbHV0aW9uX2NoYW5nZWQgIDogcmVzb2x1dGlvbiBjaGFu Z2UgaGFwcGVuCj4gICAgKiBAcmVhbGxvY19tdl9idWYJOiBmbGFnIHRvIG5vdGlmeSBkcml2ZXIg dG8gcmUtYWxsb2NhdGUgbXYgYnVmZmVyCj4gICAgKiBAcmVzZXJ2ZWQJCTogZm9yIDggYnl0ZXMg YWxpZ25tZW50Cj4gICAgKiBAYnNfZG1hCQk6IElucHV0IGJpdC1zdHJlYW0gYnVmZmVyIGRtYSBh ZGRyZXNzCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvbWVkaWEvcGxhdGZvcm0vbXRrLXZjb2RlYy92 ZGVjL3ZkZWNfdnA4X2lmLmMgYi9kcml2ZXJzL21lZGlhL3BsYXRmb3JtL210ay12Y29kZWMvdmRl Yy92ZGVjX3ZwOF9pZi5jCj4gaW5kZXggM2U4NGE3NjFkYjNhLi5iYWMzNzIzMDM4ZGUgMTAwNjQ0 Cj4gLS0tIGEvZHJpdmVycy9tZWRpYS9wbGF0Zm9ybS9tdGstdmNvZGVjL3ZkZWMvdmRlY192cDhf aWYuYwo+ICsrKyBiL2RyaXZlcnMvbWVkaWEvcGxhdGZvcm0vbXRrLXZjb2RlYy92ZGVjL3ZkZWNf dnA4X2lmLmMKPiBAQCAtMTIwLDcgKzEyMCw3IEBAIHN0cnVjdCB2ZGVjX3ZwOF9od19yZWdfYmFz ZSB7Cj4gICAvKioKPiAgICAqIHN0cnVjdCB2ZGVjX3ZwOF92cHVfaW5zdCAtIFZQVSBpbnN0YW5j ZSBmb3IgVlA4IGRlY29kZQo+ICAgICogQHdxX2hkCTogV2FpdCBxdWV1ZSB0byB3YWl0IFZQVSBt ZXNzYWdlIGFjawo+IC0gKiBAc2lnbmFsZWQJOiAxIC0gSG9zdCBoYXMgcmVjZWl2ZWQgYWNrIG1l c3NhZ2UgZnJvbSBWUFUsIDAgLSBub3QgcmVjZXZpZQo+ICsgKiBAc2lnbmFsZWQJOiAxIC0gSG9z dCBoYXMgcmVjZWl2ZWQgYWNrIG1lc3NhZ2UgZnJvbSBWUFUsIDAgLSBub3QgcmVjZWl2ZQo+ICAg ICogQGZhaWx1cmUJOiBWUFUgZXhlY3V0aW9uIHJlc3VsdCBzdGF0dXMgMCAtIHN1Y2Nlc3MsIG90 aGVycyAtIGZhaWwKPiAgICAqIEBpbnN0X2FkZHIJOiBWUFUgZGVjb2RlciBpbnN0YW5jZSBhZGRy ZXNzCj4gICAgKi8KPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9tZWRpYS9wbGF0Zm9ybS9tdGstdmNv ZGVjL3ZkZWNfZHJ2X2lmLmggYi9kcml2ZXJzL21lZGlhL3BsYXRmb3JtL210ay12Y29kZWMvdmRl Y19kcnZfaWYuaAo+IGluZGV4IGRlZDExNTQ0ODFjZC4uOWEyMTU5MWYzODE4IDEwMDY0NAo+IC0t LSBhL2RyaXZlcnMvbWVkaWEvcGxhdGZvcm0vbXRrLXZjb2RlYy92ZGVjX2Rydl9pZi5oCj4gKysr IGIvZHJpdmVycy9tZWRpYS9wbGF0Zm9ybS9tdGstdmNvZGVjL3ZkZWNfZHJ2X2lmLmgKPiBAQCAt ODAsNyArODAsNyBAQCB2b2lkIHZkZWNfaWZfZGVpbml0KHN0cnVjdCBtdGtfdmNvZGVjX2N0eCAq Y3R4KTsKPiAgICAqIHZkZWNfaWZfZGVjb2RlKCkgLSB0cmlnZ2VyIGRlY29kZQo+ICAgICogQGN0 eAk6IFtpbl0gdjRsMiBjb250ZXh0Cj4gICAgKiBAYnMJOiBbaW5dIGlucHV0IGJpdHN0cmVhbQo+ IC0gKiBAZmIJOiBbaW5dIGZyYW1lIGJ1ZmZlciB0byBzdG9yZSBkZWNvZGVkIGZyYW1lLCB3aGVu IG51bGwgbWVuYXMgcGFyc2UKPiArICogQGZiCTogW2luXSBmcmFtZSBidWZmZXIgdG8gc3RvcmUg ZGVjb2RlZCBmcmFtZSwgd2hlbiBudWxsIG1lYW5zIHBhcnNlCj4gICAgKgloZWFkZXIgb25seQo+ ICAgICogQHJlc19jaGcJOiBbb3V0XSByZXNvbHV0aW9uIGNoYW5nZSBoYXBwZW5zIGlmIGN1cnJl bnQgYnMgaGF2ZSBkaWZmZXJlbnQKPiAgICAqCXBpY3R1cmUgd2lkdGgvaGVpZ2h0Cj4gZGlmZiAt LWdpdCBhL2RyaXZlcnMvbWVkaWEvcGxhdGZvcm0vbXRrLXZjb2RlYy92ZGVjX3ZwdV9pZi5oIGIv ZHJpdmVycy9tZWRpYS9wbGF0Zm9ybS9tdGstdmNvZGVjL3ZkZWNfdnB1X2lmLmgKPiBpbmRleCBj ZDM3YmIyYTYxMGYuLjc5ZDhlYWM3ZjVlMiAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL21lZGlhL3Bs YXRmb3JtL210ay12Y29kZWMvdmRlY192cHVfaWYuaAo+ICsrKyBiL2RyaXZlcnMvbWVkaWEvcGxh dGZvcm0vbXRrLXZjb2RlYy92ZGVjX3ZwdV9pZi5oCj4gQEAgLTYyLDcgKzYyLDcgQEAgaW50IHZw dV9kZWNfc3RhcnQoc3RydWN0IHZkZWNfdnB1X2luc3QgKnZwdSwgdWludDMyX3QgKmRhdGEsIHVu c2lnbmVkIGludCBsZW4pOwo+ICAgLyoqCj4gICAgKiB2cHVfZGVjX2VuZCAtIGVuZCBkZWNvZGlu ZywgYmFzaWNhbGx5IHRoZSBmdW5jdGlvbiB3aWxsIGJlIGludm9rZWQgb25jZQo+ICAgICogICAg ICAgICAgICAgICB3aGVuIEhXIGRlY29kaW5nIGRvbmUgaW50ZXJydXB0IHJlY2VpdmVkIHN1Y2Nl c3NmdWxseS4gVGhlCj4gLSAqICAgICAgICAgICAgICAgZGVjb2RlciBpbiBWUFUgd2lsbCBjb250 aW51dGUgdG8gZG8gcmVmZXJlbmUgZnJhbWUgbWFuYWdlbWVudAo+ICsgKiAgICAgICAgICAgICAg IGRlY29kZXIgaW4gVlBVIHdpbGwgY29udGludWUgdG8gZG8gcmVmZXJlbmNlIGZyYW1lIG1hbmFn ZW1lbnQKPiAgICAqICAgICAgICAgICAgICAgYW5kIGNoZWNrIGlmIHRoZXJlIGlzIGEgbmV3IGRl Y29kZWQgZnJhbWUgYXZhaWxhYmxlIHRvIGRpc3BsYXkuCj4gICAgKgo+ICAgICogQHZwdSA6IGlu c3RhbmNlIGZvciB2ZGVjX3ZwdV9pbnN0Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvbWVkaWEvcGxh dGZvcm0vb21hcC9vbWFwX3ZvdXQuYyBiL2RyaXZlcnMvbWVkaWEvcGxhdGZvcm0vb21hcC9vbWFw X3ZvdXQuYwo+IGluZGV4IGZmM2RlMmRjZTVhMi4uMzdmMGQ3MTQ2ZGZhIDEwMDY0NAo+IC0tLSBh L2RyaXZlcnMvbWVkaWEvcGxhdGZvcm0vb21hcC9vbWFwX3ZvdXQuYwo+ICsrKyBiL2RyaXZlcnMv bWVkaWEvcGxhdGZvcm0vb21hcC9vbWFwX3ZvdXQuYwo+IEBAIC0xMTI5LDcgKzExMjksNyBAQCBz dGF0aWMgaW50IHZpZGlvY19zX2ZtdF92aWRfb3V0KHN0cnVjdCBmaWxlICpmaWxlLCB2b2lkICpm aCwKPiAgIAl9Cj4gICAJdGltaW5nID0gJmRzc2Rldi0+cGFuZWwudGltaW5nczsKPiAgIAo+IC0J LyogV2UgZG9udCBzdXBwb3J0IFJHQjI0LXBhY2tlZCBtb2RlIGlmIHZyZmIgcm90YXRpb24KPiAr CS8qIFdlIGRvbid0IHN1cHBvcnQgUkdCMjQtcGFja2VkIG1vZGUgaWYgdnJmYiByb3RhdGlvbgo+ ICAgCSAqIGlzIGVuYWJsZWQqLwo+ICAgCWlmICgoaXNfcm90YXRpb25fZW5hYmxlZCh2b3V0KSkg JiYKPiAgIAkJCWYtPmZtdC5waXgucGl4ZWxmb3JtYXQgPT0gVjRMMl9QSVhfRk1UX1JHQjI0KSB7 Cj4gQEAgLTExNDcsNyArMTE0Nyw3IEBAIHN0YXRpYyBpbnQgdmlkaW9jX3NfZm10X3ZpZF9vdXQo c3RydWN0IGZpbGUgKmZpbGUsIHZvaWQgKmZoLAo+ICAgCQl2b3V0LT5mYnVmLmZtdC53aWR0aCA9 IHRpbWluZy0+eF9yZXM7Cj4gICAJfQo+ICAgCj4gLQkvKiBjaGFuZ2UgdG8gc2FtbGxlciBzaXpl IGlzIE9LICovCj4gKwkvKiBjaGFuZ2UgdG8gc21hbGxlciBzaXplIGlzIE9LICovCj4gICAKPiAg IAlicHAgPSBvbWFwX3ZvdXRfdHJ5X2Zvcm1hdCgmZi0+Zm10LnBpeCk7Cj4gICAJZi0+Zm10LnBp eC5zaXplaW1hZ2UgPSBmLT5mbXQucGl4LndpZHRoICogZi0+Zm10LnBpeC5oZWlnaHQgKiBicHA7 Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvbWVkaWEvcGxhdGZvcm0vb21hcC9vbWFwX3ZvdXRkZWYu aCBiL2RyaXZlcnMvbWVkaWEvcGxhdGZvcm0vb21hcC9vbWFwX3ZvdXRkZWYuaAo+IGluZGV4IDU2 YjYzMGIxYzhiNC4uYzc0MDM5M2M4NTA5IDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvbWVkaWEvcGxh dGZvcm0vb21hcC9vbWFwX3ZvdXRkZWYuaAo+ICsrKyBiL2RyaXZlcnMvbWVkaWEvcGxhdGZvcm0v b21hcC9vbWFwX3ZvdXRkZWYuaAo+IEBAIC0zNyw3ICszNyw3IEBACj4gICAjZGVmaW5lIFZJRF9N QVhfV0lEVEgJCTEyODAJLyogTGFyZ2VzdCB3aWR0aCAqLwo+ICAgI2RlZmluZSBWSURfTUFYX0hF SUdIVAkJNzIwCS8qIExhcmdlc3QgaGVpZ2h0ICovCj4gICAKPiAtLyogTWltaW11bSByZXF1aXJl bWVudCBpcyAyeDIgZm9yIERTUyAqLwo+ICsvKiBNaW5pbXVtIHJlcXVpcmVtZW50IGlzIDJ4MiBm b3IgRFNTICovCj4gICAjZGVmaW5lIFZJRF9NSU5fV0lEVEgJCTIKPiAgICNkZWZpbmUgVklEX01J Tl9IRUlHSFQJCTIKPiAgIAo+IEBAIC0xMzUsNyArMTM1LDcgQEAgc3RydWN0IG9tYXBfdm91dF9k ZXZpY2Ugewo+ICAgCWVudW0gb21hcF9jb2xvcl9tb2RlIGRzc19tb2RlOwo+ICAgCj4gICAJLyog d2UgZG9uJ3QgYWxsb3cgdG8gcmVxdWVzdCBuZXcgYnVmZmVyIHdoZW4gb2xkIGJ1ZmZlcnMgYXJl Cj4gLQkgKiBzdGlsbCBtbWFwZWQKPiArCSAqIHN0aWxsIG1tYXBwZWQKPiAgIAkgKi8KPiAgIAlp bnQgbW1hcF9jb3VudDsKPiAgIAo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL21lZGlhL3BsYXRmb3Jt L29tYXAzaXNwL2lzcC5jIGIvZHJpdmVycy9tZWRpYS9wbGF0Zm9ybS9vbWFwM2lzcC9pc3AuYwo+ IGluZGV4IDEzZjI4MjhkODgwZC4uYmQ1NzE3NGQ4MWE3IDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMv bWVkaWEvcGxhdGZvcm0vb21hcDNpc3AvaXNwLmMKPiArKysgYi9kcml2ZXJzL21lZGlhL3BsYXRm b3JtL29tYXAzaXNwL2lzcC5jCj4gQEAgLTE1MTcsNyArMTUxNyw3IEBAIHZvaWQgb21hcDNpc3Bf cHJpbnRfc3RhdHVzKHN0cnVjdCBpc3BfZGV2aWNlICppc3ApCj4gICAgKgo+ICAgICogVG8gc29s dmUgdGhpcyBwcm9ibGVtIHBvd2VyIG1hbmFnZW1lbnQgc3VwcG9ydCBpcyBzcGxpdCBpbnRvIHBy ZXBhcmUvY29tcGxldGUKPiAgICAqIGFuZCBzdXNwZW5kL3Jlc3VtZSBvcGVyYXRpb25zLiBUaGUg cGlwZWxpbmVzIGFyZSBzdG9wcGVkIGluIHByZXBhcmUoKSBhbmQgdGhlCj4gLSAqIElTUCBjbG9j a3MgZ2V0IGRpc2FibGVkIGluIHN1c3BlbmQoKS4gU2ltaWxhcmx5LCB0aGUgY2xvY2tzIGFyZSBy ZWVuYWJsZWQgaW4KPiArICogSVNQIGNsb2NrcyBnZXQgZGlzYWJsZWQgaW4gc3VzcGVuZCgpLiBT aW1pbGFybHksIHRoZSBjbG9ja3MgYXJlIHJlLWVuYWJsZWQgaW4KPiAgICAqIHJlc3VtZSgpLCBh bmQgdGhlIHRoZSBwaXBlbGluZXMgYXJlIHJlc3RhcnRlZCBpbiBjb21wbGV0ZSgpLgo+ICAgICoK PiAgICAqIFRPRE86IFBNIGRlcGVuZGVuY2llcyBiZXR3ZWVuIHRoZSBJU1AgYW5kIHNlbnNvcnMg YXJlIG5vdCBtb2RlbGxlZCBleHBsaWNpdGx5Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvbWVkaWEv cGxhdGZvcm0vb21hcDNpc3AvaXNwY2NkYy5jIGIvZHJpdmVycy9tZWRpYS9wbGF0Zm9ybS9vbWFw M2lzcC9pc3BjY2RjLmMKPiBpbmRleCAxNGExYzI0MDM3YzQuLjI2MWFkMTE3NWY5OCAxMDA2NDQK PiAtLS0gYS9kcml2ZXJzL21lZGlhL3BsYXRmb3JtL29tYXAzaXNwL2lzcGNjZGMuYwo+ICsrKyBi L2RyaXZlcnMvbWVkaWEvcGxhdGZvcm0vb21hcDNpc3AvaXNwY2NkYy5jCj4gQEAgLTE1OTQsNyAr MTU5NCw3IEBAIHN0YXRpYyBpbnQgY2NkY19pc3JfYnVmZmVyKHN0cnVjdCBpc3BfY2NkY19kZXZp Y2UgKmNjZGMpCj4gICAJCXJldHVybiAwOwo+ICAgCj4gICAJLyogV2UncmUgaW4gY29udGludW91 cyBtb2RlLCBhbmQgbWVtb3J5IHdyaXRlcyB3ZXJlIGRpc2FibGVkIGR1ZSB0byBhCj4gLQkgKiBi dWZmZXIgdW5kZXJydW4uIFJlZW5hYmxlIHRoZW0gbm93IHRoYXQgd2UgaGF2ZSBhIGJ1ZmZlci4g VGhlIGJ1ZmZlcgo+ICsJICogYnVmZmVyIHVuZGVycnVuLiBSZS1lbmFibGUgdGhlbSBub3cgdGhh dCB3ZSBoYXZlIGEgYnVmZmVyLiBUaGUgYnVmZmVyCj4gICAJICogYWRkcmVzcyBoYXMgYmVlbiBz ZXQgaW4gY2NkY192aWRlb19xdWV1ZS4KPiAgIAkgKi8KPiAgIAlpZiAoY2NkYy0+c3RhdGUgPT0g SVNQX1BJUEVMSU5FX1NUUkVBTV9DT05USU5VT1VTICYmIGNjZGMtPnVuZGVycnVuKSB7Cj4gQEAg LTE3MTIsNyArMTcxMiw3IEBAIHN0YXRpYyB2b2lkIGNjZGNfdmQxX2lzcihzdHJ1Y3QgaXNwX2Nj ZGNfZGV2aWNlICpjY2RjKQo+ICAgCSAqIGRhdGEgdG8gbWVtb3J5IHRoZSBDQ0RDIGFuZCBMU0Mg YXJlIHN0b3BwZWQgaW1tZWRpYXRlbHkgYnV0Cj4gICAJICogd2l0aG91dCBjaGFuZ2UgdGhlIEND REMgc3RvcHBpbmcgc3RhdGUgbWFjaGluZS4gVGhlIENDREMKPiAgIAkgKiBzdG9wcGluZyBzdGF0 ZSBtYWNoaW5lIHNob3VsZCBiZSB1c2VkIG9ubHkgd2hlbiB1c2VyIHJlcXVlc3QKPiAtCSAqIGZv ciBzdG9wcGluZyBpcyByZWNlaXZlZCAoU0lOR0xFU0hPVCBpcyBhbiBleGVwdGlvbikuCj4gKwkg KiBmb3Igc3RvcHBpbmcgaXMgcmVjZWl2ZWQgKFNJTkdMRVNIT1QgaXMgYW4gZXhjZXB0aW9uKS4K PiAgIAkgKi8KPiAgIAlzd2l0Y2ggKGNjZGMtPnN0YXRlKSB7Cj4gICAJY2FzZSBJU1BfUElQRUxJ TkVfU1RSRUFNX1NJTkdMRVNIT1Q6Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvbWVkaWEvcGxhdGZv cm0vb21hcDNpc3AvaXNwY3NpMi5jIGIvZHJpdmVycy9tZWRpYS9wbGF0Zm9ybS9vbWFwM2lzcC9p c3Bjc2kyLmMKPiBpbmRleCA5YzE4MGY2MDdiY2IuLmRhNjZlYTY1YmU1ZCAxMDA2NDQKPiAtLS0g YS9kcml2ZXJzL21lZGlhL3BsYXRmb3JtL29tYXAzaXNwL2lzcGNzaTIuYwo+ICsrKyBiL2RyaXZl cnMvbWVkaWEvcGxhdGZvcm0vb21hcDNpc3AvaXNwY3NpMi5jCj4gQEAgLTcxMCw3ICs3MTAsNyBA QCBzdGF0aWMgdm9pZCBjc2kyX2lzcl9jdHgoc3RydWN0IGlzcF9jc2kyX2RldmljZSAqY3NpMiwK PiAgIAo+ICAgCS8qIFNraXAgaW50ZXJydXB0cyB1bnRpbCB3ZSByZWFjaCB0aGUgZnJhbWUgc2tp cCBjb3VudC4gVGhlIENTSTIgd2lsbCBiZQo+ICAgCSAqIGF1dG9tYXRpY2FsbHkgZGlzYWJsZWQs IGFzIHRoZSBmcmFtZSBza2lwIGNvdW50IGhhcyBiZWVuIHByb2dyYW1tZWQKPiAtCSAqIGluIHRo ZSBDU0kyX0NUeF9DVFJMMTo6Q09VTlQgZmllbGQsIHNvIHJlZW5hYmxlIGl0Lgo+ICsJICogaW4g dGhlIENTSTJfQ1R4X0NUUkwxOjpDT1VOVCBmaWVsZCwgc28gcmUtZW5hYmxlIGl0Lgo+ICAgCSAq Cj4gICAJICogSXQgd291bGQgaGF2ZSBiZWVuIG5pY2UgdG8gcmVseSBvbiB0aGUgRlJBTUVfTlVN QkVSIGludGVycnVwdCBpbnN0ZWFkCj4gICAJICogYnV0IGl0IHR1cm5lZCBvdXQgdGhhdCB0aGUg aW50ZXJydXB0IGlzIG9ubHkgZ2VuZXJhdGVkIHdoZW4gdGhlIENTSTIKPiBkaWZmIC0tZ2l0IGEv ZHJpdmVycy9tZWRpYS9wbGF0Zm9ybS9weGFfY2FtZXJhLmMgYi9kcml2ZXJzL21lZGlhL3BsYXRm b3JtL3B4YV9jYW1lcmEuYwo+IGluZGV4IDNjZjNjNjM5MGNjOC4uNGZlMjI4NzUyYTQzIDEwMDY0 NAo+IC0tLSBhL2RyaXZlcnMvbWVkaWEvcGxhdGZvcm0vcHhhX2NhbWVyYS5jCj4gKysrIGIvZHJp dmVycy9tZWRpYS9wbGF0Zm9ybS9weGFfY2FtZXJhLmMKPiBAQCAtMTYzMSw3ICsxNjMxLDcgQEAg c3RhdGljIGludCBweGFfY2FtZXJhX3NldF9idXNfcGFyYW0oc3RydWN0IHB4YV9jYW1lcmFfZGV2 ICpwY2RldikKPiAgIAo+ICAgCXBjZGV2LT5jaGFubmVscyA9IDE7Cj4gICAKPiAtCS8qIE1ha2Ug Y2hvaXNlcywgYmFzZWQgb24gcGxhdGZvcm0gcHJlZmVyZW5jZXMgKi8KPiArCS8qIE1ha2UgY2hv aWNlcywgYmFzZWQgb24gcGxhdGZvcm0gcHJlZmVyZW5jZXMgKi8KPiAgIAlpZiAoKGNvbW1vbl9m bGFncyAmIFY0TDJfTUJVU19IU1lOQ19BQ1RJVkVfSElHSCkgJiYKPiAgIAkgICAgKGNvbW1vbl9m bGFncyAmIFY0TDJfTUJVU19IU1lOQ19BQ1RJVkVfTE9XKSkgewo+ICAgCQlpZiAocGNkZXYtPnBs YXRmb3JtX2ZsYWdzICYgUFhBX0NBTUVSQV9IU1ApCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvbWVk aWEvcGxhdGZvcm0vcWNvbS92ZW51cy9jb3JlLmggYi9kcml2ZXJzL21lZGlhL3BsYXRmb3JtL3Fj b20vdmVudXMvY29yZS5oCj4gaW5kZXggNzljN2U4MTZjNzA2Li43YTNmZWI1Y2VlMDAgMTAwNjQ0 Cj4gLS0tIGEvZHJpdmVycy9tZWRpYS9wbGF0Zm9ybS9xY29tL3ZlbnVzL2NvcmUuaAo+ICsrKyBi L2RyaXZlcnMvbWVkaWEvcGxhdGZvcm0vcWNvbS92ZW51cy9jb3JlLmgKPiBAQCAtMjE5LDcgKzIx OSw3IEBAIHN0cnVjdCB2ZW51c19idWZmZXIgewo+ICAgI2RlZmluZSB0b192ZW51c19idWZmZXIo cHRyKQljb250YWluZXJfb2YocHRyLCBzdHJ1Y3QgdmVudXNfYnVmZmVyLCB2YikKPiAgIAo+ICAg LyoqCj4gLSAqIHN0cnVjdCB2ZW51c19pbnN0IC0gaG9sZHMgcGVyIGluc3RhbmNlIHBhcmFtZXJ0 ZXJzCj4gKyAqIHN0cnVjdCB2ZW51c19pbnN0IC0gaG9sZHMgcGVyIGluc3RhbmNlIHBhcmFtZXRl cnMKPiAgICAqCj4gICAgKiBAbGlzdDoJdXNlZCBmb3IgYXR0YWNoIGFuIGluc3RhbmNlIHRvIHRo ZSBjb3JlCj4gICAgKiBAbG9jazoJaW5zdGFuY2UgbG9jawo+IGRpZmYgLS1naXQgYS9kcml2ZXJz L21lZGlhL3BsYXRmb3JtL3JjYXItdmluL3JjYXItZG1hLmMgYi9kcml2ZXJzL21lZGlhL3BsYXRm b3JtL3JjYXItdmluL3JjYXItZG1hLmMKPiBpbmRleCBiZWI5MjQ4OTkyYTQuLjIyMDdhMzFkMzU1 ZSAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL21lZGlhL3BsYXRmb3JtL3JjYXItdmluL3JjYXItZG1h LmMKPiArKysgYi9kcml2ZXJzL21lZGlhL3BsYXRmb3JtL3JjYXItdmluL3JjYXItZG1hLmMKPiBA QCAtNjgxLDcgKzY4MSw3IEBAIHN0YXRpYyBpbnQgcnZpbl9zZXR1cChzdHJ1Y3QgcnZpbl9kZXYg KnZpbikKPiAgIAkJYnJlYWs7Cj4gICAJfQo+ICAgCj4gLQkvKiBFbmFibGUgVlNZTkMgRmllbGQg VG9vZ2xlIG1vZGUgYWZ0ZXIgb25lIFZTWU5DIGlucHV0ICovCj4gKwkvKiBFbmFibGUgVlNZTkMg RmllbGQgVG9nZ2xlIG1vZGUgYWZ0ZXIgb25lIFZTWU5DIGlucHV0ICovCj4gICAJaWYgKHZpbi0+ aW5mby0+bW9kZWwgPT0gUkNBUl9HRU4zKQo+ICAgCQlkbXIyID0gVk5ETVIyX0ZURVY7Cj4gICAJ ZWxzZQo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL21lZGlhL3BsYXRmb3JtL3JjYXItdmluL3JjYXIt djRsMi5jIGIvZHJpdmVycy9tZWRpYS9wbGF0Zm9ybS9yY2FyLXZpbi9yY2FyLXY0bDIuYwo+IGlu ZGV4IDdhMjg1MTc5MGI5MS4uN2NiZGNiZjliMDkwIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvbWVk aWEvcGxhdGZvcm0vcmNhci12aW4vcmNhci12NGwyLmMKPiArKysgYi9kcml2ZXJzL21lZGlhL3Bs YXRmb3JtL3JjYXItdmluL3JjYXItdjRsMi5jCj4gQEAgLTY2NSw3ICs2NjUsNyBAQCBzdGF0aWMg dm9pZCBydmluX21jX3RyeV9mb3JtYXQoc3RydWN0IHJ2aW5fZGV2ICp2aW4sCj4gICAJICogVGhl IFY0TDIgc3BlY2lmaWNhdGlvbiBjbGVhcmx5IGRvY3VtZW50cyB0aGUgY29sb3JzcGFjZSBmaWVs ZHMKPiAgIAkgKiBhcyBiZWluZyBzZXQgYnkgZHJpdmVycyBmb3IgY2FwdHVyZSBkZXZpY2VzLiBV c2luZyB0aGUgdmFsdWVzCj4gICAJICogc3VwcGxpZWQgYnkgdXNlcnNwYWNlIHRodXMgd291bGRu J3QgY29tcGx5IHdpdGggdGhlIEFQSS4gVW50aWwKPiAtCSAqIHRoZSBBUEkgaXMgdXBkYXRlZCBm b3JjZSBmaXhlZCB2YXVsZXMuCj4gKwkgKiB0aGUgQVBJIGlzIHVwZGF0ZWQgZm9yY2UgZml4ZWQg dmFsdWVzLgo+ICAgCSAqLwo+ICAgCXBpeC0+Y29sb3JzcGFjZSA9IFJWSU5fREVGQVVMVF9DT0xP UlNQQUNFOwo+ICAgCXBpeC0+eGZlcl9mdW5jID0gVjRMMl9NQVBfWEZFUl9GVU5DX0RFRkFVTFQo cGl4LT5jb2xvcnNwYWNlKTsKPiBAQCAtOTY0LDcgKzk2NCw3IEBAIHZvaWQgcnZpbl92NGwyX3Vu cmVnaXN0ZXIoc3RydWN0IHJ2aW5fZGV2ICp2aW4pCj4gICAJdjRsMl9pbmZvKCZ2aW4tPnY0bDJf ZGV2LCAiUmVtb3ZpbmcgJXNcbiIsCj4gICAJCSAgdmlkZW9fZGV2aWNlX25vZGVfbmFtZSgmdmlu LT52ZGV2KSk7Cj4gICAKPiAtCS8qIENoZWNrcyBpbnRlcm5hbHkgaWYgdmRldiBoYXZlIGJlZW4g aW5pdCBvciBub3QgKi8KPiArCS8qIENoZWNrcyBpbnRlcm5hbGx5IGlmIHZkZXYgaGF2ZSBiZWVu IGluaXQgb3Igbm90ICovCj4gICAJdmlkZW9fdW5yZWdpc3Rlcl9kZXZpY2UoJnZpbi0+dmRldik7 Cj4gICB9Cj4gICAKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9tZWRpYS9wbGF0Zm9ybS9yb2NrY2hp cC9yZ2EvcmdhLWh3LmMgYi9kcml2ZXJzL21lZGlhL3BsYXRmb3JtL3JvY2tjaGlwL3JnYS9yZ2Et aHcuYwo+IGluZGV4IDk2ZDFiMWIzZmU4ZS4uODQzZTUwZDE3YTcyIDEwMDY0NAo+IC0tLSBhL2Ry aXZlcnMvbWVkaWEvcGxhdGZvcm0vcm9ja2NoaXAvcmdhL3JnYS1ody5jCj4gKysrIGIvZHJpdmVy cy9tZWRpYS9wbGF0Zm9ybS9yb2NrY2hpcC9yZ2EvcmdhLWh3LmMKPiBAQCAtMjU2LDcgKzI1Niw3 IEBAIHN0YXRpYyB2b2lkIHJnYV9jbWRfc2V0X3RyYW5zX2luZm8oc3RydWN0IHJnYV9jdHggKmN0 eCkKPiAgIAl9Cj4gICAKPiAgIAkvKgo+IC0JICogQ2FjbHVhdGUgdGhlIHVwL2Rvd24gc2NhbGlu ZyBtb2RlL2ZhY3Rvci4KPiArCSAqIENhbGN1bGF0ZSB0aGUgdXAvZG93biBzY2FsaW5nIG1vZGUv ZmFjdG9yLgo+ICAgCSAqCj4gICAJICogUkdBIHVzZWQgdG8gc2NhbGUgdGhlIHBpY3R1cmUgZmly c3QsIGFuZCB0aGVuIHJvdGF0ZSBzZWNvbmQsCj4gICAJICogc28gd2UgbmVlZCB0byBzd2FwIHRo ZSB3L2ggd2hlbiByb3RhdGUgZGVncmVlIGlzIDkwLzI3MC4KPiBAQCAtMzA0LDcgKzMwNCw3IEBA IHN0YXRpYyB2b2lkIHJnYV9jbWRfc2V0X3RyYW5zX2luZm8oc3RydWN0IHJnYV9jdHggKmN0eCkK PiAgIAl9Cj4gICAKPiAgIAkvKgo+IC0JICogQ2FjbHVhdGUgdGhlIGZyYW1lYnVmZmVyIHZpcnR1 YWwgc3RyaWRlcyBhbmQgYWN0aXZlIHNpemUsCj4gKwkgKiBDYWxjdWxhdGUgdGhlIGZyYW1lYnVm ZmVyIHZpcnR1YWwgc3RyaWRlcyBhbmQgYWN0aXZlIHNpemUsCj4gICAJICogbm90ZSB0aGF0IHRo ZSBzdGVwIG9mIHZpcl9zdHJpZGUgLyB2aXJfd2lkdGggaXMgNCBieXRlIHdvcmRzCj4gICAJICov Cj4gICAJc3JjX3Zpcl9pbmZvLmRhdGEudmlyX3N0cmlkZSA9IGN0eC0+aW4uc3RyaWRlID4+IDI7 Cj4gQEAgLTMxOCw3ICszMTgsNyBAQCBzdGF0aWMgdm9pZCByZ2FfY21kX3NldF90cmFuc19pbmZv KHN0cnVjdCByZ2FfY3R4ICpjdHgpCj4gICAJZHN0X2FjdF9pbmZvLmRhdGEuYWN0X3dpZHRoID0g ZHN0X3cgLSAxOwo+ICAgCj4gICAJLyoKPiAtCSAqIENhY2x1YXRlIHRoZSBzb3VyY2UgZnJhbWVi dWZmZXIgYmFzZSBhZGRyZXNzIHdpdGggb2Zmc2V0IHBpeGVsLgo+ICsJICogQ2FsY3VsYXRlIHRo ZSBzb3VyY2UgZnJhbWVidWZmZXIgYmFzZSBhZGRyZXNzIHdpdGggb2Zmc2V0IHBpeGVsLgo+ICAg CSAqLwo+ICAgCXNyY19vZmZzZXRzID0gcmdhX2dldF9hZGRyX29mZnNldCgmY3R4LT5pbiwgc3Jj X3gsIHNyY195LAo+ICAgCQkJCQkgIHNyY193LCBzcmNfaCk7Cj4gZGlmZiAtLWdpdCBhL2RyaXZl cnMvbWVkaWEvcGxhdGZvcm0vczNjLWNhbWlmL2NhbWlmLWNvcmUuaCBiL2RyaXZlcnMvbWVkaWEv cGxhdGZvcm0vczNjLWNhbWlmL2NhbWlmLWNvcmUuaAo+IGluZGV4IDFmNWM4Yzk0Y2U4OS4uYmU1 ZTczNTdkZmZjIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvbWVkaWEvcGxhdGZvcm0vczNjLWNhbWlm L2NhbWlmLWNvcmUuaAo+ICsrKyBiL2RyaXZlcnMvbWVkaWEvcGxhdGZvcm0vczNjLWNhbWlmL2Nh bWlmLWNvcmUuaAo+IEBAIC0yNjAsNyArMjYwLDcgQEAgc3RydWN0IGNhbWlmX3ZwIHsKPiAgICAq IEBjbG9jazoJICBjbG9ja3MgcmVxdWlyZWQgZm9yIHRoZSBDQU1JRiBvcGVyYXRpb24KPiAgICAq IEBsb2NrOgkgIG11dGV4IHByb3RlY3RpbmcgdGhpcyBkYXRhIHN0cnVjdHVyZQo+ICAgICogQHNs b2NrOgkgIHNwaW5sb2NrIHByb3RlY3RpbmcgQ0FNSUYgcmVnaXN0ZXJzCj4gLSAqIEBpb19iYXNl OgkgIHN0YXJ0IGFkZHJlc3Mgb2YgdGhlIG1tYXBlZCBDQU1JRiByZWdpc3RlcnMKPiArICogQGlv X2Jhc2U6CSAgc3RhcnQgYWRkcmVzcyBvZiB0aGUgbW1hcHBlZCBDQU1JRiByZWdpc3RlcnMKPiAg ICAqLwo+ICAgc3RydWN0IGNhbWlmX2RldiB7Cj4gICAJc3RydWN0IG1lZGlhX2RldmljZQkJbWVk aWFfZGV2Owo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL21lZGlhL3BsYXRmb3JtL3M1cC1qcGVnL2pw ZWctY29yZS5oIGIvZHJpdmVycy9tZWRpYS9wbGF0Zm9ybS9zNXAtanBlZy9qcGVnLWNvcmUuaAo+ IGluZGV4IDkwZmRhNGI3MjBlYi4uMTQ0YzEwMmZmMDVmIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMv bWVkaWEvcGxhdGZvcm0vczVwLWpwZWcvanBlZy1jb3JlLmgKPiArKysgYi9kcml2ZXJzL21lZGlh L3BsYXRmb3JtL3M1cC1qcGVnL2pwZWctY29yZS5oCj4gQEAgLTE1Myw3ICsxNTMsNyBAQCBzdHJ1 Y3QgczVwX2pwZWdfdmFyaWFudCB7Cj4gICAKPiAgIC8qKgo+ICAgICogc3RydWN0IGpwZWdfZm10 IC0gZHJpdmVyJ3MgaW50ZXJuYWwgY29sb3IgZm9ybWF0IGRhdGEKPiAtICogQG5hbWU6CWZvcm1h dCBkZXNjcml0cGlvbgo+ICsgKiBAbmFtZToJZm9ybWF0IGRlc2NyaXB0aW9uCj4gICAgKiBAZm91 cmNjOgl0aGUgZm91cmNjIGNvZGUsIDAgaWYgbm90IGFwcGxpY2FibGUKPiAgICAqIEBkZXB0aDoJ bnVtYmVyIG9mIGJpdHMgcGVyIHBpeGVsCj4gICAgKiBAY29scGxhbmVzOgludW1iZXIgb2YgY29s b3IgcGxhbmVzICgxIGZvciBwYWNrZWQgZm9ybWF0cykKPiBAQCAtMTkzLDcgKzE5Myw3IEBAIHN0 cnVjdCBzNXBfanBlZ19tYXJrZXIgewo+ICAgICogQHNvczoJU09TIG1hcmtlcidzIHBvc2l0aW9u IHJlbGF0aXZlIHRvIHRoZSBidWZmZXIgYmVnaW5uaW5nCj4gICAgKiBAZGh0OglESFQgbWFya2Vy cycgcG9zaXRpb25zIHJlbGF0aXZlIHRvIHRoZSBidWZmZXIgYmVnaW5uaW5nCj4gICAgKiBAZHF0 OglEUVQgbWFya2VycycgcG9zaXRpb25zIHJlbGF0aXZlIHRvIHRoZSBidWZmZXIgYmVnaW5uaW5n Cj4gLSAqIEBzb2Y6CVNPRjAgbWFya2VyJ3MgcG9zdGl0aW9uIHJlbGF0aXZlIHRvIHRoZSBidWZm ZXIgYmVnaW5uaW5nCj4gKyAqIEBzb2Y6CVNPRjAgbWFya2VyJ3MgcG9zaXRpb24gcmVsYXRpdmUg dG8gdGhlIGJ1ZmZlciBiZWdpbm5pbmcKPiAgICAqIEBzb2ZfbGVuOglTT0YwIG1hcmtlcidzIHBh eWxvYWQgbGVuZ3RoICh3aXRob3V0IGxlbmd0aCBmaWVsZCBpdHNlbGYpCj4gICAgKiBAY29tcG9u ZW50czoJbnVtYmVyIG9mIGltYWdlIGNvbXBvbmVudHMKPiAgICAqIEBzaXplOglpbWFnZSBidWZm ZXIgc2l6ZSBpbiBieXRlcwo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL21lZGlhL3BsYXRmb3JtL3M1 cC1tZmMvczVwX21mY19jb21tb24uaCBiL2RyaXZlcnMvbWVkaWEvcGxhdGZvcm0vczVwLW1mYy9z NXBfbWZjX2NvbW1vbi5oCj4gaW5kZXggMjA0NDJhOWI5ZjdhLi4yNDE0ODAyMGJhYTkgMTAwNjQ0 Cj4gLS0tIGEvZHJpdmVycy9tZWRpYS9wbGF0Zm9ybS9zNXAtbWZjL3M1cF9tZmNfY29tbW9uLmgK PiArKysgYi9kcml2ZXJzL21lZGlhL3BsYXRmb3JtL3M1cC1tZmMvczVwX21mY19jb21tb24uaAo+ IEBAIC0yNjgsNyArMjY4LDcgQEAgc3RydWN0IHM1cF9tZmNfcHJpdl9idWYgewo+ICAgICogQGVu Y19jdHJsX2hhbmRsZXI6CWNvbnRyb2wgZnJhbWV3b3JrIGhhbmRsZXIgZm9yIGVuY29kaW5nCj4g ICAgKiBAcG06CQkJcG93ZXIgbWFuYWdlbWVudCBjb250cm9sCj4gICAgKiBAdmFyaWFudDoJCU1G QyBoYXJkd2FyZSB2YXJpYW50IGluZm9ybWF0aW9uCj4gLSAqIEBudW1faW5zdDoJCWNvdXRlciBv ZiBhY3RpdmUgTUZDIGluc3RhbmNlcwo+ICsgKiBAbnVtX2luc3Q6CQljb3VudGVyIG9mIGFjdGl2 ZSBNRkMgaW5zdGFuY2VzCj4gICAgKiBAaXJxbG9jazoJCWxvY2sgZm9yIG9wZXJhdGlvbnMgb24g dmlkZW9idWYyIHF1ZXVlcwo+ICAgICogQGNvbmRsb2NrOgkJbG9jayBmb3IgY2hhbmdpbmcvY2hl Y2tpbmcgaWYgYSBjb250ZXh0IGlzIHJlYWR5IHRvIGJlCj4gICAgKgkJCXByb2Nlc3NlZAo+IGRp ZmYgLS1naXQgYS9kcml2ZXJzL21lZGlhL3BsYXRmb3JtL3M1cC1tZmMvczVwX21mY19jdHJsLmMg Yi9kcml2ZXJzL21lZGlhL3BsYXRmb3JtL3M1cC1tZmMvczVwX21mY19jdHJsLmMKPiBpbmRleCBl ZTdiMTViMzM1ZTAuLjlmODMyYmE3YmM4YyAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL21lZGlhL3Bs YXRmb3JtL3M1cC1tZmMvczVwX21mY19jdHJsLmMKPiArKysgYi9kcml2ZXJzL21lZGlhL3BsYXRm b3JtL3M1cC1tZmMvczVwX21mY19jdHJsLmMKPiBAQCAtNTEsNyArNTEsNyBAQCBpbnQgczVwX21m Y19sb2FkX2Zpcm13YXJlKHN0cnVjdCBzNXBfbWZjX2RldiAqZGV2KQo+ICAgCXN0cnVjdCBmaXJt d2FyZSAqZndfYmxvYjsKPiAgIAlpbnQgaSwgZXJyID0gLUVJTlZBTDsKPiAgIAo+IC0JLyogRmly bWFyZSBoYXMgdG8gYmUgcHJlc2VudCBhcyBhIHNlcGFyYXRlIGZpbGUgb3IgY29tcGlsZWQKPiAr CS8qIEZpcm13YXJlIGhhcyB0byBiZSBwcmVzZW50IGFzIGEgc2VwYXJhdGUgZmlsZSBvciBjb21w aWxlZAo+ICAgCSAqIGludG8ga2VybmVsLiAqLwo+ICAgCW1mY19kZWJ1Z19lbnRlcigpOwo+ICAg Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvbWVkaWEvcGxhdGZvcm0vczVwLW1mYy9zNXBfbWZjX2Rl Yy5jIGIvZHJpdmVycy9tZWRpYS9wbGF0Zm9ybS9zNXAtbWZjL3M1cF9tZmNfZGVjLmMKPiBpbmRl eCBmNGMwZTNhOGYyN2QuLmUxMTFmOWM0NzE3OSAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL21lZGlh L3BsYXRmb3JtL3M1cC1tZmMvczVwX21mY19kZWMuYwo+ICsrKyBiL2RyaXZlcnMvbWVkaWEvcGxh dGZvcm0vczVwLW1mYy9zNXBfbWZjX2RlYy5jCj4gQEAgLTYwMiw3ICs2MDIsNyBAQCBzdGF0aWMg aW50IHZpZGlvY19xdWVyeWJ1ZihzdHJ1Y3QgZmlsZSAqZmlsZSwgdm9pZCAqcHJpdiwKPiAgIAlp bnQgaTsKPiAgIAo+ICAgCWlmIChidWYtPm1lbW9yeSAhPSBWNEwyX01FTU9SWV9NTUFQKSB7Cj4g LQkJbWZjX2VycigiT25seSBtbWFwZWQgYnVmZmVycyBjYW4gYmUgdXNlZFxuIik7Cj4gKwkJbWZj X2VycigiT25seSBtbWFwcGVkIGJ1ZmZlcnMgY2FuIGJlIHVzZWRcbiIpOwo+ICAgCQlyZXR1cm4g LUVJTlZBTDsKPiAgIAl9Cj4gICAJbWZjX2RlYnVnKDIsICJTdGF0ZTogJWQsIGJ1Zi0+dHlwZTog JWRcbiIsIGN0eC0+c3RhdGUsIGJ1Zi0+dHlwZSk7Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvbWVk aWEvcGxhdGZvcm0vczVwLW1mYy9zNXBfbWZjX29wcl92NS5jIGIvZHJpdmVycy9tZWRpYS9wbGF0 Zm9ybS9zNXAtbWZjL3M1cF9tZmNfb3ByX3Y1LmMKPiBpbmRleCAwOTEzODgxMjE5ZmYuLjYxNDRl OTVmNjQyNSAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL21lZGlhL3BsYXRmb3JtL3M1cC1tZmMvczVw X21mY19vcHJfdjUuYwo+ICsrKyBiL2RyaXZlcnMvbWVkaWEvcGxhdGZvcm0vczVwLW1mYy9zNXBf bWZjX29wcl92NS5jCj4gQEAgLTEyOTMsNyArMTI5Myw3IEBAIHN0YXRpYyBpbnQgczVwX21mY19y dW5faW5pdF9kZWNfYnVmZmVycyhzdHJ1Y3QgczVwX21mY19jdHggKmN0eCkKPiAgIAkgKiBGaXJz dCBzZXQgdGhlIG91dHB1dCBmcmFtZSBidWZmZXJzCj4gICAJICovCj4gICAJaWYgKGN0eC0+Y2Fw dHVyZV9zdGF0ZSAhPSBRVUVVRV9CVUZTX01NQVBFRCkgewo+IC0JCW1mY19lcnIoIkl0IHNlZW1z IHRoYXQgbm90IGFsbCBkZXN0aW5hdGlvbiBidWZmZXJzIHdlcmUgbW1hcGVkXG5NRkMgcmVxdWly ZXMgdGhhdCBhbGwgZGVzdGluYXRpb24gYXJlIG1tYXBlZCBiZWZvcmUgc3RhcnRpbmcgcHJvY2Vz c2luZ1xuIik7Cj4gKwkJbWZjX2VycigiSXQgc2VlbXMgdGhhdCBub3QgYWxsIGRlc3RpbmF0aW9u IGJ1ZmZlcnMgd2VyZSBtbWFwcGVkXG5NRkMgcmVxdWlyZXMgdGhhdCBhbGwgZGVzdGluYXRpb24g YXJlIG1tYXBwZWQgYmVmb3JlIHN0YXJ0aW5nIHByb2Nlc3NpbmdcbiIpOwo+ICAgCQlyZXR1cm4g LUVBR0FJTjsKPiAgIAl9Cj4gICAJaWYgKGxpc3RfZW1wdHkoJmN0eC0+c3JjX3F1ZXVlKSkgewo+ IGRpZmYgLS1naXQgYS9kcml2ZXJzL21lZGlhL3BsYXRmb3JtL3M1cC1tZmMvczVwX21mY19vcHJf djYuYyBiL2RyaXZlcnMvbWVkaWEvcGxhdGZvcm0vczVwLW1mYy9zNXBfbWZjX29wcl92Ni5jCj4g aW5kZXggN2M2MjliZTQzMjA1Li4yODE2OTlhYjdmZTEgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9t ZWRpYS9wbGF0Zm9ybS9zNXAtbWZjL3M1cF9tZmNfb3ByX3Y2LmMKPiArKysgYi9kcml2ZXJzL21l ZGlhL3BsYXRmb3JtL3M1cC1tZmMvczVwX21mY19vcHJfdjYuYwo+IEBAIC01Myw3ICs1Myw3IEBA IHN0YXRpYyBpbnQgczVwX21mY19hbGxvY19kZWNfdGVtcF9idWZmZXJzX3Y2KHN0cnVjdCBzNXBf bWZjX2N0eCAqY3R4KQo+ICAgCXJldHVybiAwOwo+ICAgfQo+ICAgCj4gLS8qIFJlbGVhc2UgdGVt cHJvYXJ5IGJ1ZmZlcnMgZm9yIGRlY29kaW5nICovCj4gKy8qIFJlbGVhc2UgdGVtcG9yYXJ5IGJ1 ZmZlcnMgZm9yIGRlY29kaW5nICovCj4gICBzdGF0aWMgdm9pZCBzNXBfbWZjX3JlbGVhc2VfZGVj X2Rlc2NfYnVmZmVyX3Y2KHN0cnVjdCBzNXBfbWZjX2N0eCAqY3R4KQo+ICAgewo+ICAgCS8qIE5P UCAqLwo+IEBAIC0xOTI4LDcgKzE5MjgsNyBAQCBzdGF0aWMgaW5saW5lIGludCBzNXBfbWZjX3J1 bl9pbml0X2RlY19idWZmZXJzKHN0cnVjdCBzNXBfbWZjX2N0eCAqY3R4KQo+ICAgCj4gICAJaWYg KGN0eC0+Y2FwdHVyZV9zdGF0ZSAhPSBRVUVVRV9CVUZTX01NQVBFRCkgewo+ICAgCQltZmNfZXJy KCJJdCBzZWVtcyB0aGF0IG5vdCBhbGwgZGVzdGluYXRpb24gYnVmZmVycyB3ZXJlXG4iCj4gLQkJ CSJtbWFwZWQuTUZDIHJlcXVpcmVzIHRoYXQgYWxsIGRlc3RpbmF0aW9uIGFyZSBtbWFwZWRcbiIK PiArCQkJIm1tYXBwZWQuTUZDIHJlcXVpcmVzIHRoYXQgYWxsIGRlc3RpbmF0aW9uIGFyZSBtbWFw cGVkXG4iCj4gICAJCQkiYmVmb3JlIHN0YXJ0aW5nIHByb2Nlc3NpbmcuXG4iKTsKPiAgIAkJcmV0 dXJuIC1FQUdBSU47Cj4gICAJfQo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL21lZGlhL3BsYXRmb3Jt L3N0aS9jOHNlY3RwZmUvYzhzZWN0cGZlLWNvcmUuaCBiL2RyaXZlcnMvbWVkaWEvcGxhdGZvcm0v c3RpL2M4c2VjdHBmZS9jOHNlY3RwZmUtY29yZS5oCj4gaW5kZXggM2RiYjNhMjg3Y2MwLi5jOWQ2 MDIxOTA0Y2QgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9tZWRpYS9wbGF0Zm9ybS9zdGkvYzhzZWN0 cGZlL2M4c2VjdHBmZS1jb3JlLmgKPiArKysgYi9kcml2ZXJzL21lZGlhL3BsYXRmb3JtL3N0aS9j OHNlY3RwZmUvYzhzZWN0cGZlLWNvcmUuaAo+IEBAIC0xOTMsNyArMTkzLDcgQEAgc3RydWN0IGM4 c2VjdHBmZWkgewo+ICAgI2RlZmluZSBDOFNFQ1RQRkVfU1lTX0VOQUJMRSAgICAgICAgICAgICBC SVQoMCkKPiAgIAo+ICAgLyoKPiAtICogUG9udGVyIHJlY29yZCBkYXRhIHN0cnVjdHVyZSByZXF1 aXJlZCBmb3IgZWFjaCBpbnB1dCBibG9jawo+ICsgKiBQb2ludGVyIHJlY29yZCBkYXRhIHN0cnVj dHVyZSByZXF1aXJlZCBmb3IgZWFjaCBpbnB1dCBibG9jawo+ICAgICogc2VlIFRhYmxlIDgyIG9u IHBhZ2UgMTY3IG9mIGZ1bmN0aW9uYWwgc3BlY2lmaWNhdGlvbi4KPiAgICAqLwo+ICAgCj4gZGlm ZiAtLWdpdCBhL2RyaXZlcnMvbWVkaWEvcGxhdGZvcm0vc3RpL2RlbHRhL2RlbHRhLmggYi9kcml2 ZXJzL21lZGlhL3BsYXRmb3JtL3N0aS9kZWx0YS9kZWx0YS5oCj4gaW5kZXggMmJhOTk5MjJjMDVi Li45MTQ1NTYwMzBlNzAgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9tZWRpYS9wbGF0Zm9ybS9zdGkv ZGVsdGEvZGVsdGEuaAo+ICsrKyBiL2RyaXZlcnMvbWVkaWEvcGxhdGZvcm0vc3RpL2RlbHRhL2Rl bHRhLmgKPiBAQCAtMjg2LDcgKzI4Niw3IEBAIHN0cnVjdCBkZWx0YV9kZWMgewo+ICAgCSAqIEhl YWRlciBwYXJzaW5nIG11c3QgYmUgZG9uZSB1c2luZyBkZWNvZGUoKSwgZ2l2aW5nCj4gICAJICog ZXhwbGljaXRseSBoZWFkZXIgYWNjZXNzIHVuaXQgb3IgZmlyc3QgYWNjZXNzIHVuaXQgb2YgYml0 c3RyZWFtLgo+ICAgCSAqIElmIG5vIHZhbGlkIGhlYWRlciBpcyBmb3VuZCwgZ2V0X3N0cmVhbWlu Zm8gd2lsbCByZXR1cm4gLUVOT0RBVEEsCj4gLQkgKiBpbiB0aGlzIGNhc2UgdGhlIG5leHQgYmlz dHJlYW0gYWNjZXNzIHVuaXQgbXVzdCBiZSBkZWNvZGVkIHRpbGwKPiArCSAqIGluIHRoaXMgY2Fz ZSB0aGUgbmV4dCBiaXRzdHJlYW0gYWNjZXNzIHVuaXQgbXVzdCBiZSBkZWNvZGVkIHRpbGwKPiAg IAkgKiBnZXRfc3RyZWFtaW5mbyBiZWNvbWVzIHN1Y2Nlc3NmdWwuCj4gICAJICovCj4gICAJaW50 ICgqZ2V0X3N0cmVhbWluZm8pKHN0cnVjdCBkZWx0YV9jdHggKmN0eCwKPiBkaWZmIC0tZ2l0IGEv ZHJpdmVycy9tZWRpYS9wbGF0Zm9ybS9zdGkvaHZhL2h2YS1oMjY0LmMgYi9kcml2ZXJzL21lZGlh L3BsYXRmb3JtL3N0aS9odmEvaHZhLWgyNjQuYwo+IGluZGV4IGI2MWE1ZDMzN2QyYS4uYzM0Zjdj ZjVhZWQyIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvbWVkaWEvcGxhdGZvcm0vc3RpL2h2YS9odmEt aDI2NC5jCj4gKysrIGIvZHJpdmVycy9tZWRpYS9wbGF0Zm9ybS9zdGkvaHZhL2h2YS1oMjY0LmMK PiBAQCAtNjI2LDcgKzYyNiw3IEBAIHN0YXRpYyBpbnQgaHZhX2gyNjRfcHJlcGFyZV90YXNrKHN0 cnVjdCBodmFfY3R4ICpwY3R4LAo+ICAgCXRkLT5mcmFtZV93aWR0aCA9IGZyYW1lX3dpZHRoOwo+ ICAgCXRkLT5mcmFtZV9oZWlnaHQgPSBmcmFtZV9oZWlnaHQ7Cj4gICAKPiAtCS8qIHNldCBmcmFt ZSBhbGlnbmVtZW50ICovCj4gKwkvKiBzZXQgZnJhbWUgYWxpZ25tZW50ICovCj4gICAJdGQtPndp bmRvd193aWR0aCA9ICBmcmFtZV93aWR0aDsKPiAgIAl0ZC0+d2luZG93X2hlaWdodCA9IGZyYW1l X2hlaWdodDsKPiAgIAl0ZC0+d2luZG93X2hvcml6b250YWxfb2Zmc2V0ID0gMDsKPiBkaWZmIC0t Z2l0IGEvZHJpdmVycy9tZWRpYS9wbGF0Zm9ybS9zdG0zMi9zdG0zMi1kY21pLmMgYi9kcml2ZXJz L21lZGlhL3BsYXRmb3JtL3N0bTMyL3N0bTMyLWRjbWkuYwo+IGluZGV4IDY3MzI4NzQxMTRjZi4u NWZlNWIzOGZhOTAxIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvbWVkaWEvcGxhdGZvcm0vc3RtMzIv c3RtMzItZGNtaS5jCj4gKysrIGIvZHJpdmVycy9tZWRpYS9wbGF0Zm9ybS9zdG0zMi9zdG0zMi1k Y21pLmMKPiBAQCAtMTU0NCw3ICsxNTQ0LDcgQEAgc3RhdGljIHZvaWQgZGNtaV9ncmFwaF9ub3Rp ZnlfdW5iaW5kKHN0cnVjdCB2NGwyX2FzeW5jX25vdGlmaWVyICpub3RpZmllciwKPiAgIAo+ICAg CWRldl9kYmcoZGNtaS0+ZGV2LCAiUmVtb3ZpbmcgJXNcbiIsIHZpZGVvX2RldmljZV9ub2RlX25h bWUoZGNtaS0+dmRldikpOwo+ICAgCj4gLQkvKiBDaGVja3MgaW50ZXJuYWx5IGlmIHZkZXYgaGFz IGJlZW4gaW5pdCBvciBub3QgKi8KPiArCS8qIENoZWNrcyBpbnRlcm5hbGx5IGlmIHZkZXYgaGFz IGJlZW4gaW5pdCBvciBub3QgKi8KPiAgIAl2aWRlb191bnJlZ2lzdGVyX2RldmljZShkY21pLT52 ZGV2KTsKPiAgIH0KPiAgIAo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL21lZGlhL3BsYXRmb3JtL3N1 bnhpL3N1bjZpLWNzaS9zdW42aV9jc2kuaCBiL2RyaXZlcnMvbWVkaWEvcGxhdGZvcm0vc3VueGkv c3VuNmktY3NpL3N1bjZpX2NzaS5oCj4gaW5kZXggMGJiMDAwNzEyYzMzLi44NWY5N2Q0ZjA4NmUg MTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9tZWRpYS9wbGF0Zm9ybS9zdW54aS9zdW42aS1jc2kvc3Vu NmlfY3NpLmgKPiArKysgYi9kcml2ZXJzL21lZGlhL3BsYXRmb3JtL3N1bnhpL3N1bjZpLWNzaS9z dW42aV9jc2kuaAo+IEBAIC02NSw3ICs2NSw3IEBAIGJvb2wgc3VuNmlfY3NpX2lzX2Zvcm1hdF9z dXBwb3J0ZWQoc3RydWN0IHN1bjZpX2NzaSAqY3NpLCB1MzIgcGl4Zm9ybWF0LAo+ICAgaW50IHN1 bjZpX2NzaV9zZXRfcG93ZXIoc3RydWN0IHN1bjZpX2NzaSAqY3NpLCBib29sIGVuYWJsZSk7Cj4g ICAKPiAgIC8qKgo+IC0gKiBzdW42aV9jc2lfdXBkYXRlX2NvbmZpZygpIC0gdXBkYXRlIHRoZSBj c2kgcmVnaXN0ZXIgc2V0dHRpbmdzCj4gKyAqIHN1bjZpX2NzaV91cGRhdGVfY29uZmlnKCkgLSB1 cGRhdGUgdGhlIGNzaSByZWdpc3RlciBzZXR0aW5ncwo+ICAgICogQGNzaToJcG9pbnRlciB0byB0 aGUgY3NpCj4gICAgKiBAY29uZmlnOglzZWUgc3RydWN0IHN1bjZpX2NzaV9jb25maWcKPiAgICAq Lwo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL21lZGlhL3BsYXRmb3JtL3RpLXZwZS92cGRtYS5jIGIv ZHJpdmVycy9tZWRpYS9wbGF0Zm9ybS90aS12cGUvdnBkbWEuYwo+IGluZGV4IGUyY2YyYjkwZTUw MC4uMWRhMmNiM2FhZjBjIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvbWVkaWEvcGxhdGZvcm0vdGkt dnBlL3ZwZG1hLmMKPiArKysgYi9kcml2ZXJzL21lZGlhL3BsYXRmb3JtL3RpLXZwZS92cGRtYS5j Cj4gQEAgLTQwNCw3ICs0MDQsNyBAQCBFWFBPUlRfU1lNQk9MKHZwZG1hX21hcF9kZXNjX2J1Zik7 Cj4gICAKPiAgIC8qCj4gICAgKiB1bm1hcCBkZXNjcmlwdG9yL3BheWxvYWQgRE1BIGJ1ZmZlciwg ZGlzYWJsaW5nIERNQSBhY2Nlc3MgYW5kCj4gLSAqIGFsbG93aW5nIHRoZSBtYWluIHByb2Nlc3Nv ciB0byBhY2NlcyB0aGUgZGF0YQo+ICsgKiBhbGxvd2luZyB0aGUgbWFpbiBwcm9jZXNzb3IgdG8g YWNjZXNzIHRoZSBkYXRhCj4gICAgKi8KPiAgIHZvaWQgdnBkbWFfdW5tYXBfZGVzY19idWYoc3Ry dWN0IHZwZG1hX2RhdGEgKnZwZG1hLCBzdHJ1Y3QgdnBkbWFfYnVmICpidWYpCj4gICB7Cj4gQEAg LTUwMSw3ICs1MDEsNyBAQCB2b2lkIHZwZG1hX3Jlc2V0X2Rlc2NfbGlzdChzdHJ1Y3QgdnBkbWFf ZGVzY19saXN0ICpsaXN0KQo+ICAgRVhQT1JUX1NZTUJPTCh2cGRtYV9yZXNldF9kZXNjX2xpc3Qp Owo+ICAgCj4gICAvKgo+IC0gKiBmcmVlIHRoZSBidWZmZXIgYWxsb2NhdGVkIGZvdCB0aGUgVlBE TUEgZGVzY3JpcHRvciBsaXN0LCB0aGlzIHNob3VsZCBiZQo+ICsgKiBmcmVlIHRoZSBidWZmZXIg YWxsb2NhdGVkIGZvciB0aGUgVlBETUEgZGVzY3JpcHRvciBsaXN0LCB0aGlzIHNob3VsZCBiZQo+ ICAgICogY2FsbGVkIHdoZW4gdGhlIHVzZXIgZG9lc24ndCB3YW50IHRvIHVzZSBWUERNQSBhbnkg bW9yZS4KPiAgICAqLwo+ICAgdm9pZCB2cGRtYV9mcmVlX2Rlc2NfbGlzdChzdHJ1Y3QgdnBkbWFf ZGVzY19saXN0ICpsaXN0KQo+IEBAIC03OTAsNyArNzkwLDcgQEAgc3RhdGljIHZvaWQgZHVtcF9k dGQoc3RydWN0IHZwZG1hX2R0ZCAqZHRkKQo+ICAgICogYXBwZW5kIGFuIG91dGJvdW5kIGRhdGEg dHJhbnNmZXIgZGVzY3JpcHRvciB0byB0aGUgZ2l2ZW4gZGVzY3JpcHRvciBsaXN0LAo+ICAgICog dGhpcyBzZXRzIHVwIGEgJ2NsaWVudCB0byBtZW1vcnknIFZQRE1BIHRyYW5zZmVyIGZvciB0aGUg Z2l2ZW4gVlBETUEgY2hhbm5lbAo+ICAgICoKPiAtICogQGxpc3Q6IHZwZG1hIGRlc2MgbGlzdCB0 byB3aGljaCB3ZSBhZGQgdGhpcyBkZWNyaXB0b3IKPiArICogQGxpc3Q6IHZwZG1hIGRlc2MgbGlz dCB0byB3aGljaCB3ZSBhZGQgdGhpcyBkZXNjcmlwdG9yCj4gICAgKiBAd2lkdGg6IHdpZHRoIG9m IHRoZSBpbWFnZSBpbiBwaXhlbHMgaW4gbWVtb3J5Cj4gICAgKiBAY19yZWN0OiBjb21wb3NlIHBh cmFtcyBvZiBvdXRwdXQgaW1hZ2UKPiAgICAqIEBmbXQ6IHZwZG1hIGRhdGEgZm9ybWF0IG9mIHRo ZSBidWZmZXIKPiBAQCAtNzk4LDcgKzc5OCw3IEBAIHN0YXRpYyB2b2lkIGR1bXBfZHRkKHN0cnVj dCB2cGRtYV9kdGQgKmR0ZCkKPiAgICAqIG1heF93aWR0aDogZW51bSBmb3IgbWF4aW11bSB3aWR0 aCBvZiBkYXRhIHRyYW5zZmVyCj4gICAgKiBtYXhfaGVpZ2h0OiBlbnVtIGZvciBtYXhpbXVtIGhl aWdodCBvZiBkYXRhIHRyYW5zZmVyCj4gICAgKiBjaGFuOiBWUERNQSBjaGFubmVsCj4gLSAqIGZs YWdzOiBWUERNQSBmbGFncyB0byBjb25maWd1cmUgc29tZSBkZXNjcmlwdG9yIGZpbGVkcwo+ICsg KiBmbGFnczogVlBETUEgZmxhZ3MgdG8gY29uZmlndXJlIHNvbWUgZGVzY3JpcHRvciBmaWVsZHMK PiAgICAqLwo+ICAgdm9pZCB2cGRtYV9hZGRfb3V0X2R0ZChzdHJ1Y3QgdnBkbWFfZGVzY19saXN0 ICpsaXN0LCBpbnQgd2lkdGgsCj4gICAJCWludCBzdHJpZGUsIGNvbnN0IHN0cnVjdCB2NGwyX3Jl Y3QgKmNfcmVjdCwKPiBAQCAtODYzLDE0ICs4NjMsMTQgQEAgRVhQT1JUX1NZTUJPTCh2cGRtYV9y YXdjaGFuX2FkZF9vdXRfZHRkKTsKPiAgICAqIGFwcGVuZCBhbiBpbmJvdW5kIGRhdGEgdHJhbnNm ZXIgZGVzY3JpcHRvciB0byB0aGUgZ2l2ZW4gZGVzY3JpcHRvciBsaXN0LAo+ICAgICogdGhpcyBz ZXRzIHVwIGEgJ21lbW9yeSB0byBjbGllbnQnIFZQRE1BIHRyYW5zZmVyIGZvciB0aGUgZ2l2ZW4g VlBETUEgY2hhbm5lbAo+ICAgICoKPiAtICogQGxpc3Q6IHZwZG1hIGRlc2MgbGlzdCB0byB3aGlj aCB3ZSBhZGQgdGhpcyBkZWNyaXB0b3IKPiArICogQGxpc3Q6IHZwZG1hIGRlc2MgbGlzdCB0byB3 aGljaCB3ZSBhZGQgdGhpcyBkZXNjcmlwdG9yCj4gICAgKiBAd2lkdGg6IHdpZHRoIG9mIHRoZSBp bWFnZSBpbiBwaXhlbHMgaW4gbWVtb3J5KG5vdCB0aGUgY3JvcHBlZCB3aWR0aCkKPiAgICAqIEBj X3JlY3Q6IGNyb3AgcGFyYW1zIG9mIGlucHV0IGltYWdlCj4gICAgKiBAZm10OiB2cGRtYSBkYXRh IGZvcm1hdCBvZiB0aGUgYnVmZmVyCj4gICAgKiBkbWFfYWRkcjogZG1hIGFkZHJlc3MgYXMgc2Vl biBieSBWUERNQQo+ICAgICogY2hhbjogVlBETUEgY2hhbm5lbAo+ICAgICogZmllbGQ6IHRvcCBv ciBib3R0b20gZmllbGQgaW5mbyBvZiB0aGUgaW5wdXQgaW1hZ2UKPiAtICogZmxhZ3M6IFZQRE1B IGZsYWdzIHRvIGNvbmZpZ3VyZSBzb21lIGRlc2NyaXB0b3IgZmlsZWRzCj4gKyAqIGZsYWdzOiBW UERNQSBmbGFncyB0byBjb25maWd1cmUgc29tZSBkZXNjcmlwdG9yIGZpZWxkcwo+ICAgICogZnJh bWVfd2lkdGgvaGVpZ2h0OiB0aGUgY29tcGxldGUgd2lkdGgvaGVpZ2h0IG9mIHRoZSBpbWFnZSBw cmVzZW50ZWQgdG8gdGhlCj4gICAgKgkJCWNsaWVudCAodGhpcyBtYWtlcyBzZW5zZSB3aGVuIG11 bHRpcGxlIGNoYW5uZWxzIGFyZQo+ICAgICoJCQljb25uZWN0ZWQgdG8gdGhlIHNhbWUgY2xpZW50 LCBmb3JtaW5nIGEgbGFyZ2VyIGZyYW1lKQo+IEBAIC0xMDA4LDcgKzEwMDgsNyBAQCB1bnNpZ25l ZCBpbnQgdnBkbWFfZ2V0X2xpc3RfbWFzayhzdHJ1Y3QgdnBkbWFfZGF0YSAqdnBkbWEsIGludCBp cnFfbnVtKQo+ICAgfQo+ICAgRVhQT1JUX1NZTUJPTCh2cGRtYV9nZXRfbGlzdF9tYXNrKTsKPiAg IAo+IC0vKiBjbGVhciBwcmV2aW9zdWx5IG9jY3VyZWQgbGlzdCBpbnR0ZXJ1cHRzIGluIHRoZSBM SVNUX1NUQVQgcmVnaXN0ZXIgKi8KPiArLyogY2xlYXIgcHJldmlvdXNseSBvY2N1cnJlZCBsaXN0 IGludGVydXB0cyBpbiB0aGUgTElTVF9TVEFUIHJlZ2lzdGVyICovCj4gICB2b2lkIHZwZG1hX2Ns ZWFyX2xpc3Rfc3RhdChzdHJ1Y3QgdnBkbWFfZGF0YSAqdnBkbWEsIGludCBpcnFfbnVtLAo+ICAg CQkJICAgaW50IGxpc3RfbnVtKQo+ICAgewo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL21lZGlhL3Bs YXRmb3JtL3RpLXZwZS92cGUuYyBiL2RyaXZlcnMvbWVkaWEvcGxhdGZvcm0vdGktdnBlL3ZwZS5j Cj4gaW5kZXggZDcwODcxZDBhZDJkLi4yMDdlN2U3NmMwNDggMTAwNjQ0Cj4gLS0tIGEvZHJpdmVy cy9tZWRpYS9wbGF0Zm9ybS90aS12cGUvdnBlLmMKPiArKysgYi9kcml2ZXJzL21lZGlhL3BsYXRm b3JtL3RpLXZwZS92cGUuYwo+IEBAIC04NzYsNyArODc2LDcgQEAgc3RhdGljIGludCBzZXRfc3Jj ZHN0X3BhcmFtcyhzdHJ1Y3QgdnBlX2N0eCAqY3R4KQo+ICAgCQkvKgo+ICAgCQkgKiB3ZSBtYWtl IHN1cmUgdGhhdCB0aGUgc291cmNlIGltYWdlIGhhcyBhIDE2IGJ5dGUgYWxpZ25lZAo+ICAgCQkg KiBzdHJpZGUsIHdlIG5lZWQgdG8gZG8gdGhlIHNhbWUgZm9yIHRoZSBtb3Rpb24gdmVjdG9yIGJ1 ZmZlcgo+IC0JCSAqIGJ5IGFsaWduaW5nIGl0J3Mgc3RyaWRlIHRvIHRoZSBuZXh0IDE2IGJ5dGUg Ym91bmRyeS4gdGhpcwo+ICsJCSAqIGJ5IGFsaWduaW5nIGl0J3Mgc3RyaWRlIHRvIHRoZSBuZXh0 IDE2IGJ5dGUgYm91bmRhcnkuIHRoaXMKPiAgIAkJICogZXh0cmEgc3BhY2Ugd2lsbCBub3QgYmUg dXNlZCBieSB0aGUgZGUtaW50ZXJsYWNlciwgYnV0IHdpbGwKPiAgIAkJICogZW5zdXJlIHRoYXQg dnBkbWEgb3BlcmF0ZXMgY29ycmVjdGx5Cj4gICAJCSAqLwo+IGRpZmYgLS1naXQgYS9kcml2ZXJz L21lZGlhL3BsYXRmb3JtL3ZzcDEvdnNwMV9icnguYyBiL2RyaXZlcnMvbWVkaWEvcGxhdGZvcm0v dnNwMS92c3AxX2JyeC5jCj4gaW5kZXggNWU1MDE3OGIwNTdkLi41OGFkMjQ4Y2Q3ZjcgMTAwNjQ0 Cj4gLS0tIGEvZHJpdmVycy9tZWRpYS9wbGF0Zm9ybS92c3AxL3ZzcDFfYnJ4LmMKPiArKysgYi9k cml2ZXJzL21lZGlhL3BsYXRmb3JtL3ZzcDEvdnNwMV9icnguYwo+IEBAIC0yOTYsNyArMjk2LDcg QEAgc3RhdGljIHZvaWQgYnJ4X2NvbmZpZ3VyZV9zdHJlYW0oc3RydWN0IHZzcDFfZW50aXR5ICpl bnRpdHksCj4gICAJLyoKPiAgIAkgKiBUaGUgaGFyZHdhcmUgaXMgZXh0cmVtZWx5IGZsZXhpYmxl IGJ1dCB3ZSBoYXZlIG5vIHVzZXJzcGFjZSBBUEkgdG8KPiAgIAkgKiBleHBvc2UgYWxsIHRoZSBw YXJhbWV0ZXJzLCBub3IgaXMgaXQgY2xlYXIgd2hldGhlciB3ZSB3b3VsZCBoYXZlIHVzZQo+IC0J ICogY2FzZXMgZm9yIGFsbCB0aGUgc3VwcG9ydGVkIG1vZGVzLiBMZXQncyBqdXN0IGhhcmNvZGUg dGhlIHBhcmFtZXRlcnMKPiArCSAqIGNhc2VzIGZvciBhbGwgdGhlIHN1cHBvcnRlZCBtb2Rlcy4g TGV0J3MganVzdCBoYXJkY29kZSB0aGUgcGFyYW1ldGVycwo+ICAgCSAqIHRvIHNhbmUgZGVmYXVs dCB2YWx1ZXMgZm9yIG5vdy4KPiAgIAkgKi8KPiAgIAo+IEBAIC0zNzMsNyArMzczLDcgQEAgc3Rh dGljIHZvaWQgYnJ4X2NvbmZpZ3VyZV9zdHJlYW0oc3RydWN0IHZzcDFfZW50aXR5ICplbnRpdHks Cj4gICAJCXZzcDFfYnJ4X3dyaXRlKGJyeCwgZGxiLCBWSTZfQlJVX0NUUkwoaSksIGN0cmwpOwo+ ICAgCj4gICAJCS8qCj4gLQkJICogSGFyY29kZSB0aGUgYmxlbmRpbmcgZm9ybXVsYSB0bwo+ICsJ CSAqIEhhcmRjb2RlIHRoZSBibGVuZGluZyBmb3JtdWxhIHRvCj4gICAJCSAqCj4gICAJCSAqCURT VGMgPSBEU1RjICogKDEgLSBTUkNhKSArIFNSQ2MgKiBTUkNhCj4gICAJCSAqCURTVGEgPSBEU1Rh ICogKDEgLSBTUkNhKSArIFNSQ2EKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9tZWRpYS9wbGF0Zm9y bS94aWxpbngveGlsaW54LXZpcC5jIGIvZHJpdmVycy9tZWRpYS9wbGF0Zm9ybS94aWxpbngveGls aW54LXZpcC5jCj4gaW5kZXggMThmOTg4MzgxMTFiLi4wOGE4MjVjM2EzZjYgMTAwNjQ0Cj4gLS0t IGEvZHJpdmVycy9tZWRpYS9wbGF0Zm9ybS94aWxpbngveGlsaW54LXZpcC5jCj4gKysrIGIvZHJp dmVycy9tZWRpYS9wbGF0Zm9ybS94aWxpbngveGlsaW54LXZpcC5jCj4gQEAgLTE2Niw3ICsxNjYs NyBAQCBFWFBPUlRfU1lNQk9MX0dQTCh4dmlwX3NldF9mb3JtYXRfc2l6ZSk7Cj4gICAgKiB0aGUg cmVnaXN0ZXIsIG90aGVyd2lzZSB0aGUgYml0bWFzayBpcyBjbGVhcmVkIGZyb20gdGhlIHJlZ2lz dGVyCj4gICAgKiB3aGVuIHRoZSBmbGFnIEBzZXQgaXMgZmFsc2UuCj4gICAgKgo+IC0gKiBGb3gg ZWFtcGxlLCB0aGlzIGZ1bmN0aW9uIGNhbiBiZSB1c2VkIHRvIHNldCBhIGNvbnRyb2wgd2l0aCBh IGJvb2xlYW4gdmFsdWUKPiArICogRm94IGV4YW1wbGUsIHRoaXMgZnVuY3Rpb24gY2FuIGJlIHVz ZWQgdG8gc2V0IGEgY29udHJvbCB3aXRoIGEgYm9vbGVhbiB2YWx1ZQo+ICAgICogcmVxdWVzdGVk IGJ5IHVzZXJzLiBJZiB0aGUgY2FsbGVyIGtub3dzIHdoZXRoZXIgdG8gc2V0IG9yIGNsZWFyIGlu IHRoZSBmaXJzdAo+ICAgICogcGxhY2UsIHRoZSBjYWxsZXIgc2hvdWxkIGNhbGwgeHZpcF9jbHIo KSBvciB4dmlwX3NldCgpIGRpcmVjdGx5IGluc3RlYWQgb2YKPiAgICAqIHVzaW5nIHRoaXMgZnVu Y3Rpb24uCj4gCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f XwpsaW51eC1hcm0ta2VybmVsIG1haWxpbmcgbGlzdApsaW51eC1hcm0ta2VybmVsQGxpc3RzLmlu ZnJhZGVhZC5vcmcKaHR0cDovL2xpc3RzLmluZnJhZGVhZC5vcmcvbWFpbG1hbi9saXN0aW5mby9s aW51eC1hcm0ta2VybmVsCg==