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 907C2C433EF for ; Fri, 10 Dec 2021 15:24:12 +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:In-Reply-To:Subject:From:References:Cc: To:MIME-Version:Date:Message-ID:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=kDbO/4GQy7jkNYqJhFMfmkq7NF9H8wKrKOaxeW/CMIE=; b=g5IBHVK8Aem2eI 0KO/OLX+IBT8Q89uHYtuhQ7t0gmEPCblCHhkepIgzNTzFQRZwMjWj9WJpdWfe9HPLXxMuvG/lu+jd eNPNgerWIaw5aedQ6eDjDiayiT4N3B9EAW8c/H9GJjPKX690oOefTXmPBV45PzrCCkpxHqTzCPUoc Ryy55NP/4rReVdgtsfCvZttqnN8hmfRB4zelXeoCIXgMrnBFRyYbgPS1GCsbStcgIDezkI67klAL0 XBvE23/+Mnh/x5LHsH6VsonBcAGIxMq/cNv5z2MBa+YTFCXwEWcXHecaVncVDCrTnvLutJODma8fx 9F7OMobZpZ20WWWJgshw==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1mvhj0-002OyN-Pa; Fri, 10 Dec 2021 15:22:19 +0000 Received: from mail-lf1-x135.google.com ([2a00:1450:4864:20::135]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1mvhip-002OuC-WC for linux-arm-kernel@lists.infradead.org; Fri, 10 Dec 2021 15:22:10 +0000 Received: by mail-lf1-x135.google.com with SMTP id z7so18641842lfi.11 for ; Fri, 10 Dec 2021 07:22:03 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=message-id:date:mime-version:user-agent:content-language:to:cc :references:from:subject:in-reply-to:content-transfer-encoding; bh=y2wlAkLc46MvzmRHMqz5RslYjHdyHxmej5ddjvDnjbE=; b=QhoXIlI9EmqT534B8RS3erKAUUg5TawFnFLHIhewWEk4NFd6l0nlav/2u2xEJKi0U0 FQP26RQuFE6vWpaDW4ZIQasCDOhh1JdVzSTxCS327Y+IoGB4vj87G+J0J6dRKHa+UayN De0a29BzwUoRL4TkO4kn+vBRI5V0CUcrlps4LnqKikj+k1d6IUpC8jEoULJl7HOA44Fb 4XSNIbyLtwWxvndqKuiA5VWuo/7WVjKGnbI35hq8gd2Cu9bhvLjFmd+FX5GxxWZHPHId UMe8uYgkriynu76ofiicjYOafw0rYxdFclIY3ZjrB1UGw8/wzfLDddfYyJx8CPU1hibD 3e9w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:message-id:date:mime-version:user-agent :content-language:to:cc:references:from:subject:in-reply-to :content-transfer-encoding; bh=y2wlAkLc46MvzmRHMqz5RslYjHdyHxmej5ddjvDnjbE=; b=WJqzW94ochhnh4ZhUOskV2VsD4FYJ7Tdob1JtPqrY8rI5BBqgHsFxzX1Kkg4mdL8zZ 7DZsVreYN7M8wqCw43YkJ4vnptrbBk2ux9p1R9+GK8FL0R5f45SKX/wuD14gejCenRzf KO2N1395/mxFK7UeWCzX00gHYjdrqkxFA++lk/g3iKc1koingLH30Vmcd5ip9IElKv5V uo33xwO0nMup8rggVHdmyCVwdzCUdYbnkmOIssti3P3Pa4UTgU/q0yDxWryJvRXKdnp/ QkfkqW/m6Q/tDIk15kbtAUjBXkz9wq+Jr3zRVo4eyOoFs95q6qAKMRK4BSukCnp+2IJB 6/ww== X-Gm-Message-State: AOAM530HI+daO5ArumN0jqvJyLAslatz3loT+DjQyQN5LZFdRSInQYKG HL7/x3Xmg/43sQtCgvARrwo= X-Google-Smtp-Source: ABdhPJze5s3Linx+vYhJRAsRmEmCicLs3RiGgBI/SYevzn/zT2PeFc0pfAudH4fC6oa13ou0MAYSHQ== X-Received: by 2002:ac2:446a:: with SMTP id y10mr12583510lfl.585.1639149722268; Fri, 10 Dec 2021 07:22:02 -0800 (PST) Received: from [10.0.0.115] (91-153-170-164.elisa-laajakaista.fi. [91.153.170.164]) by smtp.gmail.com with ESMTPSA id m13sm337921lfl.131.2021.12.10.07.22.01 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Fri, 10 Dec 2021 07:22:01 -0800 (PST) Message-ID: Date: Fri, 10 Dec 2021 17:22:30 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.3.2 Content-Language: en-US To: Vignesh Raghavendra , Vinod Koul Cc: dmaengine@vger.kernel.org, linux-kernel@vger.kernel.org, Linux ARM Mailing List References: <20211209180715.27998-1-vigneshr@ti.com> From: =?UTF-8?Q?P=c3=a9ter_Ujfalusi?= Subject: Re: [PATCH] dma: ti: k3-udma: Workaround errata i2234 In-Reply-To: <20211209180715.27998-1-vigneshr@ti.com> X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20211210_072208_098120_B8614769 X-CRM114-Status: GOOD ( 23.67 ) 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 SGkgVmlnbmVzaCwKCk9uIDA5LzEyLzIwMjEgMjA6MDcsIFZpZ25lc2ggUmFnaGF2ZW5kcmEgd3Jv dGU6Cj4gUGVyIFsxXSwgVURNQSBUUjE1IHRyYW5zYWN0aW9ucyBtYXkgaGFuZyBpZiBJQ05UMCBp cyBsZXNzIHRoYW4gNjRCCj4gV29yayBhcm91bmQgaXMgdG8gc2V0IEVPTCBmbGFnIGlzIHRvIDEg Zm9yIElDTlQwLgo+IAo+IFNpbmNlLCB0aGVyZSBpcyBubyBwZXJmb3JtYW5jZSBwZW5hbHR5IC8g c2lkZSBlZmZlY3RzIG9mIHNldHRpbmcgRU9MCj4gZmxhZyBldmVudCBJQ05UTyA+IDY0QiwganVz dCBzZXQgdGhlIGZsYWcgZm9yIGFsbCBVRE1BUCBUUjE1Cj4gZGVzY3JpcHRvcnMuCgpQRE1BcyBh bmQgQ1NJIGRvZXMgbm90IHNlbmQgRU9MPyBJZiB5b3Ugc2V0IGl0IHRoZSBFT0wgdG8gb25lIHRo ZW4gd2hlbgppdCBhcnJpdmVzIHRoZSByZW1haW5pbmcgaWNudDAgaXMgc2tpcHBlZC4uLgoKPiAK PiBbMV0gaHR0cHM6Ly93d3cudGkuY29tL2xpdC9lci9zcHJ6NDU1YS9zcHJ6NDU1YS5wZGYKPiBF cnJhdGEgZG9jIGZvciBKNzIxRSBEUkE4MjkvVERBNFZNIFByb2Nlc3NvcnMgU2lsaWNvbiBSZXZp c2lvbiAxLjEvMS4wIChSZXYuIEEpCj4gCj4gU2lnbmVkLW9mZi1ieTogVmlnbmVzaCBSYWdoYXZl bmRyYSA8dmlnbmVzaHJAdGkuY29tPgo+IC0tLQo+ICBkcml2ZXJzL2RtYS90aS9rMy11ZG1hLmMg ICAgIHwgNDggKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tCj4gIGluY2x1ZGUv bGludXgvZG1hL3RpLWNwcGk1LmggfCAgMSArCj4gIDIgZmlsZXMgY2hhbmdlZCwgMjcgaW5zZXJ0 aW9ucygrKSwgMjIgZGVsZXRpb25zKC0pCj4gCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZG1hL3Rp L2szLXVkbWEuYyBiL2RyaXZlcnMvZG1hL3RpL2szLXVkbWEuYwo+IGluZGV4IDZlNTZkMWNlZjVl ZS4uZDY1YzRjYzVmYmY3IDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZG1hL3RpL2szLXVkbWEuYwo+ ICsrKyBiL2RyaXZlcnMvZG1hL3RpL2szLXVkbWEuYwo+IEBAIC0yODYzLDYgKzI4NjMsNyBAQCB1 ZG1hX3ByZXBfc2xhdmVfc2dfdHIoc3RydWN0IHVkbWFfY2hhbiAqdWMsIHN0cnVjdCBzY2F0dGVy bGlzdCAqc2dsLAo+ICAJc3RydWN0IHVkbWFfZGVzYyAqZDsKPiAgCXN0cnVjdCBjcHBpNV90cl90 eXBlMV90ICp0cl9yZXEgPSBOVUxMOwo+ICAJdTE2IHRyMF9jbnQwLCB0cjBfY250MSwgdHIxX2Nu dDA7Cj4gKwl1MzIgY3NmID0gQ1BQSTVfVFJfQ1NGX1NVUFJfRVZUOwo+ICAJdW5zaWduZWQgaW50 IGk7Cj4gIAlzaXplX3QgdHJfc2l6ZTsKPiAgCWludCBudW1fdHIgPSAwOwo+IEBAIC0yODg1LDEw ICsyODg2LDEyIEBAIHVkbWFfcHJlcF9zbGF2ZV9zZ190cihzdHJ1Y3QgdWRtYV9jaGFuICp1Yywg c3RydWN0IHNjYXR0ZXJsaXN0ICpzZ2wsCj4gIAo+ICAJZC0+c2dsZW4gPSBzZ2xlbjsKPiAgCj4g LQlpZiAodWMtPnVkLT5tYXRjaF9kYXRhLT50eXBlID09IERNQV9UWVBFX1VETUEpCj4gKwlpZiAo dWMtPnVkLT5tYXRjaF9kYXRhLT50eXBlID09IERNQV9UWVBFX1VETUEpIHsKPiAgCQlhc2VsID0g MDsKPiAtCWVsc2UKPiArCQljc2YgfD0gQ1BQSTVfVFJfQ1NGX0VPTF9JQ05UMDsKPiArCX0gZWxz ZSB7Cj4gIAkJYXNlbCA9ICh1NjQpdWMtPmNvbmZpZy5hc2VsIDw8IEszX0FERFJFU1NfQVNFTF9T SElGVDsKPiArCX0KPiAgCj4gIAl0cl9yZXEgPSBkLT5od2Rlc2NbMF0udHJfcmVxX2Jhc2U7Cj4g IAlmb3JfZWFjaF9zZyhzZ2wsIHNnZW50LCBzZ2xlbiwgaSkgewo+IEBAIC0yOTA2LDcgKzI5MDks NyBAQCB1ZG1hX3ByZXBfc2xhdmVfc2dfdHIoc3RydWN0IHVkbWFfY2hhbiAqdWMsIHN0cnVjdCBz Y2F0dGVybGlzdCAqc2dsLAo+ICAKPiAgCQljcHBpNV90cl9pbml0KCZ0cl9yZXFbdHJfaWR4XS5m bGFncywgQ1BQSTVfVFJfVFlQRTEsIGZhbHNlLAo+ICAJCQkgICAgICBmYWxzZSwgQ1BQSTVfVFJf RVZFTlRfU0laRV9DT01QTEVUSU9OLCAwKTsKPiAtCQljcHBpNV90cl9jc2Zfc2V0KCZ0cl9yZXFb dHJfaWR4XS5mbGFncywgQ1BQSTVfVFJfQ1NGX1NVUFJfRVZUKTsKPiArCQljcHBpNV90cl9jc2Zf c2V0KCZ0cl9yZXFbdHJfaWR4XS5mbGFncywgY3NmKTsKPiAgCj4gIAkJc2dfYWRkciB8PSBhc2Vs Owo+ICAJCXRyX3JlcVt0cl9pZHhdLmFkZHIgPSBzZ19hZGRyOwo+IEBAIC0yOTE5LDggKzI5MjIs NyBAQCB1ZG1hX3ByZXBfc2xhdmVfc2dfdHIoc3RydWN0IHVkbWFfY2hhbiAqdWMsIHN0cnVjdCBz Y2F0dGVybGlzdCAqc2dsLAo+ICAJCQljcHBpNV90cl9pbml0KCZ0cl9yZXFbdHJfaWR4XS5mbGFn cywgQ1BQSTVfVFJfVFlQRTEsCj4gIAkJCQkgICAgICBmYWxzZSwgZmFsc2UsCj4gIAkJCQkgICAg ICBDUFBJNV9UUl9FVkVOVF9TSVpFX0NPTVBMRVRJT04sIDApOwo+IC0JCQljcHBpNV90cl9jc2Zf c2V0KCZ0cl9yZXFbdHJfaWR4XS5mbGFncywKPiAtCQkJCQkgQ1BQSTVfVFJfQ1NGX1NVUFJfRVZU KTsKPiArCQkJY3BwaTVfdHJfY3NmX3NldCgmdHJfcmVxW3RyX2lkeF0uZmxhZ3MsIGNzZik7Cj4g IAo+ICAJCQl0cl9yZXFbdHJfaWR4XS5hZGRyID0gc2dfYWRkciArIHRyMF9jbnQxICogdHIwX2Nu dDA7Cj4gIAkJCXRyX3JlcVt0cl9pZHhdLmljbnQwID0gdHIxX2NudDA7Cj4gQEAgLTI5MzIsOCAr MjkzNCw3IEBAIHVkbWFfcHJlcF9zbGF2ZV9zZ190cihzdHJ1Y3QgdWRtYV9jaGFuICp1Yywgc3Ry dWN0IHNjYXR0ZXJsaXN0ICpzZ2wsCj4gIAkJZC0+cmVzaWR1ZSArPSBzZ19kbWFfbGVuKHNnZW50 KTsKPiAgCX0KPiAgCj4gLQljcHBpNV90cl9jc2Zfc2V0KCZ0cl9yZXFbdHJfaWR4IC0gMV0uZmxh Z3MsCj4gLQkJCSBDUFBJNV9UUl9DU0ZfU1VQUl9FVlQgfCBDUFBJNV9UUl9DU0ZfRU9QKTsKPiAr CWNwcGk1X3RyX2NzZl9zZXQoJnRyX3JlcVt0cl9pZHggLSAxXS5mbGFncywgY3NmIHwgQ1BQSTVf VFJfQ1NGX0VPUCk7Cj4gIAo+ICAJcmV0dXJuIGQ7Cj4gIH0KPiBAQCAtMjk0Nyw2ICsyOTQ4LDcg QEAgdWRtYV9wcmVwX3NsYXZlX3NnX3RyaWdnZXJlZF90cihzdHJ1Y3QgdWRtYV9jaGFuICp1Yywg c3RydWN0IHNjYXR0ZXJsaXN0ICpzZ2wsCj4gIAlzdHJ1Y3Qgc2NhdHRlcmxpc3QgKnNnZW50Owo+ ICAJc3RydWN0IGNwcGk1X3RyX3R5cGUxNV90ICp0cl9yZXEgPSBOVUxMOwo+ICAJZW51bSBkbWFf c2xhdmVfYnVzd2lkdGggZGV2X3dpZHRoOwo+ICsJdTMyIGNzZiA9IENQUEk1X1RSX0NTRl9TVVBS X0VWVDsKPiAgCXUxNiB0cl9jbnQwLCB0cl9jbnQxOwo+ICAJZG1hX2FkZHJfdCBkZXZfYWRkcjsK PiAgCXN0cnVjdCB1ZG1hX2Rlc2MgKmQ7Cj4gQEAgLTMwMTcsNiArMzAxOSw3IEBAIHVkbWFfcHJl cF9zbGF2ZV9zZ190cmlnZ2VyZWRfdHIoc3RydWN0IHVkbWFfY2hhbiAqdWMsIHN0cnVjdCBzY2F0 dGVybGlzdCAqc2dsLAo+ICAKPiAgCWlmICh1Yy0+dWQtPm1hdGNoX2RhdGEtPnR5cGUgPT0gRE1B X1RZUEVfVURNQSkgewo+ICAJCWFzZWwgPSAwOwo+ICsJCWNzZiB8PSBDUFBJNV9UUl9DU0ZfRU9M X0lDTlQwOwo+ICAJfSBlbHNlIHsKPiAgCQlhc2VsID0gKHU2NCl1Yy0+Y29uZmlnLmFzZWwgPDwg SzNfQUREUkVTU19BU0VMX1NISUZUOwo+ICAJCWRldl9hZGRyIHw9IGFzZWw7Cj4gQEAgLTMwNDAs NyArMzA0Myw3IEBAIHVkbWFfcHJlcF9zbGF2ZV9zZ190cmlnZ2VyZWRfdHIoc3RydWN0IHVkbWFf Y2hhbiAqdWMsIHN0cnVjdCBzY2F0dGVybGlzdCAqc2dsLAo+ICAKPiAgCQljcHBpNV90cl9pbml0 KCZ0cl9yZXFbdHJfaWR4XS5mbGFncywgQ1BQSTVfVFJfVFlQRTE1LCBmYWxzZSwKPiAgCQkJICAg ICAgdHJ1ZSwgQ1BQSTVfVFJfRVZFTlRfU0laRV9DT01QTEVUSU9OLCAwKTsKPiAtCQljcHBpNV90 cl9jc2Zfc2V0KCZ0cl9yZXFbdHJfaWR4XS5mbGFncywgQ1BQSTVfVFJfQ1NGX1NVUFJfRVZUKTsK PiArCQljcHBpNV90cl9jc2Zfc2V0KCZ0cl9yZXFbdHJfaWR4XS5mbGFncywgY3NmKTsKPiAgCQlj cHBpNV90cl9zZXRfdHJpZ2dlcigmdHJfcmVxW3RyX2lkeF0uZmxhZ3MsCj4gIAkJCQkgICAgIHVj LT5jb25maWcudHJfdHJpZ2dlcl90eXBlLAo+ICAJCQkJICAgICBDUFBJNV9UUl9UUklHR0VSX1RZ UEVfSUNOVDJfREVDLCAwLCAwKTsKPiBAQCAtMzA4Niw4ICszMDg5LDcgQEAgdWRtYV9wcmVwX3Ns YXZlX3NnX3RyaWdnZXJlZF90cihzdHJ1Y3QgdWRtYV9jaGFuICp1Yywgc3RydWN0IHNjYXR0ZXJs aXN0ICpzZ2wsCj4gIAkJCWNwcGk1X3RyX2luaXQoJnRyX3JlcVt0cl9pZHhdLmZsYWdzLCBDUFBJ NV9UUl9UWVBFMTUsCj4gIAkJCQkgICAgICBmYWxzZSwgdHJ1ZSwKPiAgCQkJCSAgICAgIENQUEk1 X1RSX0VWRU5UX1NJWkVfQ09NUExFVElPTiwgMCk7Cj4gLQkJCWNwcGk1X3RyX2NzZl9zZXQoJnRy X3JlcVt0cl9pZHhdLmZsYWdzLAo+IC0JCQkJCSBDUFBJNV9UUl9DU0ZfU1VQUl9FVlQpOwo+ICsJ CQljcHBpNV90cl9jc2Zfc2V0KCZ0cl9yZXFbdHJfaWR4XS5mbGFncywgY3NmKTsKPiAgCQkJY3Bw aTVfdHJfc2V0X3RyaWdnZXIoJnRyX3JlcVt0cl9pZHhdLmZsYWdzLAo+ICAJCQkJCSAgICAgdWMt PmNvbmZpZy50cl90cmlnZ2VyX3R5cGUsCj4gIAkJCQkJICAgICBDUFBJNV9UUl9UUklHR0VSX1RZ UEVfSUNOVDJfREVDLAo+IEBAIC0zMTMxLDggKzMxMzMsNyBAQCB1ZG1hX3ByZXBfc2xhdmVfc2df dHJpZ2dlcmVkX3RyKHN0cnVjdCB1ZG1hX2NoYW4gKnVjLCBzdHJ1Y3Qgc2NhdHRlcmxpc3QgKnNn bCwKPiAgCQlkLT5yZXNpZHVlICs9IHNnX2xlbjsKPiAgCX0KPiAgCj4gLQljcHBpNV90cl9jc2Zf c2V0KCZ0cl9yZXFbdHJfaWR4IC0gMV0uZmxhZ3MsCj4gLQkJCSBDUFBJNV9UUl9DU0ZfU1VQUl9F VlQgfCBDUFBJNV9UUl9DU0ZfRU9QKTsKPiArCWNwcGk1X3RyX2NzZl9zZXQoJnRyX3JlcVt0cl9p ZHggLSAxXS5mbGFncywgY3NmIHwgQ1BQSTVfVFJfQ1NGX0VPUCk7Cj4gIAo+ICAJcmV0dXJuIGQ7 Cj4gIH0KPiBAQCAtMzQ1NCw2ICszNDU1LDcgQEAgdWRtYV9wcmVwX2RtYV9jeWNsaWNfdHIoc3Ry dWN0IHVkbWFfY2hhbiAqdWMsIGRtYV9hZGRyX3QgYnVmX2FkZHIsCj4gIAlzdHJ1Y3QgY3BwaTVf dHJfdHlwZTFfdCAqdHJfcmVxOwo+ICAJdW5zaWduZWQgaW50IHBlcmlvZHMgPSBidWZfbGVuIC8g cGVyaW9kX2xlbjsKPiAgCXUxNiB0cjBfY250MCwgdHIwX2NudDEsIHRyMV9jbnQwOwo+ICsJdTMy IGNzZiA9IENQUEk1X1RSX0NTRl9TVVBSX0VWVDsKPiAgCXVuc2lnbmVkIGludCBpOwo+ICAJaW50 IG51bV90cjsKPiAgCj4gQEAgLTM0NzIsMTEgKzM0NzQsMTMgQEAgdWRtYV9wcmVwX2RtYV9jeWNs aWNfdHIoc3RydWN0IHVkbWFfY2hhbiAqdWMsIGRtYV9hZGRyX3QgYnVmX2FkZHIsCj4gIAkJcmV0 dXJuIE5VTEw7Cj4gIAo+ICAJdHJfcmVxID0gZC0+aHdkZXNjWzBdLnRyX3JlcV9iYXNlOwo+IC0J aWYgKHVjLT51ZC0+bWF0Y2hfZGF0YS0+dHlwZSA9PSBETUFfVFlQRV9VRE1BKQo+ICsJaWYgKHVj LT51ZC0+bWF0Y2hfZGF0YS0+dHlwZSA9PSBETUFfVFlQRV9VRE1BKSB7Cj4gIAkJcGVyaW9kX2Fk ZHIgPSBidWZfYWRkcjsKPiAtCWVsc2UKPiArCQljc2YgfD0gQ1BQSTVfVFJfQ1NGX0VPTF9JQ05U MDsKPiArCX0gZWxzZSB7Cj4gIAkJcGVyaW9kX2FkZHIgPSBidWZfYWRkciB8Cj4gIAkJCSgodTY0 KXVjLT5jb25maWcuYXNlbCA8PCBLM19BRERSRVNTX0FTRUxfU0hJRlQpOwo+ICsJfQo+ICAKPiAg CWZvciAoaSA9IDA7IGkgPCBwZXJpb2RzOyBpKyspIHsKPiAgCQlpbnQgdHJfaWR4ID0gaSAqIG51 bV90cjsKPiBAQCAtMzQ5MCw4ICszNDk0LDcgQEAgdWRtYV9wcmVwX2RtYV9jeWNsaWNfdHIoc3Ry dWN0IHVkbWFfY2hhbiAqdWMsIGRtYV9hZGRyX3QgYnVmX2FkZHIsCj4gIAkJdHJfcmVxW3RyX2lk eF0uZGltMSA9IHRyMF9jbnQwOwo+ICAKPiAgCQlpZiAobnVtX3RyID09IDIpIHsKPiAtCQkJY3Bw aTVfdHJfY3NmX3NldCgmdHJfcmVxW3RyX2lkeF0uZmxhZ3MsCj4gLQkJCQkJIENQUEk1X1RSX0NT Rl9TVVBSX0VWVCk7Cj4gKwkJCWNwcGk1X3RyX2NzZl9zZXQoJnRyX3JlcVt0cl9pZHhdLmZsYWdz LCBjc2YpOwo+ICAJCQl0cl9pZHgrKzsKPiAgCj4gIAkJCWNwcGk1X3RyX2luaXQoJnRyX3JlcVt0 cl9pZHhdLmZsYWdzLCBDUFBJNV9UUl9UWVBFMSwKPiBAQCAtMzUwNSw4ICszNTA4LDcgQEAgdWRt YV9wcmVwX2RtYV9jeWNsaWNfdHIoc3RydWN0IHVkbWFfY2hhbiAqdWMsIGRtYV9hZGRyX3QgYnVm X2FkZHIsCj4gIAkJfQo+ICAKPiAgCQlpZiAoIShmbGFncyAmIERNQV9QUkVQX0lOVEVSUlVQVCkp Cj4gLQkJCWNwcGk1X3RyX2NzZl9zZXQoJnRyX3JlcVt0cl9pZHhdLmZsYWdzLAo+IC0JCQkJCSBD UFBJNV9UUl9DU0ZfU1VQUl9FVlQpOwo+ICsJCQljcHBpNV90cl9jc2Zfc2V0KCZ0cl9yZXFbdHJf aWR4XS5mbGFncywgY3NmKTsKPiAgCj4gIAkJcGVyaW9kX2FkZHIgKz0gcGVyaW9kX2xlbjsKPiAg CX0KPiBAQCAtMzY1OSw2ICszNjYxLDcgQEAgdWRtYV9wcmVwX2RtYV9tZW1jcHkoc3RydWN0IGRt YV9jaGFuICpjaGFuLCBkbWFfYWRkcl90IGRlc3QsIGRtYV9hZGRyX3Qgc3JjLAo+ICAJaW50IG51 bV90cjsKPiAgCXNpemVfdCB0cl9zaXplID0gc2l6ZW9mKHN0cnVjdCBjcHBpNV90cl90eXBlMTVf dCk7Cj4gIAl1MTYgdHIwX2NudDAsIHRyMF9jbnQxLCB0cjFfY250MDsKPiArCXUzMiBjc2YgPSBD UFBJNV9UUl9DU0ZfU1VQUl9FVlQ7Cj4gIAo+ICAJaWYgKHVjLT5jb25maWcuZGlyICE9IERNQV9N RU1fVE9fTUVNKSB7Cj4gIAkJZGV2X2VycihjaGFuLT5kZXZpY2UtPmRldiwKPiBAQCAtMzY4OSwx MyArMzY5MiwxNSBAQCB1ZG1hX3ByZXBfZG1hX21lbWNweShzdHJ1Y3QgZG1hX2NoYW4gKmNoYW4s IGRtYV9hZGRyX3QgZGVzdCwgZG1hX2FkZHJfdCBzcmMsCj4gIAlpZiAodWMtPnVkLT5tYXRjaF9k YXRhLT50eXBlICE9IERNQV9UWVBFX1VETUEpIHsKPiAgCQlzcmMgfD0gKHU2NCl1Yy0+dWQtPmFz ZWwgPDwgSzNfQUREUkVTU19BU0VMX1NISUZUOwo+ICAJCWRlc3QgfD0gKHU2NCl1Yy0+dWQtPmFz ZWwgPDwgSzNfQUREUkVTU19BU0VMX1NISUZUOwo+ICsJfSBlbHNlIHsKPiArCQljc2YgfD0gQ1BQ STVfVFJfQ1NGX0VPTF9JQ05UMDsKPiAgCX0KPiAgCj4gIAl0cl9yZXEgPSBkLT5od2Rlc2NbMF0u dHJfcmVxX2Jhc2U7Cj4gIAo+ICAJY3BwaTVfdHJfaW5pdCgmdHJfcmVxWzBdLmZsYWdzLCBDUFBJ NV9UUl9UWVBFMTUsIGZhbHNlLCB0cnVlLAo+ICAJCSAgICAgIENQUEk1X1RSX0VWRU5UX1NJWkVf Q09NUExFVElPTiwgMCk7Cj4gLQljcHBpNV90cl9jc2Zfc2V0KCZ0cl9yZXFbMF0uZmxhZ3MsIENQ UEk1X1RSX0NTRl9TVVBSX0VWVCk7Cj4gKwljcHBpNV90cl9jc2Zfc2V0KCZ0cl9yZXFbMF0uZmxh Z3MsIGNzZik7Cj4gIAo+ICAJdHJfcmVxWzBdLmFkZHIgPSBzcmM7Cj4gIAl0cl9yZXFbMF0uaWNu dDAgPSB0cjBfY250MDsKPiBAQCAtMzcxNCw3ICszNzE5LDcgQEAgdWRtYV9wcmVwX2RtYV9tZW1j cHkoc3RydWN0IGRtYV9jaGFuICpjaGFuLCBkbWFfYWRkcl90IGRlc3QsIGRtYV9hZGRyX3Qgc3Jj LAo+ICAJaWYgKG51bV90ciA9PSAyKSB7Cj4gIAkJY3BwaTVfdHJfaW5pdCgmdHJfcmVxWzFdLmZs YWdzLCBDUFBJNV9UUl9UWVBFMTUsIGZhbHNlLCB0cnVlLAo+ICAJCQkgICAgICBDUFBJNV9UUl9F VkVOVF9TSVpFX0NPTVBMRVRJT04sIDApOwo+IC0JCWNwcGk1X3RyX2NzZl9zZXQoJnRyX3JlcVsx XS5mbGFncywgQ1BQSTVfVFJfQ1NGX1NVUFJfRVZUKTsKPiArCQljcHBpNV90cl9jc2Zfc2V0KCZ0 cl9yZXFbMV0uZmxhZ3MsIGNzZik7Cj4gIAo+ICAJCXRyX3JlcVsxXS5hZGRyID0gc3JjICsgdHIw X2NudDEgKiB0cjBfY250MDsKPiAgCQl0cl9yZXFbMV0uaWNudDAgPSB0cjFfY250MDsKPiBAQCAt MzcyOSw4ICszNzM0LDcgQEAgdWRtYV9wcmVwX2RtYV9tZW1jcHkoc3RydWN0IGRtYV9jaGFuICpj aGFuLCBkbWFfYWRkcl90IGRlc3QsIGRtYV9hZGRyX3Qgc3JjLAo+ICAJCXRyX3JlcVsxXS5kaWNu dDMgPSAxOwo+ICAJfQo+ICAKPiAtCWNwcGk1X3RyX2NzZl9zZXQoJnRyX3JlcVtudW1fdHIgLSAx XS5mbGFncywKPiAtCQkJIENQUEk1X1RSX0NTRl9TVVBSX0VWVCB8IENQUEk1X1RSX0NTRl9FT1Ap Owo+ICsJY3BwaTVfdHJfY3NmX3NldCgmdHJfcmVxW251bV90ciAtIDFdLmZsYWdzLCBjc2YgfCBD UFBJNV9UUl9DU0ZfRU9QKTsKPiAgCj4gIAlpZiAodWMtPmNvbmZpZy5tZXRhZGF0YV9zaXplKQo+ ICAJCWQtPnZkLnR4Lm1ldGFkYXRhX29wcyA9ICZtZXRhZGF0YV9vcHM7Cj4gZGlmZiAtLWdpdCBh L2luY2x1ZGUvbGludXgvZG1hL3RpLWNwcGk1LmggYi9pbmNsdWRlL2xpbnV4L2RtYS90aS1jcHBp NS5oCj4gaW5kZXggZWZhMmYwMzA5ZjAwLi5jNTNjMGY2ZTNiMWEgMTAwNjQ0Cj4gLS0tIGEvaW5j bHVkZS9saW51eC9kbWEvdGktY3BwaTUuaAo+ICsrKyBiL2luY2x1ZGUvbGludXgvZG1hL3RpLWNw cGk1LmgKPiBAQCAtNjE2LDYgKzYxNiw3IEBAIHN0YXRpYyBpbmxpbmUgdm9pZCAqY3BwaTVfaGRl c2NfZ2V0X3N3ZGF0YShzdHJ1Y3QgY3BwaTVfaG9zdF9kZXNjX3QgKmRlc2MpCj4gICNkZWZpbmUg ICBDUFBJNV9UUl9DU0ZfU1VQUl9FVlQJCQlCSVQoMikKPiAgI2RlZmluZSAgIENQUEk1X1RSX0NT Rl9FT0xfQURWX1NISUZUCQkoNFUpCj4gICNkZWZpbmUgICBDUFBJNV9UUl9DU0ZfRU9MX0FEVl9N QVNLCQlHRU5NQVNLKDYsIDQpCj4gKyNkZWZpbmUgICBDUFBJNV9UUl9DU0ZfRU9MX0lDTlQwCQlC SVQoNCkKCnRoZSBjb3JyZWN0IGV4cHJlc3Npb24gaXM6ICgxIDw8IENQUEk1X1RSX0NTRl9FT0xf QURWX1NISUZUKQphcyBFT0wgPSAxIGlzIHdoYXQgeW91IHdhbnQgdG8gc2V0LgpFT0wgPSAyIHdp bGwgY2xlYXIgaWNudDAgYW5kIDEgb24gRU9MLgozIHdpbGwgZG8gdGhlIHNhbWUgZm9yIGljbnQg MCwgMSBhbmQgMgo0IHdpbGwgc2tpcCB0aGUgcmVtYWluaW4gdHIuCgo+ICAjZGVmaW5lICAgQ1BQ STVfVFJfQ1NGX0VPUAkJCUJJVCg3KQo+ICAKPiAgLyoqCj4gCgotLSAKUMOpdGVyCgpfX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpsaW51eC1hcm0ta2VybmVs IG1haWxpbmcgbGlzdApsaW51eC1hcm0ta2VybmVsQGxpc3RzLmluZnJhZGVhZC5vcmcKaHR0cDov L2xpc3RzLmluZnJhZGVhZC5vcmcvbWFpbG1hbi9saXN0aW5mby9saW51eC1hcm0ta2VybmVsCg==