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 AA2CDA0C4B for ; Tue, 9 Nov 2021 01:08:28 +0100 (CET) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 7BF9440151; Tue, 9 Nov 2021 01:08:28 +0100 (CET) Received: from mail-ua1-f100.google.com (mail-ua1-f100.google.com [209.85.222.100]) by mails.dpdk.org (Postfix) with ESMTP id 84FE740040 for ; Tue, 9 Nov 2021 01:08:27 +0100 (CET) Received: by mail-ua1-f100.google.com with SMTP id e10so35085317uab.3 for ; Mon, 08 Nov 2021 16:08:27 -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=L126tPhQCPs5bBTJyHoLE0eeKqdQASSWdFKTlnLf6KE=; b=fGLf+tdBEkPAEhsSEPmnoDZpTfvbEUCox2BdXLRh3bve2c0yaQsh3ADs7EsfmfqSZZ Y4jFeWoXN4qvG6w4UHq8+41NLrwAH8m+0Nz1pjGctsja8xl2QaTfujvMJaUQFHGWpcgk 8pMmc+1k1E5u8S6STFp6Lu1UZBjVQHkqREY4A= 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=L126tPhQCPs5bBTJyHoLE0eeKqdQASSWdFKTlnLf6KE=; b=himF3a6R26xxiAdfQJKLqDyQDXZ+O+izbdxeVWlMyTmqMfF6gSNVu3jmICISneBQGP zHB10pQHhvjnM1RQCQGPt0nMOAEmN6iFs7WDVup1dJEDKjdHeaCwx6og1WuxH36yCs0t 0NnzAHOcuIvwY7dRjv5hGUsVYaF5YT9c46SSFP3i6yYVCHajP6YMYx5nBYSFerj8BcpH M4ze26j4uNlKMSiI/ppanCaGHlAJx+ISCBZGHRb6YUaHU19Ny6e2IAn86hibC3AFvhwg Z4RS4Q3CSwEFUPaQzh//wJtQTeTxs32EfP2iDeTq95XeGWwyfDErVjW9m4BVR/DPH3B9 cX+Q== X-Gm-Message-State: AOAM5317QIo4pmkFVpSq6iziJ8DmIky1ezE0cmdKSP+eVw4NybAAq8jt u6oYsZHKyx/pxXH8IqM3VmunZblcX8FHDnSu7yxFiAqch+ytE0cy2KM3A2gOdbOSRw== X-Google-Smtp-Source: ABdhPJylEcsYv5vQ20KABYFZKrNe/thbXtnhGaVjZuupdNJdCwPjKUWY+4PYZfo7ZyJEO5VYt0FCHswkyfDR X-Received: by 2002:a67:b202:: with SMTP id b2mr5504795vsf.33.1636416506918; Mon, 08 Nov 2021 16:08:26 -0800 (PST) Received: from postal.iol.unh.edu (postal.iol.unh.edu. [2606:4100:3880:1234::84]) by smtp-relay.gmail.com with ESMTPS id g36sm4815078uah.3.2021.11.08.16.08.26 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Mon, 08 Nov 2021 16:08:26 -0800 (PST) X-Relaying-Domain: iol.unh.edu Received: from dpdk-ubuntu.dpdklab.iol.unh.edu (targon.iol.unh.edu [132.177.125.242]) by postal.iol.unh.edu (Postfix) with ESMTP id 7F177605247D; Mon, 8 Nov 2021 19:08:26 -0500 (EST) Received: from dpdk-ubuntu.dpdklab.iol.unh.edu (localhost [IPv6:::1]) by dpdk-ubuntu.dpdklab.iol.unh.edu (Postfix) with ESMTP id 79B1061CE7; Tue, 9 Nov 2021 00:08:26 +0000 (UTC) Content-Type: multipart/mixed; boundary="===============1288294257950461322==" MIME-Version: 1.0 From: dpdklab@iol.unh.edu To: test-report@dpdk.org Cc: dpdk-test-reports@iol.unh.edu Message-Id: <20211109000826.79B1061CE7@dpdk-ubuntu.dpdklab.iol.unh.edu> Date: Tue, 9 Nov 2021 00:08:26 +0000 (UTC) Subject: [dpdk-test-report] |WARNING| pw103994-103997 [PATCH] [V2, 4/4] common/mlx5: fix RQ size configuration in QP create 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 Sender: "test-report" --===============1288294257950461322== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 VGVzdC1MYWJlbDogaW9sLXRlc3RpbmcKVGVzdC1TdGF0dXM6IFdBUk5JTkcKaHR0cDovL2RwZGsu b3JnL3BhdGNoLzEwMzk5NAoKX2FwcGx5IHBhdGNoIGZhaWx1cmVfCgpTdWJtaXR0ZXI6IFJhamEg WmlkYW5lIDxyemlkYW5lQG52aWRpYS5jb20+CkRhdGU6IE1vbmRheSwgTm92ZW1iZXIgMDggMjAy MSAxMzowOToyMSAKQXBwbGllZCBvbjogQ29tbWl0SUQ6ZjhlMGY4Y2U5MDMwM2JhNzVlNDMwMWIx ZmI2Y2U1N2Q4ZDI1NWQ4ZgpBcHBseSBwYXRjaCBzZXQgMTAzOTk0LTEwMzk5NyBmYWlsZWQ6CgpD aGVja2luZyBwYXRjaCBkcml2ZXJzL2NvbW1vbi9tbHg1L21seDVfY29tbW9uX2RldnguYy4uLgpl cnJvcjogd2hpbGUgc2VhcmNoaW5nIGZvcjoKCXNpemVfdCBhbGlnbm1lbnQgPSBNTFg1X0NRRV9C VUZfQUxJR05NRU5UOwoJdWludDMyX3QgdW1lbV9zaXplLCB1bWVtX2RicmVjOwoJdWludDMyX3Qg ZXFuOwoJdWludDE2X3QgY3Ffc2l6ZSA9IDEgPDwgbG9nX2Rlc2NfbjsKCWludCByZXQ7CgoJaWYg KHBhZ2Vfc2l6ZSA9PSAoc2l6ZV90KS0xIHx8IGFsaWdubWVudCA9PSAoc2l6ZV90KS0xKSB7Cgpl cnJvcjogcGF0Y2ggZmFpbGVkOiBkcml2ZXJzL2NvbW1vbi9tbHg1L21seDVfY29tbW9uX2Rldngu Yzo4NgplcnJvcjogd2hpbGUgc2VhcmNoaW5nIGZvcjoKCQlyZXR1cm4gLXJ0ZV9lcnJubzsKCX0K CS8qIEFsbG9jYXRlIG1lbW9yeSBidWZmZXIgZm9yIENRRXMgYW5kIGRvb3JiZWxsIHJlY29yZC4g Ki8KCXVtZW1fc2l6ZSA9IHNpemVvZihzdHJ1Y3QgbWx4NV9jcWUpICogY3Ffc2l6ZTsKCXVtZW1f ZGJyZWMgPSBSVEVfQUxJR04odW1lbV9zaXplLCBNTFg1X0RCUl9TSVpFKTsKCXVtZW1fc2l6ZSAr PSBNTFg1X0RCUl9TSVpFOwoJdW1lbV9idWYgPSBtbHg1X21hbGxvYyhNTFg1X01FTV9SVEUgfCBN TFg1X01FTV9aRVJPLCB1bWVtX3NpemUsCgplcnJvcjogcGF0Y2ggZmFpbGVkOiBkcml2ZXJzL2Nv bW1vbi9tbHg1L21seDVfY29tbW9uX2RldnguYzoxMDIKZXJyb3I6IHdoaWxlIHNlYXJjaGluZyBm b3I6CgljcV9vYmotPmNxID0gY3E7CgljcV9vYmotPmRiX3JlYyA9IFJURV9QVFJfQUREKGNxX29i ai0+dW1lbV9idWYsIHVtZW1fZGJyZWMpOwoJLyogTWFyayBhbGwgQ1FFcyBpbml0aWFsbHkgYXMg aW52YWxpZC4gKi8KCW1seDVfY3FfaW5pdChjcV9vYmosIGNxX3NpemUpOwoJcmV0dXJuIDA7CmVy cm9yOgoJcmV0ID0gcnRlX2Vycm5vOwoKZXJyb3I6IHBhdGNoIGZhaWxlZDogZHJpdmVycy9jb21t b24vbWx4NS9tbHg1X2NvbW1vbl9kZXZ4LmM6MTQyCmVycm9yOiB3aGlsZSBzZWFyY2hpbmcgZm9y OgoJdm9pZCAqdW1lbV9idWYgPSBOVUxMOwoJc2l6ZV90IGFsaWdubWVudCA9IE1MWDVfV1FFX0JV Rl9BTElHTk1FTlQ7Cgl1aW50MzJfdCB1bWVtX3NpemUsIHVtZW1fZGJyZWM7Cgl1aW50MTZfdCBz cV9zaXplID0gMSA8PCBsb2dfd3FiYl9uOwoJaW50IHJldDsKCglpZiAoYWxpZ25tZW50ID09IChz aXplX3QpLTEpIHsKCmVycm9yOiBwYXRjaCBmYWlsZWQ6IGRyaXZlcnMvY29tbW9uL21seDUvbWx4 NV9jb21tb25fZGV2eC5jOjIxMQplcnJvcjogd2hpbGUgc2VhcmNoaW5nIGZvcjoKCQlyZXR1cm4g LXJ0ZV9lcnJubzsKCX0KCS8qIEFsbG9jYXRlIG1lbW9yeSBidWZmZXIgZm9yIFdRRXMgYW5kIGRv b3JiZWxsIHJlY29yZC4gKi8KCXVtZW1fc2l6ZSA9IE1MWDVfV1FFX1NJWkUgKiBzcV9zaXplOwoJ dW1lbV9kYnJlYyA9IFJURV9BTElHTih1bWVtX3NpemUsIE1MWDVfREJSX1NJWkUpOwoJdW1lbV9z aXplICs9IE1MWDVfREJSX1NJWkU7Cgl1bWVtX2J1ZiA9IG1seDVfbWFsbG9jKE1MWDVfTUVNX1JU RSB8IE1MWDVfTUVNX1pFUk8sIHVtZW1fc2l6ZSwKCmVycm9yOiBwYXRjaCBmYWlsZWQ6IGRyaXZl cnMvY29tbW9uL21seDUvbWx4NV9jb21tb25fZGV2eC5jOjIyMAplcnJvcjogd2hpbGUgc2VhcmNo aW5nIGZvcjoKICogICAwIG9uIHN1Y2Nlc3MsIGEgbmVnYXRpdmUgZXJybm8gdmFsdWUgb3RoZXJ3 aXNlIGFuZCBydGVfZXJybm8gaXMgc2V0LgogKi8KaW50Cm1seDVfZGV2eF9xcF9jcmVhdGUodm9p ZCAqY3R4LCBzdHJ1Y3QgbWx4NV9kZXZ4X3FwICpxcF9vYmosIHVpbnQxNl90IGxvZ193cWJiX24s CgkJICAgIHN0cnVjdCBtbHg1X2RldnhfcXBfYXR0ciAqYXR0ciwgaW50IHNvY2tldCkKewoJc3Ry dWN0IG1seDVfZGV2eF9vYmogKnFwID0gTlVMTDsKCmVycm9yOiBwYXRjaCBmYWlsZWQ6IGRyaXZl cnMvY29tbW9uL21seDUvbWx4NV9jb21tb25fZGV2eC5jOjM0OQplcnJvcjogd2hpbGUgc2VhcmNo aW5nIGZvcjoKCXZvaWQgKnVtZW1fYnVmID0gTlVMTDsKCXNpemVfdCBhbGlnbm1lbnQgPSBNTFg1 X1dRRV9CVUZfQUxJR05NRU5UOwoJdWludDMyX3QgdW1lbV9zaXplLCB1bWVtX2RicmVjOwoJdWlu dDE2X3QgcXBfc2l6ZSA9IDEgPDwgbG9nX3dxYmJfbjsKCWludCByZXQ7CgoJaWYgKGFsaWdubWVu dCA9PSAoc2l6ZV90KS0xKSB7CgplcnJvcjogcGF0Y2ggZmFpbGVkOiBkcml2ZXJzL2NvbW1vbi9t bHg1L21seDVfY29tbW9uX2RldnguYzozNTcKZXJyb3I6IHdoaWxlIHNlYXJjaGluZyBmb3I6CgkJ cmV0dXJuIC1ydGVfZXJybm87Cgl9CgkvKiBBbGxvY2F0ZSBtZW1vcnkgYnVmZmVyIGZvciBXUUVz IGFuZCBkb29yYmVsbCByZWNvcmQuICovCgl1bWVtX3NpemUgPSBNTFg1X1dRRV9TSVpFICogcXBf c2l6ZTsKCXVtZW1fZGJyZWMgPSBSVEVfQUxJR04odW1lbV9zaXplLCBNTFg1X0RCUl9TSVpFKTsK CXVtZW1fc2l6ZSArPSBNTFg1X0RCUl9TSVpFOwoJdW1lbV9idWYgPSBtbHg1X21hbGxvYyhNTFg1 X01FTV9SVEUgfCBNTFg1X01FTV9aRVJPLCB1bWVtX3NpemUsCgplcnJvcjogcGF0Y2ggZmFpbGVk OiBkcml2ZXJzL2NvbW1vbi9tbHg1L21seDVfY29tbW9uX2RldnguYzozNjYKQ2hlY2tpbmcgcGF0 Y2ggZHJpdmVycy9jb21tb24vbWx4NS9tbHg1X2NvbW1vbl9kZXZ4LmguLi4KZXJyb3I6IHdoaWxl IHNlYXJjaGluZyBmb3I6CgpfX3J0ZV9pbnRlcm5hbAppbnQgbWx4NV9kZXZ4X3FwX2NyZWF0ZSh2 b2lkICpjdHgsIHN0cnVjdCBtbHg1X2RldnhfcXAgKnFwX29iaiwKCQkJdWludDE2X3QgbG9nX3dx YmJfbiwKCQkJc3RydWN0IG1seDVfZGV2eF9xcF9hdHRyICphdHRyLCBpbnQgc29ja2V0KTsKCl9f cnRlX2ludGVybmFsCgplcnJvcjogcGF0Y2ggZmFpbGVkOiBkcml2ZXJzL2NvbW1vbi9tbHg1L21s eDVfY29tbW9uX2RldnguaDo4OQpBcHBseWluZyBwYXRjaCBkcml2ZXJzL2NvbW1vbi9tbHg1L21s eDVfY29tbW9uX2RldnguYyB3aXRoIDggcmVqZWN0cy4uLgpSZWplY3RlZCBodW5rICMxLgpSZWpl Y3RlZCBodW5rICMyLgpSZWplY3RlZCBodW5rICMzLgpSZWplY3RlZCBodW5rICM0LgpSZWplY3Rl ZCBodW5rICM1LgpSZWplY3RlZCBodW5rICM2LgpSZWplY3RlZCBodW5rICM3LgpSZWplY3RlZCBo dW5rICM4LgpBcHBseWluZyBwYXRjaCBkcml2ZXJzL2NvbW1vbi9tbHg1L21seDVfY29tbW9uX2Rl dnguaCB3aXRoIDEgcmVqZWN0Li4uClJlamVjdGVkIGh1bmsgIzEuCmRpZmYgYS9kcml2ZXJzL2Nv bW1vbi9tbHg1L21seDVfY29tbW9uX2RldnguYyBiL2RyaXZlcnMvY29tbW9uL21seDUvbWx4NV9j b21tb25fZGV2eC5jCShyZWplY3RlZCBodW5rcykKQEAgLTg2LDcgKzg2LDcgQEAgbWx4NV9kZXZ4 X2NxX2NyZWF0ZSh2b2lkICpjdHgsIHN0cnVjdCBtbHg1X2RldnhfY3EgKmNxX29iaiwgdWludDE2 X3QgbG9nX2Rlc2NfbiwKIAlzaXplX3QgYWxpZ25tZW50ID0gTUxYNV9DUUVfQlVGX0FMSUdOTUVO VDsKIAl1aW50MzJfdCB1bWVtX3NpemUsIHVtZW1fZGJyZWM7CiAJdWludDMyX3QgZXFuOwotCXVp bnQxNl90IGNxX3NpemUgPSAxIDw8IGxvZ19kZXNjX247CisJdWludDMyX3QgbnVtX29mX2NxZXMg PSBSVEVfQklUMzIobG9nX2Rlc2Nfbik7CiAJaW50IHJldDsKIAogCWlmIChwYWdlX3NpemUgPT0g KHNpemVfdCktMSB8fCBhbGlnbm1lbnQgPT0gKHNpemVfdCktMSkgewpAQCAtMTAyLDcgKzEwMiw3 IEBAIG1seDVfZGV2eF9jcV9jcmVhdGUodm9pZCAqY3R4LCBzdHJ1Y3QgbWx4NV9kZXZ4X2NxICpj cV9vYmosIHVpbnQxNl90IGxvZ19kZXNjX24sCiAJCXJldHVybiAtcnRlX2Vycm5vOwogCX0KIAkv KiBBbGxvY2F0ZSBtZW1vcnkgYnVmZmVyIGZvciBDUUVzIGFuZCBkb29yYmVsbCByZWNvcmQuICov Ci0JdW1lbV9zaXplID0gc2l6ZW9mKHN0cnVjdCBtbHg1X2NxZSkgKiBjcV9zaXplOworCXVtZW1f c2l6ZSA9IHNpemVvZihzdHJ1Y3QgbWx4NV9jcWUpICogbnVtX29mX2NxZXM7CiAJdW1lbV9kYnJl YyA9IFJURV9BTElHTih1bWVtX3NpemUsIE1MWDVfREJSX1NJWkUpOwogCXVtZW1fc2l6ZSArPSBN TFg1X0RCUl9TSVpFOwogCXVtZW1fYnVmID0gbWx4NV9tYWxsb2MoTUxYNV9NRU1fUlRFIHwgTUxY NV9NRU1fWkVSTywgdW1lbV9zaXplLApAQCAtMTQyLDcgKzE0Miw3IEBAIG1seDVfZGV2eF9jcV9j cmVhdGUodm9pZCAqY3R4LCBzdHJ1Y3QgbWx4NV9kZXZ4X2NxICpjcV9vYmosIHVpbnQxNl90IGxv Z19kZXNjX24sCiAJY3Ffb2JqLT5jcSA9IGNxOwogCWNxX29iai0+ZGJfcmVjID0gUlRFX1BUUl9B REQoY3Ffb2JqLT51bWVtX2J1ZiwgdW1lbV9kYnJlYyk7CiAJLyogTWFyayBhbGwgQ1FFcyBpbml0 aWFsbHkgYXMgaW52YWxpZC4gKi8KLQltbHg1X2NxX2luaXQoY3Ffb2JqLCBjcV9zaXplKTsKKwlt bHg1X2NxX2luaXQoY3Ffb2JqLCBudW1fb2ZfY3Flcyk7CiAJcmV0dXJuIDA7CiBlcnJvcjoKIAly ZXQgPSBydGVfZXJybm87CkBAIC0yMTEsNyArMjExLDcgQEAgbWx4NV9kZXZ4X3NxX2NyZWF0ZSh2 b2lkICpjdHgsIHN0cnVjdCBtbHg1X2Rldnhfc3EgKnNxX29iaiwgdWludDE2X3QgbG9nX3dxYmJf biwKIAl2b2lkICp1bWVtX2J1ZiA9IE5VTEw7CiAJc2l6ZV90IGFsaWdubWVudCA9IE1MWDVfV1FF X0JVRl9BTElHTk1FTlQ7CiAJdWludDMyX3QgdW1lbV9zaXplLCB1bWVtX2RicmVjOwotCXVpbnQx Nl90IHNxX3NpemUgPSAxIDw8IGxvZ193cWJiX247CisJdWludDMyX3QgbnVtX29mX3dxYmJzID0g UlRFX0JJVDMyKGxvZ193cWJiX24pOwogCWludCByZXQ7CiAKIAlpZiAoYWxpZ25tZW50ID09IChz aXplX3QpLTEpIHsKQEAgLTIyMCw3ICsyMjAsNyBAQCBtbHg1X2Rldnhfc3FfY3JlYXRlKHZvaWQg KmN0eCwgc3RydWN0IG1seDVfZGV2eF9zcSAqc3Ffb2JqLCB1aW50MTZfdCBsb2dfd3FiYl9uLAog CQlyZXR1cm4gLXJ0ZV9lcnJubzsKIAl9CiAJLyogQWxsb2NhdGUgbWVtb3J5IGJ1ZmZlciBmb3Ig V1FFcyBhbmQgZG9vcmJlbGwgcmVjb3JkLiAqLwotCXVtZW1fc2l6ZSA9IE1MWDVfV1FFX1NJWkUg KiBzcV9zaXplOworCXVtZW1fc2l6ZSA9IE1MWDVfV1FFX1NJWkUgKiBudW1fb2Zfd3FiYnM7CiAJ dW1lbV9kYnJlYyA9IFJURV9BTElHTih1bWVtX3NpemUsIE1MWDVfREJSX1NJWkUpOwogCXVtZW1f c2l6ZSArPSBNTFg1X0RCUl9TSVpFOwogCXVtZW1fYnVmID0gbWx4NV9tYWxsb2MoTUxYNV9NRU1f UlRFIHwgTUxYNV9NRU1fWkVSTywgdW1lbV9zaXplLApAQCAtMzQ5LDcgKzM0OSw3IEBAIG1seDVf ZGV2eF9xcF9kZXN0cm95KHN0cnVjdCBtbHg1X2RldnhfcXAgKnFwKQogICogICAwIG9uIHN1Y2Nl c3MsIGEgbmVnYXRpdmUgZXJybm8gdmFsdWUgb3RoZXJ3aXNlIGFuZCBydGVfZXJybm8gaXMgc2V0 LgogICovCiBpbnQKLW1seDVfZGV2eF9xcF9jcmVhdGUodm9pZCAqY3R4LCBzdHJ1Y3QgbWx4NV9k ZXZ4X3FwICpxcF9vYmosIHVpbnQxNl90IGxvZ193cWJiX24sCittbHg1X2RldnhfcXBfY3JlYXRl KHZvaWQgKmN0eCwgc3RydWN0IG1seDVfZGV2eF9xcCAqcXBfb2JqLCB1aW50MzJfdCBsb2dfd3Fi Yl9uLAogCQkgICAgc3RydWN0IG1seDVfZGV2eF9xcF9hdHRyICphdHRyLCBpbnQgc29ja2V0KQog ewogCXN0cnVjdCBtbHg1X2Rldnhfb2JqICpxcCA9IE5VTEw7CkBAIC0zNTcsNyArMzU3LDcgQEAg bWx4NV9kZXZ4X3FwX2NyZWF0ZSh2b2lkICpjdHgsIHN0cnVjdCBtbHg1X2RldnhfcXAgKnFwX29i aiwgdWludDE2X3QgbG9nX3dxYmJfbiwKIAl2b2lkICp1bWVtX2J1ZiA9IE5VTEw7CiAJc2l6ZV90 IGFsaWdubWVudCA9IE1MWDVfV1FFX0JVRl9BTElHTk1FTlQ7CiAJdWludDMyX3QgdW1lbV9zaXpl LCB1bWVtX2RicmVjOwotCXVpbnQxNl90IHFwX3NpemUgPSAxIDw8IGxvZ193cWJiX247CisJdWlu dDMyX3QgbnVtX29mX3dxYmJzID0gUlRFX0JJVDMyKGxvZ193cWJiX24pOwogCWludCByZXQ7CiAK IAlpZiAoYWxpZ25tZW50ID09IChzaXplX3QpLTEpIHsKQEAgLTM2Niw3ICszNjYsNyBAQCBtbHg1 X2RldnhfcXBfY3JlYXRlKHZvaWQgKmN0eCwgc3RydWN0IG1seDVfZGV2eF9xcCAqcXBfb2JqLCB1 aW50MTZfdCBsb2dfd3FiYl9uLAogCQlyZXR1cm4gLXJ0ZV9lcnJubzsKIAl9CiAJLyogQWxsb2Nh dGUgbWVtb3J5IGJ1ZmZlciBmb3IgV1FFcyBhbmQgZG9vcmJlbGwgcmVjb3JkLiAqLwotCXVtZW1f c2l6ZSA9IE1MWDVfV1FFX1NJWkUgKiBxcF9zaXplOworCXVtZW1fc2l6ZSA9IE1MWDVfV1FFX1NJ WkUgKiBudW1fb2Zfd3FiYnM7CiAJdW1lbV9kYnJlYyA9IFJURV9BTElHTih1bWVtX3NpemUsIE1M WDVfREJSX1NJWkUpOwogCXVtZW1fc2l6ZSArPSBNTFg1X0RCUl9TSVpFOwogCXVtZW1fYnVmID0g bWx4NV9tYWxsb2MoTUxYNV9NRU1fUlRFIHwgTUxYNV9NRU1fWkVSTywgdW1lbV9zaXplLApkaWZm IGEvZHJpdmVycy9jb21tb24vbWx4NS9tbHg1X2NvbW1vbl9kZXZ4LmggYi9kcml2ZXJzL2NvbW1v bi9tbHg1L21seDVfY29tbW9uX2RldnguaAkocmVqZWN0ZWQgaHVua3MpCkBAIC04OSw3ICs4OSw3 IEBAIHZvaWQgbWx4NV9kZXZ4X3FwX2Rlc3Ryb3koc3RydWN0IG1seDVfZGV2eF9xcCAqcXApOwog CiBfX3J0ZV9pbnRlcm5hbAogaW50IG1seDVfZGV2eF9xcF9jcmVhdGUodm9pZCAqY3R4LCBzdHJ1 Y3QgbWx4NV9kZXZ4X3FwICpxcF9vYmosCi0JCQl1aW50MTZfdCBsb2dfd3FiYl9uLAorCQkJdWlu dDMyX3QgbG9nX3dxYmJfbiwKIAkJCXN0cnVjdCBtbHg1X2RldnhfcXBfYXR0ciAqYXR0ciwgaW50 IHNvY2tldCk7CiAKIF9fcnRlX2ludGVybmFsCkNoZWNraW5nIHBhdGNoIGRyaXZlcnMvY3J5cHRv L21seDUvbWx4NV9jcnlwdG9fZGVrLmMuLi4KZXJyb3I6IHdoaWxlIHNlYXJjaGluZyBmb3I6CnZv aWQKbWx4NV9jcnlwdG9fZGVrX3Vuc2V0KHN0cnVjdCBtbHg1X2NyeXB0b19wcml2ICpwcml2KQp7 CgltbHg1X2hsaXN0X2Rlc3Ryb3kocHJpdi0+ZGVrX2hsaXN0KTsKCXByaXYtPmRla19obGlzdCA9 IE5VTEw7Cn0KCmVycm9yOiBwYXRjaCBmYWlsZWQ6IGRyaXZlcnMvY3J5cHRvL21seDUvbWx4NV9j cnlwdG9fZGVrLmM6MTU2CkFwcGx5aW5nIHBhdGNoIGRyaXZlcnMvY3J5cHRvL21seDUvbWx4NV9j cnlwdG9fZGVrLmMgd2l0aCAxIHJlamVjdC4uLgpSZWplY3RlZCBodW5rICMxLgpkaWZmIGEvZHJp dmVycy9jcnlwdG8vbWx4NS9tbHg1X2NyeXB0b19kZWsuYyBiL2RyaXZlcnMvY3J5cHRvL21seDUv bWx4NV9jcnlwdG9fZGVrLmMJKHJlamVjdGVkIGh1bmtzKQpAQCAtMTU2LDYgKzE1Niw4IEBAIG1s eDVfY3J5cHRvX2Rla19zZXR1cChzdHJ1Y3QgbWx4NV9jcnlwdG9fcHJpdiAqcHJpdikKIHZvaWQK IG1seDVfY3J5cHRvX2Rla191bnNldChzdHJ1Y3QgbWx4NV9jcnlwdG9fcHJpdiAqcHJpdikKIHsK LQltbHg1X2hsaXN0X2Rlc3Ryb3kocHJpdi0+ZGVrX2hsaXN0KTsKLQlwcml2LT5kZWtfaGxpc3Qg PSBOVUxMOworCWlmIChwcml2LT5kZWtfaGxpc3QpIHsKKwkJbWx4NV9obGlzdF9kZXN0cm95KHBy aXYtPmRla19obGlzdCk7CisJCXByaXYtPmRla19obGlzdCA9IE5VTEw7CisJfQogfQpDaGVja2lu ZyBwYXRjaCBkcml2ZXJzL2NvbW1vbi9tbHg1L21seDVfZGV2eF9jbWRzLmMuLi4KZXJyb3I6IHdo aWxlIHNlYXJjaGluZyBmb3I6CgkJCU1MWDVfSENBX0NBUF9PUE1PRF9HRVRfQ1VSKTsKCWlmICgh aGNhdHRyKQoJCXJldHVybiByYzsKCWF0dHItPmZsb3dfY291bnRlcl9idWxrX2FsbG9jX2JpdG1h cCA9CgkJCU1MWDVfR0VUKGNtZF9oY2FfY2FwLCBoY2F0dHIsIGZsb3dfY291bnRlcl9idWxrX2Fs bG9jKTsKCWF0dHItPmZsb3dfY291bnRlcnNfZHVtcCA9IE1MWDVfR0VUKGNtZF9oY2FfY2FwLCBo Y2F0dHIsCgplcnJvcjogcGF0Y2ggZmFpbGVkOiBkcml2ZXJzL2NvbW1vbi9tbHg1L21seDVfZGV2 eF9jbWRzLmM6ODMyCmVycm9yOiB3aGlsZSBzZWFyY2hpbmcgZm9yOgoJCWlmIChhdHRyLT5sb2df cGFnZV9zaXplID4gTUxYNV9BREFQVEVSX1BBR0VfU0hJRlQpCgkJCU1MWDVfU0VUKHFwYywgcXBj LCBsb2dfcGFnZV9zaXplLAoJCQkJIGF0dHItPmxvZ19wYWdlX3NpemUgLSBNTFg1X0FEQVBURVJf UEFHRV9TSElGVCk7CgkJaWYgKGF0dHItPnNxX3NpemUpIHsKCQkJTUxYNV9BU1NFUlQoUlRFX0lT X1BPV0VSX09GXzIoYXR0ci0+c3Ffc2l6ZSkpOwoJCQlNTFg1X1NFVChxcGMsIHFwYywgY3FuX3Nu ZCwgYXR0ci0+Y3FuKTsKCQkJTUxYNV9TRVQocXBjLCBxcGMsIGxvZ19zcV9zaXplLAoJCQkJIHJ0 ZV9sb2cyX3UzMihhdHRyLT5zcV9zaXplKSk7CgkJfSBlbHNlIHsKCQkJTUxYNV9TRVQocXBjLCBx cGMsIG5vX3NxLCAxKTsKCQl9CgkJaWYgKGF0dHItPnJxX3NpemUpIHsKCQkJTUxYNV9BU1NFUlQo UlRFX0lTX1BPV0VSX09GXzIoYXR0ci0+cnFfc2l6ZSkpOwoJCQlNTFg1X1NFVChxcGMsIHFwYywg Y3FuX3JjdiwgYXR0ci0+Y3FuKTsKCQkJTUxYNV9TRVQocXBjLCBxcGMsIGxvZ19ycV9zdHJpZGUs IGF0dHItPmxvZ19ycV9zdHJpZGUgLQoJCQkJIE1MWDVfTE9HX1JRX1NUUklERV9TSElGVCk7CgkJ CU1MWDVfU0VUKHFwYywgcXBjLCBsb2dfcnFfc2l6ZSwKCQkJCSBydGVfbG9nMl91MzIoYXR0ci0+ cnFfc2l6ZSkpOwoJCQlNTFg1X1NFVChxcGMsIHFwYywgcnFfdHlwZSwgTUxYNV9OT05fWkVST19S USk7CgkJfSBlbHNlIHsKCQkJTUxYNV9TRVQocXBjLCBxcGMsIHJxX3R5cGUsIE1MWDVfWkVST19M RU5fUlEpOwoKZXJyb3I6IHBhdGNoIGZhaWxlZDogZHJpdmVycy9jb21tb24vbWx4NS9tbHg1X2Rl dnhfY21kcy5jOjIxNTMKQ2hlY2tpbmcgcGF0Y2ggZHJpdmVycy9jb21tb24vbWx4NS9tbHg1X2Rl dnhfY21kcy5oLi4uCmVycm9yOiB3aGlsZSBzZWFyY2hpbmcgZm9yOgoJdWludDMyX3QgbG9nX21h eF9tbW9fZGVjb21wcmVzczo1OwoJdWludDMyX3QgdW1yX21vZGlmeV9lbnRpdHlfc2l6ZV9kaXNh YmxlZDoxOwoJdWludDMyX3QgdW1yX2luZGlyZWN0X21rZXlfZGlzYWJsZWQ6MTsKfTsKCi8qIExB RyBDb250ZXh0LiAqLwoKZXJyb3I6IHBhdGNoIGZhaWxlZDogZHJpdmVycy9jb21tb24vbWx4NS9t bHg1X2RldnhfY21kcy5oOjI1MQplcnJvcjogd2hpbGUgc2VhcmNoaW5nIGZvcjoKCXVpbnQzMl90 IHVhcl9pbmRleDoyNDsKCXVpbnQzMl90IGNxbjoyNDsKCXVpbnQzMl90IGxvZ19wYWdlX3NpemU6 NTsKCXVpbnQzMl90IHJxX3NpemU6MTc7IC8qIE11c3QgYmUgcG93ZXIgb2YgMi4gKi8KCXVpbnQz Ml90IGxvZ19ycV9zdHJpZGU6MzsKCXVpbnQzMl90IHNxX3NpemU6MTc7IC8qIE11c3QgYmUgcG93 ZXIgb2YgMi4gKi8KCXVpbnQzMl90IHRzX2Zvcm1hdDoyOwoJdWludDMyX3QgZGJyX3VtZW1fdmFs aWQ6MTsKCXVpbnQzMl90IGRicl91bWVtX2lkOwoKZXJyb3I6IHBhdGNoIGZhaWxlZDogZHJpdmVy cy9jb21tb24vbWx4NS9tbHg1X2RldnhfY21kcy5oOjQ3NwpDaGVja2luZyBwYXRjaCBkcml2ZXJz L2NvbXByZXNzL21seDUvbWx4NV9jb21wcmVzcy5jLi4uCmVycm9yOiB3aGlsZSBzZWFyY2hpbmcg Zm9yOgoJcXBfYXR0ci5jcW4gPSBxcC0+Y3EuY3EtPmlkOwoJcXBfYXR0ci50c19mb3JtYXQgPQoJ CW1seDVfdHNfZm9ybWF0X2NvbnYocHJpdi0+Y2Rldi0+Y29uZmlnLmhjYV9hdHRyLnFwX3RzX2Zv cm1hdCk7CglxcF9hdHRyLnJxX3NpemUgPSAwOwoJcXBfYXR0ci5zcV9zaXplID0gUlRFX0JJVDMy KGxvZ19vcHNfbik7CglxcF9hdHRyLm1tbyA9IHByaXYtPm1tb19kZWNvbXBfcXAgJiYgcHJpdi0+ bW1vX2NvbXBfcXAKCQkJJiYgcHJpdi0+bW1vX2RtYV9xcDsKCXJldCA9IG1seDVfZGV2eF9xcF9j cmVhdGUocHJpdi0+Y2Rldi0+Y3R4LCAmcXAtPnFwLCBsb2dfb3BzX24sICZxcF9hdHRyLAoKZXJy b3I6IHBhdGNoIGZhaWxlZDogZHJpdmVycy9jb21wcmVzcy9tbHg1L21seDVfY29tcHJlc3MuYzoy NDQKQ2hlY2tpbmcgcGF0Y2ggZHJpdmVycy9jcnlwdG8vbWx4NS9tbHg1X2NyeXB0by5jLi4uCmVy cm9yOiB3aGlsZSBzZWFyY2hpbmcgZm9yOgoJCXVjc2VnLT5pZl9jZl90b2VfY3FfcmVzID0gUlRF X0JFMzIoMXUgPDwgTUxYNV9VTVJDX0lGX09GRlNFVCk7CgkJdWNzZWctPm1rZXlfbWFzayA9IFJU RV9CRTY0KDF1IDw8IDApOyAvKiBNa2V5IGxlbmd0aCBiaXQuICovCgkJdWNzZWctPmtvX3RvX2Jz ID0gcnRlX2NwdV90b19iZV8zMgoJCQkoKFJURV9BTElHTihwcml2LT5tYXhfc2Vnc19udW0sIDR1 KSA8PAoJCQkgTUxYNV9VTVJDX0tPX09GRlNFVCkgfCAoNCA8PCBNTFg1X1VNUkNfVE9fQlNfT0ZG U0VUKSk7CgkJYnNmLT5rZXl0YWcgPSBwcml2LT5rZXl0YWc7CgkJLyogSW5pdCBSRE1BIFdSSVRF IFdRRS4gKi8KCmVycm9yOiBwYXRjaCBmYWlsZWQ6IGRyaXZlcnMvY3J5cHRvL21seDUvbWx4NV9j cnlwdG8uYzo1NDUKZXJyb3I6IHdoaWxlIHNlYXJjaGluZyBmb3I6CgkJLnVtcl9lbiA9IDEsCgkJ LmNyeXB0b19lbiA9IDEsCgkJLnNldF9yZW1vdGVfcncgPSAxLAoJCS5rbG1fbnVtID0gUlRFX0FM SUdOKHByaXYtPm1heF9zZWdzX251bSwgNCksCgl9OwoKCWZvciAodW1yID0gKHN0cnVjdCBtbHg1 X3Vtcl93cWUgKilxcC0+cXBfb2JqLnVtZW1fYnVmLCBpID0gMDsKCmVycm9yOiBwYXRjaCBmYWls ZWQ6IGRyaXZlcnMvY3J5cHRvL21seDUvbWx4NV9jcnlwdG8uYzo1NjkKZXJyb3I6IHdoaWxlIHNl YXJjaGluZyBmb3I6Cgl1aW50MTZfdCBsb2dfbmJfZGVzYyA9IHJ0ZV9sb2cyX3UzMihxcF9jb25m LT5uYl9kZXNjcmlwdG9ycyk7Cgl1aW50MzJfdCByZXQ7Cgl1aW50MzJfdCBhbGxvY19zaXplID0g c2l6ZW9mKCpxcCk7CglzdHJ1Y3QgbWx4NV9kZXZ4X2NxX2F0dHIgY3FfYXR0ciA9IHsKCQkudWFy X3BhZ2VfaWQgPSBtbHg1X29zX2dldF9kZXZ4X3Vhcl9wYWdlX2lkKHByaXYtPnVhci5vYmopLAoJ fTsKCmVycm9yOiBwYXRjaCBmYWlsZWQ6IGRyaXZlcnMvY3J5cHRvL21seDUvbWx4NV9jcnlwdG8u Yzo1OTcKZXJyb3I6IHdoaWxlIHNlYXJjaGluZyBmb3I6CgkJRFJWX0xPRyhFUlIsICJGYWlsZWQg dG8gY3JlYXRlIENRLiIpOwoJCWdvdG8gZXJyb3I7Cgl9CglhdHRyLnBkID0gcHJpdi0+Y2Rldi0+ cGRuOwoJYXR0ci51YXJfaW5kZXggPSBtbHg1X29zX2dldF9kZXZ4X3Vhcl9wYWdlX2lkKHByaXYt PnVhci5vYmopOwoJYXR0ci5jcW4gPSBxcC0+Y3Ffb2JqLmNxLT5pZDsKCWF0dHIucnFfc2l6ZSA9 IDA7CglhdHRyLnNxX3NpemUgPSBSVEVfQklUMzIobG9nX25iX2Rlc2MpOwoJYXR0ci50c19mb3Jt YXQgPQoJCW1seDVfdHNfZm9ybWF0X2NvbnYocHJpdi0+Y2Rldi0+Y29uZmlnLmhjYV9hdHRyLnFw X3RzX2Zvcm1hdCk7CglyZXQgPSBtbHg1X2RldnhfcXBfY3JlYXRlKHByaXYtPmNkZXYtPmN0eCwg JnFwLT5xcF9vYmosIGxvZ19uYl9kZXNjLAoJCQkJICAmYXR0ciwgc29ja2V0X2lkKTsKCWlmIChy ZXQpIHsKCQlEUlZfTE9HKEVSUiwgIkZhaWxlZCB0byBjcmVhdGUgUVAuIik7CgplcnJvcjogcGF0 Y2ggZmFpbGVkOiBkcml2ZXJzL2NyeXB0by9tbHg1L21seDVfY3J5cHRvLmM6NjE5CmVycm9yOiB3 aGlsZSBzZWFyY2hpbmcgZm9yOgoJCXJldHVybiAtZXJybm87Cgl9CglpZiAoc3RyY21wKGtleSwg Im1heF9zZWdzX251bSIpID09IDApIHsKCQlpZiAoIXRtcCB8fCB0bXAgPiBNTFg1X0NSWVBUT19N QVhfU0VHUykgewoJCQlEUlZfTE9HKFdBUk5JTkcsICJJbnZhbGlkIG1heF9zZWdzX251bTogJWQs IHNob3VsZCIKCQkJCSIgYmUgbGVzcyB0aGFuICVkLiIsCgkJCQkodWludDMyX3QpdG1wLCBNTFg1 X0NSWVBUT19NQVhfU0VHUyk7CgkJCXJ0ZV9lcnJubyA9IEVJTlZBTDsKCQkJcmV0dXJuIC1ydGVf ZXJybm87CgkJfQoKZXJyb3I6IHBhdGNoIGZhaWxlZDogZHJpdmVycy9jcnlwdG8vbWx4NS9tbHg1 X2NyeXB0by5jOjc0NwpIdW5rICM2IHN1Y2NlZWRlZCBhdCA4ODYgKG9mZnNldCA3NiBsaW5lcyku CmVycm9yOiB3aGlsZSBzZWFyY2hpbmcgZm9yOgoJCQkJUlRFX0NSWVBUT0RFVl9QTURfREVGQVVM VF9NQVhfTkJfUVVFVUVfUEFJUlMsCgl9OwoJY29uc3QgY2hhciAqaWJkZXZfbmFtZSA9IG1seDVf b3NfZ2V0X2N0eF9kZXZpY2VfbmFtZShjZGV2LT5jdHgpOwoJdWludDE2X3QgcmRtd193cWVfc2l6 ZTsKCWludCByZXQ7CgoJaWYgKHJ0ZV9lYWxfcHJvY2Vzc190eXBlKCkgIT0gUlRFX1BST0NfUFJJ TUFSWSkgewoKZXJyb3I6IHBhdGNoIGZhaWxlZDogZHJpdmVycy9jcnlwdG8vbWx4NS9tbHg1X2Ny eXB0by5jOjgyNAplcnJvcjogd2hpbGUgc2VhcmNoaW5nIGZvcjoKCX0KCXByaXYtPmxvZ2luX29i aiA9IGxvZ2luOwoJcHJpdi0+a2V5dGFnID0gcnRlX2NwdV90b19iZV82NChkZXZhcmdfcHJtcy5r ZXl0YWcpOwoJcHJpdi0+bWF4X3NlZ3NfbnVtID0gZGV2YXJnX3BybXMubWF4X3NlZ3NfbnVtOwoJ cHJpdi0+dW1yX3dxZV9zaXplID0gc2l6ZW9mKHN0cnVjdCBtbHg1X3dxZV91bXJfYnNmX3NlZykg KwoJCQkgICAgIHNpemVvZihzdHJ1Y3QgbWx4NV93cWVfY3NlZykgKwoJCQkgICAgIHNpemVvZihz dHJ1Y3QgbWx4NV93cWVfdW1yX2NzZWcpICsKCQkJICAgICBzaXplb2Yoc3RydWN0IG1seDVfd3Fl X21rZXlfY3NlZykgKwoJCQkgICAgIFJURV9BTElHTihwcml2LT5tYXhfc2Vnc19udW0sIDQpICoK CQkJICAgICBzaXplb2Yoc3RydWN0IG1seDVfd3FlX2RzZWcpOwoJcmRtd193cWVfc2l6ZSA9IHNp emVvZihzdHJ1Y3QgbWx4NV9yZG1hX3dyaXRlX3dxZSkgKwoJCQkgICAgICBzaXplb2Yoc3RydWN0 IG1seDVfd3FlX2RzZWcpICoKCQkJICAgICAgKHByaXYtPm1heF9zZWdzX251bSA8PSAyID8gMiA6 IDIgKwoJCQkgICAgICAgUlRFX0FMSUdOKHByaXYtPm1heF9zZWdzX251bSAtIDIsIDQpKTsKCXBy aXYtPndxZV9zZXRfc2l6ZSA9IHByaXYtPnVtcl93cWVfc2l6ZSArIHJkbXdfd3FlX3NpemU7Cglw cml2LT51bXJfd3FlX3N0cmlkZSA9IHByaXYtPnVtcl93cWVfc2l6ZSAvIE1MWDVfU0VORF9XUUVf QkI7Cglwcml2LT5tYXhfcmRtYXJfZHMgPSByZG13X3dxZV9zaXplIC8gc2l6ZW9mKHN0cnVjdCBt bHg1X3dxZV9kc2VnKTsKCXB0aHJlYWRfbXV0ZXhfbG9jaygmcHJpdl9saXN0X2xvY2spOwoJVEFJ TFFfSU5TRVJUX1RBSUwoJm1seDVfY3J5cHRvX3ByaXZfbGlzdCwgcHJpdiwgbmV4dCk7CglwdGhy ZWFkX211dGV4X3VubG9jaygmcHJpdl9saXN0X2xvY2spOwoKZXJyb3I6IHBhdGNoIGZhaWxlZDog ZHJpdmVycy9jcnlwdG8vbWx4NS9tbHg1X2NyeXB0by5jOjg3MwpDaGVja2luZyBwYXRjaCBkcml2 ZXJzL2NyeXB0by9tbHg1L21seDVfY3J5cHRvLmguLi4KZXJyb3I6IHdoaWxlIHNlYXJjaGluZyBm b3I6CgojZGVmaW5lIE1MWDVfQ1JZUFRPX0RFS19IVEFCTEVfU1ogKDEgPDwgMTEpCiNkZWZpbmUg TUxYNV9DUllQVE9fS0VZX0xFTkdUSCA4MAoKc3RydWN0IG1seDVfY3J5cHRvX3ByaXYgewoJVEFJ TFFfRU5UUlkobWx4NV9jcnlwdG9fcHJpdikgbmV4dDsKCmVycm9yOiBwYXRjaCBmYWlsZWQ6IGRy aXZlcnMvY3J5cHRvL21seDUvbWx4NV9jcnlwdG8uaDoxNgpDaGVja2luZyBwYXRjaCBkcml2ZXJz L3JlZ2V4L21seDUvbWx4NV9yZWdleF9jb250cm9sLmMuLi4KZXJyb3I6IHdoaWxlIHNlYXJjaGlu ZyBmb3I6CglxcF9vYmotPnFwbiA9IHFfaW5kOwoJcXBfb2JqLT5jaSA9IDA7CglxcF9vYmotPnBp ID0gMDsKCWF0dHIucnFfc2l6ZSA9IDA7CglhdHRyLnNxX3NpemUgPSBSVEVfQklUMzIoTUxYNV9S RUdFWF9XUUVfTE9HX05VTShwcml2LT5oYXNfdW1yLAoJCQlsb2dfbmJfZGVzYykpOwoJYXR0ci5t bW8gPSBwcml2LT5tbW9fcmVnZXhfcXBfY2FwOwoJcmV0ID0gbWx4NV9kZXZ4X3FwX2NyZWF0ZShw cml2LT5jZGV2LT5jdHgsICZxcF9vYmotPnFwX29iaiwKCmVycm9yOiBwYXRjaCBmYWlsZWQ6IGRy aXZlcnMvcmVnZXgvbWx4NS9tbHg1X3JlZ2V4X2NvbnRyb2wuYzoxNDkKQ2hlY2tpbmcgcGF0Y2gg ZHJpdmVycy92ZHBhL21seDUvbWx4NV92ZHBhX2V2ZW50LmMuLi4KZXJyb3I6IHdoaWxlIHNlYXJj aGluZyBmb3I6Cgl9CglhdHRyLnVhcl9pbmRleCA9IG1seDVfb3NfZ2V0X2RldnhfdWFyX3BhZ2Vf aWQocHJpdi0+dWFyLm9iaik7CglhdHRyLmNxbiA9IGVxcC0+Y3EuY3Ffb2JqLmNxLT5pZDsKCWF0 dHIucnFfc2l6ZSA9IFJURV9CSVQzMihsb2dfZGVzY19uKTsKCWF0dHIubG9nX3JxX3N0cmlkZSA9 IHJ0ZV9sb2cyX3UzMihNTFg1X1dTRUdfU0laRSk7CglhdHRyLnNxX3NpemUgPSAwOyAvKiBObyBu ZWVkIFNRLiAqLwoJYXR0ci50c19mb3JtYXQgPQoJCW1seDVfdHNfZm9ybWF0X2NvbnYocHJpdi0+ Y2Rldi0+Y29uZmlnLmhjYV9hdHRyLnFwX3RzX2Zvcm1hdCk7CglyZXQgPSBtbHg1X2RldnhfcXBf Y3JlYXRlKHByaXYtPmNkZXYtPmN0eCwgJihlcXAtPnN3X3FwKSwgbG9nX2Rlc2NfbiwKCmVycm9y OiBwYXRjaCBmYWlsZWQ6IGRyaXZlcnMvdmRwYS9tbHg1L21seDVfdmRwYV9ldmVudC5jOjU4OQpB cHBseWluZyBwYXRjaCBkcml2ZXJzL2NvbW1vbi9tbHg1L21seDVfZGV2eF9jbWRzLmMgd2l0aCAy IHJlamVjdHMuLi4KUmVqZWN0ZWQgaHVuayAjMS4KUmVqZWN0ZWQgaHVuayAjMi4KQXBwbHlpbmcg cGF0Y2ggZHJpdmVycy9jb21tb24vbWx4NS9tbHg1X2RldnhfY21kcy5oIHdpdGggMiByZWplY3Rz Li4uClJlamVjdGVkIGh1bmsgIzEuClJlamVjdGVkIGh1bmsgIzIuCkFwcGx5aW5nIHBhdGNoIGRy aXZlcnMvY29tcHJlc3MvbWx4NS9tbHg1X2NvbXByZXNzLmMgd2l0aCAxIHJlamVjdC4uLgpSZWpl Y3RlZCBodW5rICMxLgpBcHBseWluZyBwYXRjaCBkcml2ZXJzL2NyeXB0by9tbHg1L21seDVfY3J5 cHRvLmMgd2l0aCA3IHJlamVjdHMuLi4KUmVqZWN0ZWQgaHVuayAjMS4KUmVqZWN0ZWQgaHVuayAj Mi4KUmVqZWN0ZWQgaHVuayAjMy4KUmVqZWN0ZWQgaHVuayAjNC4KUmVqZWN0ZWQgaHVuayAjNS4K SHVuayAjNiBhcHBsaWVkIGNsZWFubHkuClJlamVjdGVkIGh1bmsgIzcuClJlamVjdGVkIGh1bmsg IzguCkFwcGx5aW5nIHBhdGNoIGRyaXZlcnMvY3J5cHRvL21seDUvbWx4NV9jcnlwdG8uaCB3aXRo IDEgcmVqZWN0Li4uClJlamVjdGVkIGh1bmsgIzEuCkFwcGx5aW5nIHBhdGNoIGRyaXZlcnMvcmVn ZXgvbWx4NS9tbHg1X3JlZ2V4X2NvbnRyb2wuYyB3aXRoIDEgcmVqZWN0Li4uClJlamVjdGVkIGh1 bmsgIzEuCkFwcGx5aW5nIHBhdGNoIGRyaXZlcnMvdmRwYS9tbHg1L21seDVfdmRwYV9ldmVudC5j IHdpdGggMSByZWplY3QuLi4KUmVqZWN0ZWQgaHVuayAjMS4KZGlmZiBhL2RyaXZlcnMvY29tbW9u L21seDUvbWx4NV9kZXZ4X2NtZHMuYyBiL2RyaXZlcnMvY29tbW9uL21seDUvbWx4NV9kZXZ4X2Nt ZHMuYwkocmVqZWN0ZWQgaHVua3MpCkBAIC04MzIsNiArODMyLDcgQEAgbWx4NV9kZXZ4X2NtZF9x dWVyeV9oY2FfYXR0cih2b2lkICpjdHgsCiAJCQlNTFg1X0hDQV9DQVBfT1BNT0RfR0VUX0NVUik7 CiAJaWYgKCFoY2F0dHIpCiAJCXJldHVybiByYzsKKwlhdHRyLT5tYXhfd3FlX3N6X3NxID0gTUxY NV9HRVQoY21kX2hjYV9jYXAsIGhjYXR0ciwgbWF4X3dxZV9zel9zcSk7CiAJYXR0ci0+Zmxvd19j b3VudGVyX2J1bGtfYWxsb2NfYml0bWFwID0KIAkJCU1MWDVfR0VUKGNtZF9oY2FfY2FwLCBoY2F0 dHIsIGZsb3dfY291bnRlcl9idWxrX2FsbG9jKTsKIAlhdHRyLT5mbG93X2NvdW50ZXJzX2R1bXAg PSBNTFg1X0dFVChjbWRfaGNhX2NhcCwgaGNhdHRyLApAQCAtMjE1MywyMSArMjE1NCwyMiBAQCBt bHg1X2RldnhfY21kX2NyZWF0ZV9xcCh2b2lkICpjdHgsCiAJCWlmIChhdHRyLT5sb2dfcGFnZV9z aXplID4gTUxYNV9BREFQVEVSX1BBR0VfU0hJRlQpCiAJCQlNTFg1X1NFVChxcGMsIHFwYywgbG9n X3BhZ2Vfc2l6ZSwKIAkJCQkgYXR0ci0+bG9nX3BhZ2Vfc2l6ZSAtIE1MWDVfQURBUFRFUl9QQUdF X1NISUZUKTsKLQkJaWYgKGF0dHItPnNxX3NpemUpIHsKLQkJCU1MWDVfQVNTRVJUKFJURV9JU19Q T1dFUl9PRl8yKGF0dHItPnNxX3NpemUpKTsKKwkJaWYgKGF0dHItPm51bV9vZl9zZW5kX3dxYmJz KSB7CisJCQlNTFg1X0FTU0VSVChSVEVfSVNfUE9XRVJfT0ZfMihhdHRyLT5udW1fb2Zfc2VuZF93 cWJicykpOwogCQkJTUxYNV9TRVQocXBjLCBxcGMsIGNxbl9zbmQsIGF0dHItPmNxbik7CiAJCQlN TFg1X1NFVChxcGMsIHFwYywgbG9nX3NxX3NpemUsCi0JCQkJIHJ0ZV9sb2cyX3UzMihhdHRyLT5z cV9zaXplKSk7CisJCQkJIHJ0ZV9sb2cyX3UzMihhdHRyLT5udW1fb2Zfc2VuZF93cWJicykpOwog CQl9IGVsc2UgewogCQkJTUxYNV9TRVQocXBjLCBxcGMsIG5vX3NxLCAxKTsKIAkJfQotCQlpZiAo YXR0ci0+cnFfc2l6ZSkgewotCQkJTUxYNV9BU1NFUlQoUlRFX0lTX1BPV0VSX09GXzIoYXR0ci0+ cnFfc2l6ZSkpOworCQlpZiAoYXR0ci0+bnVtX29mX3JlY2VpdmVfd3FlcykgeworCQkJTUxYNV9B U1NFUlQoUlRFX0lTX1BPV0VSX09GXzIoCisJCQkJCWF0dHItPm51bV9vZl9yZWNlaXZlX3dxZXMp KTsKIAkJCU1MWDVfU0VUKHFwYywgcXBjLCBjcW5fcmN2LCBhdHRyLT5jcW4pOwogCQkJTUxYNV9T RVQocXBjLCBxcGMsIGxvZ19ycV9zdHJpZGUsIGF0dHItPmxvZ19ycV9zdHJpZGUgLQogCQkJCSBN TFg1X0xPR19SUV9TVFJJREVfU0hJRlQpOwogCQkJTUxYNV9TRVQocXBjLCBxcGMsIGxvZ19ycV9z aXplLAotCQkJCSBydGVfbG9nMl91MzIoYXR0ci0+cnFfc2l6ZSkpOworCQkJCSBydGVfbG9nMl91 MzIoYXR0ci0+bnVtX29mX3JlY2VpdmVfd3FlcykpOwogCQkJTUxYNV9TRVQocXBjLCBxcGMsIHJx X3R5cGUsIE1MWDVfTk9OX1pFUk9fUlEpOwogCQl9IGVsc2UgewogCQkJTUxYNV9TRVQocXBjLCBx cGMsIHJxX3R5cGUsIE1MWDVfWkVST19MRU5fUlEpOwpkaWZmIGEvZHJpdmVycy9jb21tb24vbWx4 NS9tbHg1X2RldnhfY21kcy5oIGIvZHJpdmVycy9jb21tb24vbWx4NS9tbHg1X2RldnhfY21kcy5o CShyZWplY3RlZCBodW5rcykKQEAgLTI1MSw2ICsyNTEsNyBAQCBzdHJ1Y3QgbWx4NV9oY2FfYXR0 ciB7CiAJdWludDMyX3QgbG9nX21heF9tbW9fZGVjb21wcmVzczo1OwogCXVpbnQzMl90IHVtcl9t b2RpZnlfZW50aXR5X3NpemVfZGlzYWJsZWQ6MTsKIAl1aW50MzJfdCB1bXJfaW5kaXJlY3RfbWtl eV9kaXNhYmxlZDoxOworCXVpbnQxNl90IG1heF93cWVfc3pfc3E7CiB9OwogCiAvKiBMQUcgQ29u dGV4dC4gKi8KQEAgLTQ3Nyw5ICs0NzgsOSBAQCBzdHJ1Y3QgbWx4NV9kZXZ4X3FwX2F0dHIgewog CXVpbnQzMl90IHVhcl9pbmRleDoyNDsKIAl1aW50MzJfdCBjcW46MjQ7CiAJdWludDMyX3QgbG9n X3BhZ2Vfc2l6ZTo1OwotCXVpbnQzMl90IHJxX3NpemU6MTc7IC8qIE11c3QgYmUgcG93ZXIgb2Yg Mi4gKi8KKwl1aW50MzJfdCBudW1fb2ZfcmVjZWl2ZV93cWVzOjE3OyAvKiBNdXN0IGJlIHBvd2Vy IG9mIDIuICovCiAJdWludDMyX3QgbG9nX3JxX3N0cmlkZTozOwotCXVpbnQzMl90IHNxX3NpemU6 MTc7IC8qIE11c3QgYmUgcG93ZXIgb2YgMi4gKi8KKwl1aW50MzJfdCBudW1fb2Zfc2VuZF93cWJi czoxNzsgLyogTXVzdCBiZSBwb3dlciBvZiAyLiAqLwogCXVpbnQzMl90IHRzX2Zvcm1hdDoyOwog CXVpbnQzMl90IGRicl91bWVtX3ZhbGlkOjE7CiAJdWludDMyX3QgZGJyX3VtZW1faWQ7CmRpZmYg YS9kcml2ZXJzL2NvbXByZXNzL21seDUvbWx4NV9jb21wcmVzcy5jIGIvZHJpdmVycy9jb21wcmVz cy9tbHg1L21seDVfY29tcHJlc3MuYwkocmVqZWN0ZWQgaHVua3MpCkBAIC0yNDQsOCArMjQ0LDgg QEAgbWx4NV9jb21wcmVzc19xcF9zZXR1cChzdHJ1Y3QgcnRlX2NvbXByZXNzZGV2ICpkZXYsIHVp bnQxNl90IHFwX2lkLAogCXFwX2F0dHIuY3FuID0gcXAtPmNxLmNxLT5pZDsKIAlxcF9hdHRyLnRz X2Zvcm1hdCA9CiAJCW1seDVfdHNfZm9ybWF0X2NvbnYocHJpdi0+Y2Rldi0+Y29uZmlnLmhjYV9h dHRyLnFwX3RzX2Zvcm1hdCk7Ci0JcXBfYXR0ci5ycV9zaXplID0gMDsKLQlxcF9hdHRyLnNxX3Np emUgPSBSVEVfQklUMzIobG9nX29wc19uKTsKKwlxcF9hdHRyLm51bV9vZl9yZWNlaXZlX3dxZXMg PSAwOworCXFwX2F0dHIubnVtX29mX3NlbmRfd3FiYnMgPSBSVEVfQklUMzIobG9nX29wc19uKTsK IAlxcF9hdHRyLm1tbyA9IHByaXYtPm1tb19kZWNvbXBfcXAgJiYgcHJpdi0+bW1vX2NvbXBfcXAK IAkJCSYmIHByaXYtPm1tb19kbWFfcXA7CiAJcmV0ID0gbWx4NV9kZXZ4X3FwX2NyZWF0ZShwcml2 LT5jZGV2LT5jdHgsICZxcC0+cXAsIGxvZ19vcHNfbiwgJnFwX2F0dHIsCmRpZmYgYS9kcml2ZXJz L2NyeXB0by9tbHg1L21seDVfY3J5cHRvLmMgYi9kcml2ZXJzL2NyeXB0by9tbHg1L21seDVfY3J5 cHRvLmMJKHJlamVjdGVkIGh1bmtzKQpAQCAtNTQ1LDcgKzU0NSw3IEBAIG1seDVfY3J5cHRvX3Fw X2luaXQoc3RydWN0IG1seDVfY3J5cHRvX3ByaXYgKnByaXYsIHN0cnVjdCBtbHg1X2NyeXB0b19x cCAqcXApCiAJCXVjc2VnLT5pZl9jZl90b2VfY3FfcmVzID0gUlRFX0JFMzIoMXUgPDwgTUxYNV9V TVJDX0lGX09GRlNFVCk7CiAJCXVjc2VnLT5ta2V5X21hc2sgPSBSVEVfQkU2NCgxdSA8PCAwKTsg LyogTWtleSBsZW5ndGggYml0LiAqLwogCQl1Y3NlZy0+a29fdG9fYnMgPSBydGVfY3B1X3RvX2Jl XzMyCi0JCQkoKFJURV9BTElHTihwcml2LT5tYXhfc2Vnc19udW0sIDR1KSA8PAorCQkJKChNTFg1 X0NSWVBUT19LTE1fU0VHU19OVU0ocHJpdi0+dW1yX3dxZV9zaXplKSA8PAogCQkJIE1MWDVfVU1S Q19LT19PRkZTRVQpIHwgKDQgPDwgTUxYNV9VTVJDX1RPX0JTX09GRlNFVCkpOwogCQlic2YtPmtl eXRhZyA9IHByaXYtPmtleXRhZzsKIAkJLyogSW5pdCBSRE1BIFdSSVRFIFdRRS4gKi8KQEAgLTU2 OSw3ICs1NjksNyBAQCBtbHg1X2NyeXB0b19pbmRpcmVjdF9ta2V5c19wcmVwYXJlKHN0cnVjdCBt bHg1X2NyeXB0b19wcml2ICpwcml2LAogCQkudW1yX2VuID0gMSwKIAkJLmNyeXB0b19lbiA9IDEs CiAJCS5zZXRfcmVtb3RlX3J3ID0gMSwKLQkJLmtsbV9udW0gPSBSVEVfQUxJR04ocHJpdi0+bWF4 X3NlZ3NfbnVtLCA0KSwKKwkJLmtsbV9udW0gPSBNTFg1X0NSWVBUT19LTE1fU0VHU19OVU0ocHJp di0+dW1yX3dxZV9zaXplKSwKIAl9OwogCiAJZm9yICh1bXIgPSAoc3RydWN0IG1seDVfdW1yX3dx ZSAqKXFwLT5xcF9vYmoudW1lbV9idWYsIGkgPSAwOwpAQCAtNTk3LDYgKzU5Nyw3IEBAIG1seDVf Y3J5cHRvX3F1ZXVlX3BhaXJfc2V0dXAoc3RydWN0IHJ0ZV9jcnlwdG9kZXYgKmRldiwgdWludDE2 X3QgcXBfaWQsCiAJdWludDE2X3QgbG9nX25iX2Rlc2MgPSBydGVfbG9nMl91MzIocXBfY29uZi0+ bmJfZGVzY3JpcHRvcnMpOwogCXVpbnQzMl90IHJldDsKIAl1aW50MzJfdCBhbGxvY19zaXplID0g c2l6ZW9mKCpxcCk7CisJdWludDMyX3QgbG9nX3dxYmJfbjsKIAlzdHJ1Y3QgbWx4NV9kZXZ4X2Nx X2F0dHIgY3FfYXR0ciA9IHsKIAkJLnVhcl9wYWdlX2lkID0gbWx4NV9vc19nZXRfZGV2eF91YXJf cGFnZV9pZChwcml2LT51YXIub2JqKSwKIAl9OwpAQCAtNjE5LDE0ICs2MjAsMTYgQEAgbWx4NV9j cnlwdG9fcXVldWVfcGFpcl9zZXR1cChzdHJ1Y3QgcnRlX2NyeXB0b2RldiAqZGV2LCB1aW50MTZf dCBxcF9pZCwKIAkJRFJWX0xPRyhFUlIsICJGYWlsZWQgdG8gY3JlYXRlIENRLiIpOwogCQlnb3Rv IGVycm9yOwogCX0KKwlsb2dfd3FiYl9uID0gcnRlX2xvZzJfdTMyKFJURV9CSVQzMihsb2dfbmJf ZGVzYykgKgorCQkJCShwcml2LT53cWVfc2V0X3NpemUgLyBNTFg1X1NFTkRfV1FFX0JCKSk7CiAJ YXR0ci5wZCA9IHByaXYtPmNkZXYtPnBkbjsKIAlhdHRyLnVhcl9pbmRleCA9IG1seDVfb3NfZ2V0 X2RldnhfdWFyX3BhZ2VfaWQocHJpdi0+dWFyLm9iaik7CiAJYXR0ci5jcW4gPSBxcC0+Y3Ffb2Jq LmNxLT5pZDsKLQlhdHRyLnJxX3NpemUgPSAwOwotCWF0dHIuc3Ffc2l6ZSA9IFJURV9CSVQzMihs b2dfbmJfZGVzYyk7CisJYXR0ci5udW1fb2ZfcmVjZWl2ZV93cWVzID0gMDsKKwlhdHRyLm51bV9v Zl9zZW5kX3dxYmJzID0gUlRFX0JJVDMyKGxvZ193cWJiX24pOwogCWF0dHIudHNfZm9ybWF0ID0K IAkJbWx4NV90c19mb3JtYXRfY29udihwcml2LT5jZGV2LT5jb25maWcuaGNhX2F0dHIucXBfdHNf Zm9ybWF0KTsKLQlyZXQgPSBtbHg1X2RldnhfcXBfY3JlYXRlKHByaXYtPmNkZXYtPmN0eCwgJnFw LT5xcF9vYmosIGxvZ19uYl9kZXNjLAorCXJldCA9IG1seDVfZGV2eF9xcF9jcmVhdGUocHJpdi0+ Y2Rldi0+Y3R4LCAmcXAtPnFwX29iaiwgbG9nX3dxYmJfbiwKIAkJCQkgICZhdHRyLCBzb2NrZXRf aWQpOwogCWlmIChyZXQpIHsKIAkJRFJWX0xPRyhFUlIsICJGYWlsZWQgdG8gY3JlYXRlIFFQLiIp OwpAQCAtNzQ3LDEwICs3NTAsOCBAQCBtbHg1X2NyeXB0b19hcmdzX2NoZWNrX2hhbmRsZXIoY29u c3QgY2hhciAqa2V5LCBjb25zdCBjaGFyICp2YWwsIHZvaWQgKm9wYXF1ZSkKIAkJcmV0dXJuIC1l cnJubzsKIAl9CiAJaWYgKHN0cmNtcChrZXksICJtYXhfc2Vnc19udW0iKSA9PSAwKSB7Ci0JCWlm ICghdG1wIHx8IHRtcCA+IE1MWDVfQ1JZUFRPX01BWF9TRUdTKSB7Ci0JCQlEUlZfTE9HKFdBUk5J TkcsICJJbnZhbGlkIG1heF9zZWdzX251bTogJWQsIHNob3VsZCIKLQkJCQkiIGJlIGxlc3MgdGhh biAlZC4iLAotCQkJCSh1aW50MzJfdCl0bXAsIE1MWDVfQ1JZUFRPX01BWF9TRUdTKTsKKwkJaWYg KCF0bXApIHsKKwkJCURSVl9MT0coRVJSLCAibWF4X3NlZ3NfbnVtIG11c3QgYmUgZ3JlYXRlciB0 aGFuIDAuIik7CiAJCQlydGVfZXJybm8gPSBFSU5WQUw7CiAJCQlyZXR1cm4gLXJ0ZV9lcnJubzsK IAkJfQpAQCAtODI0LDcgKzkwMCw2IEBAIG1seDVfY3J5cHRvX2Rldl9wcm9iZShzdHJ1Y3QgbWx4 NV9jb21tb25fZGV2aWNlICpjZGV2KQogCQkJCVJURV9DUllQVE9ERVZfUE1EX0RFRkFVTFRfTUFY X05CX1FVRVVFX1BBSVJTLAogCX07CiAJY29uc3QgY2hhciAqaWJkZXZfbmFtZSA9IG1seDVfb3Nf Z2V0X2N0eF9kZXZpY2VfbmFtZShjZGV2LT5jdHgpOwotCXVpbnQxNl90IHJkbXdfd3FlX3NpemU7 CiAJaW50IHJldDsKIAogCWlmIChydGVfZWFsX3Byb2Nlc3NfdHlwZSgpICE9IFJURV9QUk9DX1BS SU1BUlkpIHsKQEAgLTg3MywyMCArOTQ4LDE3IEBAIG1seDVfY3J5cHRvX2Rldl9wcm9iZShzdHJ1 Y3QgbWx4NV9jb21tb25fZGV2aWNlICpjZGV2KQogCX0KIAlwcml2LT5sb2dpbl9vYmogPSBsb2dp bjsKIAlwcml2LT5rZXl0YWcgPSBydGVfY3B1X3RvX2JlXzY0KGRldmFyZ19wcm1zLmtleXRhZyk7 Ci0JcHJpdi0+bWF4X3NlZ3NfbnVtID0gZGV2YXJnX3BybXMubWF4X3NlZ3NfbnVtOwotCXByaXYt PnVtcl93cWVfc2l6ZSA9IHNpemVvZihzdHJ1Y3QgbWx4NV93cWVfdW1yX2JzZl9zZWcpICsKLQkJ CSAgICAgc2l6ZW9mKHN0cnVjdCBtbHg1X3dxZV9jc2VnKSArCi0JCQkgICAgIHNpemVvZihzdHJ1 Y3QgbWx4NV93cWVfdW1yX2NzZWcpICsKLQkJCSAgICAgc2l6ZW9mKHN0cnVjdCBtbHg1X3dxZV9t a2V5X2NzZWcpICsKLQkJCSAgICAgUlRFX0FMSUdOKHByaXYtPm1heF9zZWdzX251bSwgNCkgKgot CQkJICAgICBzaXplb2Yoc3RydWN0IG1seDVfd3FlX2RzZWcpOwotCXJkbXdfd3FlX3NpemUgPSBz aXplb2Yoc3RydWN0IG1seDVfcmRtYV93cml0ZV93cWUpICsKLQkJCSAgICAgIHNpemVvZihzdHJ1 Y3QgbWx4NV93cWVfZHNlZykgKgotCQkJICAgICAgKHByaXYtPm1heF9zZWdzX251bSA8PSAyID8g MiA6IDIgKwotCQkJICAgICAgIFJURV9BTElHTihwcml2LT5tYXhfc2Vnc19udW0gLSAyLCA0KSk7 Ci0JcHJpdi0+d3FlX3NldF9zaXplID0gcHJpdi0+dW1yX3dxZV9zaXplICsgcmRtd193cWVfc2l6 ZTsKLQlwcml2LT51bXJfd3FlX3N0cmlkZSA9IHByaXYtPnVtcl93cWVfc2l6ZSAvIE1MWDVfU0VO RF9XUUVfQkI7Ci0JcHJpdi0+bWF4X3JkbWFyX2RzID0gcmRtd193cWVfc2l6ZSAvIHNpemVvZihz dHJ1Y3QgbWx4NV93cWVfZHNlZyk7CisJcmV0ID0gbWx4NV9jcnlwdG9fY29uZmlndXJlX3dxZV9z aXplKHByaXYsCisJCWNkZXYtPmNvbmZpZy5oY2FfYXR0ci5tYXhfd3FlX3N6X3NxLCBkZXZhcmdf cHJtcy5tYXhfc2Vnc19udW0pOworCWlmIChyZXQpIHsKKwkJbWx4NV9kZXZ4X3Vhcl9yZWxlYXNl KCZwcml2LT51YXIpOworCQlydGVfY3J5cHRvZGV2X3BtZF9kZXN0cm95KHByaXYtPmNyeXB0b19k ZXYpOworCQlyZXR1cm4gLTE7CisJfQorCURSVl9MT0coSU5GTywgIk1heCBudW1iZXIgb2Ygc2Vn bWVudHM6ICV1LiIsCisJCSh1bnNpZ25lZCBpbnQpUlRFX01JTigKKwkJCU1MWDVfQ1JZUFRPX0tM TV9TRUdTX05VTShwcml2LT51bXJfd3FlX3NpemUpLAorCQkJKHVpbnQxNl90KShwcml2LT5tYXhf cmRtYXJfZHMgLSAyKSkpOwogCXB0aHJlYWRfbXV0ZXhfbG9jaygmcHJpdl9saXN0X2xvY2spOwog CVRBSUxRX0lOU0VSVF9UQUlMKCZtbHg1X2NyeXB0b19wcml2X2xpc3QsIHByaXYsIG5leHQpOwog CXB0aHJlYWRfbXV0ZXhfdW5sb2NrKCZwcml2X2xpc3RfbG9jayk7CmRpZmYgYS9kcml2ZXJzL2Ny eXB0by9tbHg1L21seDVfY3J5cHRvLmggYi9kcml2ZXJzL2NyeXB0by9tbHg1L21seDVfY3J5cHRv LmgJKHJlamVjdGVkIGh1bmtzKQpAQCAtMTYsNiArMTYsMTMgQEAKIAogI2RlZmluZSBNTFg1X0NS WVBUT19ERUtfSFRBQkxFX1NaICgxIDw8IDExKQogI2RlZmluZSBNTFg1X0NSWVBUT19LRVlfTEVO R1RIIDgwCisjZGVmaW5lIE1MWDVfQ1JZUFRPX1VNUl9XUUVfU1RBVElDX1NJWkUgKHNpemVvZihz dHJ1Y3QgbWx4NV93cWVfY3NlZykgK1wKKwkJCQkJc2l6ZW9mKHN0cnVjdCBtbHg1X3dxZV91bXJf Y3NlZykgK1wKKwkJCQkJc2l6ZW9mKHN0cnVjdCBtbHg1X3dxZV9ta2V5X2NzZWcpICtcCisJCQkJ CXNpemVvZihzdHJ1Y3QgbWx4NV93cWVfdW1yX2JzZl9zZWcpKQorI2RlZmluZSBNTFg1X0NSWVBU T19LTE1fU0VHU19OVU0odW1yX3dxZV9zeikgKCh1bXJfd3FlX3N6IC1cCisJCQkJCU1MWDVfQ1JZ UFRPX1VNUl9XUUVfU1RBVElDX1NJWkUpIC9cCisJCQkJCU1MWDVfV1NFR19TSVpFKQogCiBzdHJ1 Y3QgbWx4NV9jcnlwdG9fcHJpdiB7CiAJVEFJTFFfRU5UUlkobWx4NV9jcnlwdG9fcHJpdikgbmV4 dDsKZGlmZiBhL2RyaXZlcnMvcmVnZXgvbWx4NS9tbHg1X3JlZ2V4X2NvbnRyb2wuYyBiL2RyaXZl cnMvcmVnZXgvbWx4NS9tbHg1X3JlZ2V4X2NvbnRyb2wuYwkocmVqZWN0ZWQgaHVua3MpCkBAIC0x NDksOCArMTQ5LDggQEAgcmVnZXhfY3RybF9jcmVhdGVfaHdfcXAoc3RydWN0IG1seDVfcmVnZXhf cHJpdiAqcHJpdiwgc3RydWN0IG1seDVfcmVnZXhfcXAgKnFwLAogCXFwX29iai0+cXBuID0gcV9p bmQ7CiAJcXBfb2JqLT5jaSA9IDA7CiAJcXBfb2JqLT5waSA9IDA7Ci0JYXR0ci5ycV9zaXplID0g MDsKLQlhdHRyLnNxX3NpemUgPSBSVEVfQklUMzIoTUxYNV9SRUdFWF9XUUVfTE9HX05VTShwcml2 LT5oYXNfdW1yLAorCWF0dHIubnVtX29mX3JlY2VpdmVfd3FlcyA9IDA7CisJYXR0ci5udW1fb2Zf c2VuZF93cWJicyA9IFJURV9CSVQzMihNTFg1X1JFR0VYX1dRRV9MT0dfTlVNKHByaXYtPmhhc191 bXIsCiAJCQlsb2dfbmJfZGVzYykpOwogCWF0dHIubW1vID0gcHJpdi0+bW1vX3JlZ2V4X3FwX2Nh cDsKIAlyZXQgPSBtbHg1X2RldnhfcXBfY3JlYXRlKHByaXYtPmNkZXYtPmN0eCwgJnFwX29iai0+ cXBfb2JqLApkaWZmIGEvZHJpdmVycy92ZHBhL21seDUvbWx4NV92ZHBhX2V2ZW50LmMgYi9kcml2 ZXJzL3ZkcGEvbWx4NS9tbHg1X3ZkcGFfZXZlbnQuYwkocmVqZWN0ZWQgaHVua3MpCkBAIC01ODks OSArNTg5LDkgQEAgbWx4NV92ZHBhX2V2ZW50X3FwX2NyZWF0ZShzdHJ1Y3QgbWx4NV92ZHBhX3By aXYgKnByaXYsIHVpbnQxNl90IGRlc2NfbiwKIAl9CiAJYXR0ci51YXJfaW5kZXggPSBtbHg1X29z X2dldF9kZXZ4X3Vhcl9wYWdlX2lkKHByaXYtPnVhci5vYmopOwogCWF0dHIuY3FuID0gZXFwLT5j cS5jcV9vYmouY3EtPmlkOwotCWF0dHIucnFfc2l6ZSA9IFJURV9CSVQzMihsb2dfZGVzY19uKTsK KwlhdHRyLm51bV9vZl9yZWNlaXZlX3dxZXMgPSBSVEVfQklUMzIobG9nX2Rlc2Nfbik7CiAJYXR0 ci5sb2dfcnFfc3RyaWRlID0gcnRlX2xvZzJfdTMyKE1MWDVfV1NFR19TSVpFKTsKLQlhdHRyLnNx X3NpemUgPSAwOyAvKiBObyBuZWVkIFNRLiAqLworCWF0dHIubnVtX29mX3NlbmRfd3FiYnMgPSAw OyAvKiBObyBuZWVkIFNRLiAqLwogCWF0dHIudHNfZm9ybWF0ID0KIAkJbWx4NV90c19mb3JtYXRf Y29udihwcml2LT5jZGV2LT5jb25maWcuaGNhX2F0dHIucXBfdHNfZm9ybWF0KTsKIAlyZXQgPSBt bHg1X2RldnhfcXBfY3JlYXRlKHByaXYtPmNkZXYtPmN0eCwgJihlcXAtPnN3X3FwKSwgbG9nX2Rl c2NfbiwKQ2hlY2tpbmcgcGF0Y2ggZHJpdmVycy9jb21tb24vbWx4NS9tbHg1X2NvbW1vbl9kZXZ4 LmMuLi4KZXJyb3I6IHdoaWxlIHNlYXJjaGluZyBmb3I6CiAqICAgQ29udGV4dCByZXR1cm5lZCBm cm9tIG1seDUgb3Blbl9kZXZpY2UoKSBnbHVlIGZ1bmN0aW9uLgogKiBAcGFyYW1baW4vb3V0XSBx cF9vYmoKICogICBQb2ludGVyIHRvIFFQIHRvIGNyZWF0ZS4KICogQHBhcmFtW2luXSBsb2dfd3Fi Yl9uCiAqICAgTG9nIG9mIG51bWJlciBvZiBXUUJCcyBpbiBxdWV1ZS4KICogQHBhcmFtW2luXSBh dHRyCiAqICAgUG9pbnRlciB0byBRUCBhdHRyaWJ1dGVzIHN0cnVjdHVyZS4KICogQHBhcmFtW2lu XSBzb2NrZXQKCmVycm9yOiBwYXRjaCBmYWlsZWQ6IGRyaXZlcnMvY29tbW9uL21seDUvbWx4NV9j b21tb25fZGV2eC5jOjMzOAplcnJvcjogd2hpbGUgc2VhcmNoaW5nIGZvcjoKICogICAwIG9uIHN1 Y2Nlc3MsIGEgbmVnYXRpdmUgZXJybm8gdmFsdWUgb3RoZXJ3aXNlIGFuZCBydGVfZXJybm8gaXMg c2V0LgogKi8KaW50Cm1seDVfZGV2eF9xcF9jcmVhdGUodm9pZCAqY3R4LCBzdHJ1Y3QgbWx4NV9k ZXZ4X3FwICpxcF9vYmosIHVpbnQzMl90IGxvZ193cWJiX24sCgkJICAgIHN0cnVjdCBtbHg1X2Rl dnhfcXBfYXR0ciAqYXR0ciwgaW50IHNvY2tldCkKewoJc3RydWN0IG1seDVfZGV2eF9vYmogKnFw ID0gTlVMTDsKCmVycm9yOiBwYXRjaCBmYWlsZWQ6IGRyaXZlcnMvY29tbW9uL21seDUvbWx4NV9j b21tb25fZGV2eC5jOjM0OQpIdW5rICMzIHN1Y2NlZWRlZCBhdCAyMTEgKG9mZnNldCAtMTQ2IGxp bmVzKS4KSHVuayAjNCBzdWNjZWVkZWQgYXQgMjE5IChvZmZzZXQgLTE0NiBsaW5lcykuCkNoZWNr aW5nIHBhdGNoIGRyaXZlcnMvY29tbW9uL21seDUvbWx4NV9jb21tb25fZGV2eC5oLi4uCmVycm9y OiB3aGlsZSBzZWFyY2hpbmcgZm9yOgoKX19ydGVfaW50ZXJuYWwKaW50IG1seDVfZGV2eF9xcF9j cmVhdGUodm9pZCAqY3R4LCBzdHJ1Y3QgbWx4NV9kZXZ4X3FwICpxcF9vYmosCgkJCXVpbnQzMl90 IGxvZ193cWJiX24sCgkJCXN0cnVjdCBtbHg1X2RldnhfcXBfYXR0ciAqYXR0ciwgaW50IHNvY2tl dCk7CgpfX3J0ZV9pbnRlcm5hbAoKZXJyb3I6IHBhdGNoIGZhaWxlZDogZHJpdmVycy9jb21tb24v bWx4NS9tbHg1X2NvbW1vbl9kZXZ4Lmg6ODkKQ2hlY2tpbmcgcGF0Y2ggZHJpdmVycy9jb21wcmVz cy9tbHg1L21seDVfY29tcHJlc3MuYy4uLgplcnJvcjogd2hpbGUgc2VhcmNoaW5nIGZvcjoKCXFw X2F0dHIubnVtX29mX3NlbmRfd3FiYnMgPSBSVEVfQklUMzIobG9nX29wc19uKTsKCXFwX2F0dHIu bW1vID0gcHJpdi0+bW1vX2RlY29tcF9xcCAmJiBwcml2LT5tbW9fY29tcF9xcAoJCQkmJiBwcml2 LT5tbW9fZG1hX3FwOwoJcmV0ID0gbWx4NV9kZXZ4X3FwX2NyZWF0ZShwcml2LT5jZGV2LT5jdHgs ICZxcC0+cXAsIGxvZ19vcHNfbiwgJnFwX2F0dHIsCgkJCQkgIHNvY2tldF9pZCk7CglpZiAocmV0 ICE9IDApIHsKCQlEUlZfTE9HKEVSUiwgIkZhaWxlZCB0byBjcmVhdGUgUVAuIik7CgkJZ290byBl cnI7CgplcnJvcjogcGF0Y2ggZmFpbGVkOiBkcml2ZXJzL2NvbXByZXNzL21seDUvbWx4NV9jb21w cmVzcy5jOjI0OApDaGVja2luZyBwYXRjaCBkcml2ZXJzL2NyeXB0by9tbHg1L21seDVfY3J5cHRv LmMuLi4KZXJyb3I6IGRyaXZlcnMvY3J5cHRvL21seDUvbWx4NV9jcnlwdG8uYzogZG9lcyBub3Qg bWF0Y2ggaW5kZXgKQ2hlY2tpbmcgcGF0Y2ggZHJpdmVycy9yZWdleC9tbHg1L21seDVfcmVnZXhf Y29udHJvbC5jLi4uCmVycm9yOiB3aGlsZSBzZWFyY2hpbmcgZm9yOgoJCQlsb2dfbmJfZGVzYykp OwoJYXR0ci5tbW8gPSBwcml2LT5tbW9fcmVnZXhfcXBfY2FwOwoJcmV0ID0gbWx4NV9kZXZ4X3Fw X2NyZWF0ZShwcml2LT5jZGV2LT5jdHgsICZxcF9vYmotPnFwX29iaiwKCQkJTUxYNV9SRUdFWF9X UUVfTE9HX05VTShwcml2LT5oYXNfdW1yLCBsb2dfbmJfZGVzYyksCgkJCSZhdHRyLCBTT0NLRVRf SURfQU5ZKTsKCWlmIChyZXQpIHsKCQlEUlZfTE9HKEVSUiwgIkNhbid0IGNyZWF0ZSBRUCBvYmpl Y3QuIik7CgkJcnRlX2Vycm5vID0gRU5PTUVNOwoKZXJyb3I6IHBhdGNoIGZhaWxlZDogZHJpdmVy cy9yZWdleC9tbHg1L21seDVfcmVnZXhfY29udHJvbC5jOjE1NApDaGVja2luZyBwYXRjaCBkcml2 ZXJzL3ZkcGEvbWx4NS9tbHg1X3ZkcGFfZXZlbnQuYy4uLgplcnJvcjogd2hpbGUgc2VhcmNoaW5n IGZvcjoKCWF0dHIubnVtX29mX3NlbmRfd3FiYnMgPSAwOyAvKiBObyBuZWVkIFNRLiAqLwoJYXR0 ci50c19mb3JtYXQgPQoJCW1seDVfdHNfZm9ybWF0X2NvbnYocHJpdi0+Y2Rldi0+Y29uZmlnLmhj YV9hdHRyLnFwX3RzX2Zvcm1hdCk7CglyZXQgPSBtbHg1X2RldnhfcXBfY3JlYXRlKHByaXYtPmNk ZXYtPmN0eCwgJihlcXAtPnN3X3FwKSwgbG9nX2Rlc2NfbiwKCQkJCSAgJmF0dHIsIFNPQ0tFVF9J RF9BTlkpOwoJaWYgKHJldCkgewoJCURSVl9MT0coRVJSLCAiRmFpbGVkIHRvIGNyZWF0ZSBTVyBR UCgldSkuIiwgcnRlX2Vycm5vKTsKCQlnb3RvIGVycm9yOwoKZXJyb3I6IHBhdGNoIGZhaWxlZDog ZHJpdmVycy92ZHBhL21seDUvbWx4NV92ZHBhX2V2ZW50LmM6NTk0CkFwcGx5aW5nIHBhdGNoIGRy aXZlcnMvY29tbW9uL21seDUvbWx4NV9jb21tb25fZGV2eC5jIHdpdGggMiByZWplY3RzLi4uClJl amVjdGVkIGh1bmsgIzEuClJlamVjdGVkIGh1bmsgIzIuCkh1bmsgIzMgYXBwbGllZCBjbGVhbmx5 LgpIdW5rICM0IGFwcGxpZWQgY2xlYW5seS4KQXBwbHlpbmcgcGF0Y2ggZHJpdmVycy9jb21tb24v bWx4NS9tbHg1X2NvbW1vbl9kZXZ4Lmggd2l0aCAxIHJlamVjdC4uLgpSZWplY3RlZCBodW5rICMx LgpBcHBseWluZyBwYXRjaCBkcml2ZXJzL2NvbXByZXNzL21seDUvbWx4NV9jb21wcmVzcy5jIHdp dGggMSByZWplY3QuLi4KUmVqZWN0ZWQgaHVuayAjMS4KQXBwbHlpbmcgcGF0Y2ggZHJpdmVycy9y ZWdleC9tbHg1L21seDVfcmVnZXhfY29udHJvbC5jIHdpdGggMSByZWplY3QuLi4KUmVqZWN0ZWQg aHVuayAjMS4KQXBwbHlpbmcgcGF0Y2ggZHJpdmVycy92ZHBhL21seDUvbWx4NV92ZHBhX2V2ZW50 LmMgd2l0aCAxIHJlamVjdC4uLgpSZWplY3RlZCBodW5rICMxLgpkaWZmIGEvZHJpdmVycy9jb21t b24vbWx4NS9tbHg1X2NvbW1vbl9kZXZ4LmMgYi9kcml2ZXJzL2NvbW1vbi9tbHg1L21seDVfY29t bW9uX2RldnguYwkocmVqZWN0ZWQgaHVua3MpCkBAIC0zMzgsOCArMzM4LDggQEAgbWx4NV9kZXZ4 X3FwX2Rlc3Ryb3koc3RydWN0IG1seDVfZGV2eF9xcCAqcXApCiAgKiAgIENvbnRleHQgcmV0dXJu ZWQgZnJvbSBtbHg1IG9wZW5fZGV2aWNlKCkgZ2x1ZSBmdW5jdGlvbi4KICAqIEBwYXJhbVtpbi9v dXRdIHFwX29iagogICogICBQb2ludGVyIHRvIFFQIHRvIGNyZWF0ZS4KLSAqIEBwYXJhbVtpbl0g bG9nX3dxYmJfbgotICogICBMb2cgb2YgbnVtYmVyIG9mIFdRQkJzIGluIHF1ZXVlLgorICogQHBh cmFtW2luXSBxdWV1ZV9zaXplCisgKiAgIFNpemUgb2YgcXVldWUgdG8gY3JlYXRlLgogICogQHBh cmFtW2luXSBhdHRyCiAgKiAgIFBvaW50ZXIgdG8gUVAgYXR0cmlidXRlcyBzdHJ1Y3R1cmUuCiAg KiBAcGFyYW1baW5dIHNvY2tldApAQCAtMzQ5LDcgKzM0OSw3IEBAIG1seDVfZGV2eF9xcF9kZXN0 cm95KHN0cnVjdCBtbHg1X2RldnhfcXAgKnFwKQogICogICAwIG9uIHN1Y2Nlc3MsIGEgbmVnYXRp dmUgZXJybm8gdmFsdWUgb3RoZXJ3aXNlIGFuZCBydGVfZXJybm8gaXMgc2V0LgogICovCiBpbnQK LW1seDVfZGV2eF9xcF9jcmVhdGUodm9pZCAqY3R4LCBzdHJ1Y3QgbWx4NV9kZXZ4X3FwICpxcF9v YmosIHVpbnQzMl90IGxvZ193cWJiX24sCittbHg1X2RldnhfcXBfY3JlYXRlKHZvaWQgKmN0eCwg c3RydWN0IG1seDVfZGV2eF9xcCAqcXBfb2JqLCB1aW50MzJfdCBxdWV1ZV9zaXplLAogCQkgICAg c3RydWN0IG1seDVfZGV2eF9xcF9hdHRyICphdHRyLCBpbnQgc29ja2V0KQogewogCXN0cnVjdCBt bHg1X2Rldnhfb2JqICpxcCA9IE5VTEw7CmRpZmYgYS9kcml2ZXJzL2NvbW1vbi9tbHg1L21seDVf Y29tbW9uX2RldnguaCBiL2RyaXZlcnMvY29tbW9uL21seDUvbWx4NV9jb21tb25fZGV2eC5oCShy ZWplY3RlZCBodW5rcykKQEAgLTg5LDcgKzg5LDcgQEAgdm9pZCBtbHg1X2RldnhfcXBfZGVzdHJv eShzdHJ1Y3QgbWx4NV9kZXZ4X3FwICpxcCk7CiAKIF9fcnRlX2ludGVybmFsCiBpbnQgbWx4NV9k ZXZ4X3FwX2NyZWF0ZSh2b2lkICpjdHgsIHN0cnVjdCBtbHg1X2RldnhfcXAgKnFwX29iaiwKLQkJ CXVpbnQzMl90IGxvZ193cWJiX24sCisJCQl1aW50MzJfdCBxdWV1ZV9zaXplLAogCQkJc3RydWN0 IG1seDVfZGV2eF9xcF9hdHRyICphdHRyLCBpbnQgc29ja2V0KTsKIAogX19ydGVfaW50ZXJuYWwK ZGlmZiBhL2RyaXZlcnMvY29tcHJlc3MvbWx4NS9tbHg1X2NvbXByZXNzLmMgYi9kcml2ZXJzL2Nv bXByZXNzL21seDUvbWx4NV9jb21wcmVzcy5jCShyZWplY3RlZCBodW5rcykKQEAgLTI0OCw4ICsy NDgsOSBAQCBtbHg1X2NvbXByZXNzX3FwX3NldHVwKHN0cnVjdCBydGVfY29tcHJlc3NkZXYgKmRl diwgdWludDE2X3QgcXBfaWQsCiAJcXBfYXR0ci5udW1fb2Zfc2VuZF93cWJicyA9IFJURV9CSVQz Mihsb2dfb3BzX24pOwogCXFwX2F0dHIubW1vID0gcHJpdi0+bW1vX2RlY29tcF9xcCAmJiBwcml2 LT5tbW9fY29tcF9xcAogCQkJJiYgcHJpdi0+bW1vX2RtYV9xcDsKLQlyZXQgPSBtbHg1X2Rldnhf cXBfY3JlYXRlKHByaXYtPmNkZXYtPmN0eCwgJnFwLT5xcCwgbG9nX29wc19uLCAmcXBfYXR0ciwK LQkJCQkgIHNvY2tldF9pZCk7CisJcmV0ID0gbWx4NV9kZXZ4X3FwX2NyZWF0ZShwcml2LT5jZGV2 LT5jdHgsICZxcC0+cXAsCisJCQkJCXFwX2F0dHIubnVtX29mX3NlbmRfd3FiYnMgKgorCQkJCQlN TFg1X1dRRV9TSVpFLCAmcXBfYXR0ciwgc29ja2V0X2lkKTsKIAlpZiAocmV0ICE9IDApIHsKIAkJ RFJWX0xPRyhFUlIsICJGYWlsZWQgdG8gY3JlYXRlIFFQLiIpOwogCQlnb3RvIGVycjsKZGlmZiBh L2RyaXZlcnMvcmVnZXgvbWx4NS9tbHg1X3JlZ2V4X2NvbnRyb2wuYyBiL2RyaXZlcnMvcmVnZXgv bWx4NS9tbHg1X3JlZ2V4X2NvbnRyb2wuYwkocmVqZWN0ZWQgaHVua3MpCkBAIC0xNTQsOCArMTU0 LDggQEAgcmVnZXhfY3RybF9jcmVhdGVfaHdfcXAoc3RydWN0IG1seDVfcmVnZXhfcHJpdiAqcHJp diwgc3RydWN0IG1seDVfcmVnZXhfcXAgKnFwLAogCQkJbG9nX25iX2Rlc2MpKTsKIAlhdHRyLm1t byA9IHByaXYtPm1tb19yZWdleF9xcF9jYXA7CiAJcmV0ID0gbWx4NV9kZXZ4X3FwX2NyZWF0ZShw cml2LT5jZGV2LT5jdHgsICZxcF9vYmotPnFwX29iaiwKLQkJCU1MWDVfUkVHRVhfV1FFX0xPR19O VU0ocHJpdi0+aGFzX3VtciwgbG9nX25iX2Rlc2MpLAotCQkJJmF0dHIsIFNPQ0tFVF9JRF9BTlkp OworCQkJYXR0ci5udW1fb2Zfc2VuZF93cWJicyAqIE1MWDVfV1FFX1NJWkUsICZhdHRyLAorCQkJ U09DS0VUX0lEX0FOWSk7CiAJaWYgKHJldCkgewogCQlEUlZfTE9HKEVSUiwgIkNhbid0IGNyZWF0 ZSBRUCBvYmplY3QuIik7CiAJCXJ0ZV9lcnJubyA9IEVOT01FTTsKZGlmZiBhL2RyaXZlcnMvdmRw YS9tbHg1L21seDVfdmRwYV9ldmVudC5jIGIvZHJpdmVycy92ZHBhL21seDUvbWx4NV92ZHBhX2V2 ZW50LmMJKHJlamVjdGVkIGh1bmtzKQpAQCAtNTk0LDggKzU5NCw5IEBAIG1seDVfdmRwYV9ldmVu dF9xcF9jcmVhdGUoc3RydWN0IG1seDVfdmRwYV9wcml2ICpwcml2LCB1aW50MTZfdCBkZXNjX24s CiAJYXR0ci5udW1fb2Zfc2VuZF93cWJicyA9IDA7IC8qIE5vIG5lZWQgU1EuICovCiAJYXR0ci50 c19mb3JtYXQgPQogCQltbHg1X3RzX2Zvcm1hdF9jb252KHByaXYtPmNkZXYtPmNvbmZpZy5oY2Ff YXR0ci5xcF90c19mb3JtYXQpOwotCXJldCA9IG1seDVfZGV2eF9xcF9jcmVhdGUocHJpdi0+Y2Rl di0+Y3R4LCAmKGVxcC0+c3dfcXApLCBsb2dfZGVzY19uLAotCQkJCSAgJmF0dHIsIFNPQ0tFVF9J RF9BTlkpOworCXJldCA9IG1seDVfZGV2eF9xcF9jcmVhdGUocHJpdi0+Y2Rldi0+Y3R4LCAmKGVx cC0+c3dfcXApLAorCQkJCQlhdHRyLm51bV9vZl9yZWNlaXZlX3dxZXMgKgorCQkJCQlNTFg1X1dT RUdfU0laRSwgJmF0dHIsIFNPQ0tFVF9JRF9BTlkpOwogCWlmIChyZXQpIHsKIAkJRFJWX0xPRyhF UlIsICJGYWlsZWQgdG8gY3JlYXRlIFNXIFFQKCV1KS4iLCBydGVfZXJybm8pOwogCQlnb3RvIGVy cm9yOwoKaHR0cHM6Ly9sYWIuZHBkay5vcmcvcmVzdWx0cy9kYXNoYm9hcmQvcGF0Y2hzZXRzLzIw MDcxLwoKVU5ILUlPTCBEUERLIENvbW11bml0eSBMYWIK --===============1288294257950461322==--