From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id DED0BA034D for ; Wed, 19 Jan 2022 21:38:33 +0100 (CET) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 9EEA2411AB; Wed, 19 Jan 2022 21:38:33 +0100 (CET) Received: from mail-ua1-f98.google.com (mail-ua1-f98.google.com [209.85.222.98]) by mails.dpdk.org (Postfix) with ESMTP id 2A10241147 for ; Wed, 19 Jan 2022 21:38:33 +0100 (CET) Received: by mail-ua1-f98.google.com with SMTP id c36so6797335uae.13 for ; Wed, 19 Jan 2022 12:38:33 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=iol.unh.edu; s=unh-iol; h=mime-version:subject:from:to:cc:message-id:date; bh=nFrtoD8w2Jg/7zhgCan4L66zBLDZvfDM2+VXHk2L+7s=; b=iuEobAfCZB50cxSLYxwnZ4vw0TI2HzYNOn8ii8L4n6gh0p2vLeUsfGdwEBxIYmWdYA GzzUGUKWyDUT65ix+ZzZufPj1TM5GQDTbu3DpfWQmsItWvAKZBjQFWq767lEbNTDz68f MLz/K84k/xPP3rpAbI2GHe/6oz8dGJEm+0FTI= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:subject:from:to:cc:message-id:date; bh=nFrtoD8w2Jg/7zhgCan4L66zBLDZvfDM2+VXHk2L+7s=; b=kbetScD8YwSdOB4AKM5/YsBnzB3KmGWH70NrvUhR/ExWvYk/Va52fukEGZBvKQzlbC gey30XaxDCalUVqGlfCjjXks7Ts60KQj/Y01KfXSi9voKgnSGa4y1uRhcjCMckk1iKj6 BS04s/jQ7RYI6nbW+AwogFp64iELVugXXxCctJyi22pgIVVJhU/d6v1UVdRxa2WlZTg/ 31kpKN0QqIHELzGOTFvCMxxWNVrJMnTjCss/8FSPZj+iJYU4Ytg8UAJZZn9bZjZGv/qr GkfRzb7WUoKF2hz+pyH/sLMJ27JRCpVomAlLIRtDS4VOnVvWm+w5af2cl6BivMvDdOck AT9A== X-Gm-Message-State: AOAM531/U6ZnvInwmi4AF8e0xKTACdKkaRn+IkBGehuT+HyclLbvF9U2 4TxBoaY4LcEC9RxZDsYT+NBha9eITHgzKgR3e80QhVGeuw8AHg== X-Google-Smtp-Source: ABdhPJz2jVeojrFpnIsBU4GUY7DuY5ZJzn5GyDtWAUelERhHjsc4YnvKSyXxW/ilnu1a2OB/v4j2Sbl4bNxR X-Received: by 2002:ab0:7257:: with SMTP id d23mr1843862uap.3.1642624712605; Wed, 19 Jan 2022 12:38:32 -0800 (PST) Received: from postal.iol.unh.edu (postal.iol.unh.edu. [132.177.123.84]) by smtp-relay.gmail.com with ESMTPS id q6sm261354vkn.3.2022.01.19.12.38.32 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Wed, 19 Jan 2022 12:38:32 -0800 (PST) X-Relaying-Domain: iol.unh.edu Received: from noxus.dpdklab.iol.unh.edu (unknown [IPv6:2606:4100:3880:1722::4]) by postal.iol.unh.edu (Postfix) with ESMTP id AB5AC6045DC6; Wed, 19 Jan 2022 15:38:31 -0500 (EST) Received: from noxus.dpdklab.iol.unh.edu (localhost [IPv6:::1]) by noxus.dpdklab.iol.unh.edu (Postfix) with ESMTP id 9E56D1AE; Wed, 19 Jan 2022 15:38:31 -0500 (EST) Content-Type: multipart/mixed; boundary="===============0999300706401601926==" MIME-Version: 1.0 Subject: |WARNING| pw106058-106061 [PATCH] [v2, 4/4] net/cnxk: improve Rx performance From: dpdklab@iol.unh.edu To: test-report@dpdk.org Cc: dpdk-test-reports@iol.unh.edu Message-Id: <20220119203831.9E56D1AE@noxus.dpdklab.iol.unh.edu> Date: Wed, 19 Jan 2022 15:38:31 -0500 (EST) X-BeenThere: test-report@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: automatic DPDK test reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: test-report-bounces@dpdk.org --===============0999300706401601926== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 VGVzdC1MYWJlbDogaW9sLXRlc3RpbmcKVGVzdC1TdGF0dXM6IFdBUk5JTkcKaHR0cDovL2RwZGsu b3JnL3BhdGNoLzEwNjA1OAoKX2FwcGx5IHBhdGNoIGZhaWx1cmVfCgpTdWJtaXR0ZXI6IFBhdmFu IE5pa2hpbGVzaCBCaGFnYXZhdHVsYSA8cGJoYWdhdmF0dWxhQG1hcnZlbGwuY29tPgpEYXRlOiBX ZWRuZXNkYXksIEphbnVhcnkgMTkgMjAyMiAwNzoxMzoyMyAKQXBwbGllZCBvbjogQ29tbWl0SUQ6 Y2FkYjI1NWUyNWQ2OTBkNzE5ZDZmMTU5ZTBhNjNmOGJlNjA2NTBhNQpBcHBseSBwYXRjaCBzZXQg MTA2MDU4LTEwNjA2MSBmYWlsZWQ6CgpDaGVja2luZyBwYXRjaCBkcml2ZXJzL2NvbW1vbi9jbnhr L3JvY19pby5oLi4uCkNoZWNraW5nIHBhdGNoIGRyaXZlcnMvY29tbW9uL2NueGsvcm9jX2lvX2dl bmVyaWMuaC4uLgpDaGVja2luZyBwYXRjaCBkcml2ZXJzL2NyeXB0by9jbnhrL2NuOWtfY3J5cHRv ZGV2X29wcy5jLi4uCkNoZWNraW5nIHBhdGNoIGRyaXZlcnMvY3J5cHRvL2NueGsvY245a19pcHNl Yy5jLi4uCkNoZWNraW5nIHBhdGNoIGRyaXZlcnMvZXZlbnQvY254ay9jbjEwa19ldmVudGRldi5j Li4uCkh1bmsgIzEgc3VjY2VlZGVkIGF0IDYzIChvZmZzZXQgMTMgbGluZXMpLgpIdW5rICMyIHN1 Y2NlZWRlZCBhdCAyNzEgKG9mZnNldCAxMyBsaW5lcykuCkh1bmsgIzMgc3VjY2VlZGVkIGF0IDcx MyAob2Zmc2V0IC0xMSBsaW5lcykuCkNoZWNraW5nIHBhdGNoIGRyaXZlcnMvZXZlbnQvY254ay9j bjEwa193b3JrZXIuaC4uLgplcnJvcjogd2hpbGUgc2VhcmNoaW5nIGZvcjoKCX0KCnN0YXRpYyBf X3J0ZV9hbHdheXNfaW5saW5lIHN0cnVjdCBjbjEwa19ldGhfdHhxICoKY24xMGtfc3NvX2h3c194 dHJhY3RfbWV0YShzdHJ1Y3QgcnRlX21idWYgKm0sCgkJCSAgY29uc3QgdWludDY0X3QgdHhxX2Rh dGFbXVtSVEVfTUFYX1FVRVVFU19QRVJfUE9SVF0pCnsKCXJldHVybiAoc3RydWN0IGNuMTBrX2V0 aF90eHEgKikKCQl0eHFfZGF0YVttLT5wb3J0XVtydGVfZXZlbnRfZXRoX3R4X2FkYXB0ZXJfdHhx X2dldChtKV07Cn0KCnN0YXRpYyBfX3J0ZV9hbHdheXNfaW5saW5lIHZvaWQKY24xMGtfc3NvX3R4 X29uZShzdHJ1Y3QgcnRlX21idWYgKm0sIHVpbnQ2NF90ICpjbWQsIHVpbnQxNl90IGxtdF9pZCwK CQkgdWludHB0cl90IGxtdF9hZGRyLCB1aW50OF90IHNjaGVkX3R5cGUsIHVpbnRwdHJfdCBiYXNl LAoJCSBjb25zdCB1aW50NjRfdCB0eHFfZGF0YVtdW1JURV9NQVhfUVVFVUVTX1BFUl9QT1JUXSwK CQkgY29uc3QgdWludDMyX3QgZmxhZ3MpCnsKCXVpbnQ4X3QgbG51bSA9IDAsIGxvZmYgPSAwLCBz aGZ0ID0gMDsKCXN0cnVjdCBjbjEwa19ldGhfdHhxICp0eHE7CgplcnJvcjogcGF0Y2ggZmFpbGVk OiBkcml2ZXJzL2V2ZW50L2NueGsvY24xMGtfd29ya2VyLmg6NDU3Ckh1bmsgIzIgc3VjY2VlZGVk IGF0IDQwOSAob2Zmc2V0IC02OSBsaW5lcykuCkh1bmsgIzMgc3VjY2VlZGVkIGF0IDQzNCAob2Zm c2V0IC02OSBsaW5lcykuCkh1bmsgIzQgc3VjY2VlZGVkIGF0IDQ3MyAob2Zmc2V0IC02OSBsaW5l cykuCkh1bmsgIzUgc3VjY2VlZGVkIGF0IDQ5MCAob2Zmc2V0IC02OSBsaW5lcykuCkh1bmsgIzYg c3VjY2VlZGVkIGF0IDUxNCAob2Zmc2V0IC02OSBsaW5lcykuCkh1bmsgIzcgc3VjY2VlZGVkIGF0 IDUzNCAob2Zmc2V0IC02OSBsaW5lcykuCmVycm9yOiB3aGlsZSBzZWFyY2hpbmcgZm9yOgogICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgXAoJCVJURV9TRVRfVVNFRChuYl9ldmVudHMpOyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKCQlyZXR1cm4gY24xMGtfc3NvX2h3c19ldmVu dF90eCggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCgkJCXdzLCAmZXZbMF0sIGNt ZCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCgkJCShjb25zdCB1aW50 NjRfdCgqKVtSVEVfTUFYX1FVRVVFU19QRVJfUE9SVF0pICYgICAgICAgICBcCgkJCQl3cy0+dHhf YWRwdHJfZGF0YSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKCQkJZmxhZ3MpOyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKCX0KCgplcnJvcjog cGF0Y2ggZmFpbGVkOiBkcml2ZXJzL2V2ZW50L2NueGsvY24xMGtfd29ya2VyLmg6NjMxCmVycm9y OiB3aGlsZSBzZWFyY2hpbmcgZm9yOgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAoJCVJURV9TRVRf VVNFRChuYl9ldmVudHMpOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwK CQlyZXR1cm4gY24xMGtfc3NvX2h3c19ldmVudF90eCggICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBcCgkJCXdzLCAmZXZbMF0sIGNtZCwgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBcCgkJCShjb25zdCB1aW50NjRfdCgqKVtSVEVfTUFYX1FVRVVFU19QRVJfUE9S VF0pICYgICAgICAgICBcCgkJCQl3cy0+dHhfYWRwdHJfZGF0YSwgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIFwKCQkJKGZsYWdzKSB8IE5JWF9UWF9NVUxUSV9TRUdfRik7ICAgICAgICAgICAg ICAgICAgICAgICAgIFwKCX0KCgplcnJvcjogcGF0Y2ggZmFpbGVkOiBkcml2ZXJzL2V2ZW50L2Nu eGsvY24xMGtfd29ya2VyLmg6NjQ2CkNoZWNraW5nIHBhdGNoIGRyaXZlcnMvZXZlbnQvY254ay9j bjlrX2V2ZW50ZGV2LmMuLi4KSHVuayAjMSBzdWNjZWVkZWQgYXQgMjcxIChvZmZzZXQgMTIgbGlu ZXMpLgpIdW5rICMyIHN1Y2NlZWRlZCBhdCAyODkgKG9mZnNldCAxMiBsaW5lcykuCkh1bmsgIzMg c3VjY2VlZGVkIGF0IDk2MiAob2Zmc2V0IC0zOCBsaW5lcykuCkNoZWNraW5nIHBhdGNoIGRyaXZl cnMvZXZlbnQvY254ay9jbjlrX3dvcmtlci5oLi4uCkh1bmsgIzEgc3VjY2VlZGVkIGF0IDQ2NCAo b2Zmc2V0IC0xMzkgbGluZXMpLgpIdW5rICMyIHN1Y2NlZWRlZCBhdCA1MjcgKG9mZnNldCAtMTM5 IGxpbmVzKS4KSHVuayAjMyBzdWNjZWVkZWQgYXQgNjE0IChvZmZzZXQgLTEzOSBsaW5lcykuCkh1 bmsgIzQgc3VjY2VlZGVkIGF0IDYzMSAob2Zmc2V0IC0xMzkgbGluZXMpLgpIdW5rICM1IHN1Y2Nl ZWRlZCBhdCA2NTQgKG9mZnNldCAtMTM5IGxpbmVzKS4KSHVuayAjNiBzdWNjZWVkZWQgYXQgNjY4 IChvZmZzZXQgLTEzOSBsaW5lcykuCmVycm9yOiB3aGlsZSBzZWFyY2hpbmcgZm9yOgoJCXVpbnQ2 NF90IGNtZFtzel07ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IFwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIFwKCQlSVEVfU0VUX1VTRUQobmJfZXZlbnRzKTsgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCgkJcmV0dXJuIGNuOWtfc3NvX2h3 c19ldmVudF90eCggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAoJCQl3cy0+YmFz ZSwgJmV2WzBdLCBjbWQsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAoJCQkoY29u c3QgdWludDY0X3QoKilbUlRFX01BWF9RVUVVRVNfUEVSX1BPUlRdKSAmICAgICAgICAgXAoJCQkJ d3MtPnR4X2FkcHRyX2RhdGEsICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCgkJCWZsYWdz KTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCgl9Cgoj ZGVmaW5lIFNTT19UWF9TRUcoZm4sIHN6LCBmbGFncykgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgXAoKZXJyb3I6IHBhdGNoIGZhaWxlZDogZHJpdmVycy9ldmVu dC9jbnhrL2NuOWtfd29ya2VyLmg6ODU4CmVycm9yOiB3aGlsZSBzZWFyY2hpbmcgZm9yOgoJCXN0 cnVjdCBjbjlrX3Nzb19od3MgKndzID0gcG9ydDsgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIFwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKCQlSVEVfU0VUX1VTRUQobmJfZXZlbnRzKTsg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCgkJcmV0dXJuIGNuOWtfc3Nv X2h3c19ldmVudF90eCggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAoJCQl3cy0+ YmFzZSwgJmV2WzBdLCBjbWQsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAoJCQko Y29uc3QgdWludDY0X3QoKilbUlRFX01BWF9RVUVVRVNfUEVSX1BPUlRdKSAmICAgICAgICAgXAoJ CQkJd3MtPnR4X2FkcHRyX2RhdGEsICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCgkJCShm bGFncykgfCBOSVhfVFhfTVVMVElfU0VHX0YpOyAgICAgICAgICAgICAgICAgICAgICAgICBcCgl9 CgojZGVmaW5lIFNTT19EVUFMX1RYKGZuLCBzeiwgZmxhZ3MpICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgXAoKZXJyb3I6IHBhdGNoIGZhaWxlZDogZHJpdmVycy9l dmVudC9jbnhrL2NuOWtfd29ya2VyLmg6ODczCmVycm9yOiB3aGlsZSBzZWFyY2hpbmcgZm9yOgoJ CXVpbnQ2NF90IGNtZFtzel07ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIFwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKCQlSVEVfU0VUX1VTRUQobmJfZXZlbnRz KTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCgkJcmV0dXJuIGNuOWtf c3NvX2h3c19ldmVudF90eCggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAoJCQl3 cy0+YmFzZVshd3MtPnZ3c10sICZldlswXSwgY21kLCAgICAgICAgICAgICAgICAgICAgICAgXAoJ CQkoY29uc3QgdWludDY0X3QoKilbUlRFX01BWF9RVUVVRVNfUEVSX1BPUlRdKSAmICAgICAgICAg XAoJCQkJd3MtPnR4X2FkcHRyX2RhdGEsICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCgkJ CWZsYWdzKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBc Cgl9CgojZGVmaW5lIFNTT19EVUFMX1RYX1NFRyhmbiwgc3osIGZsYWdzKSAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgXAoKZXJyb3I6IHBhdGNoIGZhaWxlZDogZHJpdmVy cy9ldmVudC9jbnhrL2NuOWtfd29ya2VyLmg6ODg4CmVycm9yOiB3aGlsZSBzZWFyY2hpbmcgZm9y OgoJCXN0cnVjdCBjbjlrX3Nzb19od3NfZHVhbCAqd3MgPSBwb3J0OyAgICAgICAgICAgICAgICAg ICAgICAgICAgIFwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKCQlSVEVfU0VUX1VTRUQobmJfZXZl bnRzKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCgkJcmV0dXJuIGNu OWtfc3NvX2h3c19ldmVudF90eCggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAoJ CQl3cy0+YmFzZVshd3MtPnZ3c10sICZldlswXSwgY21kLCAgICAgICAgICAgICAgICAgICAgICAg XAoJCQkoY29uc3QgdWludDY0X3QoKilbUlRFX01BWF9RVUVVRVNfUEVSX1BPUlRdKSAmICAgICAg ICAgXAoJCQkJd3MtPnR4X2FkcHRyX2RhdGEsICAgICAgICAgICAgICAgICAgICAgICAgICAgICBc CgkJCShmbGFncykgfCBOSVhfVFhfTVVMVElfU0VHX0YpOyAgICAgICAgICAgICAgICAgICAgICAg ICBcCgl9CgojZW5kaWYKCmVycm9yOiBwYXRjaCBmYWlsZWQ6IGRyaXZlcnMvZXZlbnQvY254ay9j bjlrX3dvcmtlci5oOjkwMwpDaGVja2luZyBwYXRjaCBkcml2ZXJzL2V2ZW50L2NueGsvY254a19l dmVudGRldi5oLi4uCkNoZWNraW5nIHBhdGNoIGRyaXZlcnMvZXZlbnQvY254ay9jbnhrX2V2ZW50 ZGV2X2FkcHRyLmMuLi4KQ2hlY2tpbmcgcGF0Y2ggZHJpdmVycy9uZXQvY254ay9jbjEwa19ldGhk ZXYuYy4uLgpDaGVja2luZyBwYXRjaCBkcml2ZXJzL25ldC9jbnhrL2NuMTBrX2V0aGRldi5oLi4u CkNoZWNraW5nIHBhdGNoIGRyaXZlcnMvbmV0L2NueGsvY24xMGtfdHguaC4uLgpIdW5rICMxIHN1 Y2NlZWRlZCBhdCAxODUgKG9mZnNldCAtMSBsaW5lcykuCkh1bmsgIzIgc3VjY2VlZGVkIGF0IDcy MCAob2Zmc2V0IC0xIGxpbmVzKS4KSHVuayAjMyBzdWNjZWVkZWQgYXQgODMxIChvZmZzZXQgLTEg bGluZXMpLgpIdW5rICM0IHN1Y2NlZWRlZCBhdCA4NTMgKG9mZnNldCAtMSBsaW5lcykuCkh1bmsg IzUgc3VjY2VlZGVkIGF0IDg5OCAob2Zmc2V0IC0xIGxpbmVzKS4KSHVuayAjNiBzdWNjZWVkZWQg YXQgOTU2IChvZmZzZXQgLTEgbGluZXMpLgpIdW5rICM3IHN1Y2NlZWRlZCBhdCA5NzYgKG9mZnNl dCAtMSBsaW5lcykuCkh1bmsgIzggc3VjY2VlZGVkIGF0IDEwMjggKG9mZnNldCAtMSBsaW5lcyku Ckh1bmsgIzkgc3VjY2VlZGVkIGF0IDEwNDEgKG9mZnNldCAtMSBsaW5lcykuCkh1bmsgIzEwIHN1 Y2NlZWRlZCBhdCAxNDYyIChvZmZzZXQgLTEgbGluZXMpLgpIdW5rICMxMSBzdWNjZWVkZWQgYXQg MTUxNCAob2Zmc2V0IC0xIGxpbmVzKS4KSHVuayAjMTIgc3VjY2VlZGVkIGF0IDI1ODIgKG9mZnNl dCAtMSBsaW5lcykuCkh1bmsgIzEzIHN1Y2NlZWRlZCBhdCAyNjQ1IChvZmZzZXQgLTEgbGluZXMp LgpIdW5rICMxNCBzdWNjZWVkZWQgYXQgMjY1NyAob2Zmc2V0IC0xIGxpbmVzKS4KZXJyb3I6IHdo aWxlIHNlYXJjaGluZyBmb3I6CgkJaWYgKCgoZmxhZ3MpICYgTklYX1RYX09GRkxPQURfVFNPX0Yp ICYmICAgICAgICAgICAgICAgICAgICAgICAgXAoJCSAgICAhKChmbGFncykgJiBOSVhfVFhfT0ZG TE9BRF9MM19MNF9DU1VNX0YpKSAgICAgICAgICAgICAgICAgIFwKCQkJcmV0dXJuIDA7ICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKCQlyZXR1cm4gY24xMGtf bml4X3htaXRfcGt0cyh0eF9xdWV1ZSwgdHhfcGt0cywgcGt0cywgY21kLCAwLCAgICBcCgkJCQkJ ICAgZmxhZ3MpOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAoJfQoKCmVycm9yOiBwYXRj aCBmYWlsZWQ6IGRyaXZlcnMvbmV0L2NueGsvY24xMGtfdHguaDoyODk2CmVycm9yOiB3aGlsZSBz ZWFyY2hpbmcgZm9yOgoJCWlmICgoKGZsYWdzKSAmIE5JWF9UWF9PRkZMT0FEX1RTT19GKSAmJiAg ICAgICAgICAgICAgICAgICAgICAgIFwKCQkgICAgISgoZmxhZ3MpICYgTklYX1RYX09GRkxPQURf TDNfTDRfQ1NVTV9GKSkgICAgICAgICAgICAgICAgICBcCgkJCXJldHVybiAwOyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCgkJcmV0dXJuIGNuMTBrX25peF94 bWl0X3BrdHNfbXNlZyh0eF9xdWV1ZSwgdHhfcGt0cywgcGt0cywgY21kLCAgXAoJCQkJCQkwLCAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgXAoJCQkJCQlmbGFncyB8IE5JWF9UWF9NVUxUSV9T RUdfRik7ICAgXAoJfQoKCmVycm9yOiBwYXRjaCBmYWlsZWQ6IGRyaXZlcnMvbmV0L2NueGsvY24x MGtfdHguaDoyOTEwCmVycm9yOiB3aGlsZSBzZWFyY2hpbmcgZm9yOgoJCWlmICgoKGZsYWdzKSAm IE5JWF9UWF9PRkZMT0FEX1RTT19GKSAmJiAgICAgICAgICAgICAgICAgICAgICAgIFwKCQkgICAg ISgoZmxhZ3MpICYgTklYX1RYX09GRkxPQURfTDNfTDRfQ1NVTV9GKSkgICAgICAgICAgICAgICAg ICBcCgkJCXJldHVybiAwOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBcCgkJcmV0dXJuIGNuMTBrX25peF94bWl0X3BrdHNfdmVjdG9yKHR4X3F1ZXVlLCB0eF9w a3RzLCBwa3RzLCAgICAgXAoJCQkJCQkgIGNtZCwgMCwgKGZsYWdzKSk7ICAgICAgICAgICAgXAoJ fQoKI2RlZmluZSBOSVhfVFhfWE1JVF9WRUNfTVNFRyhmbiwgc3osIGZsYWdzKSAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIFwKCmVycm9yOiBwYXRjaCBmYWlsZWQ6IGRyaXZlcnMv bmV0L2NueGsvY24xMGtfdHguaDoyOTI1CmVycm9yOiB3aGlsZSBzZWFyY2hpbmcgZm9yOgoJCSAg ICAhKChmbGFncykgJiBOSVhfVFhfT0ZGTE9BRF9MM19MNF9DU1VNX0YpKSAgICAgICAgICAgICAg ICAgIFwKCQkJcmV0dXJuIDA7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIFwKCQlyZXR1cm4gY24xMGtfbml4X3htaXRfcGt0c192ZWN0b3IoICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBcCgkJCXR4X3F1ZXVlLCB0eF9wa3RzLCBwa3RzLCBjbWQsIDAsICAg ICAgICAgICAgICAgICAgICAgICBcCgkJCShmbGFncykgfCBOSVhfVFhfTVVMVElfU0VHX0YpOyAg ICAgICAgICAgICAgICAgICAgICAgICBcCgl9CgoKZXJyb3I6IHBhdGNoIGZhaWxlZDogZHJpdmVy cy9uZXQvY254ay9jbjEwa190eC5oOjI5NDAKQ2hlY2tpbmcgcGF0Y2ggZHJpdmVycy9uZXQvY254 ay9jbjlrX2V0aGRldi5jLi4uCkNoZWNraW5nIHBhdGNoIGRyaXZlcnMvbmV0L2NueGsvY245a19l dGhkZXYuaC4uLgpDaGVja2luZyBwYXRjaCBkcml2ZXJzL25ldC9jbnhrL2NuOWtfdHguaC4uLgpI dW5rICMxIHN1Y2NlZWRlZCBhdCA1NyAob2Zmc2V0IC0xIGxpbmVzKS4KSHVuayAjMiBzdWNjZWVk ZWQgYXQgMTU4IChvZmZzZXQgLTEgbGluZXMpLgpIdW5rICMzIHN1Y2NlZWRlZCBhdCAzMDkgKG9m ZnNldCAtMSBsaW5lcykuCkh1bmsgIzQgc3VjY2VlZGVkIGF0IDM4NyAob2Zmc2V0IC0xIGxpbmVz KS4KSHVuayAjNSBzdWNjZWVkZWQgYXQgMzk0IChvZmZzZXQgLTEgbGluZXMpLgpIdW5rICM2IHN1 Y2NlZWRlZCBhdCA0NTEgKG9mZnNldCAtMSBsaW5lcykuCkh1bmsgIzcgc3VjY2VlZGVkIGF0IDUw NyAob2Zmc2V0IC0xIGxpbmVzKS4KSHVuayAjOCBzdWNjZWVkZWQgYXQgNTI1IChvZmZzZXQgLTEg bGluZXMpLgpIdW5rICM5IHN1Y2NlZWRlZCBhdCA1NDkgKG9mZnNldCAtMSBsaW5lcykuCkh1bmsg IzEwIHN1Y2NlZWRlZCBhdCA1NjggKG9mZnNldCAtMSBsaW5lcykuCkh1bmsgIzExIHN1Y2NlZWRl ZCBhdCA4OTYgKG9mZnNldCAtMSBsaW5lcykuCkFwcGxpZWQgcGF0Y2ggZHJpdmVycy9jb21tb24v Y254ay9yb2NfaW8uaCBjbGVhbmx5LgpBcHBsaWVkIHBhdGNoIGRyaXZlcnMvY29tbW9uL2NueGsv cm9jX2lvX2dlbmVyaWMuaCBjbGVhbmx5LgpBcHBsaWVkIHBhdGNoIGRyaXZlcnMvY3J5cHRvL2Nu eGsvY245a19jcnlwdG9kZXZfb3BzLmMgY2xlYW5seS4KQXBwbGllZCBwYXRjaCBkcml2ZXJzL2Ny eXB0by9jbnhrL2NuOWtfaXBzZWMuYyBjbGVhbmx5LgpBcHBsaWVkIHBhdGNoIGRyaXZlcnMvZXZl bnQvY254ay9jbjEwa19ldmVudGRldi5jIGNsZWFubHkuCkFwcGx5aW5nIHBhdGNoIGRyaXZlcnMv ZXZlbnQvY254ay9jbjEwa193b3JrZXIuaCB3aXRoIDMgcmVqZWN0cy4uLgpSZWplY3RlZCBodW5r ICMxLgpIdW5rICMyIGFwcGxpZWQgY2xlYW5seS4KSHVuayAjMyBhcHBsaWVkIGNsZWFubHkuCkh1 bmsgIzQgYXBwbGllZCBjbGVhbmx5LgpIdW5rICM1IGFwcGxpZWQgY2xlYW5seS4KSHVuayAjNiBh cHBsaWVkIGNsZWFubHkuCkh1bmsgIzcgYXBwbGllZCBjbGVhbmx5LgpSZWplY3RlZCBodW5rICM4 LgpSZWplY3RlZCBodW5rICM5LgpBcHBsaWVkIHBhdGNoIGRyaXZlcnMvZXZlbnQvY254ay9jbjlr X2V2ZW50ZGV2LmMgY2xlYW5seS4KQXBwbHlpbmcgcGF0Y2ggZHJpdmVycy9ldmVudC9jbnhrL2Nu OWtfd29ya2VyLmggd2l0aCA0IHJlamVjdHMuLi4KSHVuayAjMSBhcHBsaWVkIGNsZWFubHkuCkh1 bmsgIzIgYXBwbGllZCBjbGVhbmx5LgpIdW5rICMzIGFwcGxpZWQgY2xlYW5seS4KSHVuayAjNCBh cHBsaWVkIGNsZWFubHkuCkh1bmsgIzUgYXBwbGllZCBjbGVhbmx5LgpIdW5rICM2IGFwcGxpZWQg Y2xlYW5seS4KUmVqZWN0ZWQgaHVuayAjNy4KUmVqZWN0ZWQgaHVuayAjOC4KUmVqZWN0ZWQgaHVu ayAjOS4KUmVqZWN0ZWQgaHVuayAjMTAuCkFwcGxpZWQgcGF0Y2ggZHJpdmVycy9ldmVudC9jbnhr L2NueGtfZXZlbnRkZXYuaCBjbGVhbmx5LgpBcHBsaWVkIHBhdGNoIGRyaXZlcnMvZXZlbnQvY254 ay9jbnhrX2V2ZW50ZGV2X2FkcHRyLmMgY2xlYW5seS4KQXBwbGllZCBwYXRjaCBkcml2ZXJzL25l dC9jbnhrL2NuMTBrX2V0aGRldi5jIGNsZWFubHkuCkFwcGxpZWQgcGF0Y2ggZHJpdmVycy9uZXQv Y254ay9jbjEwa19ldGhkZXYuaCBjbGVhbmx5LgpBcHBseWluZyBwYXRjaCBkcml2ZXJzL25ldC9j bnhrL2NuMTBrX3R4Lmggd2l0aCA0IHJlamVjdHMuLi4KSHVuayAjMSBhcHBsaWVkIGNsZWFubHku Ckh1bmsgIzIgYXBwbGllZCBjbGVhbmx5LgpIdW5rICMzIGFwcGxpZWQgY2xlYW5seS4KSHVuayAj NCBhcHBsaWVkIGNsZWFubHkuCkh1bmsgIzUgYXBwbGllZCBjbGVhbmx5LgpIdW5rICM2IGFwcGxp ZWQgY2xlYW5seS4KSHVuayAjNyBhcHBsaWVkIGNsZWFubHkuCkh1bmsgIzggYXBwbGllZCBjbGVh bmx5LgpIdW5rICM5IGFwcGxpZWQgY2xlYW5seS4KSHVuayAjMTAgYXBwbGllZCBjbGVhbmx5LgpI dW5rICMxMSBhcHBsaWVkIGNsZWFubHkuCkh1bmsgIzEyIGFwcGxpZWQgY2xlYW5seS4KSHVuayAj MTMgYXBwbGllZCBjbGVhbmx5LgpIdW5rICMxNCBhcHBsaWVkIGNsZWFubHkuClJlamVjdGVkIGh1 bmsgIzE1LgpSZWplY3RlZCBodW5rICMxNi4KUmVqZWN0ZWQgaHVuayAjMTcuClJlamVjdGVkIGh1 bmsgIzE4LgpBcHBsaWVkIHBhdGNoIGRyaXZlcnMvbmV0L2NueGsvY245a19ldGhkZXYuYyBjbGVh bmx5LgpBcHBsaWVkIHBhdGNoIGRyaXZlcnMvbmV0L2NueGsvY245a19ldGhkZXYuaCBjbGVhbmx5 LgpBcHBsaWVkIHBhdGNoIGRyaXZlcnMvbmV0L2NueGsvY245a190eC5oIGNsZWFubHkuCmRpZmYg YS9kcml2ZXJzL2V2ZW50L2NueGsvY24xMGtfd29ya2VyLmggYi9kcml2ZXJzL2V2ZW50L2NueGsv Y24xMGtfd29ya2VyLmgJKHJlamVjdGVkIGh1bmtzKQpAQCAtNDU3LDE4ICs0NTcsMTggQEAgTklY X1JYX0ZBU1RQQVRIX01PREVTCiAJfQoKIHN0YXRpYyBfX3J0ZV9hbHdheXNfaW5saW5lIHN0cnVj dCBjbjEwa19ldGhfdHhxICoKLWNuMTBrX3Nzb19od3NfeHRyYWN0X21ldGEoc3RydWN0IHJ0ZV9t YnVmICptLAotCQkJICBjb25zdCB1aW50NjRfdCB0eHFfZGF0YVtdW1JURV9NQVhfUVVFVUVTX1BF Ul9QT1JUXSkKK2NuMTBrX3Nzb19od3NfeHRyYWN0X21ldGEoc3RydWN0IHJ0ZV9tYnVmICptLCBj b25zdCB1aW50NjRfdCAqdHhxX2RhdGEpCiB7Ci0JcmV0dXJuIChzdHJ1Y3QgY24xMGtfZXRoX3R4 cSAqKQotCQl0eHFfZGF0YVttLT5wb3J0XVtydGVfZXZlbnRfZXRoX3R4X2FkYXB0ZXJfdHhxX2dl dChtKV07CisJcmV0dXJuIChzdHJ1Y3QgY24xMGtfZXRoX3R4cQorCQkJKikodHhxX2RhdGFbKHR4 cV9kYXRhW20tPnBvcnRdID4+IDQ4KSArCisJCQkJICAgIHJ0ZV9ldmVudF9ldGhfdHhfYWRhcHRl cl90eHFfZ2V0KG0pXSAmCisJCQkgICAoQklUX1VMTCg0OCkgLSAxKSk7CiB9Cgogc3RhdGljIF9f cnRlX2Fsd2F5c19pbmxpbmUgdm9pZAotY24xMGtfc3NvX3R4X29uZShzdHJ1Y3QgcnRlX21idWYg Km0sIHVpbnQ2NF90ICpjbWQsIHVpbnQxNl90IGxtdF9pZCwKLQkJIHVpbnRwdHJfdCBsbXRfYWRk ciwgdWludDhfdCBzY2hlZF90eXBlLCB1aW50cHRyX3QgYmFzZSwKLQkJIGNvbnN0IHVpbnQ2NF90 IHR4cV9kYXRhW11bUlRFX01BWF9RVUVVRVNfUEVSX1BPUlRdLAotCQkgY29uc3QgdWludDMyX3Qg ZmxhZ3MpCitjbjEwa19zc29fdHhfb25lKHN0cnVjdCBjbjEwa19zc29faHdzICp3cywgc3RydWN0 IHJ0ZV9tYnVmICptLCB1aW50NjRfdCAqY21kLAorCQkgdWludDE2X3QgbG10X2lkLCB1aW50cHRy X3QgbG10X2FkZHIsIHVpbnQ4X3Qgc2NoZWRfdHlwZSwKKwkJIGNvbnN0IHVpbnQ2NF90ICp0eHFf ZGF0YSwgY29uc3QgdWludDMyX3QgZmxhZ3MpCiB7CiAJdWludDhfdCBsbnVtID0gMCwgbG9mZiA9 IDAsIHNoZnQgPSAwOwogCXN0cnVjdCBjbjEwa19ldGhfdHhxICp0eHE7CkBAIC02MzEsOSArNjM0 LDcgQEAgTklYX1RYX0ZBU1RQQVRIX01PREVTCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAogCQlS VEVfU0VUX1VTRUQobmJfZXZlbnRzKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBcCiAJCXJldHVybiBjbjEwa19zc29faHdzX2V2ZW50X3R4KCAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIFwKLQkJCXdzLCAmZXZbMF0sIGNtZCwgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBcCi0JCQkoY29uc3QgdWludDY0X3QoKilbUlRFX01BWF9RVUVV RVNfUEVSX1BPUlRdKSAmICAgICAgICAgXAotCQkJCXdzLT50eF9hZHB0cl9kYXRhLCAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgXAorCQkJd3MsICZldlswXSwgY21kLCAoY29uc3QgdWludDY0 X3QgKil3cy0+dHhfYWRwdHJfZGF0YSwgIFwKIAkJCWZsYWdzKTsgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCiAJfQoKQEAgLTY0Niw5ICs2NDcsNyBAQCBO SVhfVFhfRkFTVFBBVEhfTU9ERVMKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCiAJCVJURV9TRVRf VVNFRChuYl9ldmVudHMpOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwK IAkJcmV0dXJuIGNuMTBrX3Nzb19od3NfZXZlbnRfdHgoICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgXAotCQkJd3MsICZldlswXSwgY21kLCAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIFwKLQkJCShjb25zdCB1aW50NjRfdCgqKVtSVEVfTUFYX1FVRVVFU19QRVJf UE9SVF0pICYgICAgICAgICBcCi0JCQkJd3MtPnR4X2FkcHRyX2RhdGEsICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBcCisJCQl3cywgJmV2WzBdLCBjbWQsIChjb25zdCB1aW50NjRfdCAqKXdz LT50eF9hZHB0cl9kYXRhLCAgXAogCQkJKGZsYWdzKSB8IE5JWF9UWF9NVUxUSV9TRUdfRik7ICAg ICAgICAgICAgICAgICAgICAgICAgIFwKIAl9CgpkaWZmIGEvZHJpdmVycy9ldmVudC9jbnhrL2Nu OWtfd29ya2VyLmggYi9kcml2ZXJzL2V2ZW50L2NueGsvY245a193b3JrZXIuaAkocmVqZWN0ZWQg aHVua3MpCkBAIC04NTgsMTEgKzg1NCw5IEBAIE5JWF9UWF9GQVNUUEFUSF9NT0RFUwogCQl1aW50 NjRfdCBjbWRbc3pdOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBcCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgXAogCQlSVEVfU0VUX1VTRUQobmJfZXZlbnRzKTsg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCi0JCXJldHVybiBjbjlrX3Nz b19od3NfZXZlbnRfdHgoICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKLQkJCXdz LT5iYXNlLCAmZXZbMF0sIGNtZCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCi0J CQkoY29uc3QgdWludDY0X3QoKilbUlRFX01BWF9RVUVVRVNfUEVSX1BPUlRdKSAmICAgICAgICAg XAotCQkJCXdzLT50eF9hZHB0cl9kYXRhLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAot CQkJZmxhZ3MpOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IFwKKwkJcmV0dXJuIGNuOWtfc3NvX2h3c19ldmVudF90eCh3cy0+YmFzZSwgJmV2WzBdLCBjbWQs ICAgICAgICAgICAgXAorCQkJCQkgICAgICh1aW50NjRfdCAqKXdzLT50eF9hZHB0cl9kYXRhLCAg ICBcCisJCQkJCSAgICAgZmxhZ3MpOyAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKIAl9Cgog I2RlZmluZSBTU09fVFhfU0VHKGZuLCBzeiwgZmxhZ3MpICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIFwKQEAgLTg3MywxMSArODY3LDkgQEAgTklYX1RYX0ZBU1RQ QVRIX01PREVTCiAJCXN0cnVjdCBjbjlrX3Nzb19od3MgKndzID0gcG9ydDsgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIFwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCiAJCVJURV9TRVRf VVNFRChuYl9ldmVudHMpOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwK LQkJcmV0dXJuIGNuOWtfc3NvX2h3c19ldmVudF90eCggICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgXAotCQkJd3MtPmJhc2UsICZldlswXSwgY21kLCAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIFwKLQkJCShjb25zdCB1aW50NjRfdCgqKVtSVEVfTUFYX1FVRVVFU19QRVJf UE9SVF0pICYgICAgICAgICBcCi0JCQkJd3MtPnR4X2FkcHRyX2RhdGEsICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBcCi0JCQkoZmxhZ3MpIHwgTklYX1RYX01VTFRJX1NFR19GKTsgICAgICAg ICAgICAgICAgICAgICAgICAgXAorCQlyZXR1cm4gY245a19zc29faHdzX2V2ZW50X3R4KHdzLT5i YXNlLCAmZXZbMF0sIGNtZCwgICAgICAgICAgICBcCisJCQkJCSAgICAgKHVpbnQ2NF90ICopd3Mt PnR4X2FkcHRyX2RhdGEsICAgIFwKKwkJCQkJICAgICAoZmxhZ3MpIHwgTklYX1RYX01VTFRJX1NF R19GKTsgICAgXAogCX0KCiAjZGVmaW5lIFNTT19EVUFMX1RYKGZuLCBzeiwgZmxhZ3MpICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXApAQCAtODg4LDExICs4ODAs OSBAQCBOSVhfVFhfRkFTVFBBVEhfTU9ERVMKIAkJdWludDY0X3QgY21kW3N6XTsgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAogICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIFwKIAkJUlRFX1NFVF9VU0VEKG5iX2V2ZW50cyk7ICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgXAotCQlyZXR1cm4gY245a19zc29faHdzX2V2ZW50X3R4KCAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBcCi0JCQl3cy0+YmFzZVshd3MtPnZ3c10sICZldlsw XSwgY21kLCAgICAgICAgICAgICAgICAgICAgICAgXAotCQkJKGNvbnN0IHVpbnQ2NF90KCopW1JU RV9NQVhfUVVFVUVTX1BFUl9QT1JUXSkgJiAgICAgICAgIFwKLQkJCQl3cy0+dHhfYWRwdHJfZGF0 YSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKLQkJCWZsYWdzKTsgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisJCXJldHVybiBjbjlrX3Nzb19o d3NfZXZlbnRfdHgod3MtPmJhc2VbIXdzLT52d3NdLCAmZXZbMF0sIGNtZCwgIFwKKwkJCQkJICAg ICAodWludDY0X3QgKil3cy0+dHhfYWRwdHJfZGF0YSwgICAgXAorCQkJCQkgICAgIGZsYWdzKTsg ICAgICAgICAgICAgICAgICAgICAgICAgICBcCiAJfQoKICNkZWZpbmUgU1NPX0RVQUxfVFhfU0VH KGZuLCBzeiwgZmxhZ3MpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBc CkBAIC05MDMsMTEgKzg5Myw5IEBAIE5JWF9UWF9GQVNUUEFUSF9NT0RFUwogCQlzdHJ1Y3QgY245 a19zc29faHdzX2R1YWwgKndzID0gcG9ydDsgICAgICAgICAgICAgICAgICAgICAgICAgICBcCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgXAogCQlSVEVfU0VUX1VTRUQobmJfZXZlbnRzKTsgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCi0JCXJldHVybiBjbjlrX3Nzb19od3Nf ZXZlbnRfdHgoICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKLQkJCXdzLT5iYXNl WyF3cy0+dndzXSwgJmV2WzBdLCBjbWQsICAgICAgICAgICAgICAgICAgICAgICBcCi0JCQkoY29u c3QgdWludDY0X3QoKilbUlRFX01BWF9RVUVVRVNfUEVSX1BPUlRdKSAmICAgICAgICAgXAotCQkJ CXdzLT50eF9hZHB0cl9kYXRhLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAotCQkJKGZs YWdzKSB8IE5JWF9UWF9NVUxUSV9TRUdfRik7ICAgICAgICAgICAgICAgICAgICAgICAgIFwKKwkJ cmV0dXJuIGNuOWtfc3NvX2h3c19ldmVudF90eCh3cy0+YmFzZVshd3MtPnZ3c10sICZldlswXSwg Y21kLCAgXAorCQkJCQkgICAgICh1aW50NjRfdCAqKXdzLT50eF9hZHB0cl9kYXRhLCAgICBcCisJ CQkJCSAgICAgKGZsYWdzKSB8IE5JWF9UWF9NVUxUSV9TRUdfRik7ICAgIFwKIAl9CgogI2VuZGlm CmRpZmYgYS9kcml2ZXJzL25ldC9jbnhrL2NuMTBrX3R4LmggYi9kcml2ZXJzL25ldC9jbnhrL2Nu MTBrX3R4LmgJKHJlamVjdGVkIGh1bmtzKQpAQCAtMjg5Niw3ICsyOTAxLDcgQEAgTklYX1RYX0ZB U1RQQVRIX01PREVTCiAJCWlmICgoKGZsYWdzKSAmIE5JWF9UWF9PRkZMT0FEX1RTT19GKSAmJiAg ICAgICAgICAgICAgICAgICAgICAgIFwKIAkJICAgICEoKGZsYWdzKSAmIE5JWF9UWF9PRkZMT0FE X0wzX0w0X0NTVU1fRikpICAgICAgICAgICAgICAgICAgXAogCQkJcmV0dXJuIDA7ICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKLQkJcmV0dXJuIGNuMTBrX25p eF94bWl0X3BrdHModHhfcXVldWUsIHR4X3BrdHMsIHBrdHMsIGNtZCwgMCwgICAgXAorCQlyZXR1 cm4gY24xMGtfbml4X3htaXRfcGt0cyh0eF9xdWV1ZSwgTlVMTCwgdHhfcGt0cywgcGt0cywgY21k LCBcCiAJCQkJCSAgIGZsYWdzKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKIAl9CgpA QCAtMjkxMCw4ICsyOTE1LDggQEAgTklYX1RYX0ZBU1RQQVRIX01PREVTCiAJCWlmICgoKGZsYWdz KSAmIE5JWF9UWF9PRkZMT0FEX1RTT19GKSAmJiAgICAgICAgICAgICAgICAgICAgICAgIFwKIAkJ ICAgICEoKGZsYWdzKSAmIE5JWF9UWF9PRkZMT0FEX0wzX0w0X0NTVU1fRikpICAgICAgICAgICAg ICAgICAgXAogCQkJcmV0dXJuIDA7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIFwKLQkJcmV0dXJuIGNuMTBrX25peF94bWl0X3BrdHNfbXNlZyh0eF9xdWV1ZSwg dHhfcGt0cywgcGt0cywgY21kLCAgXAotCQkJCQkJMCwgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIFwKKwkJcmV0dXJuIGNuMTBrX25peF94bWl0X3BrdHNfbXNlZyh0eF9xdWV1ZSwgTlVMTCwg dHhfcGt0cywgcGt0cywgXAorCQkJCQkJY21kLCAgICAgICAgICAgICAgICAgICAgICAgICAgIFwK IAkJCQkJCWZsYWdzIHwgTklYX1RYX01VTFRJX1NFR19GKTsgICBcCiAJfQoKQEAgLTI5MjUsOCAr MjkzMCw4IEBAIE5JWF9UWF9GQVNUUEFUSF9NT0RFUwogCQlpZiAoKChmbGFncykgJiBOSVhfVFhf T0ZGTE9BRF9UU09fRikgJiYgICAgICAgICAgICAgICAgICAgICAgICBcCiAJCSAgICAhKChmbGFn cykgJiBOSVhfVFhfT0ZGTE9BRF9MM19MNF9DU1VNX0YpKSAgICAgICAgICAgICAgICAgIFwKIAkJ CXJldHVybiAwOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBc Ci0JCXJldHVybiBjbjEwa19uaXhfeG1pdF9wa3RzX3ZlY3Rvcih0eF9xdWV1ZSwgdHhfcGt0cywg cGt0cywgICAgIFwKLQkJCQkJCSAgY21kLCAwLCAoZmxhZ3MpKTsgICAgICAgICAgICBcCisJCXJl dHVybiBjbjEwa19uaXhfeG1pdF9wa3RzX3ZlY3Rvcih0eF9xdWV1ZSwgTlVMTCwgdHhfcGt0cywg ICAgIFwKKwkJCQkJCSAgcGt0cywgY21kLCAoZmxhZ3MpKTsgICAgICAgICBcCiAJfQoKICNkZWZp bmUgTklYX1RYX1hNSVRfVkVDX01TRUcoZm4sIHN6LCBmbGFncykgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBcCkBAIC0yOTQwLDcgKzI5NDUsNyBAQCBOSVhfVFhfRkFTVFBBVEhf TU9ERVMKIAkJICAgICEoKGZsYWdzKSAmIE5JWF9UWF9PRkZMT0FEX0wzX0w0X0NTVU1fRikpICAg ICAgICAgICAgICAgICAgXAogCQkJcmV0dXJuIDA7ICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIFwKIAkJcmV0dXJuIGNuMTBrX25peF94bWl0X3BrdHNfdmVjdG9y KCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAotCQkJdHhfcXVldWUsIHR4X3BrdHMsIHBr dHMsIGNtZCwgMCwgICAgICAgICAgICAgICAgICAgICAgIFwKKwkJCXR4X3F1ZXVlLCBOVUxMLCB0 eF9wa3RzLCBwa3RzLCBjbWQsICAgICAgICAgICAgICAgICAgICBcCiAJCQkoZmxhZ3MpIHwgTklY X1RYX01VTFRJX1NFR19GKTsgICAgICAgICAgICAgICAgICAgICAgICAgXAogCX0KCkNoZWNraW5n IHBhdGNoIGRyaXZlcnMvY29tbW9uL2NueGsvcm9jX3Nzby5oLi4uCkNoZWNraW5nIHBhdGNoIGRy aXZlcnMvZXZlbnQvY254ay9jbjEwa193b3JrZXIuaC4uLgplcnJvcjogZHJpdmVycy9ldmVudC9j bnhrL2NuMTBrX3dvcmtlci5oOiBkb2VzIG5vdCBtYXRjaCBpbmRleApDaGVja2luZyBwYXRjaCBk cml2ZXJzL2V2ZW50L2NueGsvY245a193b3JrZXIuaC4uLgplcnJvcjogZHJpdmVycy9ldmVudC9j bnhrL2NuOWtfd29ya2VyLmg6IGRvZXMgbm90IG1hdGNoIGluZGV4CkNoZWNraW5nIHBhdGNoIGRy aXZlcnMvZXZlbnQvY254ay9jbnhrX2V2ZW50ZGV2LmguLi4KZXJyb3I6IGRyaXZlcnMvZXZlbnQv Y254ay9jbnhrX2V2ZW50ZGV2Lmg6IGRvZXMgbm90IG1hdGNoIGluZGV4CkNoZWNraW5nIHBhdGNo IGRyaXZlcnMvZXZlbnQvY254ay9jbnhrX3dvcmtlci5oLi4uCkNoZWNraW5nIHBhdGNoIGRyaXZl cnMvbmV0L2NueGsvY24xMGtfdHguaC4uLgplcnJvcjogZHJpdmVycy9uZXQvY254ay9jbjEwa190 eC5oOiBkb2VzIG5vdCBtYXRjaCBpbmRleApBcHBsaWVkIHBhdGNoIGRyaXZlcnMvY29tbW9uL2Nu eGsvcm9jX3Nzby5oIGNsZWFubHkuCkFwcGxpZWQgcGF0Y2ggZHJpdmVycy9ldmVudC9jbnhrL2Nu eGtfd29ya2VyLmggY2xlYW5seS4KQ2hlY2tpbmcgcGF0Y2ggZHJpdmVycy9ldmVudC9jbnhrL2Nu MTBrX2V2ZW50ZGV2LmMuLi4KZXJyb3I6IGRyaXZlcnMvZXZlbnQvY254ay9jbjEwa19ldmVudGRl di5jOiBkb2VzIG5vdCBtYXRjaCBpbmRleApDaGVja2luZyBwYXRjaCBkcml2ZXJzL2V2ZW50L2Nu eGsvY245a19ldmVudGRldi5jLi4uCmVycm9yOiBkcml2ZXJzL2V2ZW50L2NueGsvY245a19ldmVu dGRldi5jOiBkb2VzIG5vdCBtYXRjaCBpbmRleApDaGVja2luZyBwYXRjaCBkcml2ZXJzL2V2ZW50 L2NueGsvY245a193b3JrZXIuaC4uLgplcnJvcjogZHJpdmVycy9ldmVudC9jbnhrL2NuOWtfd29y a2VyLmg6IGRvZXMgbm90IG1hdGNoIGluZGV4CkNoZWNraW5nIHBhdGNoIGRyaXZlcnMvZXZlbnQv Y254ay9jbnhrX2V2ZW50ZGV2LmMuLi4KQ2hlY2tpbmcgcGF0Y2ggZHJpdmVycy9ldmVudC9jbnhr L2NueGtfZXZlbnRkZXYuaC4uLgplcnJvcjogZHJpdmVycy9ldmVudC9jbnhrL2NueGtfZXZlbnRk ZXYuaDogZG9lcyBub3QgbWF0Y2ggaW5kZXgKQXBwbGllZCBwYXRjaCBkcml2ZXJzL2V2ZW50L2Nu eGsvY254a19ldmVudGRldi5jIGNsZWFubHkuCkNoZWNraW5nIHBhdGNoIGRyaXZlcnMvZXZlbnQv Y254ay9jbjEwa193b3JrZXIuaC4uLgplcnJvcjogZHJpdmVycy9ldmVudC9jbnhrL2NuMTBrX3dv cmtlci5oOiBkb2VzIG5vdCBtYXRjaCBpbmRleApDaGVja2luZyBwYXRjaCBkcml2ZXJzL25ldC9j bnhrL2NuMTBrX3J4LmguLi4KSHVuayAjMSBzdWNjZWVkZWQgYXQgNjA5IChvZmZzZXQgLTEgbGlu ZXMpLgpDaGVja2luZyBwYXRjaCBkcml2ZXJzL25ldC9jbnhrL2NuOWtfcnguaC4uLgpIdW5rICMx IHN1Y2NlZWRlZCBhdCAzNDEgKG9mZnNldCAtMSBsaW5lcykuCkh1bmsgIzIgc3VjY2VlZGVkIGF0 IDcyMiAob2Zmc2V0IC0xIGxpbmVzKS4KSHVuayAjMyBzdWNjZWVkZWQgYXQgNzQ2IChvZmZzZXQg LTEgbGluZXMpLgpBcHBsaWVkIHBhdGNoIGRyaXZlcnMvbmV0L2NueGsvY24xMGtfcnguaCBjbGVh bmx5LgpBcHBsaWVkIHBhdGNoIGRyaXZlcnMvbmV0L2NueGsvY245a19yeC5oIGNsZWFubHkuCgpo dHRwczovL2xhYi5kcGRrLm9yZy9yZXN1bHRzL2Rhc2hib2FyZC9wYXRjaHNldHMvMjA3MTgvCgpV TkgtSU9MIERQREsgQ29tbXVuaXR5IExhYgo= --===============0999300706401601926==--