Received: by 2002:a05:6358:f14:b0:e5:3b68:ec04 with SMTP id b20csp2216708rwj; Mon, 19 Dec 2022 01:05:32 -0800 (PST) X-Google-Smtp-Source: AA0mqf4JKUA2l5g15Bar0gk7rpF1v69OY0tujt+NIJ/ih49zyH4RfB2YzrJY02XtNoS/xA90F1Ml X-Received: by 2002:a17:902:6e0f:b0:189:361f:89ac with SMTP id u15-20020a1709026e0f00b00189361f89acmr38340166plk.64.1671440731536; Mon, 19 Dec 2022 01:05:31 -0800 (PST) ARC-Seal: i=2; a=rsa-sha256; t=1671440731; cv=pass; d=google.com; s=arc-20160816; b=rcr0pQYSkQ4zufCPNJvBwc7O7cXRAuft2V4ijl5wH9ktFUCReLRA5MPAl+cx5cSE1h 76ruKEO4tIzV8QwSKIl7c187m8l20QXQlLVrXvYjuSS1m+75f56s84RmK2It90dxcI4x E0rduump2izd9sXJYgcq2Qpx7P6HVz5V5fgs8kM5b5Zr3/MYuxeJV6pIpO8zsuMC9bRy y0SEHC/vs/ZoAtGMTo0mrb/wGyhfibcnqYxDdoQIfQcbcdWWMzLR+UVnoaeXziaK8Mml lYJPjFv39HUlxx2n++RmmydK6Io0vc4bGRrwA7CinnMXoJXKvPvXssFyMFc9Ebj5UuKp d/6w== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:mime-version:content-transfer-encoding :content-id:user-agent:content-language:accept-language:in-reply-to :references:message-id:date:thread-index:thread-topic:subject:cc:to :from:dkim-signature; bh=QadssjCDV5PLprBTDDWtAAeyWE7a9p/f00NETfKSTCA=; b=uzPgFnQ2ag/cNra3VAik8gizH0LcPZP2BoqSXK1E7JSv4oaSAfp2hxwIooFR6qGYcu j13AXUvA7+43f5vNBPpbzt24ao5vX/wkiCAH9yzAusCS3JVU8FNHztyJFFYUKyrff1UV ZGg2M/gqd+xakhN/OByUDC3LDascnKPuDQK7Wa6MprSVnTePy3PRDVguHr1p8e9rHERt /tWWUFBl69iTu2OUEp6mYqW7wxji50tGEKUMQ+zW6eu+7SuK+aU8zNacNuf5m01Ll5uC b7ekJGu3ojl+eLpu084JcmL46tQpOwN5Z1X4NxGtua96jGa0RbhBiEiEAfsob1MN4Zhr ruOA== ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=ZKabaZDT; arc=pass (i=1 spf=pass spfdomain=intel.com dkim=pass dkdomain=intel.com dmarc=pass fromdomain=intel.com); spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id u5-20020a170903124500b00186897fb90dsi11072333plh.233.2022.12.19.01.05.22; Mon, 19 Dec 2022 01:05:31 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=ZKabaZDT; arc=pass (i=1 spf=pass spfdomain=intel.com dkim=pass dkdomain=intel.com dmarc=pass fromdomain=intel.com); spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229528AbiLSIWL (ORCPT + 71 others); Mon, 19 Dec 2022 03:22:11 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:52686 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229499AbiLSIWI (ORCPT ); Mon, 19 Dec 2022 03:22:08 -0500 Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 5E4AF7647 for ; Mon, 19 Dec 2022 00:22:05 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1671438125; x=1702974125; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-id:content-transfer-encoding: mime-version; bh=QadssjCDV5PLprBTDDWtAAeyWE7a9p/f00NETfKSTCA=; b=ZKabaZDTDv5jF6TH+hlekyJebh/TQsHYPHshIoqRTCfwj6+uE9NWkysh MGXVHyCh3lja4nL+Y3MyTLZ1bJGD1u3uAJt2KEaAvaNX670WVM+ud5gNe sl/iQVTHpEI44WRu6B50Hqc6cccu+Y9LMIP6Pgc7X+02NkCmgELdoiyWM tAarVd+FbeTjZdrp9EijMxE5YACLjKXMXLS85phoNbNmTJBCLHPyqdDRH MPOxgPAq2kBqytLXeBxM5czxYNNdPvqNgDSl5dhvc42muov+PnClsnBEP 1sXN4o+1GlNaRuf9uy27tM8yqA5QNSKz3RFrI2Cr3WO/CCZKavHeuXzbO g==; X-IronPort-AV: E=McAfee;i="6500,9779,10565"; a="321187370" X-IronPort-AV: E=Sophos;i="5.96,255,1665471600"; d="scan'208";a="321187370" Received: from fmsmga002.fm.intel.com ([10.253.24.26]) by orsmga103.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 19 Dec 2022 00:22:04 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6500,9779,10565"; a="757534720" X-IronPort-AV: E=Sophos;i="5.96,255,1665471600"; d="scan'208";a="757534720" Received: from fmsmsx603.amr.corp.intel.com ([10.18.126.83]) by fmsmga002.fm.intel.com with ESMTP; 19 Dec 2022 00:22:04 -0800 Received: from fmsmsx602.amr.corp.intel.com (10.18.126.82) by fmsmsx603.amr.corp.intel.com (10.18.126.83) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.16; Mon, 19 Dec 2022 00:22:04 -0800 Received: from FMSEDG603.ED.cps.intel.com (10.1.192.133) by fmsmsx602.amr.corp.intel.com (10.18.126.82) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.16 via Frontend Transport; Mon, 19 Dec 2022 00:22:04 -0800 Received: from NAM02-BN1-obe.outbound.protection.outlook.com (104.47.51.47) by edgegateway.intel.com (192.55.55.68) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2507.16; Mon, 19 Dec 2022 00:22:03 -0800 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=MOjufdDsSPhRp/0y299rkQpa+HeugGbv/80qh8qcjo8VDSoFRtRQPHyq7bmurprEQqVM07Q/Z7FLEgXApHwKLaSaJzct6KZQiqVh3Hy73BF3FFkYPsZdAxkCl8pvDgfn/ZvU/nr/stARx2Sf2eu1FWHSf8ekkofSgk0ii9n/67j4KXbLI1vkRj2Rl5kVKHjd9FuvwQbXhPEG9g7Ol/snVyzowJTtyak3ul7AkVq9wP0Q/zqInVWX9hGMFN/SdCxPx/+4xgI01HkROJC0dTlBMzumyarGfOZ0Sh7MChiCTTvBGRRXCbsRF0dKfvbc5/3FxC4LbKPYUJMo3Y3vZqMeLQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=QadssjCDV5PLprBTDDWtAAeyWE7a9p/f00NETfKSTCA=; b=AiIahpwLTAS9Ldd61oZpoT2EI03m0vrmgEnIvjZXvAvQkQO4HXy7mZrDhvwhWAEzjGYr9XPJr3XC9a3hkEUdASy6slPp5E8gaumFk30P01VhVkD4boYsg0FmXL6TueZlPubvwUN5umcSOHIcFr+XEyuM5VYeXt5FfZGgr3TM1pSeSmxdrtAXdrmkh5KWyVefMSqwpDo4H6A1vw635bjoBxWauEbvn7K/NakIQPGDDTYDVS4Mj0MInxLYGQoqdts5ckusuFZ/9V9/QbjO6lZRf9vcNji3tE+5Oa7usKpAW/Ujw1MGbwIKrqCj6cw+ZEeqe+wtQ6w0kBw2+qdylc4lFg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com; dkim=pass header.d=intel.com; arc=none Received: from DM4PR11MB5549.namprd11.prod.outlook.com (2603:10b6:5:388::7) by CO1PR11MB5073.namprd11.prod.outlook.com (2603:10b6:303:92::23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5924.16; Mon, 19 Dec 2022 08:22:01 +0000 Received: from DM4PR11MB5549.namprd11.prod.outlook.com ([fe80::4cb1:2965:376:8bda]) by DM4PR11MB5549.namprd11.prod.outlook.com ([fe80::4cb1:2965:376:8bda%7]) with mapi id 15.20.5924.016; Mon, 19 Dec 2022 08:22:01 +0000 From: "Wang, Zhi A" To: Zheng Wang CC: "1002992920@qq.com" <1002992920@qq.com>, "airlied@gmail.com" , "airlied@linux.ie" , "alex000young@gmail.com" , "dri-devel@lists.freedesktop.org" , "gregkh@linuxfoundation.org" , "hackerzheng666@gmail.com" , "intel-gfx@lists.freedesktop.org" , "intel-gvt-dev@lists.freedesktop.org" , "joonas.lahtinen@linux.intel.com" , "linux-kernel@vger.kernel.org" , "security@kernel.org" , "tvrtko.ursulin@linux.intel.com" , "zhenyuw@linux.intel.com" Subject: Re: [Intel-gfx] [PATCH v3] drm/i915/gvt: fix double free bug in split_2MB_gtt_entry Thread-Topic: [Intel-gfx] [PATCH v3] drm/i915/gvt: fix double free bug in split_2MB_gtt_entry Thread-Index: AQHY6cLGBXkP1Tf3okih35bsJFVnIK5vEcgAgAAMroCABgz2AIAABv6A Date: Mon, 19 Dec 2022 08:22:01 +0000 Message-ID: <11728bc1-7b59-1623-b517-d1a0d57eb275@intel.com> References: <20221219075700.220058-1-zyytlz.wz@163.com> In-Reply-To: <20221219075700.220058-1-zyytlz.wz@163.com> Accept-Language: en-FI, en-US Content-Language: aa X-MS-Has-Attach: X-MS-TNEF-Correlator: user-agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.6.0 authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=intel.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: DM4PR11MB5549:EE_|CO1PR11MB5073:EE_ x-ms-office365-filtering-correlation-id: c75a7344-0dd3-4bfb-3abb-08dae19a1ae8 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: kXeKNtnbJH2QIGAYj1Dtk9uut9BxCiciZXEZ3wQjQbbgnueyx6V+w3QIg72cvZOt21LzY7dUfy7WpMEUdjeftvQAxqTRW/eb6GRVy0Q9iPw1bROVou4nztMI57GMgIp5k2d+HcAXUpRajlImAgcoVCwdrUXNEcYANYEbKK0yXVUxbMqE5v+GF0X4VNitAQ6DX8O9pLCinJhgC9m+1xlSUexT9nMH4Tlivym6PsIjI+hyvd9gg/xCq3vmMtg16seLfRIdSc57NbVfqmGJdNJ/+kayjoOK57RZiuk4k3gjRzaZtTN4EdN24qEXzrrxiy8zeyczfBDHwzkYqhzZx4Ompn9MvR/MkKGqBoxGZnM57/2wOUsfo3g0bouDlnElGAf8gpTjFaHTZ7QXf3LCMZrp8Z+HVeTuqCCEX8kBC1YNUEtrpkrgabKs1h3Lt15Zx23xx//b6KAzAhpoQLsOJb2VZPiCO1wSTk5cmdgf3cwUH7hoZErye9XLUZoAWz4aTub3kpViCLk954LWhJmXjMWos+Kf2Y/uSy6D7aAILZNceNYg8L+XkIvk0579HF/GqdQsLBykxcRUOTaA/aMA5Cgyyeaqcr02l6AM2upX2zQO4xFNdr+2vIQyQ0ngI50hltnTNNSkWIsC5NyxGhXwxyQxY48RoDuM6Ayh5FqUmiW36rhut+432/rQ2TZhssZ8+6UpU6qWQv+N8pS/fFvchtyjIg1DQyoq8ivf72aVqZqYpJlTMgLGpI6CM4Ml5nf+DP9ul5Zr5sFfVhuEKRctJkYPWQ== x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DM4PR11MB5549.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230022)(366004)(396003)(376002)(39860400002)(346002)(136003)(451199015)(6506007)(478600001)(6486002)(36756003)(71200400001)(2906002)(53546011)(26005)(6512007)(186003)(31696002)(41300700001)(8676002)(66556008)(76116006)(66946007)(66476007)(66446008)(91956017)(38070700005)(64756008)(4326008)(7416002)(83380400001)(5660300002)(316002)(122000001)(8936002)(6916009)(54906003)(82960400001)(86362001)(38100700002)(31686004)(2616005)(43740500002)(45980500001);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?TmRVdEJ0bi9rSzdtaStpSGNEVWtDWlJWK3orM0ZiTDFBZEhpdTRtR3MySWd2?= =?utf-8?B?S05ESTlxMVFZVDBJNnEvRjlyQlZWREY2TTd1M1FOSUZtWVBBWFhrWXE1MDFa?= =?utf-8?B?ck9RUklyVDZsdCsrRVUvaWd2YUN3SDBSU2hEaU1Wd2dXOUNhanIxS2FST0VQ?= =?utf-8?B?Z2QyWkFBV2x0bjJ6UnIrRm1MRmtTMExHYUErQlViNkgrK2tqblRiT1haeW9h?= =?utf-8?B?eGMrdE5KUlFkY3ZhY0xOTlliSlJkWHgyc3ZhWW9xNUNuUEZVNWkzV3E2Sm5L?= =?utf-8?B?L0dVUW1Xekw3Z1RJSGl0YkhycXFvK0FDb2p3U3FVb2RjTHVOcHc3THcvQ3g5?= =?utf-8?B?ZVdGendGVWtzMnc5M1hsa3hXVDdjM1pmWWY0dlRlSGQvN0VRMGlQcmJBTlpY?= =?utf-8?B?clZTWCtuMVBSNDF0VE5kQ2pUT0t4cVUwZkF4S29EdTdhSWZOVmpVejR1dUkw?= =?utf-8?B?ODdHd1plRnlCQmNEQXFiL3ZWdm9NK0VUY1I3UkN2VXlzencrUG8yUm5nTmVG?= =?utf-8?B?RXNJcFVNRVBScEU1ajFJWk9vN09qZ1ZvcjNIZzBTLzI1NXRlbGIvZGFOSnlL?= =?utf-8?B?Z1hOVHpldVpKbnFscmhHQUVYVWlteTdRNWRhREs3MEJTYWlTeGNSeWZDd0oz?= =?utf-8?B?ZG5aZVRqQTF2S0xpQXo4dk04ZTBIT2Z1OTJSRnBWOG9nb0ppU2tubHZIZzZJ?= =?utf-8?B?MlRJeXcrYjJiM3BRQXh4ZlNvSFBrb1lPalRrUkZ6ZnZzN1B3dUdGMHdsRXAv?= =?utf-8?B?MUw4OWRTK1o1OHJvN1ZuNnk0OTEvR0kyc0hxUVBjampwdEdvNVlZeVhYMDhU?= =?utf-8?B?TzBNU1dDQUhub0dwaW5MQWQ0R09oQlV3eTQ3LzFoT3l4T0JNN1VERW1ZRFNS?= =?utf-8?B?c3haOU9kTk5rL1cxa0g1dVczUlRnT2JhMjRKblpQVG5CWWpzREZMMTQ4YUEw?= =?utf-8?B?RCtMRmlrdnk2RzBpWEF5elVuclFEcVQ4V1NLQWFKbVdvZm1NRlBNd3EwNEJC?= =?utf-8?B?bk9iRlh2dVVnVEI3dnU1V2pYeEE2SjRpYitIQVJjTGMyVVUwbi9XZU9uTjAy?= =?utf-8?B?R1dac0lCM0ltNjVPQnRpQ2tKMXJWLzEwY0JQMnlQMXNldEFkRVlaVEVqUW40?= =?utf-8?B?cDUwa28yakZxRnlNWXhxeFZEdytMY2l5YWtxN2VhVjJ5QWtOUDFwcVVwbWNu?= =?utf-8?B?U2kxVSttQnJCb1hwMXdMTG5RdFhSZFNjVkxXcGNDREt2c2tpc3I0T2tkaFk5?= =?utf-8?B?SGFNK2E1YWVMa0ZkUUhXcFZ6SGUvdUIzWGN3MDNCMEd0N29iTzA2T0JQZVZM?= =?utf-8?B?TnMrR0lEWWoxQWFpMG5TanFqWWZnaTJjNm9USkFzZ2hBSk1yb0ZBT256WCtD?= =?utf-8?B?L3NPMUNoMFR2aWowM1FlazlxUG9wMjRjMVVGMlo2UVA4UU9Gb0srMUhSTjdk?= =?utf-8?B?NjhSZGpxT1ZOaWRRMXNFSjRsdkxOaEg3TTBWNzVYZFdsOE9pV0hpeHViVU9H?= =?utf-8?B?QWdydVZZdGdNeXlDM2p4TXkrTjJrTmZlWVl6M2tQK1RORk9qQy9JRFNlWFNa?= =?utf-8?B?SHZQR1F4NzcxdFhpRHRzYzZiaE9peUEwcEVoa0xTazFqUmhDR1M4M01sM2J0?= =?utf-8?B?empDeDB1REdPSmFwTGJ2LzgyNDRsM0lZeXRsQ2gxK2FnSmtPVDlVMnRLSlNJ?= =?utf-8?B?R0Z4QUZXaGFFckhDWmRnU3ByY1lCMU43dWlmTVpTam84WWhBS3NEWXl1ZkNk?= =?utf-8?B?OXpYMm8rU2JTeHRtK3REYzR5c2E1c0c3MVlYQVFHclFWYWN1RG5FWGtaVlNn?= =?utf-8?B?MDYvTThBWWI3am5id3Mwa1FINzdLVHpDNTc2Vi9xcDM3Zk1TTjExL05mWnFM?= =?utf-8?B?dUpFblFBY08zTjNkaFo4TmpjTE9Vb3NFbFZ6ZndzTWYzdk5Idit5YXZaNmZE?= =?utf-8?B?U09oQjNhcjI3eTRveGV1N1FFTE45TkFPT3dzRzM1N0t1Mit3dVRmMHA0ekJx?= =?utf-8?B?T25CU2RvNmlRRHkwdy9RMjhIRks5ZjR1emZWbmdZbjdGK0F1V3dWYTNZenlY?= =?utf-8?B?SUI3OTJBRGNNOFk2bjBkWkYrYWdwMHY2STIvR2hPaElTQkh4ZUJuSE1ZUGNG?= =?utf-8?Q?YekwAt/+yGrdE+wjH7qYrDVUC?= Content-Type: text/plain; charset="utf-8" Content-ID: Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: DM4PR11MB5549.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: c75a7344-0dd3-4bfb-3abb-08dae19a1ae8 X-MS-Exchange-CrossTenant-originalarrivaltime: 19 Dec 2022 08:22:01.8517 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 46c98d88-e344-4ed4-8496-4ed7712e255d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: 0R3swrm9fpEh67mTzj5nZRtp7hTIInuS1mT1KypJUxIJXF7zgeYQ0B8TY1sa6dAzeV/Y/KQXXh3h865W4zoGSg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: CO1PR11MB5073 X-OriginatorOrg: intel.com X-Spam-Status: No, score=-5.5 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,NICE_REPLY_A, RCVD_IN_DNSWL_MED,SPF_HELO_NONE,SPF_NONE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org T24gMTIvMTkvMjAyMiA5OjU3IEFNLCBaaGVuZyBXYW5nIHdyb3RlOg0KPiBIaSBaaGksDQo+IA0K PiBUaGFua3MgYWdhaW4gZm9yIHlvdXIgcmVwbHkgYW5kIGNsZWFyIGV4cGxhaW5hdGlvbiBhYm91 dCB0aGUgZnVuY3Rpb24uDQo+IEkgc3RpbGwgaGF2ZSBzb21lIGRvdWJ0IGFib3V0IHRoZSBmaXgu IEhlcmUgaXMgYSBpbnZva2UgY2hhaW4gOg0KPiBwcGd0dF9wb3B1bGF0ZV9zcHQNCj4gICAgLT5w cGd0dF9wb3B1bGF0ZV9zaGFkb3dfZW50cnkNCj4gICAgICAtPnNwbGl0XzJNQl9ndHRfZW50cnkN Cj4gQXMgZmFyIGFzIEknbSBjb25jZXJuZWQsIHdoZW4gc29tZXRoaW5nIGVycm9yIGhhcHBlbnMg aW4gRE1BIG1hcHBpbmcsDQo+IHdoaWNoIHdpbGwgbWFrZSBpbnRlbF9ndnRfZG1hX21hcF9ndWVz dF9wYWdlIHJldHVybiBub25lLXplcm8gY29kZSwNCj4gSXQgd2lsbCBpbnZva2UgcHBndHRfaW52 YWxpZGF0ZV9zcHQgYW5kIGNhbGwgcHBndHRfZnJlZV9zcHQsd2hpY2ggd2lsbA0KPiBmaW5hbGx5 IGZyZWUgc3B0IGJ5IGtmcmVlLiBCdXQgdGhlIGNhbGxlciBkb2Vzbid0IG5vdGljZSB0aGF0IGFu ZCBmcmVlcw0KPiBzcHQgYnkgY2FsbGluZyBwcGd0dF9mcmVlX3NwdCBhZ2Fpbi4gVGhpcyBpcyBh IHR5cGljYWwgVUFGL0RvdWJsZSBGcmVlDQo+IHZ1bG5lcmFiaWxpdHkuIFNvIEkgdGhpbmsgdGhl IGtleSBwb2ludCBpcyBhYm91dCBob3cgdG8gaGFuZGxlIHNwdCBwcm9wZXJseS4NCj4gVGhlIGhh bmRsZSBuZXdseSBhbGxvY2F0ZWQgc3B0IChha2Egc3ViX3NwdCkgaXMgbm90IHRoZSByb290IGNh dXNlIG9mIHRoaXMNCj4gaXNzdWUuIENvdWxkIHlvdSBwbGVhc2UgZ2l2ZSBtZSBtb3JlIGFkdmlj ZSBhYm91dCBob3cgdG8gZml4IHRoaXMgc2VjdXJpdHkNCj4gYnVnPyBCZXNpZGVzLCBJJ20gbm90 IHN1cmUgaWYgdGhlcmUgYXJlIG1vcmUgc2ltaWxhciBwcm9ibGVtcyBpbiBvdGhlIGxvY2F0aW9u Lg0KPiANCj4gQmVzdCByZWdhcmRzLA0KPiBaaGVuZyBXYW5nDQo+IA0KDQpJIHRoaW5rIGl0IGlz IGEgY2FzZS1ieS1jYXNlIHRoaW5nLiBGb3IgZXhhbXBsZToNCg0KVGhlIGN1cnJlbnQgc2NlbmFy aW8gaW4gdGhpcyBmdW5jdGlvbiBsb29rcyBsaWtlIGJlbG93Og0KDQpjYWxsZXIgcGFzcyBzcHQg YQ0KZnVuY3Rpb24NCglhbGxvYyBzcHQgYg0KCXNvbWV0aGluZyBlcnJvcg0KCWZyZWUgc3B0IGEN CglyZXR1cm4gZXJyb3INCg0KVGhlIHByb2JsZW0gaXM6IHRoZSBmdW5jdGlvbiB3cm9uZ2x5IGZy ZWVzIHRoZSBzcHQgYSBpbnN0ZWFkIGZyZWUgd2hhdCANCml0IGFsbG9jYXRlcy4NCg0KQSBwcm9w ZXIgZml4IHNob3VsZCBiZToNCg0KY2FsbGVyIHBhc3Mgc3B0IGENCmZ1bmN0aW9uDQoJYWxsb2Mg c3B0IGINCglzb21ldGhpbmcgZXJyb3INCgkqZnJlZSBzcHQgYioNCglyZXR1cm4gZXJyb3INCg0K VGhhbmtzLA0KWmhpLg0KDQo=