From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id CA11DD2E009 for ; Wed, 23 Oct 2024 02:20:09 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 3AF6C6B00A5; Tue, 22 Oct 2024 22:20:09 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 35E766B00A7; Tue, 22 Oct 2024 22:20:09 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 18C266B00A6; Tue, 22 Oct 2024 22:20:09 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0012.hostedemail.com [216.40.44.12]) by kanga.kvack.org (Postfix) with ESMTP id E670C6B00B7 for ; Tue, 22 Oct 2024 22:20:08 -0400 (EDT) Received: from smtpin08.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay07.hostedemail.com (Postfix) with ESMTP id 531BB1606B2 for ; Wed, 23 Oct 2024 02:19:49 +0000 (UTC) X-FDA: 82703261382.08.05E2B84 Received: from mgamail.intel.com (mgamail.intel.com [198.175.65.10]) by imf07.hostedemail.com (Postfix) with ESMTP id 8CBFE4000E for ; Wed, 23 Oct 2024 02:19:41 +0000 (UTC) Authentication-Results: imf07.hostedemail.com; dkim=pass header.d=intel.com header.s=Intel header.b="TcOvr/xK"; spf=pass (imf07.hostedemail.com: domain of kanchana.p.sridhar@intel.com designates 198.175.65.10 as permitted sender) smtp.mailfrom=kanchana.p.sridhar@intel.com; dmarc=pass (policy=none) header.from=intel.com; arc=pass ("microsoft.com:s=arcselector10001:i=1") ARC-Seal: i=2; s=arc-20220608; d=hostedemail.com; t=1729649927; a=rsa-sha256; cv=pass; b=cpFXnQB5gJPrO3I6TUxEdiH0UN0mMncjgN/eUTAZry1qUu/kqQep8+3Ef8n8Sm4XSxdTIW g/69VZ5nUVUt2vZPvcaNzYozq5M31AR4c2UwXE+6vstVxBpRWrxGdnMRnKSd8yqvkipK7R O7doj6EadS2gRzLnXn/vWuVikfUT2Eo= ARC-Authentication-Results: i=2; imf07.hostedemail.com; dkim=pass header.d=intel.com header.s=Intel header.b="TcOvr/xK"; spf=pass (imf07.hostedemail.com: domain of kanchana.p.sridhar@intel.com designates 198.175.65.10 as permitted sender) smtp.mailfrom=kanchana.p.sridhar@intel.com; dmarc=pass (policy=none) header.from=intel.com; arc=pass ("microsoft.com:s=arcselector10001:i=1") ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1729649927; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=eWMR8EFWdiweAiZl/ojh6Ck8tpi4hNhuu8dFI1GC5PE=; b=K0cRLEM2t/kSaNmcQ6mmIHRKTTsgUJSBi2vVbR2Scrxp88PAlj9I3owlnYA2uoFLrUroRC uBEcTaUkkczdzaWN4ojyGaR6wBxg/AFJjK5J7UBo5QZeROt30BP3T7UTzlS5T2Z5DiE/0I 2aDtxVmHUMKY5/iFDtFQvYBewwFTvHw= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1729650005; x=1761186005; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=eWMR8EFWdiweAiZl/ojh6Ck8tpi4hNhuu8dFI1GC5PE=; b=TcOvr/xK+S5H97L44W9HpaabnAY5we88IgDC6GsSl1dCO4InLPoiPYxM MUDkv6WVGRDhfq9ScbP6t4yEyehONpllArwfYw49YDaY6i5I0S/h4rMwk 3GQtnemCUnu3Ej7YjCxENHwYaMfp16rP+haZvYL1Dk1RosVsSla8S8+Y2 0RI20COscGGtWPOc+CfxtlvfaokJlQjsq9Zr8McOk8nqHXknC5OKhHxzi 8R3wr3luV8QIgJpKWv3LgVwZu+qlrIQCr8RJ0xeNiYdSwPbSS+RDE3Cd0 DLlWjKqe6NSVCqK5qRvY7DElrV1tkcMztiYseuebBpIPpAZWowjTomS58 A==; X-CSE-ConnectionGUID: mvvkjqGHQyK3xvBsmbHxxw== X-CSE-MsgGUID: ExqbmkSnTMetVsJaPZaVzw== X-IronPort-AV: E=McAfee;i="6700,10204,11222"; a="46678731" X-IronPort-AV: E=Sophos;i="6.11,199,1725346800"; d="scan'208";a="46678731" Received: from orviesa009.jf.intel.com ([10.64.159.149]) by orvoesa102.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 22 Oct 2024 19:19:59 -0700 X-CSE-ConnectionGUID: HKlfWENFQf+CUDLjALyZ9Q== X-CSE-MsgGUID: l1+MYGOVRLK3HTuQPg9Nnw== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.11,223,1725346800"; d="scan'208";a="79970705" Received: from fmsmsx603.amr.corp.intel.com ([10.18.126.83]) by orviesa009.jf.intel.com with ESMTP/TLS/AES256-GCM-SHA384; 22 Oct 2024 19:19:39 -0700 Received: from fmsmsx601.amr.corp.intel.com (10.18.126.81) 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.39; Tue, 22 Oct 2024 19:19:38 -0700 Received: from FMSEDG603.ED.cps.intel.com (10.1.192.133) by fmsmsx601.amr.corp.intel.com (10.18.126.81) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.39 via Frontend Transport; Tue, 22 Oct 2024 19:19:38 -0700 Received: from NAM11-DM6-obe.outbound.protection.outlook.com (104.47.57.173) 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.39; Tue, 22 Oct 2024 19:19:37 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=Jw4rLTi72N3e3bYvSsHO+xE9PXeyaIB6l4qOunwKycbplZH2QayBG0o7sR27f6TvBoVx31fgaiStGAoYmNKbRfpM8YHs29zApIQZb5apE3pR3uYen94hHB+hI8NWpE/UrwODq+pvqFi1+Fgwss2KvDg4YhhaASLbRtXELrH828toFSIl5j3Hl8LDQk8XKN6UpMh+DojHHy/uu6UPYCGFQbipu0l5Ut96CeG23UyhGGaPv+m3dxgn10pitey4Gk1JoWGKUR8w5w1MA6Hvn9RtxzpmnTosHWqF8JGE5MROaSL1yTltosi7Bo7d7+8liF7w3Zt2WRjpTultUyTxmumRRw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; 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=eWMR8EFWdiweAiZl/ojh6Ck8tpi4hNhuu8dFI1GC5PE=; b=AcRWlPw74wetGuAks1Ap5PFiyMfcQxuiCujtR8yHQGmnHTNTsOzU1aD107ToVyKX9pmkbgTq66cwP/5CkVIrgZcRo2LWTbcyv9qkBWY0ZuT6ZGVX3F+nHIhIn2BGaEp8Ua96naWF+Y3u0sKLZTsI1DXkk22edOblc/CSdLx6qEFg4h2Xdwz+prc0qctBPNk9NEu8+gKGoNkEe6/nlGlsiZin5CElmX+zd1NXcHp2EUFaJ7DeBd5xCjVcHuCvutQF/4Nma/b3GFPpl6uQuwMuTzrr8Ln4RVu03LJvLtTvyRYaqDSSFpArq0194Lt2Qr1Oc04VIuiydy33tfwSxgs13w== 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 SJ0PR11MB5678.namprd11.prod.outlook.com (2603:10b6:a03:3b8::22) by IA1PR11MB6242.namprd11.prod.outlook.com (2603:10b6:208:3e8::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8069.28; Wed, 23 Oct 2024 02:19:34 +0000 Received: from SJ0PR11MB5678.namprd11.prod.outlook.com ([fe80::812:6f53:13d:609c]) by SJ0PR11MB5678.namprd11.prod.outlook.com ([fe80::812:6f53:13d:609c%4]) with mapi id 15.20.8069.027; Wed, 23 Oct 2024 02:19:34 +0000 From: "Sridhar, Kanchana P" To: Yosry Ahmed CC: "linux-kernel@vger.kernel.org" , "linux-mm@kvack.org" , "hannes@cmpxchg.org" , "nphamcs@gmail.com" , "chengming.zhou@linux.dev" , "usamaarif642@gmail.com" , "ryan.roberts@arm.com" , "Huang, Ying" , "21cnbao@gmail.com" <21cnbao@gmail.com>, "akpm@linux-foundation.org" , "linux-crypto@vger.kernel.org" , "herbert@gondor.apana.org.au" , "davem@davemloft.net" , "clabbe@baylibre.com" , "ardb@kernel.org" , "ebiggers@google.com" , "surenb@google.com" , "Accardi, Kristen C" , "zanussi@kernel.org" , "viro@zeniv.linux.org.uk" , "brauner@kernel.org" , "jack@suse.cz" , "mcgrof@kernel.org" , "kees@kernel.org" , "joel.granados@kernel.org" , "bfoster@redhat.com" , "willy@infradead.org" , "linux-fsdevel@vger.kernel.org" , "Feghali, Wajdi K" , "Gopal, Vinodh" , "Sridhar, Kanchana P" Subject: RE: [RFC PATCH v1 10/13] mm: zswap: Create multiple reqs/buffers in crypto_acomp_ctx if platform has IAA. Thread-Topic: [RFC PATCH v1 10/13] mm: zswap: Create multiple reqs/buffers in crypto_acomp_ctx if platform has IAA. Thread-Index: AQHbISi6BegAAxzGoUmOxi8Q6ExGTLKTiS0AgAAYC0A= Date: Wed, 23 Oct 2024 02:19:34 +0000 Message-ID: References: <20241018064101.336232-1-kanchana.p.sridhar@intel.com> <20241018064101.336232-11-kanchana.p.sridhar@intel.com> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ms-publictraffictype: Email x-ms-traffictypediagnostic: SJ0PR11MB5678:EE_|IA1PR11MB6242:EE_ x-ms-office365-filtering-correlation-id: f9d7a52a-693d-43eb-6930-08dcf30922b6 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0;ARA:13230040|376014|7416014|366016|1800799024|38070700018; x-microsoft-antispam-message-info: =?utf-8?B?UWdpTWtlWmxzeE94T1RRaThpa05LQlVvakVRRFdXdDVndjZDRXN6N0tYTkw0?= =?utf-8?B?N3RoSGtHR01yN041L3hPa2t4TnhaY1ZUaWtjSmo3S21CYjdwblR2SVBSUjJX?= =?utf-8?B?K0NNZWUwcGl1c21XYkxQUFY5MklQc1d0eW56UTBGUTRtQmJ4R3JLb1JrYllw?= =?utf-8?B?ak9Ea2xqcTVuNmFOSnVRZS9nTVpqUzRUbUhSN1lheTYrR0JKSnhGOGxmSEUy?= =?utf-8?B?SFhWT2xzL3dmVEovZ1R5VUFZOHdQRXVUWVpNVVBEalUyWCtsTzNUSjZGYnYx?= =?utf-8?B?RVl2WlpUY09PZWNFU3lHNGR4dEtseXdSbDhVWHN4OFlFcUIyS3M0UmVESGtM?= =?utf-8?B?T0R4ZWIydHl5QVBydTZ0dFpmQXFwKzIxY2VRUUpMWXRjTS92K0VUV1VIWU9K?= =?utf-8?B?eC9OWG13aHViMis3QjVBZDM0dXJFbDZmbUo0WmszZkM2M2U1bFpmeE1Wd2sr?= =?utf-8?B?VWtBUGdtczhzY01lZElTN2tmU1RqZ2FHUUhvMVJtbHpUVEk1VFo5OXM2U3A1?= =?utf-8?B?Y2JXZk52eFNOSjRiYmQvc3doOStwU2dadW9UenUremlkUytHeExDSHdLMllL?= =?utf-8?B?REEvdER0UGdoS1pRRmRVSjE4SUxpSE1GbGorc1hQaTRGUG5mZ1NqeXl6NVF0?= =?utf-8?B?ZWp5d3hNMmhvYjRkV3VCZG94ZlcyMzAwSzVnTWFUN21aMkkzU1Q1cXU3OURu?= =?utf-8?B?V3pKMjRQc2M4TTAxeHZub0ZqNHB3TW9vSUtsSmFDU2U5bDhqWDN4Vndxa3M0?= =?utf-8?B?eTZURHNoRHUrTlFCc0xUeHp1Qy83WmFwSXNKNW9XSUt1azBtNzNJdUlXdnBs?= =?utf-8?B?UXYyaGVKQWVqamdQOU1TeEU2R0pRTnc0Ym1uS0ErVWxFQW44NjljMjkzcnJs?= =?utf-8?B?Y3AxMW9sNXZtRGM3eHgxcVlSV0pOdlhhY3I5L05OL2NITWRiempac0NzSm83?= =?utf-8?B?aHZZNlFJNklEWVJFbTEyK3pHV3VjY2ZZQTVIaFR5QmdZWU9QZzV3a29DTTNJ?= =?utf-8?B?cWZHdnY3a0ZpZEJONW5ENDl6emFsOUVxT0k1aFRISllZMUJidHdqZnRaTDl2?= =?utf-8?B?aDMyTWdTdG1aRk9RcmdnOHlZT2pBbmozWjduY0ZXMnJJSDJDY2hZOWdYN2ZR?= =?utf-8?B?REptQ1JRc1Rqdk9iWEYrNlVTZzkzY05YRTdJVEc0aGNBWE5pZDhPZUl4MUxK?= =?utf-8?B?cFdSWCtpMGNCaE1oRmIrdVYyaFh6dElmMWNlSENpdC9lajhFa2xobVZERis5?= =?utf-8?B?aG1XRXhjaU1aU3lEMGI4Q2dHTmE0aWpHSHFzWTVwU2ViTzJ2eWxUVC8yRm1V?= =?utf-8?B?VjVwYjVvaGZuYnBSYVMwS2pMZWc5N29TaVR6a1dLVzk4UHlsTjlOaElmSHIv?= =?utf-8?B?Rm9GaHdsMlBmby9vQ1FSYUpsc09WT1VRTVZvT3lCVmxocjQ0SHlBaGUxM3d6?= =?utf-8?B?cVdORjVZWnhKUWNWcXY0WWpnRU5Zc25mQ3ZuWkh2QmhRT3l1WDBrajFjc25V?= =?utf-8?B?MG50YlFsZkJwR28rOE8zYlpTeWZPMUQzSEsvMzN5WWJrakVQdnVZZ0F5ek9M?= =?utf-8?B?QlFET0JqMitIbmo1VExVMUI5Z2I5Q3V2cW1BS3Q0UGpVL1loWEVnOXF6azFL?= =?utf-8?B?cXAxdEJxWUdPbG1XdjZFSGcwaHJJNkszSzREaFBUWno5aDZvTktXSWhiMFR3?= =?utf-8?B?VDd3bnJpMHVXblREbEF5VXhzcGl4UzZ5MG4yTit6Z0FDeXk4b3lKU3lsZ25C?= =?utf-8?B?UUdXQzVMQmhEOGd3bW9XOGZVZi9Qd3FMaUp5K3A3YnorSmRKU0FtWWlBcUhq?= =?utf-8?Q?N82Lj/0Cs5ja3IajRjk6dJ70qCx+kJHDn7Y80=3D?= x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR11MB5678.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(376014)(7416014)(366016)(1800799024)(38070700018);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?NWlOUjZ4ZVA5bVE2VGJuR2ViU080K3JuaFRTdnNDM3dVVm9xZW9vQTQ0R1Vl?= =?utf-8?B?QTZtZGJ4c2RXTlhsK0JGQnVTZnVjVHZseWs2UmFrb3NiYWdlemZoVlRZQU55?= =?utf-8?B?VDJBQXdIc2RDdGhsSkYza1dIWVVIUGJxbDhobkRPNDVSMndUSDdHdFhOaTBr?= =?utf-8?B?UU13K25Rbm9UNXY1VFZrUm5DZ2dOd1ozSFgxS283TUw2MVdHVlhrTmgxQm5y?= =?utf-8?B?Mzk2TTlvdVhPd1dMb2JiNEluZElPenNOY0NKTzZiaU0zTm1XWFVkc05jYmhS?= =?utf-8?B?V2pLbnJ5VVp6NnhwVENHcEpEN3JhbjhLMVNNa2lMN3RwelZDUHdKTzU4NC95?= =?utf-8?B?RXptdjViNEFRRE9nbWdMUmhvOUx4NkNNRXo0c254bFFMd3NENXFPMzNCbWh5?= =?utf-8?B?SDgyM2lWemMwNkhrM3Q0RDM5TVRZNHlaNTVIMUJuVWxyRGVFMWFqaFc2T1FK?= =?utf-8?B?bHVCUU9HYTErU0o0c1VjcDFZWW41Uk1wcmp1bDhhRFBPUUpNZE5hQkZ6eFRW?= =?utf-8?B?Qzg1VDE2YTlSTys1azFvR3E2UkVRdUcrcXdaUTArWjROcmJMb0VuMk45OWRv?= =?utf-8?B?a01tUG5BdVI1b2tRWCtJTWYzeUtjaXFBQkNLVCtUMmFuMGxKWTlVc1ZYWkJv?= =?utf-8?B?dXBsWmxjMTQ1TVRSNzJEajU5eEYyT2J6WTdiZzIxdzdBaHAxVVNLZEZFaUM5?= =?utf-8?B?YVpuSWNjQjhPQythaFk3TUNxSUx3cHA2eDZ6Zm5rWW4vT2czOTV1UXdHVzhw?= =?utf-8?B?cXhWb290a3hacE9WWENrOHJiTHBiYU51UGNkdUc1cXJTOE5hMlhBY1hXci9k?= =?utf-8?B?aWU1RTNkNGttdVJGeGVXMzdCRzRGbGN4a1B3V2RTejlmS3J4MEsvV3RxcTlQ?= =?utf-8?B?UWhhbVMzTmY3Z1BwMnQzaGt1Z2dkcjhsa3IzNU1KVWF1Z0NMODVpdTN3a2J3?= =?utf-8?B?a3FRQ3RKT01DVDdIV2Q3YUNTUlhuM2RmREJ4OFd5V1l6MDJXWVJmaDRqNmIv?= =?utf-8?B?N3lFc1pReUNOWDBIeHA0VGVETzdWZ3NaOE04VzU4ZjZaU25tejJFYm5EazUw?= =?utf-8?B?WllxZ3dIeDZzQk9mY09jRjVoTUMrdmhmOFdlR0ZEaE4zb2Z6MU0yeWx6dTEr?= =?utf-8?B?VDNtUmEvM2JPNm9JMTNOMmpNOWI4WDBPL1FoYlFHeWNwcVcxT094amNCQzFN?= =?utf-8?B?UlBFRHNoNDBpZkYrUVVucnhBcUNBek40ZjhTRmhYZWVpaDBNamxIU3huekky?= =?utf-8?B?TEZvRCtSTTlVcXptZC9LeWZ6ak5DOHkyODNYMUxaSWc0ZENaWFhNenRDQTdK?= =?utf-8?B?N0Y5djZqVkNJbVBpdXdydnZjVG1tbm5WTjVKSEVQNEdlMm9JMnJMem91em1S?= =?utf-8?B?eCtNVVNjbjlwd0JEWUNCZlh0dGd3UlFXMVAwWWlyS2JBLzg5eS9XblFwUzZj?= =?utf-8?B?c2RncFRSa2dQTFpVZE5mZjdhYXlKemF4OUtqcWFEa21RSFRtVGk1Z1JKK0dM?= =?utf-8?B?WlRSVnRKdjh5RmxZNXlsZUxBYzZ4SzVQR1c4Y3pwUG8rUzlOZkE1Y2dERTJT?= =?utf-8?B?bjViajBOZnlrdzljTXI1ZFRySURVMWtlQXRWR2JNS0xFeVh1a3NMNTJ4N2tE?= =?utf-8?B?QWFJWWlXbUM4NW5xd3kzaGVudUd6UGhZNXdJcU5ibVBQaFpBcFpwOVZrdE4z?= =?utf-8?B?WldLVUloYzdVNzVoTmJVUUNnQWJXaEdyaHhpbTlMaCtCMnNSdWwxNTRBMDhw?= =?utf-8?B?SElveFQxSitSOVlBUjJXdFNoTXczbWxDMkc4b2NCYXk3UVpyUDdMTGhpYUQ5?= =?utf-8?B?VExCTmowaTlvT3pvczJDdGd3T1g2elR2YkdackEzYTZCNC91NzJhMTJWcTh2?= =?utf-8?B?cS82VTlkbTQyWEpqVmk0MzZWNGUzcWFIcFgwNy9HVzhyeGJJY01wd1RCckcz?= =?utf-8?B?aEZaRE1SWDVqLzJONjNwbmpQeklRU3gxZmZHMkFVc1hBUUI2TFRudU5FSVBp?= =?utf-8?B?SkFHdjZJMEJ1TXdWWHcwZWcvcUsvT29oOTJBcUxiR2J5cm1VRERZMEpZcnB0?= =?utf-8?B?WTZBRUdwZE8vUnY0a3hTWEFObGpCN2hMUHlHUGpIMmpwT3RDQ2lSRVhMZURn?= =?utf-8?B?SHFVVGVLamx1U0R2TTAvc2x3bWdNcENaZWkyK1BwTitCRW9JWXh3MW1SYThh?= =?utf-8?B?d2c9PQ==?= Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: SJ0PR11MB5678.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: f9d7a52a-693d-43eb-6930-08dcf30922b6 X-MS-Exchange-CrossTenant-originalarrivaltime: 23 Oct 2024 02:19:34.2179 (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: smubTffW7hgGCU/eFy51oN0sjux4Ep3VMj/Z6Q/G2TDX9er2F9SNzR0+ByvpZwrR0EKhK3YNcQXdfvwksMQrrUaWz3ND0K3E2PbRiJTb1o0= X-MS-Exchange-Transport-CrossTenantHeadersStamped: IA1PR11MB6242 X-OriginatorOrg: intel.com X-Stat-Signature: zy89ewi6jt9c3567qs9kngj789kbtwp3 X-Rspamd-Queue-Id: 8CBFE4000E X-Rspam-User: X-Rspamd-Server: rspam10 X-HE-Tag: 1729649981-811415 X-HE-Meta: U2FsdGVkX1+TELaEc/TdtIWAhpFfYXkxrJo+v79I6DwVYM8A4OtRsVl48gMCuUelBn0JG9FEBeDJ3QRtpQgGN0v+pPUvLOqb8tF6i+jJOVFiE8iNsXE77F9qJ76Z7epklX9sOPhRuBoYysGELzHcFOUn5SZE5GWtyYqDeoIMgFK5QE4e1baek+G8bWr2nXGxdCJLFswiM+SAijlcZ+R43BAX4Gwuo2Oklll+Baa0Iwvz7gJ18XZHqIacBmV+Al5u+aTMS9rPd5pPyaUKoIv4rMEV0qt/Puvqns1/3f1F43K+GeM4eg/UhZIaMtpknXmD/0mJd5wn1MZVbOEWr3Be4ew0AK8ocB4YT5C/JVV5ytugHxylJUUORKsL4ABd5S+UP3Bu4rch8uBr2YuwGsTxR4JV9WnGa4TZQbH1ZDqUJ/pPONQwEp3R4odT8jFgUgDEWLr7qPKWcDBYNbpeRyI/k8Adi+GfH8vciUZcXVWyw/hn0RWCT12XXBWVqwBid7dXfk4hsLUZ7QuRDqT+bBBVO6JdhT+UJ7vLM0RsvfusmBvBPHanHq4txnMIbpnXpf8vxByoiCZHg0A31TTpHrkq1GIDspLYMiOQfbcxw4psq4d+H2WWbtkLFm4J8Aqfcq04llUYbIyHuZbmVNI2UCnMbJ9dJPE/Mo0IF2vyxe4K1f7SbQsC6fIBkAzZziglXJKeGB5/DctByaLxBQYPGxSwQYsU8r35DrfxxyjOEH/0U7F92fFXscHta+E68GV2k1FPJK5eda9LWnJSqoKkg8+ZujSFZu+TYVi+Z3a8XLm88yETxVc9ED1rc7y0M2AQNA7VnNtdzUB/YrB7A+Fq20s0dOeFF4VE41cRCaeQyj6J6w3TB0pcqoHRp1W9ajqnuWs0WLWeBYsU1P8+L8P1LB8sh8gLKYuQ3JWRWHvOYzDGeMK49CmMwesFoV+PjdX30YPSCpo3LhzNKgBz9hjRuXI To+Ok4V/ j9y2/T8RGrNGUrJXHhQG4HtZ75+XTu4mf+ZnfDMqvRG4ixlLnsVfrpviLRNJHDCtr50g3pKyt9V2+s0eFVSNlvhIyDEuIJd4BvnniqjtEqiUDlUgN/0khaEyhTe2XAFprfCA4M3gRR6oVHz1ntZiQDyxfYEqm6xE4NmWFjRkqNkocXkFtEfwDC6ZHQboOdoBerKokFPyTJbVekBnd5w90TGT5xrdTswoZoAKF6LXRSb+yYIGxaZxKFwauEejsMA4xQh1P9sCC3QdN2CjCyZAmCXfbT75nKy/VCtstQLsQvL8NvCpVRbuWqXTpu/IwlohdqpAdja+DUla8UBmQRC4u3A8WNRHMO4WJmQA9B4/+uety5RRyyrTj50mPotqPVO9/racLvNQn8q9FQycL12LZ1FJkzTu3CjrBSvsa4KQSPbebNcoYYlk6epFCCGZp1/oOumz6O7t+tRxb4Qe0pX1xadHYTyOvQ82hRh53tqDrWJqbhPjS8fydL3CW7wQAr0pA+8jxInRpGNeXslZVE/BKig4UQVCP1laWmXLSBeqwQJq0XhtW1KWFDy8G+pPlNUGd/svAEh9+FWs7rytThfO6rsCkUHZL4elgEFH4DwZr1bovL+xMuUOnmU3c4TtN7sbmZTpPYjoYd5vZDA18LL2bzJo/TgC3jAy+Gt/a6O/2Oa9c1vs4SiHshU33m753UVuv4XRUHtpu6vzbgz0LwGBNcKSw4ucLnBHT8ankM6g9PP+JsvjSAtwzy0B53GXjgiyMMJIQi3AICELR4EHeQ20uT59LZIjAwCsybw9YM6sAz9Wb137uXLo36L6lOvZfNbiefgFgPDLIxDTls5z4PI+KtpSkaxA1vvl3RONUETSvNLAvCfoXn/s00tGSHdEVlcKBDVD0pDna/g0Wk5hIlneNbfWOGWxI+ut8Dq+e3KsblsOe/wCOuMkid4v7VtT2N+gLqgZ9/+J7GVZqn+e4e2E2sQzyLVPQ Z03NkYzR Fo+DR/qZGKT/WPkrGkBJk72/H7Z2TDXEjHaNa4Fy0nlaEk4p2ybpVr9wZl/06lCWEZ4TQhgpwG9ztuZ7H7jsvyfrjZDlRl8JULML1fYaRWEpXJJu1X1Juroz3hexIGYbRuC04Tdq0YyFPAbRHv9CcoiiYZ1SbyYnR9JM9aKZSbRIJvjFpqWNHu0OF9b+Rnx2AXXDLPMc2B0= X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: DQo+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+IEZyb206IFlvc3J5IEFobWVkIDx5b3Ny eWFobWVkQGdvb2dsZS5jb20+DQo+IFNlbnQ6IFR1ZXNkYXksIE9jdG9iZXIgMjIsIDIwMjQgNTo1 MiBQTQ0KPiBUbzogU3JpZGhhciwgS2FuY2hhbmEgUCA8a2FuY2hhbmEucC5zcmlkaGFyQGludGVs LmNvbT4NCj4gQ2M6IGxpbnV4LWtlcm5lbEB2Z2VyLmtlcm5lbC5vcmc7IGxpbnV4LW1tQGt2YWNr Lm9yZzsNCj4gaGFubmVzQGNtcHhjaGcub3JnOyBucGhhbWNzQGdtYWlsLmNvbTsgY2hlbmdtaW5n Lnpob3VAbGludXguZGV2Ow0KPiB1c2FtYWFyaWY2NDJAZ21haWwuY29tOyByeWFuLnJvYmVydHNA YXJtLmNvbTsgSHVhbmcsIFlpbmcNCj4gPHlpbmcuaHVhbmdAaW50ZWwuY29tPjsgMjFjbmJhb0Bn bWFpbC5jb207IGFrcG1AbGludXgtZm91bmRhdGlvbi5vcmc7DQo+IGxpbnV4LWNyeXB0b0B2Z2Vy Lmtlcm5lbC5vcmc7IGhlcmJlcnRAZ29uZG9yLmFwYW5hLm9yZy5hdTsNCj4gZGF2ZW1AZGF2ZW1s b2Z0Lm5ldDsgY2xhYmJlQGJheWxpYnJlLmNvbTsgYXJkYkBrZXJuZWwub3JnOw0KPiBlYmlnZ2Vy c0Bnb29nbGUuY29tOyBzdXJlbmJAZ29vZ2xlLmNvbTsgQWNjYXJkaSwgS3Jpc3RlbiBDDQo+IDxr cmlzdGVuLmMuYWNjYXJkaUBpbnRlbC5jb20+OyB6YW51c3NpQGtlcm5lbC5vcmc7IHZpcm9AemVu aXYubGludXgub3JnLnVrOw0KPiBicmF1bmVyQGtlcm5lbC5vcmc7IGphY2tAc3VzZS5jejsgbWNn cm9mQGtlcm5lbC5vcmc7IGtlZXNAa2VybmVsLm9yZzsNCj4gam9lbC5ncmFuYWRvc0BrZXJuZWwu b3JnOyBiZm9zdGVyQHJlZGhhdC5jb207IHdpbGx5QGluZnJhZGVhZC5vcmc7IGxpbnV4LQ0KPiBm c2RldmVsQHZnZXIua2VybmVsLm9yZzsgRmVnaGFsaSwgV2FqZGkgSyA8d2FqZGkuay5mZWdoYWxp QGludGVsLmNvbT47IEdvcGFsLA0KPiBWaW5vZGggPHZpbm9kaC5nb3BhbEBpbnRlbC5jb20+DQo+ IFN1YmplY3Q6IFJlOiBbUkZDIFBBVENIIHYxIDEwLzEzXSBtbTogenN3YXA6IENyZWF0ZSBtdWx0 aXBsZSByZXFzL2J1ZmZlcnMNCj4gaW4gY3J5cHRvX2Fjb21wX2N0eCBpZiBwbGF0Zm9ybSBoYXMg SUFBLg0KPiANCj4gT24gVGh1LCBPY3QgMTcsIDIwMjQgYXQgMTE6NDHigK9QTSBLYW5jaGFuYSBQ IFNyaWRoYXINCj4gPGthbmNoYW5hLnAuc3JpZGhhckBpbnRlbC5jb20+IHdyb3RlOg0KPiA+DQo+ ID4gSW50ZWwgSUFBIGhhcmR3YXJlIGFjY2VsZXJhdGlvbiBjYW4gYmUgdXNlZCBlZmZlY3RpdmVs eSB0byBpbXByb3ZlIHRoZQ0KPiA+IHpzd2FwX3N0b3JlKCkgcGVyZm9ybWFuY2Ugb2YgbGFyZ2Ug Zm9saW9zIGJ5IGJhdGNoaW5nIG11bHRpcGxlIHBhZ2VzIGluIGENCj4gPiBmb2xpbyB0byBiZSBj b21wcmVzc2VkIGluIHBhcmFsbGVsIGJ5IElBQS4gSGVuY2UsIHRvIGJ1aWxkIGNvbXByZXNzIGJh dGNoaW5nDQo+ID4gb2YgenN3YXAgbGFyZ2UgZm9saW8gc3RvcmVzIHVzaW5nIElBQSwgd2UgbmVl ZCB0byBiZSBhYmxlIHRvIHN1Ym1pdCBhIGJhdGNoDQo+ID4gb2YgY29tcHJlc3Mgam9icyBmcm9t IHpzd2FwIHRvIHRoZSBoYXJkd2FyZSB0byBjb21wcmVzcyBpbiBwYXJhbGxlbCBpZiB0aGUNCj4g PiBpYWFfY3J5cHRvICJhc3luYyIgbW9kZSBpcyB1c2VkLg0KPiA+DQo+ID4gVGhlIElBQSBjb21w cmVzcyBiYXRjaGluZyBwYXJhZGlnbSB3b3JrcyBhcyBmb2xsb3dzOg0KPiA+DQo+ID4gIDEpIFN1 Ym1pdCBOIGNyeXB0b19hY29tcF9jb21wcmVzcygpIGpvYnMgdXNpbmcgTiByZXF1ZXN0cy4NCj4g PiAgMikgVXNlIHRoZSBpYWFfY3J5cHRvIGRyaXZlciBhc3luYyBwb2xsKCkgbWV0aG9kIHRvIGNo ZWNrIGZvciB0aGUgam9icw0KPiA+ICAgICB0byBjb21wbGV0ZS4NCj4gPiAgMykgVGhlcmUgYXJl IG5vIG9yZGVyaW5nIGNvbnN0cmFpbnRzIGltcGxpZWQgYnkgc3VibWlzc2lvbiwgaGVuY2Ugd2UN Cj4gPiAgICAgY291bGQgbG9vcCB0aHJvdWdoIHRoZSByZXF1ZXN0cyBhbmQgcHJvY2VzcyBhbnkg am9iIHRoYXQgaGFzDQo+ID4gICAgIGNvbXBsZXRlZC4NCj4gPiAgNCkgVGhpcyB3b3VsZCByZXBl YXQgdW50aWwgYWxsIGpvYnMgaGF2ZSBjb21wbGV0ZWQgd2l0aCBzdWNjZXNzL2Vycm9yDQo+ID4g ICAgIHN0YXR1cy4NCj4gPg0KPiA+IFRvIGZhY2lsaXRhdGUgdGhpcywgd2UgbmVlZCB0byBwcm92 aWRlIGZvciBtdWx0aXBsZSBhY29tcF9yZXFzIGluDQo+ID4gInN0cnVjdCBjcnlwdG9fYWNvbXBf Y3R4IiwgZWFjaCByZXByZXNlbnRpbmcgYSBkaXN0aW5jdCBjb21wcmVzcw0KPiA+IGpvYi4gTGlr ZXdpc2UsIHRoZXJlIG5lZWRzIHRvIGJlIGEgZGlzdGluY3QgZGVzdGluYXRpb24gYnVmZmVyDQo+ ID4gY29ycmVzcG9uZGluZyB0byBlYWNoIGFjb21wX3JlcS4NCj4gPg0KPiA+IElmIENPTkZJR19a U1dBUF9TVE9SRV9CQVRDSElOR19FTkFCTEVEIGlzIGVuYWJsZWQsIHRoaXMgcGF0Y2ggd2lsbA0K PiBzZXQgdGhlDQo+ID4gU1dBUF9DUllQVE9fU1VCX0JBVENIX1NJWkUgY29uc3RhbnQgdG8gOFVM LiBUaGlzIGltcGxpZXMgZWFjaCBwZXItDQo+IGNwdQ0KPiA+IGNyeXB0b19hY29tcF9jdHggYXNz b2NpYXRlZCB3aXRoIHRoZSB6c3dhcF9wb29sIGNhbiBzdWJtaXQgdXAgdG8gOA0KPiA+IGFjb21w X3JlcXMgYXQgYSB0aW1lIHRvIGFjY29tcGxpc2ggcGFyYWxsZWwgY29tcHJlc3Npb25zLg0KPiA+ DQo+ID4gSWYgSUFBIGlzIG5vdCBwcmVzZW50IGFuZC9vciBDT05GSUdfWlNXQVBfU1RPUkVfQkFU Q0hJTkdfRU5BQkxFRA0KPiBpcyBub3QNCj4gPiBzZXQsIFNXQVBfQ1JZUFRPX1NVQl9CQVRDSF9T SVpFIHdpbGwgYmUgc2V0IHRvIDFVTC4NCj4gPg0KPiA+IE9uIGFuIEludGVsIFNhcHBoaXJlIFJh cGlkcyBzZXJ2ZXIsIGVhY2ggc29ja2V0IGhhcyA0IElBQSwgZWFjaCBvZiB3aGljaA0KPiA+IGhh cyAyIGNvbXByZXNzIGVuZ2luZXMgYW5kIDggZGVjb21wcmVzcyBlbmdpbmVzLiBFeHBlcmltZW50 cyBtb2RlbGluZyBhDQo+ID4gY29udGVuZGVkIHN5c3RlbSB3aXRoIHNheSA3MiBwcm9jZXNzZXMg cnVubmluZyB1bmRlciBhIGNncm91cCB3aXRoIGENCj4gZml4ZWQNCj4gPiBtZW1vcnktbGltaXQs IGhhdmUgc2hvd24gdGhhdCB0aGVyZSBpcyBhIHNpZ25pZmljYW50IHBlcmZvcm1hbmNlDQo+ID4g aW1wcm92ZW1lbnQgd2l0aCBkaXNwYXRjaGluZyBjb21wcmVzcyBqb2JzIGZyb20gYWxsIGNvcmVz IHRvIGFsbCB0aGUNCj4gPiBJQUEgZGV2aWNlcyBvbiB0aGUgc29ja2V0LiBIZW5jZSwgU1dBUF9D UllQVE9fU1VCX0JBVENIX1NJWkUgaXMgc2V0DQo+IHRvDQo+ID4gOCB0byBtYXhpbWl6ZSBjb21w cmVzc2lvbiB0aHJvdWdocHV0IGlmIElBQSBpcyBhdmFpbGFibGUuDQo+ID4NCj4gPiBUaGUgZGVm aW5pdGlvbiBvZiAic3RydWN0IGNyeXB0b19hY29tcF9jdHgiIGlzIG1vZGlmaWVkIHRvIG1ha2Ug dGhlDQo+ID4gcmVxL2J1ZmZlciBiZSBhcnJheXMgb2Ygc2l6ZSBTV0FQX0NSWVBUT19TVUJfQkFU Q0hfU0laRS4gVGh1cywgdGhlDQo+ID4gYWRkZWQgbWVtb3J5IGZvb3RwcmludCBjb3N0IG9mIHRo aXMgcGVyLWNwdSBzdHJ1Y3R1cmUgZm9yIGJhdGNoaW5nIGlzDQo+ID4gaW5jdXJyZWQgb25seSBm b3IgcGxhdGZvcm1zIHRoYXQgaGF2ZSBJbnRlbCBJQUEuDQo+ID4NCj4gPiBTdWdnZXN0ZWQtYnk6 IFlpbmcgSHVhbmcgPHlpbmcuaHVhbmdAaW50ZWwuY29tPg0KPiA+IFNpZ25lZC1vZmYtYnk6IEth bmNoYW5hIFAgU3JpZGhhciA8a2FuY2hhbmEucC5zcmlkaGFyQGludGVsLmNvbT4NCj4gDQo+IERv ZXMgdGhpcyByZWFsbHkgbmVlZCB0byBiZSBkb25lIGluIHpzd2FwPyBXaHkgY2FuJ3QgenN3YXAg c3VibWl0IGENCj4gc2luZ2xlIGNvbXByZXNzaW9uIHJlcXVlc3Qgd2l0aCB0aGUgc3VwcG9ydGVk IG51bWJlciBvZiBwYWdlcywgYW5kDQo+IGhhdmUgdGhlIGRyaXZlciBoYW5kbGUgaXQgYXMgaXQg c2VlcyBmaXQ/DQoNCkZvciBzdXJlLCB0aGlzIGFwcHJvYWNoIHdvdWxkIHdvcmsgd2VsbCB0b28u DQoNClRoYW5rcywNCkthbmNoYW5hDQoNCj4gDQo+ID4gLS0tDQo+ID4gIG1tL3N3YXAuaCAgfCAg MTEgKysrKysrDQo+ID4gIG1tL3pzd2FwLmMgfCAxMDQgKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0NCj4gLS0tDQo+ID4gIDIgZmlsZXMgY2hhbmdlZCwg NzggaW5zZXJ0aW9ucygrKSwgMzcgZGVsZXRpb25zKC0pDQo+ID4NCj4gPiBkaWZmIC0tZ2l0IGEv bW0vc3dhcC5oIGIvbW0vc3dhcC5oDQo+ID4gaW5kZXggYWQyZjEyMWRlOTcwLi41NjY2MTZjOTcx ZDQgMTAwNjQ0DQo+ID4gLS0tIGEvbW0vc3dhcC5oDQo+ID4gKysrIGIvbW0vc3dhcC5oDQo+ID4g QEAgLTgsNiArOCwxNyBAQCBzdHJ1Y3QgbWVtcG9saWN5Ow0KPiA+ICAjaW5jbHVkZSA8bGludXgv c3dhcG9wcy5oPiAvKiBmb3Igc3dwX29mZnNldCAqLw0KPiA+ICAjaW5jbHVkZSA8bGludXgvYmxr X3R5cGVzLmg+IC8qIGZvciBiaW9fZW5kX2lvX3QgKi8NCj4gPg0KPiA+ICsvKg0KPiA+ICsgKiBG b3IgSUFBIGNvbXByZXNzaW9uIGJhdGNoaW5nOg0KPiA+ICsgKiBNYXhpbXVtIG51bWJlciBvZiBJ QUEgYWNvbXAgY29tcHJlc3MgcmVxdWVzdHMgdGhhdCB3aWxsIGJlDQo+IHByb2Nlc3NlZA0KPiA+ ICsgKiBpbiBhIHN1Yi1iYXRjaC4NCj4gPiArICovDQo+ID4gKyNpZiBkZWZpbmVkKENPTkZJR19a U1dBUF9TVE9SRV9CQVRDSElOR19FTkFCTEVEKQ0KPiA+ICsjZGVmaW5lIFNXQVBfQ1JZUFRPX1NV Ql9CQVRDSF9TSVpFIDhVTA0KPiA+ICsjZWxzZQ0KPiA+ICsjZGVmaW5lIFNXQVBfQ1JZUFRPX1NV Ql9CQVRDSF9TSVpFIDFVTA0KPiA+ICsjZW5kaWYNCj4gPiArDQo+ID4gIC8qIGxpbnV4L21tL3Bh Z2VfaW8uYyAqLw0KPiA+ICBpbnQgc2lvX3Bvb2xfaW5pdCh2b2lkKTsNCj4gPiAgc3RydWN0IHN3 YXBfaW9jYjsNCj4gPiBkaWZmIC0tZ2l0IGEvbW0venN3YXAuYyBiL21tL3pzd2FwLmMNCj4gPiBp bmRleCA0ODkzMzAyZDhjMzQuLjU3OTg2OWQxYmRmNiAxMDA2NDQNCj4gPiAtLS0gYS9tbS96c3dh cC5jDQo+ID4gKysrIGIvbW0venN3YXAuYw0KPiA+IEBAIC0xNTIsOSArMTUyLDkgQEAgYm9vbCB6 c3dhcF9uZXZlcl9lbmFibGVkKHZvaWQpDQo+ID4NCj4gPiAgc3RydWN0IGNyeXB0b19hY29tcF9j dHggew0KPiA+ICAgICAgICAgc3RydWN0IGNyeXB0b19hY29tcCAqYWNvbXA7DQo+ID4gLSAgICAg ICBzdHJ1Y3QgYWNvbXBfcmVxICpyZXE7DQo+ID4gKyAgICAgICBzdHJ1Y3QgYWNvbXBfcmVxICpy ZXFbU1dBUF9DUllQVE9fU1VCX0JBVENIX1NJWkVdOw0KPiA+ICsgICAgICAgdTggKmJ1ZmZlcltT V0FQX0NSWVBUT19TVUJfQkFUQ0hfU0laRV07DQo+ID4gICAgICAgICBzdHJ1Y3QgY3J5cHRvX3dh aXQgd2FpdDsNCj4gPiAtICAgICAgIHU4ICpidWZmZXI7DQo+ID4gICAgICAgICBzdHJ1Y3QgbXV0 ZXggbXV0ZXg7DQo+ID4gICAgICAgICBib29sIGlzX3NsZWVwYWJsZTsNCj4gPiAgfTsNCj4gPiBA QCAtODMyLDQ5ICs4MzIsNjQgQEAgc3RhdGljIGludCB6c3dhcF9jcHVfY29tcF9wcmVwYXJlKHVu c2lnbmVkIGludA0KPiBjcHUsIHN0cnVjdCBobGlzdF9ub2RlICpub2RlKQ0KPiA+ICAgICAgICAg c3RydWN0IHpzd2FwX3Bvb2wgKnBvb2wgPSBobGlzdF9lbnRyeShub2RlLCBzdHJ1Y3QgenN3YXBf cG9vbCwgbm9kZSk7DQo+ID4gICAgICAgICBzdHJ1Y3QgY3J5cHRvX2Fjb21wX2N0eCAqYWNvbXBf Y3R4ID0gcGVyX2NwdV9wdHIocG9vbC0+YWNvbXBfY3R4LA0KPiBjcHUpOw0KPiA+ICAgICAgICAg c3RydWN0IGNyeXB0b19hY29tcCAqYWNvbXA7DQo+ID4gLSAgICAgICBzdHJ1Y3QgYWNvbXBfcmVx ICpyZXE7DQo+ID4gICAgICAgICBpbnQgcmV0Ow0KPiA+ICsgICAgICAgaW50IGksIGo7DQo+ID4N Cj4gPiAgICAgICAgIG11dGV4X2luaXQoJmFjb21wX2N0eC0+bXV0ZXgpOw0KPiA+DQo+ID4gLSAg ICAgICBhY29tcF9jdHgtPmJ1ZmZlciA9IGttYWxsb2Nfbm9kZShQQUdFX1NJWkUgKiAyLCBHRlBf S0VSTkVMLA0KPiBjcHVfdG9fbm9kZShjcHUpKTsNCj4gPiAtICAgICAgIGlmICghYWNvbXBfY3R4 LT5idWZmZXIpDQo+ID4gLSAgICAgICAgICAgICAgIHJldHVybiAtRU5PTUVNOw0KPiA+IC0NCj4g PiAgICAgICAgIGFjb21wID0gY3J5cHRvX2FsbG9jX2Fjb21wX25vZGUocG9vbC0+dGZtX25hbWUs IDAsIDAsDQo+IGNwdV90b19ub2RlKGNwdSkpOw0KPiA+ICAgICAgICAgaWYgKElTX0VSUihhY29t cCkpIHsNCj4gPiAgICAgICAgICAgICAgICAgcHJfZXJyKCJjb3VsZCBub3QgYWxsb2MgY3J5cHRv IGFjb21wICVzIDogJWxkXG4iLA0KPiA+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg cG9vbC0+dGZtX25hbWUsIFBUUl9FUlIoYWNvbXApKTsNCj4gPiAtICAgICAgICAgICAgICAgcmV0 ID0gUFRSX0VSUihhY29tcCk7DQo+ID4gLSAgICAgICAgICAgICAgIGdvdG8gYWNvbXBfZmFpbDsN Cj4gPiArICAgICAgICAgICAgICAgcmV0dXJuIFBUUl9FUlIoYWNvbXApOw0KPiA+ICAgICAgICAg fQ0KPiA+ICAgICAgICAgYWNvbXBfY3R4LT5hY29tcCA9IGFjb21wOw0KPiA+ICAgICAgICAgYWNv bXBfY3R4LT5pc19zbGVlcGFibGUgPSBhY29tcF9pc19hc3luYyhhY29tcCk7DQo+ID4NCj4gPiAt ICAgICAgIHJlcSA9IGFjb21wX3JlcXVlc3RfYWxsb2MoYWNvbXBfY3R4LT5hY29tcCk7DQo+ID4g LSAgICAgICBpZiAoIXJlcSkgew0KPiA+IC0gICAgICAgICAgICAgICBwcl9lcnIoImNvdWxkIG5v dCBhbGxvYyBjcnlwdG8gYWNvbXBfcmVxdWVzdCAlc1xuIiwNCj4gPiAtICAgICAgICAgICAgICAg ICAgICAgIHBvb2wtPnRmbV9uYW1lKTsNCj4gPiAtICAgICAgICAgICAgICAgcmV0ID0gLUVOT01F TTsNCj4gPiAtICAgICAgICAgICAgICAgZ290byByZXFfZmFpbDsNCj4gPiArICAgICAgIGZvciAo aSA9IDA7IGkgPCBTV0FQX0NSWVBUT19TVUJfQkFUQ0hfU0laRTsgKytpKSB7DQo+ID4gKyAgICAg ICAgICAgICAgIGFjb21wX2N0eC0+YnVmZmVyW2ldID0ga21hbGxvY19ub2RlKFBBR0VfU0laRSAq IDIsDQo+ID4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg R0ZQX0tFUk5FTCwgY3B1X3RvX25vZGUoY3B1KSk7DQo+ID4gKyAgICAgICAgICAgICAgIGlmICgh YWNvbXBfY3R4LT5idWZmZXJbaV0pIHsNCj4gPiArICAgICAgICAgICAgICAgICAgICAgICBmb3Ig KGogPSAwOyBqIDwgaTsgKytqKQ0KPiA+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg a2ZyZWUoYWNvbXBfY3R4LT5idWZmZXJbal0pOw0KPiA+ICsgICAgICAgICAgICAgICAgICAgICAg IHJldCA9IC1FTk9NRU07DQo+ID4gKyAgICAgICAgICAgICAgICAgICAgICAgZ290byBidWZfZmFp bDsNCj4gPiArICAgICAgICAgICAgICAgfQ0KPiA+ICsgICAgICAgfQ0KPiA+ICsNCj4gPiArICAg ICAgIGZvciAoaSA9IDA7IGkgPCBTV0FQX0NSWVBUT19TVUJfQkFUQ0hfU0laRTsgKytpKSB7DQo+ ID4gKyAgICAgICAgICAgICAgIGFjb21wX2N0eC0+cmVxW2ldID0gYWNvbXBfcmVxdWVzdF9hbGxv YyhhY29tcF9jdHgtPmFjb21wKTsNCj4gPiArICAgICAgICAgICAgICAgaWYgKCFhY29tcF9jdHgt PnJlcVtpXSkgew0KPiA+ICsgICAgICAgICAgICAgICAgICAgICAgIHByX2VycigiY291bGQgbm90 IGFsbG9jIGNyeXB0byBhY29tcF9yZXF1ZXN0IHJlcVslZF0gJXNcbiIsDQo+ID4gKyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIGksIHBvb2wtPnRmbV9uYW1lKTsNCj4gPiArICAgICAgICAg ICAgICAgICAgICAgICBmb3IgKGogPSAwOyBqIDwgaTsgKytqKQ0KPiA+ICsgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgYWNvbXBfcmVxdWVzdF9mcmVlKGFjb21wX2N0eC0+cmVxW2pdKTsN Cj4gPiArICAgICAgICAgICAgICAgICAgICAgICByZXQgPSAtRU5PTUVNOw0KPiA+ICsgICAgICAg ICAgICAgICAgICAgICAgIGdvdG8gcmVxX2ZhaWw7DQo+ID4gKyAgICAgICAgICAgICAgIH0NCj4g PiAgICAgICAgIH0NCj4gPiAtICAgICAgIGFjb21wX2N0eC0+cmVxID0gcmVxOw0KPiA+DQo+ID4g KyAgICAgICAvKg0KPiA+ICsgICAgICAgICogVGhlIGNyeXB0b193YWl0IGlzIHVzZWQgb25seSBp biBmdWxseSBzeW5jaHJvbm91cywgaS5lLiwgd2l0aCBzY29tcA0KPiA+ICsgICAgICAgICogb3Ig bm9uLXBvbGwgbW9kZSBvZiBhY29tcCwgaGVuY2UgdGhlcmUgaXMgb25seSBvbmUgIndhaXQiIHBl cg0KPiA+ICsgICAgICAgICogYWNvbXBfY3R4LCB3aXRoIGNhbGxiYWNrIHNldCB0byByZXFbMF0u DQo+ID4gKyAgICAgICAgKi8NCj4gPiAgICAgICAgIGNyeXB0b19pbml0X3dhaXQoJmFjb21wX2N0 eC0+d2FpdCk7DQo+ID4gICAgICAgICAvKg0KPiA+ICAgICAgICAgICogaWYgdGhlIGJhY2tlbmQg b2YgYWNvbXAgaXMgYXN5bmMgemlwLCBjcnlwdG9fcmVxX2RvbmUoKSB3aWxsIHdha2V1cA0KPiA+ ICAgICAgICAgICogY3J5cHRvX3dhaXRfcmVxKCk7IGlmIHRoZSBiYWNrZW5kIG9mIGFjb21wIGlz IHNjb21wLCB0aGUgY2FsbGJhY2sNCj4gPiAgICAgICAgICAqIHdvbid0IGJlIGNhbGxlZCwgY3J5 cHRvX3dhaXRfcmVxKCkgd2lsbCByZXR1cm4gd2l0aG91dCBibG9ja2luZy4NCj4gPiAgICAgICAg ICAqLw0KPiA+IC0gICAgICAgYWNvbXBfcmVxdWVzdF9zZXRfY2FsbGJhY2socmVxLCBDUllQVE9f VEZNX1JFUV9NQVlfQkFDS0xPRywNCj4gPiArICAgICAgIGFjb21wX3JlcXVlc3Rfc2V0X2NhbGxi YWNrKGFjb21wX2N0eC0+cmVxWzBdLA0KPiBDUllQVE9fVEZNX1JFUV9NQVlfQkFDS0xPRywNCj4g PiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNyeXB0b19yZXFfZG9uZSwgJmFj b21wX2N0eC0+d2FpdCk7DQo+ID4NCj4gPiAgICAgICAgIHJldHVybiAwOw0KPiA+DQo+ID4gIHJl cV9mYWlsOg0KPiA+ICsgICAgICAgZm9yIChpID0gMDsgaSA8IFNXQVBfQ1JZUFRPX1NVQl9CQVRD SF9TSVpFOyArK2kpDQo+ID4gKyAgICAgICAgICAgICAgIGtmcmVlKGFjb21wX2N0eC0+YnVmZmVy W2ldKTsNCj4gPiArYnVmX2ZhaWw6DQo+ID4gICAgICAgICBjcnlwdG9fZnJlZV9hY29tcChhY29t cF9jdHgtPmFjb21wKTsNCj4gPiAtYWNvbXBfZmFpbDoNCj4gPiAtICAgICAgIGtmcmVlKGFjb21w X2N0eC0+YnVmZmVyKTsNCj4gPiAgICAgICAgIHJldHVybiByZXQ7DQo+ID4gIH0NCj4gPg0KPiA+ IEBAIC04ODQsMTEgKzg5OSwxNyBAQCBzdGF0aWMgaW50IHpzd2FwX2NwdV9jb21wX2RlYWQodW5z aWduZWQgaW50DQo+IGNwdSwgc3RydWN0IGhsaXN0X25vZGUgKm5vZGUpDQo+ID4gICAgICAgICBz dHJ1Y3QgY3J5cHRvX2Fjb21wX2N0eCAqYWNvbXBfY3R4ID0gcGVyX2NwdV9wdHIocG9vbC0+YWNv bXBfY3R4LA0KPiBjcHUpOw0KPiA+DQo+ID4gICAgICAgICBpZiAoIUlTX0VSUl9PUl9OVUxMKGFj b21wX2N0eCkpIHsNCj4gPiAtICAgICAgICAgICAgICAgaWYgKCFJU19FUlJfT1JfTlVMTChhY29t cF9jdHgtPnJlcSkpDQo+ID4gLSAgICAgICAgICAgICAgICAgICAgICAgYWNvbXBfcmVxdWVzdF9m cmVlKGFjb21wX2N0eC0+cmVxKTsNCj4gPiArICAgICAgICAgICAgICAgaW50IGk7DQo+ID4gKw0K PiA+ICsgICAgICAgICAgICAgICBmb3IgKGkgPSAwOyBpIDwgU1dBUF9DUllQVE9fU1VCX0JBVENI X1NJWkU7ICsraSkNCj4gPiArICAgICAgICAgICAgICAgICAgICAgICBpZiAoIUlTX0VSUl9PUl9O VUxMKGFjb21wX2N0eC0+cmVxW2ldKSkNCj4gPiArICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIGFjb21wX3JlcXVlc3RfZnJlZShhY29tcF9jdHgtPnJlcVtpXSk7DQo+ID4gKw0KPiA+ICsg ICAgICAgICAgICAgICBmb3IgKGkgPSAwOyBpIDwgU1dBUF9DUllQVE9fU1VCX0JBVENIX1NJWkU7 ICsraSkNCj4gPiArICAgICAgICAgICAgICAgICAgICAgICBrZnJlZShhY29tcF9jdHgtPmJ1ZmZl cltpXSk7DQo+ID4gKw0KPiA+ICAgICAgICAgICAgICAgICBpZiAoIUlTX0VSUl9PUl9OVUxMKGFj b21wX2N0eC0+YWNvbXApKQ0KPiA+ICAgICAgICAgICAgICAgICAgICAgICAgIGNyeXB0b19mcmVl X2Fjb21wKGFjb21wX2N0eC0+YWNvbXApOw0KPiA+IC0gICAgICAgICAgICAgICBrZnJlZShhY29t cF9jdHgtPmJ1ZmZlcik7DQo+ID4gICAgICAgICB9DQo+ID4NCj4gPiAgICAgICAgIHJldHVybiAw Ow0KPiA+IEBAIC05MTEsNyArOTMyLDcgQEAgc3RhdGljIGJvb2wgenN3YXBfY29tcHJlc3Moc3Ry dWN0IHBhZ2UgKnBhZ2UsDQo+IHN0cnVjdCB6c3dhcF9lbnRyeSAqZW50cnksDQo+ID4NCj4gPiAg ICAgICAgIG11dGV4X2xvY2soJmFjb21wX2N0eC0+bXV0ZXgpOw0KPiA+DQo+ID4gLSAgICAgICBk c3QgPSBhY29tcF9jdHgtPmJ1ZmZlcjsNCj4gPiArICAgICAgIGRzdCA9IGFjb21wX2N0eC0+YnVm ZmVyWzBdOw0KPiA+ICAgICAgICAgc2dfaW5pdF90YWJsZSgmaW5wdXQsIDEpOw0KPiA+ICAgICAg ICAgc2dfc2V0X3BhZ2UoJmlucHV0LCBwYWdlLCBQQUdFX1NJWkUsIDApOw0KPiA+DQo+ID4gQEAg LTkyMSw3ICs5NDIsNyBAQCBzdGF0aWMgYm9vbCB6c3dhcF9jb21wcmVzcyhzdHJ1Y3QgcGFnZSAq cGFnZSwNCj4gc3RydWN0IHpzd2FwX2VudHJ5ICplbnRyeSwNCj4gPiAgICAgICAgICAqIGdpdmlu ZyB0aGUgZHN0IGJ1ZmZlciB3aXRoIGVub3VnaCBsZW5ndGggdG8gYXZvaWQgYnVmZmVyIG92ZXJm bG93Lg0KPiA+ICAgICAgICAgICovDQo+ID4gICAgICAgICBzZ19pbml0X29uZSgmb3V0cHV0LCBk c3QsIFBBR0VfU0laRSAqIDIpOw0KPiA+IC0gICAgICAgYWNvbXBfcmVxdWVzdF9zZXRfcGFyYW1z KGFjb21wX2N0eC0+cmVxLCAmaW5wdXQsICZvdXRwdXQsDQo+IFBBR0VfU0laRSwgZGxlbik7DQo+ ID4gKyAgICAgICBhY29tcF9yZXF1ZXN0X3NldF9wYXJhbXMoYWNvbXBfY3R4LT5yZXFbMF0sICZp bnB1dCwgJm91dHB1dCwNCj4gUEFHRV9TSVpFLCBkbGVuKTsNCj4gPg0KPiA+ICAgICAgICAgLyoN Cj4gPiAgICAgICAgICAqIElmIHRoZSBjcnlwdG9fYWNvbXAgcHJvdmlkZXMgYW4gYXN5bmNocm9u b3VzIHBvbGwoKSBpbnRlcmZhY2UsDQo+ID4gQEAgLTk0MCwxOSArOTYxLDIwIEBAIHN0YXRpYyBi b29sIHpzd2FwX2NvbXByZXNzKHN0cnVjdCBwYWdlICpwYWdlLA0KPiBzdHJ1Y3QgenN3YXBfZW50 cnkgKmVudHJ5LA0KPiA+ICAgICAgICAgICogcGFyYWxsZWwuDQo+ID4gICAgICAgICAgKi8NCj4g PiAgICAgICAgIGlmIChhY29tcF9jdHgtPmFjb21wLT5wb2xsKSB7DQo+ID4gLSAgICAgICAgICAg ICAgIGNvbXBfcmV0ID0gY3J5cHRvX2Fjb21wX2NvbXByZXNzKGFjb21wX2N0eC0+cmVxKTsNCj4g PiArICAgICAgICAgICAgICAgY29tcF9yZXQgPSBjcnlwdG9fYWNvbXBfY29tcHJlc3MoYWNvbXBf Y3R4LT5yZXFbMF0pOw0KPiA+ICAgICAgICAgICAgICAgICBpZiAoY29tcF9yZXQgPT0gLUVJTlBS T0dSRVNTKSB7DQo+ID4gICAgICAgICAgICAgICAgICAgICAgICAgZG8gew0KPiA+IC0gICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgY29tcF9yZXQgPSBjcnlwdG9fYWNvbXBfcG9sbChhY29t cF9jdHgtPnJlcSk7DQo+ID4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb21wX3Jl dCA9IGNyeXB0b19hY29tcF9wb2xsKGFjb21wX2N0eC0+cmVxWzBdKTsNCj4gPiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIGlmIChjb21wX3JldCAmJiBjb21wX3JldCAhPSAtRUFHQUlO KQ0KPiA+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBicmVhazsNCj4g PiAgICAgICAgICAgICAgICAgICAgICAgICB9IHdoaWxlIChjb21wX3JldCk7DQo+ID4gICAgICAg ICAgICAgICAgIH0NCj4gPiAgICAgICAgIH0gZWxzZSB7DQo+ID4gLSAgICAgICAgICAgICAgIGNv bXBfcmV0ID0gY3J5cHRvX3dhaXRfcmVxKGNyeXB0b19hY29tcF9jb21wcmVzcyhhY29tcF9jdHgt DQo+ID5yZXEpLCAmYWNvbXBfY3R4LT53YWl0KTsNCj4gPiArICAgICAgICAgICAgICAgY29tcF9y ZXQgPQ0KPiBjcnlwdG9fd2FpdF9yZXEoY3J5cHRvX2Fjb21wX2NvbXByZXNzKGFjb21wX2N0eC0+ cmVxWzBdKSwNCj4gPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg JmFjb21wX2N0eC0+d2FpdCk7DQo+ID4gICAgICAgICB9DQo+ID4NCj4gPiAtICAgICAgIGRsZW4g PSBhY29tcF9jdHgtPnJlcS0+ZGxlbjsNCj4gPiArICAgICAgIGRsZW4gPSBhY29tcF9jdHgtPnJl cVswXS0+ZGxlbjsNCj4gPiAgICAgICAgIGlmIChjb21wX3JldCkNCj4gPiAgICAgICAgICAgICAg ICAgZ290byB1bmxvY2s7DQo+ID4NCj4gPiBAQCAtMTAwNiwzMSArMTAyOCwzOSBAQCBzdGF0aWMg dm9pZCB6c3dhcF9kZWNvbXByZXNzKHN0cnVjdA0KPiB6c3dhcF9lbnRyeSAqZW50cnksIHN0cnVj dCBmb2xpbyAqZm9saW8pDQo+ID4gICAgICAgICAgKi8NCj4gPiAgICAgICAgIGlmICgoYWNvbXBf Y3R4LT5pc19zbGVlcGFibGUgJiYgIXpwb29sX2Nhbl9zbGVlcF9tYXBwZWQoenBvb2wpKSB8fA0K PiA+ICAgICAgICAgICAgICF2aXJ0X2FkZHJfdmFsaWQoc3JjKSkgew0KPiA+IC0gICAgICAgICAg ICAgICBtZW1jcHkoYWNvbXBfY3R4LT5idWZmZXIsIHNyYywgZW50cnktPmxlbmd0aCk7DQo+ID4g LSAgICAgICAgICAgICAgIHNyYyA9IGFjb21wX2N0eC0+YnVmZmVyOw0KPiA+ICsgICAgICAgICAg ICAgICBtZW1jcHkoYWNvbXBfY3R4LT5idWZmZXJbMF0sIHNyYywgZW50cnktPmxlbmd0aCk7DQo+ ID4gKyAgICAgICAgICAgICAgIHNyYyA9IGFjb21wX2N0eC0+YnVmZmVyWzBdOw0KPiA+ICAgICAg ICAgICAgICAgICB6cG9vbF91bm1hcF9oYW5kbGUoenBvb2wsIGVudHJ5LT5oYW5kbGUpOw0KPiA+ ICAgICAgICAgfQ0KPiA+DQo+ID4gICAgICAgICBzZ19pbml0X29uZSgmaW5wdXQsIHNyYywgZW50 cnktPmxlbmd0aCk7DQo+ID4gICAgICAgICBzZ19pbml0X3RhYmxlKCZvdXRwdXQsIDEpOw0KPiA+ ICAgICAgICAgc2dfc2V0X2ZvbGlvKCZvdXRwdXQsIGZvbGlvLCBQQUdFX1NJWkUsIDApOw0KPiA+ IC0gICAgICAgYWNvbXBfcmVxdWVzdF9zZXRfcGFyYW1zKGFjb21wX2N0eC0+cmVxLCAmaW5wdXQs ICZvdXRwdXQsIGVudHJ5LQ0KPiA+bGVuZ3RoLCBQQUdFX1NJWkUpOw0KPiA+ICsgICAgICAgYWNv bXBfcmVxdWVzdF9zZXRfcGFyYW1zKGFjb21wX2N0eC0+cmVxWzBdLCAmaW5wdXQsICZvdXRwdXQs DQo+ID4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZW50cnktPmxlbmd0aCwgUEFH RV9TSVpFKTsNCj4gPiAgICAgICAgIGlmIChhY29tcF9jdHgtPmFjb21wLT5wb2xsKSB7DQo+ID4g LSAgICAgICAgICAgICAgIHJldCA9IGNyeXB0b19hY29tcF9kZWNvbXByZXNzKGFjb21wX2N0eC0+ cmVxKTsNCj4gPiArICAgICAgICAgICAgICAgcmV0ID0gY3J5cHRvX2Fjb21wX2RlY29tcHJlc3Mo YWNvbXBfY3R4LT5yZXFbMF0pOw0KPiA+ICAgICAgICAgICAgICAgICBpZiAocmV0ID09IC1FSU5Q Uk9HUkVTUykgew0KPiA+ICAgICAgICAgICAgICAgICAgICAgICAgIGRvIHsNCj4gPiAtICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIHJldCA9IGNyeXB0b19hY29tcF9wb2xsKGFjb21wX2N0 eC0+cmVxKTsNCj4gPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldCA9IGNyeXB0 b19hY29tcF9wb2xsKGFjb21wX2N0eC0+cmVxWzBdKTsNCj4gPiAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIEJVR19PTihyZXQgJiYgcmV0ICE9IC1FQUdBSU4pOw0KPiA+ICAgICAgICAg ICAgICAgICAgICAgICAgIH0gd2hpbGUgKHJldCk7DQo+ID4gICAgICAgICAgICAgICAgIH0NCj4g PiAgICAgICAgIH0gZWxzZSB7DQo+ID4gLQ0KPiBCVUdfT04oY3J5cHRvX3dhaXRfcmVxKGNyeXB0 b19hY29tcF9kZWNvbXByZXNzKGFjb21wX2N0eC0+cmVxKSwNCj4gJmFjb21wX2N0eC0+d2FpdCkp Ow0KPiA+ICsNCj4gQlVHX09OKGNyeXB0b193YWl0X3JlcShjcnlwdG9fYWNvbXBfZGVjb21wcmVz cyhhY29tcF9jdHgtPnJlcVswXSksDQo+ID4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgJmFjb21wX2N0eC0+d2FpdCkpOw0KPiA+ICAgICAgICAgfQ0KPiA+IC0gICAgICAg QlVHX09OKGFjb21wX2N0eC0+cmVxLT5kbGVuICE9IFBBR0VfU0laRSk7DQo+ID4gLSAgICAgICBt dXRleF91bmxvY2soJmFjb21wX2N0eC0+bXV0ZXgpOw0KPiA+ICsgICAgICAgQlVHX09OKGFjb21w X2N0eC0+cmVxWzBdLT5kbGVuICE9IFBBR0VfU0laRSk7DQo+ID4NCj4gPiAtICAgICAgIGlmIChz cmMgIT0gYWNvbXBfY3R4LT5idWZmZXIpDQo+ID4gKyAgICAgICBpZiAoc3JjICE9IGFjb21wX2N0 eC0+YnVmZmVyWzBdKQ0KPiA+ICAgICAgICAgICAgICAgICB6cG9vbF91bm1hcF9oYW5kbGUoenBv b2wsIGVudHJ5LT5oYW5kbGUpOw0KPiA+ICsNCj4gPiArICAgICAgIC8qDQo+ID4gKyAgICAgICAg KiBJdCBpcyBzYWZlciB0byB1bmxvY2sgdGhlIG11dGV4IGFmdGVyIHRoZSBjaGVjayBmb3INCj4g PiArICAgICAgICAqICJzcmMgIT0gYWNvbXBfY3R4LT5idWZmZXJbMF0iIHNvIHRoYXQgdGhlIHZh bHVlIG9mICJzcmMiDQo+ID4gKyAgICAgICAgKiBkb2VzIG5vdCBjaGFuZ2UuDQo+ID4gKyAgICAg ICAgKi8NCj4gPiArICAgICAgIG11dGV4X3VubG9jaygmYWNvbXBfY3R4LT5tdXRleCk7DQo+ID4g IH0NCj4gPg0KPiA+ICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqDQo+ID4gLS0N Cj4gPiAyLjI3LjANCj4gPg0K