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 BB38FC433F5 for ; Tue, 24 May 2022 19:14:55 +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=Z/fkMrdQPCvA4nI6p+ZUj5gzWDVP4MqIM0j4suhieXg=; b=nRNBWWS4LBqLqk SYimcbo5A3vdOGiXjiWq+8VU82cSuY8HV8yMOxhgXgixIOpWm7GP7MHvEO2fbRk1K1uTRI8sVOJOn eo0PRpjHx11CAyoXw/O+N+qTNRe2qmD8eTaLB8wBhmaHANVYKDwcXPCMEruJRcgsbm5Rp3IVeRuOj 3505cojl6Lckez3L6QYynw6qwGF+IpwlWRoAt0nuw+sQbCe+6nZqcCenrFDAIpfqWkCe2jk7qfncv lnpW9ozZJVUUe5p6VhqkxNt/UFMlQTg57WXOvGeOlscjsKciE1eDv/IrTUjCwNQSKY+W3qAmZEmDo tHO4ZfMyI2Eou40JI7Qw==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1ntZyD-008zX5-K9; Tue, 24 May 2022 19:13:29 +0000 Received: from mail-ej1-x630.google.com ([2a00:1450:4864:20::630]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1ntZy9-008zWP-VR for linux-arm-kernel@lists.infradead.org; Tue, 24 May 2022 19:13:28 +0000 Received: by mail-ej1-x630.google.com with SMTP id gi33so28790828ejc.3 for ; Tue, 24 May 2022 12:13:23 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=nzsyUlkyiS/YzaEgtysgXXKOHxgS0XkeH6XhZ/9DzcI=; b=RAoVNQlaMYx37KumXh0hGrjUwAjD0INuS3O9Hxop0qlfjBSf2o+baBodGl+Ft/fYKU rM8ZNU7pRsVNKqt/TUCl31WwE347eoFxkd/3FBxIAYmOt8b/NafU1Hgb154V7KcDvCGf hA3sp8LCOpYW71ANq3ZzVex53wuQObEsodF0Hv0hPEHeo44VkLvCS53sOJDRzfl8Ad0q FHnxZ5KPFoCoqkhe2oX/69b0A7DQklL4H7zIBr9+nOpv+5U8gy0058MF3eaIIVn/vixc OhaGfs932+BEJ+OcHt/6P0v/3I4BSzn4A4AgSxzn09zrtYJuJpLmSyVz8uXaNzYGMP67 f3hg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=nzsyUlkyiS/YzaEgtysgXXKOHxgS0XkeH6XhZ/9DzcI=; b=TivFgqpH0RGKKxMLrW5ldx9KIMmNwZq1Na5YBirjw7Sq/ucN/IkI99xP6yM+e411wT qxLFLwSLLwnLtXwm1kCn3VX89pCIkU91WZ9sspvKg0eBRl6GSg1ZUSsTLifLWcnUGboF sdIZEYvErmMSCh9hthsgCmWRGIV3xo0nO/f3j75zUGYIyo6iMWhAUCZl2PCrXVZ7XGwl 9ab5Foku4ZXizozerNweUKJ/FS6JPVNayZCSaDK6/K3oNlqw074ZGmOGKzOGhCfHu/L3 Igf2m2vzT+Yvp13k15aXSwIa1yvG60Pt4eKZsROonIh/CsG37f40yMp6UZOAlUUbkIn9 AXJw== X-Gm-Message-State: AOAM530hhOuiybXKHZPFXRSdSYQ3OxXGqgxt4jRFRsRkZ+gWBQUlKPrS X9t+odskPFHpi5m6r+faz60= X-Google-Smtp-Source: ABdhPJwhIiB5LNWsM05p3UmylLy75saiNErANV1vYibc3/Mqe36oT9Gg7y+M+UJk+GivHhVotPQUMw== X-Received: by 2002:a17:907:7fa8:b0:6f3:e975:abfa with SMTP id qk40-20020a1709077fa800b006f3e975abfamr25545210ejc.86.1653419602162; Tue, 24 May 2022 12:13:22 -0700 (PDT) Received: from kista.localnet (213-161-3-76.dynamic.telemach.net. [213.161.3.76]) by smtp.gmail.com with ESMTPSA id p15-20020a05640210cf00b0042aaa3b741esm9769308edu.1.2022.05.24.12.13.21 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 24 May 2022 12:13:21 -0700 (PDT) From: Jernej =?utf-8?B?xaBrcmFiZWM=?= To: Roman Stratiienko Cc: mripard@kernel.org, wens@csie.org, airlied@linux.ie, Daniel Vetter , Samuel Holland , dri-devel@lists.freedesktop.org, linux-arm-kernel@lists.infradead.org, linux-sunxi@lists.linux.dev, linux-kernel@vger.kernel.org, megi@xff.cz Subject: Re: Re: Re: [PATCH] drm/sun4i: Fix blend registers corruption for DE2.0/DE3.0 Date: Tue, 24 May 2022 21:13:20 +0200 Message-ID: <2827541.e9J7NaK4W3@kista> In-Reply-To: References: <20220524135249.49993-1-roman.o.stratiienko@globallogic.com> <2629819.mvXUDI8C0e@kista> MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20220524_121326_064467_3E161228 X-CRM114-Status: GOOD ( 30.02 ) X-BeenThere: linux-arm-kernel@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-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org RG9uJ3QgdG9wIHBvc3QsIGl0J3MgYW5ub3lpbmcgYW5kIGFnYWluc3QgcnVsZXMuCgpEbmUgdG9y ZWssIDI0LiBtYWogMjAyMiBvYiAxOToxMDowNiBDRVNUIGplIFJvbWFuIFN0cmF0aWllbmtvIG5h cGlzYWwoYSk6Cj4gUGxlYXNlIGRyYWZ0IGEgdGVzdCBmb3IgdGhlIHpwb3MgaXNzdWUgeW91J3Jl IG1lbnRpb25pbmcuCj4gCj4gSXQncyB2ZXJ5IGVhc3kgdG8gZG8gd2l0aCBrbXN4eCB1c2luZyBw eXRob24gd3JhcHBlci4KPiAKPiBPciBleHBsYWluIHN0ZXBzIHRvIHJlcHJvZHVjZSBoZXJlLCBJ IHdpbGwgd3JpdGUgaXQgYnkgbXlzZWxmLgoKSSdtIHRhbGtpbmcgYWJvdXQgdGhlIGlzc3VlIHdo aWNoIHlvdSwgT25kcmVqIEppcm1hbiBhbmQgbWUgYWxsIHRyaWVkIHRvIGZpeCBpdCAKaW4gdGhl IHBhc3Qgb25lIHdheSBvciBhbm90aGVyOgoKaHR0cHM6Ly9wYXRjaHdvcmsua2VybmVsLm9yZy9w cm9qZWN0L2RyaS1kZXZlbC9wYXRjaC8yMDE5MDkxNDIyMDMzNy42NDY3MTktMS1tZWdvdXNAbWVn b3VzLmNvbS8KaHR0cHM6Ly9wYXRjaHdvcmsua2VybmVsLm9yZy9wcm9qZWN0L2RyaS1kZXZlbC9w YXRjaC8yMDIxMDEwNjIwNDYzMC4xODAwMjg0LTEtamVybmVqLnNrcmFiZWNAc2lvbC5uZXQvCgpC ZXN0IHJlZ2FyZHMsCkplcm5lagoKPiAKPiBUaGFua3MuCj4gUmVnYXJkcwo+IFJvbWFuCj4gCj4g 0LLRgiwgMjQg0LzQsNGPIDIwMjIg0LMuINCyIDE5OjIxLCBKZXJuZWogxaBrcmFiZWMgPGplcm5l ai5za3JhYmVjQGdtYWlsLmNvbT46Cj4gPgo+ID4gRG5lIHRvcmVrLCAyNC4gbWFqIDIwMjIgb2Ig MTc6MzE6MTMgQ0VTVCBqZSBSb21hbiBTdHJhdGlpZW5rbyBuYXBpc2FsKGEpOgo+ID4gPiBOQUsg Zm9yIHRoaXMuIEZ1cnRoZXIgdGVzdGluZyBzaG93ZWQgc3VjaCBhbiBhcHByb2FjaCBpcyBub3Qg cmVsaWFibGUKPiA+ID4gZHVlIHRvIC5hdG9taWNfdXBkYXRlKCkgY2FsbGJhY2sgY2FsbGVkIG9u bHkgaW4gY2FzZSBwbGFuZXMgaGF2ZSBzb21lCj4gPiA+IGNoYW5nZXMuCj4gPgo+ID4gQWRkaXRp b25hbGx5LCBJIHRoaW5rIGl0IHdvdWxkIGJlIGJldHRlciB0byBmaXggdW5kZXJsYXlpbmcgenBv cyBpc3N1ZSBmaXJzdAo+ID4gKGF0dGVtcHRlZCBtYW55IHRpbWVzKSBhbmQgdGhlbiB3b3JyeSBh Ym91dCBibGVuZGluZy4KPiA+Cj4gPiBCZXN0IHJlZ2FyZHMsCj4gPiBKZXJuZWoKPiA+Cj4gPiA+ Cj4gPiA+INCy0YIsIDI0INC80LDRjyAyMDIyINCzLiDQsiAxNjo1MiwgUm9tYW4gU3RyYXRpaWVu a28gPHIuc3RyYXRpaWVua29AZ21haWwuY29tPjoKPiA+ID4gPgo+ID4gPiA+IENvcnJ1cHRpb24g aGFwcGVucyB3aGVuIHBsYW5lIHpwb3MgaXMgdXBkYXRlZAo+ID4gPiA+Cj4gPiA+ID4gRXhhbXBs ZSBzY2VuYXJpbzoKPiA+ID4gPgo+ID4gPiA+IEluaXRpYWwgZnJhbWUgYmxlbmRlciBzdGF0ZToK PiA+ID4gPiAgICAgUExBTkVfWlBPUyA9IHswLCAxLCAyLCAzfQo+ID4gPiA+ICAgICBCTERfUk9V VEUgID0gezAsIDEsIDIsIDB9Cj4gPiA+ID4gICAgIEJMRF9FTiAgICAgPSB7MSwgMSwgMSwgMH0K PiA+ID4gPgo+ID4gPiA+IE5ldyBmcmFtZSBjb21taXQgKE9ubHkgWlBPUyBoYXMgYmVlbiBjaGFu Z2VkKToKPiA+ID4gPgo+ID4gPiA+ICAgICBQTEFORV9aUE9TID0gezAtPjIsIDEtPjAsIDItPjEs IDN9Cj4gPiA+ID4KPiA+ID4gPiBFeHBlY3RlZCByZXN1bHRzIGFmdGVyIHBsYW5lIHN0YXRlIHVw ZGF0ZToKPiA+ID4gPiAgICAgICAgICAgICAgICAgWjAgWjEgWjIgWjMKPiA+ID4gPiAgICAgQkxE X1JPVVRFID0gezEsIDIsIDAsIDB9Cj4gPiA+ID4gICAgIEJMRF9FTiAgICA9IHsxLCAxLCAxLCAw fQo+ID4gPiA+Cj4gPiA+ID4gV2hhdCBpcyBjdXJyZW50bHkgaGFwcGVuaW5nOgo+ID4gPiA+Cj4g PiA+ID4gMS4gc3VuOGlfdmlfbGF5ZXJfZW5hYmxlKGVuYWJsZWQ9dHJ1ZSwgenBvcz0yLCBvbGRf enBvcz0wKToKPiA+ID4gPiAgICAgQkxEX1JPVVRFID0gezEtPjAsIDEsIDItPjAsIDB9Cj4gPiA+ ID4gICAgIEJMRF9FTiAgICA9IHsxLT4wLCAxLCAxLT4xLCAwfQo+ID4gPiA+Cj4gPiA+ID4gMi4g c3VuOGlfdWlfbGF5ZXJfZW5hYmxlKGVuYWJsZWQ9dHJ1ZSwgenBvcz0wLCBvbGRfenBvcz0xKToK PiA+ID4gPiAgICAgQkxEX1JPVVRFID0gezAtPjEsIDEtPjAsIDAsIDB9Cj4gPiA+ID4gICAgIEJM RF9FTiAgICA9IHswLT4xLCAxLT4wLCAxLCAwfQo+ID4gPiA+Cj4gPiA+ID4gMy4gc3VuOGlfdWlf bGF5ZXJfZW5hYmxlKGVuYWJsZWQ9dHJ1ZSwgenBvcz0xLCBvbGRfenBvcz0yKToKPiA+ID4gPiAg ICAgQkxEX1JPVVRFID0gezEsIDAtPjIsIDAtPjAsIDB9Cj4gPiA+ID4gICAgIEJMRF9FTiAgICA9 IHsxLCAwLT4yLCAxLT4wLCAwfQo+ID4gPiA+Cj4gPiA+ID4gQWZ0ZXIgdXBkYXRpbmcgb2YgYWxs IHRoZSBwbGFuZXMgd2UgYXJlIGVuZGluZyB1cCB3aXRoIEJMRF9FTlsyXT0wLAo+ID4gPiA+IHdo aWNoIG1ha2VzIHRoaXMgY2hhbm5lbCBkaXNhYmxlZC4KPiA+ID4gPgo+ID4gPiA+IFRvIGZpeCB0 aGlzIGlzc3VlLCBjbGVhciBCTEVORCByZWdpc3RlcnMgYmVmb3JlIHVwZGF0aW5nIHRoZSBwbGFu ZXMKPiA+ID4gPiBhbmQgZG8gbm90IGNsZWFyIHRoZSBvbGQgc3RhdGUgd2hpbGUgcHJvY2Vzc2lu ZyBldmVyeSBwbGFuZS4KPiA+ID4gPgo+ID4gPiA+IFNpZ25lZC1vZmYtYnk6IFJvbWFuIFN0cmF0 aWllbmtvIDxyb21hbi5vLnN0cmF0aWllbmtvQGdsb2JhbGxvZ2ljLmNvbT4KPiA+ID4gPiAtLS0K PiA+ID4gPiAgZHJpdmVycy9ncHUvZHJtL3N1bjRpL3N1bjhpX21peGVyLmMgICAgfCAxNiArKysr KysrKysrKysrKysKPiA+ID4gPiAgZHJpdmVycy9ncHUvZHJtL3N1bjRpL3N1bjhpX3VpX2xheWVy LmMgfCAyOCArKysKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KPiA+ID4gPiAgZHJpdmVycy9ncHUv ZHJtL3N1bjRpL3N1bjhpX3ZpX2xheWVyLmMgfCAyOCArKysKKy0tLS0tLS0tLS0tLS0tLS0tLS0t LS0KPiA+ID4gPiAgMyBmaWxlcyBjaGFuZ2VkLCAyNCBpbnNlcnRpb25zKCspLCA0OCBkZWxldGlv bnMoLSkKPiA+ID4gPgo+ID4gPiA+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vc3VuNGkv c3VuOGlfbWl4ZXIuYyBiL2RyaXZlcnMvZ3B1L2RybS8Kc3VuNGkvCj4gPiBzdW44aV9taXhlci5j Cj4gPiA+ID4gaW5kZXggZjVlOGFlYWEzY2RmLi4wMDQzNzdhMDAwZmMgMTAwNjQ0Cj4gPiA+ID4g LS0tIGEvZHJpdmVycy9ncHUvZHJtL3N1bjRpL3N1bjhpX21peGVyLmMKPiA+ID4gPiArKysgYi9k cml2ZXJzL2dwdS9kcm0vc3VuNGkvc3VuOGlfbWl4ZXIuYwo+ID4gPiA+IEBAIC0yNDgsNiArMjQ4 LDIxIEBAIGludCBzdW44aV9taXhlcl9kcm1fZm9ybWF0X3RvX2h3KHUzMiBmb3JtYXQsIHUzMgo+ ID4gKmh3X2Zvcm1hdCkKPiA+ID4gPiAgICAgICAgIHJldHVybiAtRUlOVkFMOwo+ID4gPiA+ICB9 Cj4gPiA+ID4KPiA+ID4gPiArc3RhdGljIHZvaWQgc3VuOGlfYXRvbWljX2JlZ2luKHN0cnVjdCBz dW54aV9lbmdpbmUgKmVuZ2luZSwKPiA+ID4gPiArICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgc3RydWN0IGRybV9jcnRjX3N0YXRlICpvbGRfc3RhdGUpCj4gPiA+ID4gK3sKPiA+ID4gPiAr ICAgICAgIHN0cnVjdCBzdW44aV9taXhlciAqbWl4ZXIgPSBlbmdpbmVfdG9fc3VuOGlfbWl4ZXIo ZW5naW5lKTsKPiA+ID4gPiArICAgICAgIHUzMiBibGRfYmFzZSA9IHN1bjhpX2JsZW5kZXJfYmFz ZShtaXhlcik7Cj4gPiA+ID4gKwo+ID4gPiA+ICsgICAgICAgcmVnbWFwX3dyaXRlKGVuZ2luZS0+ cmVncywKPiA+ID4gPiArICAgICAgICAgICAgICAgICAgICBTVU44SV9NSVhFUl9CTEVORF9QSVBF X0NUTChibGRfYmFzZSksCj4gPiA+ID4gKyAgICAgICAgICAgICAgICAgICAgMCk7Cj4gPiA+ID4g Kwo+ID4gPiA+ICsgICAgICAgcmVnbWFwX3dyaXRlKGVuZ2luZS0+cmVncywKPiA+ID4gPiArICAg ICAgICAgICAgICAgICAgICBTVU44SV9NSVhFUl9CTEVORF9ST1VURShibGRfYmFzZSksCj4gPiA+ ID4gKyAgICAgICAgICAgICAgICAgICAgMCk7Cj4gPiA+ID4gK30KPiA+ID4gPiArCj4gPiA+ID4g IHN0YXRpYyB2b2lkIHN1bjhpX21peGVyX2NvbW1pdChzdHJ1Y3Qgc3VueGlfZW5naW5lICplbmdp bmUpCj4gPiA+ID4gIHsKPiA+ID4gPiAgICAgICAgIERSTV9ERUJVR19EUklWRVIoIkNvbW1pdHRp bmcgY2hhbmdlc1xuIik7Cj4gPiA+ID4gQEAgLTI5OSw2ICszMTQsNyBAQCBzdGF0aWMgc3RydWN0 IGRybV9wbGFuZSAqKnN1bjhpX2xheWVyc19pbml0KHN0cnVjdAo+ID4gZHJtX2RldmljZSAqZHJt LAo+ID4gPiA+ICB9Cj4gPiA+ID4KPiA+ID4gPiAgc3RhdGljIGNvbnN0IHN0cnVjdCBzdW54aV9l bmdpbmVfb3BzIHN1bjhpX2VuZ2luZV9vcHMgPSB7Cj4gPiA+ID4gKyAgICAgICAuYXRvbWljX2Jl Z2luICAgPSBzdW44aV9hdG9taWNfYmVnaW4sCj4gPiA+ID4gICAgICAgICAuY29tbWl0ICAgICAg ICAgPSBzdW44aV9taXhlcl9jb21taXQsCj4gPiA+ID4gICAgICAgICAubGF5ZXJzX2luaXQgICAg PSBzdW44aV9sYXllcnNfaW5pdCwKPiA+ID4gPiAgfTsKPiA+ID4gPiBkaWZmIC0tZ2l0IGEvZHJp dmVycy9ncHUvZHJtL3N1bjRpL3N1bjhpX3VpX2xheWVyLmMgYi9kcml2ZXJzL2dwdS9kcm0vCj4g PiBzdW40aS9zdW44aV91aV9sYXllci5jCj4gPiA+ID4gaW5kZXggNzg0NWMyYTUzYTdmLi5iMjk0 YTg4MjYyNmEgMTAwNjQ0Cj4gPiA+ID4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL3N1bjRpL3N1bjhp X3VpX2xheWVyLmMKPiA+ID4gPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vc3VuNGkvc3VuOGlfdWlf bGF5ZXIuYwo+ID4gPiA+IEBAIC0yNCw4ICsyNCw3IEBACj4gPiA+ID4gICNpbmNsdWRlICJzdW44 aV91aV9zY2FsZXIuaCIKPiA+ID4gPgo+ID4gPiA+ICBzdGF0aWMgdm9pZCBzdW44aV91aV9sYXll cl9lbmFibGUoc3RydWN0IHN1bjhpX21peGVyICptaXhlciwgaW50IApjaGFubmVsLAo+ID4gPiA+ IC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgb3ZlcmxheSwgYm9vbCBlbmFi bGUsIHVuc2lnbmVkIAppbnQKPiA+IHpwb3MsCj4gPiA+ID4gLSAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIHVuc2lnbmVkIGludCBvbGRfenBvcykKPiA+ID4gPiArICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgaW50IG92ZXJsYXksIGJvb2wgZW5hYmxlLCB1bnNpZ25lZCAK aW50Cj4gPiB6cG9zKQo+ID4gPiA+ICB7Cj4gPiA+ID4gICAgICAgICB1MzIgdmFsLCBibGRfYmFz ZSwgY2hfYmFzZTsKPiA+ID4gPgo+ID4gPiA+IEBAIC00NCwxOCArNDMsNiBAQCBzdGF0aWMgdm9p ZCBzdW44aV91aV9sYXllcl9lbmFibGUoc3RydWN0IApzdW44aV9taXhlcgo+ID4gKm1peGVyLCBp bnQgY2hhbm5lbCwKPiA+ID4gPiAgICAgICAgICAgICAgICAgICAgICAgICAgICBTVU44SV9NSVhF Ul9DSEFOX1VJX0xBWUVSX0FUVFIoY2hfYmFzZSwKPiA+IG92ZXJsYXkpLAo+ID4gPiA+ICAgICAg ICAgICAgICAgICAgICAgICAgICAgIFNVTjhJX01JWEVSX0NIQU5fVUlfTEFZRVJfQVRUUl9FTiwg dmFsKTsKPiA+ID4gPgo+ID4gPiA+IC0gICAgICAgaWYgKCFlbmFibGUgfHwgenBvcyAhPSBvbGRf enBvcykgewo+ID4gPiA+IC0gICAgICAgICAgICAgICByZWdtYXBfdXBkYXRlX2JpdHMobWl4ZXIt PmVuZ2luZS5yZWdzLAo+ID4gPiA+IC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ClNVTjhJX01JWEVSX0JMRU5EX1BJUEVfQ1RMKGJsZF9iYXNlKSwKPiA+ID4gPiAtCj4gPiBTVU44 SV9NSVhFUl9CTEVORF9QSVBFX0NUTF9FTihvbGRfenBvcyksCj4gPiA+ID4gLSAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAwKTsKPiA+ID4gPiAtCj4gPiA+ID4gLSAgICAgICAgICAg ICAgIHJlZ21hcF91cGRhdGVfYml0cyhtaXhlci0+ZW5naW5lLnJlZ3MsCj4gPiA+ID4gLSAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTVU44SV9NSVhFUl9CTEVORF9ST1VURShibGRf YmFzZSksCj4gPiA+ID4gLQo+ID4gU1VOOElfTUlYRVJfQkxFTkRfUk9VVEVfUElQRV9NU0sob2xk X3pwb3MpLAo+ID4gPiA+IC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMCk7Cj4g PiA+ID4gLSAgICAgICB9Cj4gPiA+ID4gLQo+ID4gPiA+ICAgICAgICAgaWYgKGVuYWJsZSkgewo+ ID4gPiA+ICAgICAgICAgICAgICAgICB2YWwgPSBTVU44SV9NSVhFUl9CTEVORF9QSVBFX0NUTF9F Tih6cG9zKTsKPiA+ID4gPgo+ID4gPiA+IEBAIC0yOTEsMzEgKzI3OCwyNCBAQCBzdGF0aWMgaW50 IHN1bjhpX3VpX2xheWVyX2F0b21pY19jaGVjayhzdHJ1Y3QKPiA+IGRybV9wbGFuZSAqcGxhbmUs Cj4gPiA+ID4gIHN0YXRpYyB2b2lkIHN1bjhpX3VpX2xheWVyX2F0b21pY19kaXNhYmxlKHN0cnVj dCBkcm1fcGxhbmUgKnBsYW5lLAo+ID4gPiA+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIHN0cnVjdCBkcm1fYXRvbWljX3N0YXRlIAoqc3RhdGUpCj4gPiA+ID4gIHsK PiA+ID4gPiAtICAgICAgIHN0cnVjdCBkcm1fcGxhbmVfc3RhdGUgKm9sZF9zdGF0ZSA9Cj4gPiBk cm1fYXRvbWljX2dldF9vbGRfcGxhbmVfc3RhdGUoc3RhdGUsCj4gPiA+ID4gLQo+ID4gcGxhbmUp Owo+ID4gPiA+ICAgICAgICAgc3RydWN0IHN1bjhpX3VpX2xheWVyICpsYXllciA9IHBsYW5lX3Rv X3N1bjhpX3VpX2xheWVyKHBsYW5lKTsKPiA+ID4gPiAtICAgICAgIHVuc2lnbmVkIGludCBvbGRf enBvcyA9IG9sZF9zdGF0ZS0+bm9ybWFsaXplZF96cG9zOwo+ID4gPiA+ICAgICAgICAgc3RydWN0 IHN1bjhpX21peGVyICptaXhlciA9IGxheWVyLT5taXhlcjsKPiA+ID4gPgo+ID4gPiA+IC0gICAg ICAgc3VuOGlfdWlfbGF5ZXJfZW5hYmxlKG1peGVyLCBsYXllci0+Y2hhbm5lbCwgbGF5ZXItPm92 ZXJsYXksCj4gPiBmYWxzZSwgMCwKPiA+ID4gPiAtICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBvbGRfenBvcyk7Cj4gPiA+ID4gKyAgICAgICBzdW44aV91aV9sYXllcl9lbmFibGUobWl4ZXIs IGxheWVyLT5jaGFubmVsLCBsYXllci0+b3ZlcmxheSwKPiA+IGZhbHNlLCAwKTsKPiA+ID4gPiAg fQo+ID4gPiA+Cj4gPiA+ID4gIHN0YXRpYyB2b2lkIHN1bjhpX3VpX2xheWVyX2F0b21pY191cGRh dGUoc3RydWN0IGRybV9wbGFuZSAqcGxhbmUsCj4gPiA+ID4gICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBzdHJ1Y3QgZHJtX2F0b21pY19zdGF0ZSAKKnN0YXRlKQo+ID4g PiA+ICB7Cj4gPiA+ID4gLSAgICAgICBzdHJ1Y3QgZHJtX3BsYW5lX3N0YXRlICpvbGRfc3RhdGUg PQo+ID4gZHJtX2F0b21pY19nZXRfb2xkX3BsYW5lX3N0YXRlKHN0YXRlLAo+ID4gPiA+IC0KPiA+ IHBsYW5lKTsKPiA+ID4gPiAgICAgICAgIHN0cnVjdCBkcm1fcGxhbmVfc3RhdGUgKm5ld19zdGF0 ZSA9Cj4gPiBkcm1fYXRvbWljX2dldF9uZXdfcGxhbmVfc3RhdGUoc3RhdGUsCj4gPiA+ID4KPiA+ IHBsYW5lKTsKPiA+ID4gPiAgICAgICAgIHN0cnVjdCBzdW44aV91aV9sYXllciAqbGF5ZXIgPSBw bGFuZV90b19zdW44aV91aV9sYXllcihwbGFuZSk7Cj4gPiA+ID4gICAgICAgICB1bnNpZ25lZCBp bnQgenBvcyA9IG5ld19zdGF0ZS0+bm9ybWFsaXplZF96cG9zOwo+ID4gPiA+IC0gICAgICAgdW5z aWduZWQgaW50IG9sZF96cG9zID0gb2xkX3N0YXRlLT5ub3JtYWxpemVkX3pwb3M7Cj4gPiA+ID4g ICAgICAgICBzdHJ1Y3Qgc3VuOGlfbWl4ZXIgKm1peGVyID0gbGF5ZXItPm1peGVyOwo+ID4gPiA+ Cj4gPiA+ID4gICAgICAgICBpZiAoIW5ld19zdGF0ZS0+dmlzaWJsZSkgewo+ID4gPiA+ICAgICAg ICAgICAgICAgICBzdW44aV91aV9sYXllcl9lbmFibGUobWl4ZXIsIGxheWVyLT5jaGFubmVsLAo+ ID4gPiA+IC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGF5ZXItPm92ZXJs YXksIGZhbHNlLCAwLCAKb2xkX3pwb3MpOwo+ID4gPiA+ICsgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgbGF5ZXItPm92ZXJsYXksIGZhbHNlLCAwKTsKPiA+ID4gPiAgICAgICAg ICAgICAgICAgcmV0dXJuOwo+ID4gPiA+ICAgICAgICAgfQo+ID4gPiA+Cj4gPiA+ID4gQEAgLTMy OCw3ICszMDgsNyBAQCBzdGF0aWMgdm9pZCBzdW44aV91aV9sYXllcl9hdG9taWNfdXBkYXRlKHN0 cnVjdAo+ID4gZHJtX3BsYW5lICpwbGFuZSwKPiA+ID4gPiAgICAgICAgIHN1bjhpX3VpX2xheWVy X3VwZGF0ZV9idWZmZXIobWl4ZXIsIGxheWVyLT5jaGFubmVsLAo+ID4gPiA+ICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBsYXllci0+b3ZlcmxheSwgcGxhbmUpOwo+ID4gPiA+ ICAgICAgICAgc3VuOGlfdWlfbGF5ZXJfZW5hYmxlKG1peGVyLCBsYXllci0+Y2hhbm5lbCwgbGF5 ZXItPm92ZXJsYXksCj4gPiA+ID4gLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJ1ZSwg enBvcywgb2xkX3pwb3MpOwo+ID4gPiA+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRy dWUsIHpwb3MpOwo+ID4gPiA+ICB9Cj4gPiA+ID4KPiA+ID4gPiAgc3RhdGljIGNvbnN0IHN0cnVj dCBkcm1fcGxhbmVfaGVscGVyX2Z1bmNzIApzdW44aV91aV9sYXllcl9oZWxwZXJfZnVuY3MgPQo+ ID4gewo+ID4gPiA+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vc3VuNGkvc3VuOGlfdmlf bGF5ZXIuYyBiL2RyaXZlcnMvZ3B1L2RybS8KPiA+IHN1bjRpL3N1bjhpX3ZpX2xheWVyLmMKPiA+ ID4gPiBpbmRleCBiYjdjNDMwMzZkZmEuLjQ2NTMyNDRiMmZkOCAxMDA2NDQKPiA+ID4gPiAtLS0g YS9kcml2ZXJzL2dwdS9kcm0vc3VuNGkvc3VuOGlfdmlfbGF5ZXIuYwo+ID4gPiA+ICsrKyBiL2Ry aXZlcnMvZ3B1L2RybS9zdW40aS9zdW44aV92aV9sYXllci5jCj4gPiA+ID4gQEAgLTE4LDggKzE4 LDcgQEAKPiA+ID4gPiAgI2luY2x1ZGUgInN1bjhpX3ZpX3NjYWxlci5oIgo+ID4gPiA+Cj4gPiA+ ID4gIHN0YXRpYyB2b2lkIHN1bjhpX3ZpX2xheWVyX2VuYWJsZShzdHJ1Y3Qgc3VuOGlfbWl4ZXIg Km1peGVyLCBpbnQgCmNoYW5uZWwsCj4gPiA+ID4gLSAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIGludCBvdmVybGF5LCBib29sIGVuYWJsZSwgdW5zaWduZWQgCmludAo+ID4genBvcywK PiA+ID4gPiAtICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgaW50IG9s ZF96cG9zKQo+ID4gPiA+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgb3Zl cmxheSwgYm9vbCBlbmFibGUsIHVuc2lnbmVkIAppbnQKPiA+IHpwb3MpCj4gPiA+ID4gIHsKPiA+ ID4gPiAgICAgICAgIHUzMiB2YWwsIGJsZF9iYXNlLCBjaF9iYXNlOwo+ID4gPiA+Cj4gPiA+ID4g QEAgLTM4LDE4ICszNyw2IEBAIHN0YXRpYyB2b2lkIHN1bjhpX3ZpX2xheWVyX2VuYWJsZShzdHJ1 Y3QgCnN1bjhpX21peGVyCj4gPiAqbWl4ZXIsIGludCBjaGFubmVsLAo+ID4gPiA+ICAgICAgICAg ICAgICAgICAgICAgICAgICAgIFNVTjhJX01JWEVSX0NIQU5fVklfTEFZRVJfQVRUUihjaF9iYXNl LAo+ID4gb3ZlcmxheSksCj4gPiA+ID4gICAgICAgICAgICAgICAgICAgICAgICAgICAgU1VOOElf TUlYRVJfQ0hBTl9WSV9MQVlFUl9BVFRSX0VOLCB2YWwpOwo+ID4gPiA+Cj4gPiA+ID4gLSAgICAg ICBpZiAoIWVuYWJsZSB8fCB6cG9zICE9IG9sZF96cG9zKSB7Cj4gPiA+ID4gLSAgICAgICAgICAg ICAgIHJlZ21hcF91cGRhdGVfYml0cyhtaXhlci0+ZW5naW5lLnJlZ3MsCj4gPiA+ID4gLSAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKU1VOOElfTUlYRVJfQkxFTkRfUElQRV9DVEwo YmxkX2Jhc2UpLAo+ID4gPiA+IC0KPiA+IFNVTjhJX01JWEVSX0JMRU5EX1BJUEVfQ1RMX0VOKG9s ZF96cG9zKSwKPiA+ID4gPiAtICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDApOwo+ ID4gPiA+IC0KPiA+ID4gPiAtICAgICAgICAgICAgICAgcmVnbWFwX3VwZGF0ZV9iaXRzKG1peGVy LT5lbmdpbmUucmVncywKPiA+ID4gPiAtICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IFNVTjhJX01JWEVSX0JMRU5EX1JPVVRFKGJsZF9iYXNlKSwKPiA+ID4gPiAtCj4gPiBTVU44SV9N SVhFUl9CTEVORF9ST1VURV9QSVBFX01TSyhvbGRfenBvcyksCj4gPiA+ID4gLSAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAwKTsKPiA+ID4gPiAtICAgICAgIH0KPiA+ID4gPiAtCj4g PiA+ID4gICAgICAgICBpZiAoZW5hYmxlKSB7Cj4gPiA+ID4gICAgICAgICAgICAgICAgIHZhbCA9 IFNVTjhJX01JWEVSX0JMRU5EX1BJUEVfQ1RMX0VOKHpwb3MpOwo+ID4gPiA+Cj4gPiA+ID4gQEAg LTM5NSwzMSArMzgyLDI0IEBAIHN0YXRpYyBpbnQgc3VuOGlfdmlfbGF5ZXJfYXRvbWljX2NoZWNr KHN0cnVjdAo+ID4gZHJtX3BsYW5lICpwbGFuZSwKPiA+ID4gPiAgc3RhdGljIHZvaWQgc3VuOGlf dmlfbGF5ZXJfYXRvbWljX2Rpc2FibGUoc3RydWN0IGRybV9wbGFuZSAqcGxhbmUsCj4gPiA+ID4g ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RydWN0IGRybV9hdG9t aWNfc3RhdGUgCipzdGF0ZSkKPiA+ID4gPiAgewo+ID4gPiA+IC0gICAgICAgc3RydWN0IGRybV9w bGFuZV9zdGF0ZSAqb2xkX3N0YXRlID0KPiA+IGRybV9hdG9taWNfZ2V0X29sZF9wbGFuZV9zdGF0 ZShzdGF0ZSwKPiA+ID4gPiAtCj4gPiBwbGFuZSk7Cj4gPiA+ID4gICAgICAgICBzdHJ1Y3Qgc3Vu OGlfdmlfbGF5ZXIgKmxheWVyID0gcGxhbmVfdG9fc3VuOGlfdmlfbGF5ZXIocGxhbmUpOwo+ID4g PiA+IC0gICAgICAgdW5zaWduZWQgaW50IG9sZF96cG9zID0gb2xkX3N0YXRlLT5ub3JtYWxpemVk X3pwb3M7Cj4gPiA+ID4gICAgICAgICBzdHJ1Y3Qgc3VuOGlfbWl4ZXIgKm1peGVyID0gbGF5ZXIt Pm1peGVyOwo+ID4gPiA+Cj4gPiA+ID4gLSAgICAgICBzdW44aV92aV9sYXllcl9lbmFibGUobWl4 ZXIsIGxheWVyLT5jaGFubmVsLCBsYXllci0+b3ZlcmxheSwKPiA+IGZhbHNlLCAwLAo+ID4gPiA+ IC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9sZF96cG9zKTsKPiA+ID4gPiArICAgICAg IHN1bjhpX3ZpX2xheWVyX2VuYWJsZShtaXhlciwgbGF5ZXItPmNoYW5uZWwsIGxheWVyLT5vdmVy bGF5LAo+ID4gZmFsc2UsIDApOwo+ID4gPiA+ICB9Cj4gPiA+ID4KPiA+ID4gPiAgc3RhdGljIHZv aWQgc3VuOGlfdmlfbGF5ZXJfYXRvbWljX3VwZGF0ZShzdHJ1Y3QgZHJtX3BsYW5lICpwbGFuZSwK PiA+ID4gPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cnVjdCBk cm1fYXRvbWljX3N0YXRlIAoqc3RhdGUpCj4gPiA+ID4gIHsKPiA+ID4gPiAtICAgICAgIHN0cnVj dCBkcm1fcGxhbmVfc3RhdGUgKm9sZF9zdGF0ZSA9Cj4gPiBkcm1fYXRvbWljX2dldF9vbGRfcGxh bmVfc3RhdGUoc3RhdGUsCj4gPiA+ID4gLQo+ID4gcGxhbmUpOwo+ID4gPiA+ICAgICAgICAgc3Ry dWN0IGRybV9wbGFuZV9zdGF0ZSAqbmV3X3N0YXRlID0KPiA+IGRybV9hdG9taWNfZ2V0X25ld19w bGFuZV9zdGF0ZShzdGF0ZSwKPiA+ID4gPgo+ID4gcGxhbmUpOwo+ID4gPiA+ICAgICAgICAgc3Ry dWN0IHN1bjhpX3ZpX2xheWVyICpsYXllciA9IHBsYW5lX3RvX3N1bjhpX3ZpX2xheWVyKHBsYW5l KTsKPiA+ID4gPiAgICAgICAgIHVuc2lnbmVkIGludCB6cG9zID0gbmV3X3N0YXRlLT5ub3JtYWxp emVkX3pwb3M7Cj4gPiA+ID4gLSAgICAgICB1bnNpZ25lZCBpbnQgb2xkX3pwb3MgPSBvbGRfc3Rh dGUtPm5vcm1hbGl6ZWRfenBvczsKPiA+ID4gPiAgICAgICAgIHN0cnVjdCBzdW44aV9taXhlciAq bWl4ZXIgPSBsYXllci0+bWl4ZXI7Cj4gPiA+ID4KPiA+ID4gPiAgICAgICAgIGlmICghbmV3X3N0 YXRlLT52aXNpYmxlKSB7Cj4gPiA+ID4gICAgICAgICAgICAgICAgIHN1bjhpX3ZpX2xheWVyX2Vu YWJsZShtaXhlciwgbGF5ZXItPmNoYW5uZWwsCj4gPiA+ID4gLSAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBsYXllci0+b3ZlcmxheSwgZmFsc2UsIDAsIApvbGRfenBvcyk7Cj4g PiA+ID4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYXllci0+b3Zlcmxh eSwgZmFsc2UsIDApOwo+ID4gPiA+ICAgICAgICAgICAgICAgICByZXR1cm47Cj4gPiA+ID4gICAg ICAgICB9Cj4gPiA+ID4KPiA+ID4gPiBAQCAtNDMyLDcgKzQxMiw3IEBAIHN0YXRpYyB2b2lkIHN1 bjhpX3ZpX2xheWVyX2F0b21pY191cGRhdGUoc3RydWN0Cj4gPiBkcm1fcGxhbmUgKnBsYW5lLAo+ ID4gPiA+ICAgICAgICAgc3VuOGlfdmlfbGF5ZXJfdXBkYXRlX2J1ZmZlcihtaXhlciwgbGF5ZXIt PmNoYW5uZWwsCj4gPiA+ID4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxh eWVyLT5vdmVybGF5LCBwbGFuZSk7Cj4gPiA+ID4gICAgICAgICBzdW44aV92aV9sYXllcl9lbmFi bGUobWl4ZXIsIGxheWVyLT5jaGFubmVsLCBsYXllci0+b3ZlcmxheSwKPiA+ID4gPiAtICAgICAg ICAgICAgICAgICAgICAgICAgICAgICB0cnVlLCB6cG9zLCBvbGRfenBvcyk7Cj4gPiA+ID4gKyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJ1ZSwgenBvcyk7Cj4gPiA+ID4gIH0KPiA+ID4g Pgo+ID4gPiA+ICBzdGF0aWMgY29uc3Qgc3RydWN0IGRybV9wbGFuZV9oZWxwZXJfZnVuY3MgCnN1 bjhpX3ZpX2xheWVyX2hlbHBlcl9mdW5jcyA9Cj4gPiB7Cj4gPiA+ID4gLS0KPiA+ID4gPiAyLjMw LjIKPiA+ID4gPgo+ID4gPgo+ID4KPiA+Cj4gCgoKCl9fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fCmxpbnV4LWFybS1rZXJuZWwgbWFpbGluZyBsaXN0CmxpbnV4 LWFybS1rZXJuZWxAbGlzdHMuaW5mcmFkZWFkLm9yZwpodHRwOi8vbGlzdHMuaW5mcmFkZWFkLm9y Zy9tYWlsbWFuL2xpc3RpbmZvL2xpbnV4LWFybS1rZXJuZWwK