From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail.openvz.org (mail.openvz.org [69.168.225.77]) by lore.virtuozzo.com (Postfix) with ESMTPS id 599B780BB3 for ; Thu, 22 Oct 2026 15:06:03 +0000 (UTC) Received: from mail.openvz.org (localhost [127.0.0.1]) by mail.openvz.org (8.14.4/8.14.4) with ESMTP id 69MF4idp010043; Thu, 22 Oct 2026 18:04:45 +0300 DKIM-Filter: OpenDKIM Filter v2.11.0 mail.openvz.org 69MF4idp010043 Authentication-Results: mail.openvz.org; dkim=fail reason="signature verification failed" (2048-bit key) header.d=virtuozzo.com header.i=@virtuozzo.com header.b="iQ1qvu9g" Received: from mail-wr1-f72.google.com (mail-wr1-f72.google.com [209.85.221.72]) by mail.openvz.org (8.14.4/8.14.4) with ESMTP id 69MF4gNH010039 (version=TLSv1/SSLv3 cipher=AES128-GCM-SHA256 bits=128 verify=FAIL) for ; Thu, 22 Oct 2026 18:04:43 +0300 DKIM-Filter: OpenDKIM Filter v2.11.0 mail.openvz.org 69MF4gNH010039 Received: by mail-wr1-f72.google.com with SMTP id ffacd0b85a97d-48e0ef019a4so1624351f8f.3 for ; Thu, 22 Oct 2026 08:04:43 -0700 (PDT) X-Gm-Message-State: AFq9FYKjqTSIUGyr4JCXG8kx+cfLcHygQE/+PQBdkXeGLrOo7p25It1S 6ZqLHaorWp6xbYK4hwb04dKC3kPWgsA2tbDne2LYyenCamV1B/JgiZ5wD6TQcIKRHRYhsPd2Ale ktGo/We5bQmuYUzdVF0pNLNC8seuvvVgDsO+49KbbmqAG7W3hlzQysg== X-Gm-Gg: AYBFou0lCCRjtUyeFs28MNU3Ua4aNAXfKUUzNqu5BH5UHV/uXoC3BpeDqLh4C/9/Qm/ kWMAeLlWmugoso1hKSGsygidDmc8ue+/xgKCsPgYu2A/N2hJfa3YXM3q6zvE0MXorAlVE65SNEG qcKOXHrB68Kn1orUID6EQP6si1pXVUAAOu5LfnAtePqSWoKZs4t3l2kF+//gmOg6mS0MmIjU91b 2qepoKP5UcsCNM/c40TuAvDGu4d0s928vfUzT9YA3iX1GweVqYYlucYHYPff49NmSYso14PjF5M KfVhG/JGof7Qwfn6nkKzRNo5353QPYQPSlGCd/p2Jfp033dn7Q6bz/Qb4GOc0BOEY6c8PtVeoi/ Lbp8ry5XNjTBcKRWz X-Received: by 2002:a05:6000:603:b0:48e:824:f0b9 with SMTP id ffacd0b85a97d-48e264de087mr11348027f8f.45.1792681482489; Thu, 22 Oct 2026 08:04:42 -0700 (PDT) X-Received: by 2002:a05:6000:603:b0:48e:824:f0b9 with SMTP id ffacd0b85a97d-48e264de087mr11347886f8f.45.1792681481652; Thu, 22 Oct 2026 08:04:41 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1792681481; cv=none; d=google.com; s=arc-20260327; b=T2nH/7eAYNhGHLFcQwCynaHkcAMnwtB58NJrOKQkrpYHK3fLKxV7HiqN6TCPn2UL98 rgf4ZQ4liwkNNogXPBi7DLhIt5wpWxrWk3RgDag1g2Q9BHr8RmQjWAKTPqqntb+7JCjR UH6A3RGAt3aOKiM0uCGewpP0vyUaApN8GUHzCIXA2pRKazW6gyqayFNgCB5NP0+jkJtT g5fs/i7T1G9WlsTdq2bWzJCn1gZnH9Hk8NfrnjXuY2zxppCzPBYRdYDfHScCM63CDW2h 8oMg1hIbfV/N8IDxXFtW1WSeAAitdxrSvaAHRtf4SX4EsLeir2+4QG7jnrBd+gB0XABe sDmw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20260327; h=to:message-id:content-transfer-encoding:mime-version:subject:date :from:dkim-signature; bh=8bm4tfPucHYVZorvWCzN/ZkeQeqFGdkbd6PHs8W2vWI=; fh=u94vpSnbACPnIkIPa1XdGqhjZt/kxdbqUA9AiFps/bg=; b=Pkww5i5+MjG31irhAJ4TBJ+Oe9+FEdOOGHDC/i2cF7B16B377u37tJ/sucRx3JGqDS sy9zjVKuFLUZDFf7ma+lRjhgVhzFiVvNwPCri1BsR+mNHHsepUDwle1s3Wu2VfUiAOwe sjk6XazZfzQnceDqtpfX2kPdmrnnyzzwwU/dFsjx1J2ik4+9ZvvObTIxccTzkvasmMnD ja0qYBBc5b54GBJAO3BUHzcIYamsJwavKg8xal0NNDmwYF7Nfs2XCchnInZWF4iAn80J DOiwiPWh0Rz47koQqWB9ikWQV9m63cc+eckh5qlYQkN88LYir4qgBX/ox5qgBYFRwgMP zgfQ==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@virtuozzo.com header.s=relay header.b=iQ1qvu9g; spf=pass (google.com: domain of khorenko@virtuozzo.com designates 130.117.225.111 as permitted sender) smtp.mailfrom=khorenko@virtuozzo.com; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=virtuozzo.com Received: from relay.virtuozzo.com (relay.virtuozzo.com. [130.117.225.111]) by mx.google.com with ESMTPS id ffacd0b85a97d-48e2588996fsi11197271f8f.418.2026.10.22.08.04.41 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 22 Oct 2026 08:04:41 -0700 (PDT) Received-SPF: pass (google.com: domain of khorenko@virtuozzo.com designates 130.117.225.111 as permitted sender) client-ip=130.117.225.111; Authentication-Results: mx.google.com; dkim=pass header.i=@virtuozzo.com header.s=relay header.b=iQ1qvu9g; spf=pass (google.com: domain of khorenko@virtuozzo.com designates 130.117.225.111 as permitted sender) smtp.mailfrom=khorenko@virtuozzo.com; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=virtuozzo.com DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=virtuozzo.com; s=relay; h=Message-Id:Content-Type:MIME-Version:Subject:Date :From; bh=8bm4tfPucHYVZorvWCzN/ZkeQeqFGdkbd6PHs8W2vWI=; b=iQ1qvu9gz4LkkeVIlHK IRw7hoaZCOvkOIxCslWGcaloYWNdGMidAWU7mWO7CgAo283e80s+IKbq7wQ81ucmbNTVLVyN2ONDC u5on7IUlhwR5L6SWQr7i+aOSXSM+dnM0dFSKc1oiO2S5qE2BsciQMNPjTaArG8OAqJSc+RH5J+58R 0B3z0+iYFbshUWJNLs5Z+OeYWvg1kPtAdcw0ImRHOuwFeRWDpwsBAXvWt/eJn1VqETQ1iQ/wa3U0P kZOSaG+I0Ef3J8jq4iLO8P7YOPAWVioHmslbLrS6X1HYQyf2TpPCFU7eRHU/PF9wVhTKMG2A6qPdO G5e9kjG1/mT/O9g==; Received: from ch-demo-asa.virtuozzo.com ([130.117.225.8] helo=f0.sw.ru) by relay.virtuozzo.com with esmtp (Exim 4.96) (envelope-from ) id 1xJuHn-00Goxy-2U; Thu, 22 Oct 2026 17:04:38 +0200 From: Konstantin Khorenko Date: Thu, 22 Oct 2026 17:04:38 +0200 MIME-Version: 1.0 Message-Id: <20261022-khorenko-vstor-148112-page_pool-scrub-uaf-v1-1-69598508c85b@virtuozzo.com> X-B4-Tracking: v=1; b=H4sIAAUm2moC/yWN0QrCIBRAf2Xc5254XZj0KxHh7G7aQkXnCMb+P avHw4FzNiicPRe4dBtkXn3xMTSgQwfWmTAx+kdjkEIqElLi7GLmMEdcyxIz0kkTSUxm4nuK8YX F5jpgNWNTPfdnElopCa2XMo/+/XtdwVmP+khw+4tShyfb5XuCff8AkqepbJYAAAA= X-Change-ID: 20261022-khorenko-vstor-148112-page_pool-scrub-uaf-143e37108662 To: devel@openvz.org, Konstantin Khorenko X-Mailer: b4 0.16.0 X-Developer-Signature: v=1; a=openpgp-sha256; l=6776; i=khorenko@virtuozzo.com; h=from:subject:message-id; bh=K1yOlhhbaS3Tp8GyklFL7zxFiX7tDKYxFtN4HV++gp4=; b=owEBbQKS/ZANAwAKAVGWCkf5YVwqAcsmYgBq2iYIWd5NS9iCJa2yNZB/63xSn2ZwSCAuZGCqH fPQyOxz+BqJAjMEAAEKAB0WIQRWD23IPcXT0GO9CCxRlgpH+WFcKgUCatomCAAKCRBRlgpH+WFc Km6OEADCJflt5IYpVWWWUegpC0jmurmLkEcJ38X0FkZ+l3d9HzmlWG8eRAwJYloe/1/N8zFy3qF tEJnOp1LkLNqHKrq7wF0h8B4p9QnNKwnoo6yBLt80ZDqt0UsbtUGLAf8J5WEr5h/yOWfDR0ep7s hjjWIkKb3ZXyYXzjyMB5qT1ZfnrNncLGC84I0jAomPaPje80GMhsToiZWlM6DntCMfjuw3tfemg KqCSemP0SME398sSQFk0USmx2xX6SzOlbKRpYeeU83lfk7ez1fTL3H2iGJiUD/ycjKFmtvQdFQk JiyDqGSOTOgZvqVkb+gxpg8LQhqFhjmBhXIqMK68kSeSoT0cL2ko/drJkCr25od9gAp9IxAfepc WDLjU1qUaIqparw6xv5jN4RIQECUw87kfaL51aZiRtGmdzqfcOLe5JOSLORoYeZllI3x2gJIuHe Tb1DqPdJ9/IDRmh0hpkojgPSneMcPXxl5iewvreHMzhtNyfqKrxRuCWlITYIuhNgDieyDcCmeCx yznXJwxr78BFB+iY/8GGnSKyRTb5ATTi/9AxzcV0oOZqt0ipDamnGUHMqfD13+fnhaxTrAEs592 hX6nbuEm513MhkUJfKbgUJjAILxafS4s3znCqUL8g5CauJFQuyrtBjoNbEuTfA4HODL8eXQLhds bHWxjJzDAvewouA== X-Developer-Key: i=khorenko@virtuozzo.com; a=openpgp; fpr=560F6DC83DC5D3D063BD082C51960A47F9615C2A X-OZ-Fwd: true Subject: [Devel] [PATCH hci-8.1] ms/net: page_pool: fix UAF in __page_pool_release_netmem_dma on xa_cmpxchg race X-BeenThere: devel@openvz.org X-Mailman-Version: 2.1.12 Precedence: list List-Id: OpenVZ development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: devel-bounces@openvz.org Errors-To: devel-bounces@openvz.org RnJvbTogSmlqaWUgU2hhbyA8c2hhb2ppamllQGh1YXdlaS5jb20+CgpUaGlzIGJ1ZyB3YXMgZGlz Y292ZXJlZCB3aGlsZSB0ZXN0aW5nIHRoZSBobnMzIGRyaXZlciB1bmRlciBjaGFubmVsCnJlY29u ZmlndXJhdGlvbiAoYGV0aHRvb2wgLUxgIC8gYGV0aHRvb2wgLUdgKSB3aXRoIGlwZXJmMyB0cmFm ZmljIG9uCmFybTY0LiBUaGUgcmFjZSBpcyBpbnRlcm1pdHRlbnRseSB0cmlnZ2VyZWQgd2hlbiBw YWdlX3Bvb2xfZGVzdHJveSgpCnJ1bnMgcGFnZV9wb29sX3NjcnViKCkgY29uY3VycmVudGx5IHdp dGggcGFnZSByZXR1cm4gdmlhCnBhZ2VfcG9vbF9wdXRfbmV0bWVtKCkgb24gYSBkaWZmZXJlbnQg Q1BVLiBBIFdBUk4gaW4KcGFnZV9wb29sX2NsZWFyX3BwX2luZm8oKSBzdXJmYWNlZCB0aGUgZGFu Z2xpbmcgRE1BIGluZGV4IGJpdHMgbGVmdApieSB0aGUgY21weGNoZyBsb3Nlciwgd2hpY2ggbGVk IHRvIHRoZSBpbnZlc3RpZ2F0aW9uLgoKcGFnZV9wb29sX3NjcnViKCkgaXRlcmF0ZXMgcG9vbC0+ ZG1hX21hcHBlZCB2aWEgeGFfZm9yX2VhY2goKSB3aXRoIG5vCnBhZ2UgcmVmIGhlbGQuIF9fcGFn ZV9wb29sX3JlbGVhc2VfbmV0bWVtX2RtYSgpIGN1cnJlbnRseSByZWFkcyBhbmQKd3JpdGVzIG5l dG1lbSBmaWVsZHMgKGRtYV9hZGRyLCBETUEgaW5kZXggYml0cyBpbiBwcF9tYWdpYykgYWZ0ZXIK eGFfY21weGNoZygpIHJldHVybnMuIFRoZSB1bnJlZiBwYXRoIGNhbGxzIHB1dF9wYWdlKCkgdW5j b25kaXRpb25hbGx5CnJlZ2FyZGxlc3Mgb2YgdGhlIGNtcHhjaGcgb3V0Y29tZTsgd2hlbiBpdCBs b3NlcyB0aGUgY21weGNoZywgaXQgc3RpbGwKZnJlZXMgdGhlIHBhZ2UgYmVmb3JlIHRoZSBzY3J1 YiB3aW5uZXIgZmluaXNoZXMgdGhlc2UgbmV0bWVtIGFjY2Vzc2VzLApzbyBzY3J1YiB0b3VjaGVz IGEgZnJlZWQgcGFnZSAtLSBhIFVzZS1BZnRlci1GcmVlLgoKRml4IHRoaXMgYnkgc3BsaXR0aW5n IHRoZSBETUEgcmVsZWFzZSBpbnRvIHR3byBmdW5jdGlvbnM6CgoxLiBfX3BhZ2VfcG9vbF91bm1h cF9uZXRtZW1fZG1hKCkgY2FjaGVzIGRtYV9hZGRyIGJlZm9yZSB4YV9jbXB4Y2hnKCksCiAgIGRv ZXMgdGhlIGNtcHhjaGcgdG8gcmVtb3ZlIHRoZSBETUEgbWFwcGluZywgYW5kIGNhbGxzIGRtYV91 bm1hcCBvbgogICB0aGUgY2FjaGVkIGFkZHJlc3MuIEl0IG5ldmVyIHRvdWNoZXMgbmV0bWVtIGZp ZWxkcyBhZnRlciB0aGUgY21weGNoZywKICAgbWFraW5nIGl0IHNhZmUgZm9yIHRoZSBzY3J1YiBw YXRoIHdoaWNoIGhvbGRzIG5vIHBhZ2UgcmVmLgoKMi4gX19wYWdlX3Bvb2xfcmVsZWFzZV9uZXRt ZW1fZG1hKCkgd3JhcHMgdGhlIGFib3ZlIGFuZCBhZGRpdGlvbmFsbHkKICAgY2xlYXJzIGRtYV9h ZGRyIGFuZCBETUEgaW5kZXggYml0cyBpbiBuZXRtZW0gZmllbGRzLiBUaGlzIGlzIHNhZmUKICAg b25seSB3aGVuIHRoZSBjYWxsZXIgaG9sZHMgYSBwYWdlIHJlZiwgc28gaXQgaXMgdXNlZCBieSB0 aGUgcmV0dXJuCiAgIHBhdGggKHBhZ2VfcG9vbF9yZXR1cm5fbmV0bWVtKS4KClRoZSBzY3J1YiBw YXRoIGNhbGxzIF9fcGFnZV9wb29sX3VubWFwX25ldG1lbV9kbWEoKSBkaXJlY3RseTsgdGhlIHJl dHVybgpwYXRoIGNhbGxzIF9fcGFnZV9wb29sX3JlbGVhc2VfbmV0bWVtX2RtYSgpLgoKRml4ZXM6 IGVlNjJjZTdhMWQ5MCAoInBhZ2VfcG9vbDogVHJhY2sgRE1BLW1hcHBlZCBwYWdlcyBhbmQgdW5t YXAgdGhlbSB3aGVuIGRlc3Ryb3lpbmcgdGhlIHBvb2wiKQpTdWdnZXN0ZWQtYnk6IE1pbmEgQWxt YXNyeSA8YWxtYXNyeW1pbmFAZ29vZ2xlLmNvbT4KUmV2aWV3ZWQtYnk6IE1pbmEgQWxtYXNyeSA8 YWxtYXNyeW1pbmFAZ29vZ2xlLmNvbT4KU2lnbmVkLW9mZi1ieTogSmlqaWUgU2hhbyA8c2hhb2pp amllQGh1YXdlaS5jb20+ClJldmlld2VkLWJ5OiBUb2tlIEjDuGlsYW5kLUrDuHJnZW5zZW4gPHRv a2VAcmVkaGF0LmNvbT4KTGluazogaHR0cHM6Ly9wYXRjaC5tc2dpZC5saW5rLzIwMjYwODA3MTE0 ODMwLjM0NDMzNi0xLXNoYW9qaWppZUBodWF3ZWkuY29tClNpZ25lZC1vZmYtYnk6IEpha3ViIEtp Y2luc2tpIDxrdWJhQGtlcm5lbC5vcmc+CihjaGVycnkgcGlja2VkIGZyb20gY29tbWl0IDI0ZWYw MmY5MzRlZWI0ODgzMGNmZjZiNzM5YWJjM2M2MmIxZDEwN2IpCgpSZWJhc2Ugbm90ZTogdGhpcyB0 cmVlIGxhY2tzIHVwc3RyZWFtIDRhZDEyNWFlMzgwYiAoInBhZ2VfcG9vbDogcmVuYW1lCl9fcGFn ZV9wb29sX3JlbGVhc2VfcGFnZV9kbWEoKSB0byBfX3BhZ2VfcG9vbF9yZWxlYXNlX25ldG1lbV9k bWEoKSIpLApzbyB0aGUgcmV0dXJuLXBhdGggaGVscGVyIGtlZXBzIGl0cyBvbGQgbmFtZSBhbmQg cGFnZV9wb29sX3NjcnViKCkKcGFzc2VzIHB0ciB3aXRob3V0IHRoZSAoc3RydWN0IHBhZ2UgKikg Y2FzdC4gVGhlIGNvZGUgaXMgb3RoZXJ3aXNlIHRoZQpzYW1lIGFzIHRoZSBtYWlubGluZSBjb21t aXQgYW5kIHRoZSA2LjEyLnkgYmFja3BvcnQgYmJmZWYzMDNmOTgwLgoKRm91bmQgd2hpbGUgcmV2 aWV3aW5nIHRoZSBQUF9NQUdJQ19NQVNLIGJhY2twb3J0IGZvciBWU1RPUi0xNDgxMTI6IHRoZQpz Y3J1YiBwYXRoIGNsZWFycyBkbWFfYWRkciBhbmQgdGhlIERNQSBpbmRleCBvZiBhIHBhZ2UgdGhl IHJldHVybiBwYXRoCm1heSBhbHJlYWR5IGhhdmUgZnJlZWQsIHdoaWNoIG9uIHg4Nl82NCBjb3Jy dXB0cyB0aGUgc3RydWN0IHBhZ2Ugb2YgYQpyZXVzZWQgcGFnZSAobHJ1Lm5leHQgYW5kIGluZGV4 KS4KCmh0dHBzOi8vdmlydHVvenpvLmF0bGFzc2lhbi5uZXQvYnJvd3NlL1ZTVE9SLTE0ODExMgoK RmVhdHVyZTogZml4IG1zL25ldC9wYWdlX3Bvb2wKU2lnbmVkLW9mZi1ieTogS29uc3RhbnRpbiBL aG9yZW5rbyA8a2hvcmVua29AdmlydHVvenpvLmNvbT4KLS0tCkZvbGxvdy11cCB0byB0aGUgUFBf TUFHSUNfTUFTSyBiYWNrcG9ydCBmb3IgVlNUT1ItMTQ4MTEyOiB0aGUgc2FtZQp1cHN0cmVhbSBE TUEgaW5kZXggdHJhY2tpbmcgaGFzIGEgdXNlLWFmdGVyLWZyZWUgaW4gcGFnZV9wb29sX3NjcnVi KCksCmZpeGVkIGluIG1haW5saW5lIDI0ZWYwMmY5MzRlZSBhbmQgaW4gNi4xMi55IGFzIGJiZmVm MzAzZjk4MC4KQ2VudE9TIFN0cmVhbSAxMCBkb2VzIG5vdCBoYXZlIGl0IHlldCAoY2hlY2tlZCB1 cCB0byA2LjEyLjAtMjc5LmVsMTApLgoKQXNzaXN0ZWQtYnk6IExMTQotLS0KIG5ldC9jb3JlL3Bh Z2VfcG9vbC5jIHwgNjYgKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLQogMSBmaWxlIGNoYW5nZWQsIDM1IGluc2VydGlvbnMoKyksIDMxIGRlbGV0aW9u cygtKQoKZGlmZiAtLWdpdCBhL25ldC9jb3JlL3BhZ2VfcG9vbC5jIGIvbmV0L2NvcmUvcGFnZV9w b29sLmMKaW5kZXggNThmMDc2OTBkYzMxMi4uYTYxMTA3ZjFkYmY5NiAxMDA2NDQKLS0tIGEvbmV0 L2NvcmUvcGFnZV9wb29sLmMKKysrIGIvbmV0L2NvcmUvcGFnZV9wb29sLmMKQEAgLTQ5MCwyOSAr NDkwLDQwIEBAIHN0YXRpYyBpbnQgcGFnZV9wb29sX3JlZ2lzdGVyX2RtYV9pbmRleChzdHJ1Y3Qg cGFnZV9wb29sICpwb29sLAogCXJldHVybiBlcnI7CiB9CiAKLXN0YXRpYyBpbnQgcGFnZV9wb29s X3JlbGVhc2VfZG1hX2luZGV4KHN0cnVjdCBwYWdlX3Bvb2wgKnBvb2wsCi0JCQkJICAgICAgIG5l dG1lbV9yZWYgbmV0bWVtKQorc3RhdGljIHZvaWQgX19wYWdlX3Bvb2xfdW5tYXBfbmV0bWVtX2Rt YShzdHJ1Y3QgcGFnZV9wb29sICpwb29sLAorCQkJCQkgbmV0bWVtX3JlZiBuZXRtZW0pCiB7CiAJ c3RydWN0IHBhZ2UgKm9sZCwgKnBhZ2UgPSBuZXRtZW1fdG9fcGFnZShuZXRtZW0pOwogCXVuc2ln bmVkIGxvbmcgaWQ7CisJZG1hX2FkZHJfdCBkbWE7CiAKLQlpZiAodW5saWtlbHkoIVBQX0RNQV9J TkRFWF9CSVRTKSkKLQkJcmV0dXJuIDA7Ci0KLQlpZCA9IG5ldG1lbV9nZXRfZG1hX2luZGV4KG5l dG1lbSk7Ci0JaWYgKCFpZCkKLQkJcmV0dXJuIC0xOworCWlmICghcG9vbC0+ZG1hX21hcCkKKwkJ cmV0dXJuOwogCi0JaWYgKGluX3NvZnRpcnEoKSkKLQkJb2xkID0geGFfY21weGNoZygmcG9vbC0+ ZG1hX21hcHBlZCwgaWQsIHBhZ2UsIE5VTEwsIDApOwotCWVsc2UKLQkJb2xkID0geGFfY21weGNo Z19iaCgmcG9vbC0+ZG1hX21hcHBlZCwgaWQsIHBhZ2UsIE5VTEwsIDApOwotCWlmIChvbGQgIT0g cGFnZSkKLQkJcmV0dXJuIC0xOworCS8qIENhY2hlIGRtYV9hZGRyIGJlZm9yZSB4YV9jbXB4Y2hn LiBUaGUgc2NydWIgcGF0aCBob2xkcyBubyBwYWdlIHJlZjsKKwkgKiB0aGUgdW5yZWYgcGF0aCBj YWxscyBwdXRfcGFnZSgpIHJlZ2FyZGxlc3Mgb2YgY21weGNoZyBvdXRjb21lLCBzbworCSAqIGFm dGVyIHRoZSBjbXB4Y2hnIHdlIGNhbm5vdCBzYWZlbHkgdG91Y2ggbmV0bWVtIGZpZWxkcy4KKwkg Ki8KKwlkbWEgPSBwYWdlX3Bvb2xfZ2V0X2RtYV9hZGRyX25ldG1lbShuZXRtZW0pOwogCi0JbmV0 bWVtX3NldF9kbWFfaW5kZXgobmV0bWVtLCAwKTsKKwlpZiAobGlrZWx5KFBQX0RNQV9JTkRFWF9C SVRTKSkgeworCQlpZCA9IG5ldG1lbV9nZXRfZG1hX2luZGV4KG5ldG1lbSk7CisJCWlmICghaWQp CisJCQlyZXR1cm47CisKKwkJaWYgKGluX3NvZnRpcnEoKSkKKwkJCW9sZCA9IHhhX2NtcHhjaGco JnBvb2wtPmRtYV9tYXBwZWQsCisJCQkJCSBpZCwgcGFnZSwgTlVMTCwgMCk7CisJCWVsc2UKKwkJ CW9sZCA9IHhhX2NtcHhjaGdfYmgoJnBvb2wtPmRtYV9tYXBwZWQsCisJCQkJCSAgICBpZCwgcGFn ZSwgTlVMTCwgMCk7CisJCWlmIChvbGQgIT0gcGFnZSkKKwkJCXJldHVybjsKKwl9CiAKLQlyZXR1 cm4gMDsKKwlkbWFfdW5tYXBfcGFnZV9hdHRycyhwb29sLT5wLmRldiwgZG1hLAorCQkJICAgICBQ QUdFX1NJWkUgPDwgcG9vbC0+cC5vcmRlciwgcG9vbC0+cC5kbWFfZGlyLAorCQkJICAgICBETUFf QVRUUl9TS0lQX0NQVV9TWU5DIHwgRE1BX0FUVFJfV0VBS19PUkRFUklORyk7CiB9CiAKIHN0YXRp YyBib29sIHBhZ2VfcG9vbF9kbWFfbWFwKHN0cnVjdCBwYWdlX3Bvb2wgKnBvb2wsIG5ldG1lbV9y ZWYgbmV0bWVtLCBnZnBfdCBnZnApCkBAIC03MTMsMjQgKzcyNCwxNiBAQCB2b2lkIHBhZ2VfcG9v bF9jbGVhcl9wcF9pbmZvKG5ldG1lbV9yZWYgbmV0bWVtKQogc3RhdGljIF9fYWx3YXlzX2lubGlu ZSB2b2lkIF9fcGFnZV9wb29sX3JlbGVhc2VfcGFnZV9kbWEoc3RydWN0IHBhZ2VfcG9vbCAqcG9v bCwKIAkJCQkJCQkgbmV0bWVtX3JlZiBuZXRtZW0pCiB7Ci0JZG1hX2FkZHJfdCBkbWE7Ci0KKwkv KiBDYWxsZXIgbXVzdCBob2xkIGEgcGFnZSByZWY6IF9fcGFnZV9wb29sX3VubWFwX25ldG1lbV9k bWEoKSBpcworCSAqIHNhZmUgd2l0aG91dCBhIHJlZiwgYnV0IHRoZSBmaWVsZCBjbGVhcnMgYmVs b3cgcmVxdWlyZSBpdC4KKwkgKi8KIAlpZiAoIXBvb2wtPmRtYV9tYXApCi0JCS8qIEFsd2F5cyBh Y2NvdW50IGZvciBpbmZsaWdodCBwYWdlcywgZXZlbiBpZiB3ZSBkaWRuJ3QKLQkJICogbWFwIHRo ZW0KLQkJICovCiAJCXJldHVybjsKIAotCWlmIChwYWdlX3Bvb2xfcmVsZWFzZV9kbWFfaW5kZXgo cG9vbCwgbmV0bWVtKSkKLQkJcmV0dXJuOwotCi0JZG1hID0gcGFnZV9wb29sX2dldF9kbWFfYWRk cl9uZXRtZW0obmV0bWVtKTsKLQotCS8qIFdoZW4gcGFnZSBpcyB1bm1hcHBlZCwgaXQgY2Fubm90 IGJlIHJldHVybmVkIHRvIG91ciBwb29sICovCi0JZG1hX3VubWFwX3BhZ2VfYXR0cnMocG9vbC0+ cC5kZXYsIGRtYSwKLQkJCSAgICAgUEFHRV9TSVpFIDw8IHBvb2wtPnAub3JkZXIsIHBvb2wtPnAu ZG1hX2RpciwKLQkJCSAgICAgRE1BX0FUVFJfU0tJUF9DUFVfU1lOQyB8IERNQV9BVFRSX1dFQUtf T1JERVJJTkcpOworCV9fcGFnZV9wb29sX3VubWFwX25ldG1lbV9kbWEocG9vbCwgbmV0bWVtKTsK IAlwYWdlX3Bvb2xfc2V0X2RtYV9hZGRyX25ldG1lbShuZXRtZW0sIDApOworCWlmIChsaWtlbHko UFBfRE1BX0lOREVYX0JJVFMpKQorCQluZXRtZW1fc2V0X2RtYV9pbmRleChuZXRtZW0sIDApOwog fQogCiAvKiBEaXNjb25uZWN0cyBhIHBhZ2UgKGZyb20gYSBwYWdlX3Bvb2wpLiAgQVBJIHVzZXJz IGNhbiBoYXZlIGEgbmVlZApAQCAtMTE1Nyw4ICsxMTYwLDkgQEAgc3RhdGljIHZvaWQgcGFnZV9w b29sX3NjcnViKHN0cnVjdCBwYWdlX3Bvb2wgKnBvb2wpCiAJCQkJc3luY2hyb25pemVfbmV0KCk7 CiAJCX0KIAorCQkvKiBObyBwYWdlIHJlZiwgZG1hLXVubWFwIG9ubHkuICovCiAJCXhhX2Zvcl9l YWNoKCZwb29sLT5kbWFfbWFwcGVkLCBpZCwgcHRyKQotCQkJX19wYWdlX3Bvb2xfcmVsZWFzZV9w YWdlX2RtYShwb29sLCBwYWdlX3RvX25ldG1lbShwdHIpKTsKKwkJCV9fcGFnZV9wb29sX3VubWFw X25ldG1lbV9kbWEocG9vbCwgcGFnZV90b19uZXRtZW0ocHRyKSk7CiAJfQogCiAJLyogTm8gbW9y ZSBjb25zdW1lcnMgc2hvdWxkIGV4aXN0LCBidXQgcHJvZHVjZXJzIGNvdWxkIHN0aWxsCgotLS0K YmFzZS1jb21taXQ6IDI1MTcwMTFkNmJlZjM4ZmEzZTRhNzFlMDQ0ZmVmOTQ5M2VkNmEzNGIKY2hh bmdlLWlkOiAyMDI2MTAyMi1raG9yZW5rby12c3Rvci0xNDgxMTItcGFnZV9wb29sLXNjcnViLXVh Zi0xNDNlMzcxMDg2NjIKCkJlc3QgcmVnYXJkcywKLS0gIApLb25zdGFudGluIEtob3JlbmtvLApW aXJ0dW96em8gTGludXggS2VybmVsIFRlYW0KCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fCkRldmVsIG1haWxpbmcgbGlzdApEZXZlbEBvcGVudnoub3JnCmh0 dHBzOi8vbGlzdHMub3BlbnZ6Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL2RldmVsCg==