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 7C017440AD; Fri, 24 May 2024 03:06:21 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id B0A6F40395; Fri, 24 May 2024 03:06:20 +0200 (CEST) Received: from mgamail.intel.com (mgamail.intel.com [192.198.163.7]) by mails.dpdk.org (Postfix) with ESMTP id 40C694026B for ; Fri, 24 May 2024 03:06:19 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1716512779; x=1748048779; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=DZX63VXDj2aSizMOqRgv8qkz0bLQzZilDE3+h1kLoWI=; b=I/fQ+W17aWEaP7HOKpKYgpaiNol2wPtRXlHwuvgRAU7MciOk26CRt8zh pzWs6zJpLmfmcMTIWJQLS80qDWkToI4xZy6pKNz7VMXCZoSSY//OTA12u Ugjeb9MMsUD/79Hhlwi/CDo0jbkKcwthpi1KYOQYqbs1MO6cLOu9M9dK4 dgFB7dR+bfViH1kGf/QmnKu/FGoOzCLlhMeX4yEbnYydBvGrRbfva9zye l/3eOjecZY/NXhUcT4HR1ag3R1YUbl5ikvdSFFGG1jTXpHH+o3gp3OJRb iajkWFvUXOajqqnJOU6dZlyIzce/uERb0dmIAVrUw8J5B8h9XTPsFa9po w==; X-CSE-ConnectionGUID: fQxlqV7QQ2+988vy8n9fEg== X-CSE-MsgGUID: wqoJid+wQ7aJvNwvIw0TRg== X-IronPort-AV: E=McAfee;i="6600,9927,11081"; a="38253483" X-IronPort-AV: E=Sophos;i="6.08,184,1712646000"; d="scan'208";a="38253483" Received: from fmviesa004.fm.intel.com ([10.60.135.144]) by fmvoesa101.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 23 May 2024 18:06:18 -0700 X-CSE-ConnectionGUID: ymd4t6K8SG+AiFkX19LqbQ== X-CSE-MsgGUID: 7xIZ5KrwQQG0n5plusjo1A== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.08,184,1712646000"; d="scan'208";a="38429578" Received: from fmsmsx602.amr.corp.intel.com ([10.18.126.82]) by fmviesa004.fm.intel.com with ESMTP/TLS/AES256-GCM-SHA384; 23 May 2024 18:05:29 -0700 Received: from fmsmsx612.amr.corp.intel.com (10.18.126.92) 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.39; Thu, 23 May 2024 18:05:29 -0700 Received: from fmsmsx601.amr.corp.intel.com (10.18.126.81) by fmsmsx612.amr.corp.intel.com (10.18.126.92) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.39; Thu, 23 May 2024 18:05:29 -0700 Received: from fmsedg602.ED.cps.intel.com (10.1.192.136) 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; Thu, 23 May 2024 18:05:29 -0700 Received: from NAM12-DM6-obe.outbound.protection.outlook.com (104.47.59.168) by edgegateway.intel.com (192.55.55.71) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2507.39; Thu, 23 May 2024 18:05:28 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=EwhYAP1gscDzuuPtjKqQHh24HqLswRmQ3SD6SjwhB27zvRzBtmBmqdETYVl4DBSDL27zjlajfIUwpj4pxAv6mjIqmQYJNr3yotv9t0HvopuNmbxdNELPpt9H54hXWckr4tCmLin6UkIYwdxI02xeNLnoNbmV1ZMKP54+sEmPkzVwyJ3S8uUsIBcb8kamlcwxNKqpurXh49qVQQL+bSnZDcO4ccTwc9fextjcC30Kk9nJq6fKwf48KHd1Frg7nqkbxlLW9Wr+xw5v2uoZ9WQ/0v6FUoDxUdhQ1waxm2Jz8kbzfoeRy6Z6yyfBZP+5rJ7jKwk+6BID578QJB9fIYtaCg== 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=DZX63VXDj2aSizMOqRgv8qkz0bLQzZilDE3+h1kLoWI=; b=Io9VKCATvgt+nxgcSDuZx3RgNDK/JIVcHHvyPVKVKd7HJs7FlwbWy1kEh9XB5qUirKcZlD151Mu/NfYzkm0jBNXUNo16XMshG5Li3OMNPSHJPHDs4LBaUXHBAx0rCdWhwkraKGheqyKgj0k5zfiWL80BCmvIK5CPDJQwc7qbSWixZUVhRIGbIStexIupfj6OMjjCPjgPW6Po/FU3Ojw9hD5EIti9M3ovncvdaS97pI93RTBOalXwNSK1Gnk5xmUyz1ily8DD7MLCTTO3CznU8mbwuVJPz+4MLAOIJg/TkbDKM4DjDeKcNSiMoBmVQMcJlxM0fFWwL2N8cwWMVxz0mQ== 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 PH0PR11MB4775.namprd11.prod.outlook.com (2603:10b6:510:34::22) by LV2PR11MB6069.namprd11.prod.outlook.com (2603:10b6:408:17a::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7611.19; Fri, 24 May 2024 01:05:27 +0000 Received: from PH0PR11MB4775.namprd11.prod.outlook.com ([fe80::a8f9:b889:964f:c495]) by PH0PR11MB4775.namprd11.prod.outlook.com ([fe80::a8f9:b889:964f:c495%7]) with mapi id 15.20.7611.016; Fri, 24 May 2024 01:05:27 +0000 From: "Du, Frank" To: Ferruh Yigit , =?utf-8?B?TW9ydGVuIEJyw7hydXA=?= , "dev@dpdk.org" CC: "Loftus, Ciara" Subject: RE: [PATCH v4] net/af_xdp: fix umem map size for zero copy Thread-Topic: [PATCH v4] net/af_xdp: fix umem map size for zero copy Thread-Index: AQHarOrZpCpyK85ReES6R3ycBhHa8LGki6uAgABFioCAAL+rkA== Date: Fri, 24 May 2024 01:05:26 +0000 Message-ID: References: <20240426005128.148730-1-frank.du@intel.com> <20240523080751.2347970-1-frank.du@intel.com> <98CBD80474FA8B44BF855DF32C47DC35E9F492@smartserver.smartshare.dk> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: 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: PH0PR11MB4775:EE_|LV2PR11MB6069:EE_ x-ms-office365-filtering-correlation-id: abb4b3cf-5d4e-47f1-301f-08dc7b8d992c x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; ARA:13230031|1800799015|366007|376005|38070700009; x-microsoft-antispam-message-info: =?utf-8?B?VnliTkdjcUovR0k2dzd4NEozbTZPZWpCWW92c0dEOGFBK1hYbXZMTEpnWTJU?= =?utf-8?B?MWV1SFppOGEzbkc1WEczNUNFZzZ4ZkxFTlJiYVQzWTRJelVndXNkSzVQSUVX?= =?utf-8?B?dFNoT2Fxd1hCYkcxd3FXUDFCR3lsWFZzejJUa0NtQ3IxOHJ3WGNJZ2FjVWNO?= =?utf-8?B?eC92dFh0NHVoZUV0QWVpUG1ZTUI0UkFCYm9DRUNPZEhMMlhNaHZDcGplSlpV?= =?utf-8?B?eVNxK0lJUUpzVm1yckt0QTE3VkpCMTZFYVZkTkRSeEtYL0tZTVhlK3ZoRUxl?= =?utf-8?B?anZBSXVsbDNhYXlOSmd1N240amc3L1pIVVdBd3g5M3p0Rm5oeWpiQUkwUVpx?= =?utf-8?B?eEk4Y3hxYXRhRkhaV1d2Mm9GemRxVHlTbTF5U1F2WkYxMGFGRERuUjVjeVI5?= =?utf-8?B?TjQvanV5Nnc5YU81MmhFRTA0aHJXVERrVTVkKzJNMjRkT0FxVU1ZaituRlVJ?= =?utf-8?B?M2tidGQ4NnV5dXFIdTFXYzBLVWxhdHg1SXVMY0g5ejQwamh4eUY2eXZOZHZN?= =?utf-8?B?VzFCbytuZ0t2NUwxZVcvYWhZNmtBTS8vdkdWM2pxeFRKZndNNFo0bTluTU1p?= =?utf-8?B?R1hzRXZabEJzTzIxdU1ISUlBbG5CU3dEQjh4N3dBZUhMSEpOVjhjNS94bnJR?= =?utf-8?B?RDkxMHFMSW5nTitscmNEZnJlRWM2dkJNOFgyMTErbm1KbUwyOThCZkRmRXhO?= =?utf-8?B?Slg1aHhySy9TZStDTGlYVW02cGtWbjUvelBUaVkxR3Jkck1tN2VlMG9UbG04?= =?utf-8?B?RTNqa3IwVmhncXBvMlhJaXFyT1YvRExMNWMxVHJ3WHQ5YVQvc1Y2eHFVRHlN?= =?utf-8?B?dFgyaVAyQTJka0FuY1o0bE5XaSt0NDRTcWV3TTBXYnA1UTlYc1hBRmVWbXRE?= =?utf-8?B?aWhVS2c2dEg4MlZOMjFsMWZJeFZ4OUhGY3FHWHdKMU5yUnZibU5RV2ZRWXFT?= =?utf-8?B?ZFkyWDJHNCtEaTRGZy9NVUJrcW5iMDN1cmRJQ0hiUWNZejZmZUNoSzduTHVo?= =?utf-8?B?WmdobDdCMnNyTm90aU80N3BGSkExb28xVHVRenNaNThqVHl5d3piVy8zVENH?= =?utf-8?B?Zm5MUGd4WXR5b3RxVGc1SzdDYUY2eDhOUGlpT1ZSQUhRQmRpNHpaOUt4WU9Y?= =?utf-8?B?Q3NWUWh4Y3U5UVJnekNVTTRRUDllVmZMMkR0WSs3d0FGd3NHNndYc1BaaE9v?= =?utf-8?B?YmJVVG9XRFgxeDVLcktrK1pNRjNSZmtWckpkL2pTNHNObUc0eUllNWVYNDZk?= =?utf-8?B?d3ZVQ2dHcU9yTFZlUE9OaXR6bGNSNG1iRDlmM0JqLzFMd21pSk55RnU4eUJY?= =?utf-8?B?NkVmZ1dQNFJ2VHUvQnJLbXVsUFhHT1kxalZxSTdBaTl1V3NQMkZMdkV5NXhp?= =?utf-8?B?S3BsREdZOG9JR1lCYmoyZGhZSFRveXpHT1pXOWQvWDhKUHRSV3JxUkZ1WVdK?= =?utf-8?B?OUNnMVM5dElDa3lRcE1iRWtrRHNGeGRsSTR1M1BqRjRPanUzcUl2QzlqUUlo?= =?utf-8?B?dFk1MkpZSlhvS2k1b3BvbUhsS3czbGZ3RlhWSTRPVVZhZWNHTEovTHZESEU2?= =?utf-8?B?YjRCTkR1UEwya2YyejM3RmlpVDhjQ09ibTJxcldLazdrOW5wanYwRkVtTGZQ?= =?utf-8?B?ckdnbGFtRzY5dGtoY1JzVENyNU0zQ0NQU1hLVnd5eU01SE9Nci9xc1B5cHJJ?= =?utf-8?B?OGc1ZFFnVXZuazgrRXZpdndreTRHMUlJR2JjcjJHc0ZpaTQ1QnhreEd1NEhm?= =?utf-8?B?Z3hNVDZ4UDVMb1labVprQ3FuOG9SQlJMMWhvNVZDTitMWktBZnFqSDV5S09Z?= =?utf-8?B?YzZWbDh6QjFtRG55TmN1UT09?= x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:PH0PR11MB4775.namprd11.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230031)(1800799015)(366007)(376005)(38070700009); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?TUNpNmxtd0tqQVRxUHJzaUFhMVV6UENsS2YxUmM1d0NKd2haWkQ4bDNiSTRV?= =?utf-8?B?cm9Ia1JPUHh3Yjk0bE9DMHo4Yy9KU2cwekVnc1NvOGhQZ0pHM2RNUHRic2hn?= =?utf-8?B?N3lWSkYvbktxYjdzRHpXaGFqMXMxRmlWSkpyMFBOeVVVT1ZrbndsREpFNFlV?= =?utf-8?B?M1lPYnB6RlFKVzl5YnhCSzdvL2tlajQ3Y2lDLzZ5MEJGa3VuVGFBa21SVUVk?= =?utf-8?B?ZHZ4VE5Rc3ZBS1ZPSS9FTWJhN1dPV3paaWN4Y1hjeTZiRG85ZzdydjcvdWYr?= =?utf-8?B?MUJiZDdNS2ZQc0lkQWxkNW10S3FiOFhNY2hJWjhrQ1ZTV0I4ZUQwWjdPcGVC?= =?utf-8?B?dUdzSVl2ZFdWZ0tSVUhlVnVJc3h4dGQrOUkrcW44dFNRMTFWVkp5QjNQUk1E?= =?utf-8?B?NVFwdk56d1FjUWxGV05uSWR2cUw1UitoTitpMzdWMDRPak9RZHA0bzcwMEpi?= =?utf-8?B?MVNScEVzcDhSYnpybWFUSE0rbHdnUVJSd3IyU3FvNldrVURBQ0UvSmxQNmx0?= =?utf-8?B?S2poaTIxNVpkd0poOEN0eFEzdHU0K1QwbjJOVllNUVhKc2ljamhjdGcvb1pZ?= =?utf-8?B?NUpLcVdKcjJnc3Rpd2JLL2dkSWZQcCtjUzY3b3o2eSs4OUcxNFJxTGV0VnBN?= =?utf-8?B?bk5JaGxNQkdsSFQ5SE9iSUVHNXpCb1diSTJDMHhTbUdybkl5YmM2TDJvVVZ6?= =?utf-8?B?M2toeEg1czVjS3M1WTNBWVFpUHRlQ2FmbS9KQlNVMS9EUlZ6anJZS2dpWDMr?= =?utf-8?B?cEcwNXVJdy9JV2FLS0xDOTVad09Ic1ovUDZ3TzNHK0oxM1Z4MHBtbzFpRmRD?= =?utf-8?B?WGM1RHZIalNlMnljVGZJdWl2Y2ozVGFSQXpsZ0c5bUxXSW9hdkI2VEJvMzIw?= =?utf-8?B?WTNBTW9sUG9VNkpSeml0OUFRZ01uZXNSMlo4RS9uL2VHajJLdkFkMVJsUlBs?= =?utf-8?B?NDJFdkhSNlpESWIxTHZxK08rVzZFSWN4cHl5OVJnT3Y0KzFmdVpOYnd0cTd1?= =?utf-8?B?Zys3NTJvUlJHN2pjRlVHcHZlMzhNMGdsN1pqa25ERW1Ob2FxblJEc29ublFn?= =?utf-8?B?NFB6dFJxWkpBUDdZb0xrZUlFQjR4T3ZGMTlOSFdiU1pMdVJsSFJPR3pzWkt6?= =?utf-8?B?VTcwMW1lTkhpOXVXY0s1TXVxd3F2TlVQMTVJekRxVUE3VExtbllFV1VIRWV6?= =?utf-8?B?NWlsb3NQalFpa1kvYnBGcUcvaWdNM2N1dkdleEllbHhFS3ZvU1ZzRG9FMFdq?= =?utf-8?B?N1MzV1hSS29sN3RnT09jQ3ViNVRUV0J0aHQ5THZUS0p3cy9FejZLMGdOMW1I?= =?utf-8?B?dWpPQXp5MGdTTU5jUFY5S3NPTzhZeWJJcEprVjNoOHBIamxMcTRvdENXYzNG?= =?utf-8?B?L3FPL2dTTXhjWVFkSitla1cvSHgwU2FnR1VxUTBLREtIQUt1UHhCcGlpOVVs?= =?utf-8?B?WVR1MjJGVGtPbXg0Q2w2WExZNkRzOFFKZWxlajV4UDdFZlkyUUJvSTQ4eWEz?= =?utf-8?B?YUdlUU10TlM1SHhJRnFVY3BLUy9pY09DMFB6T2NmbkFtcHc5QjJDSzZDbXBD?= =?utf-8?B?dG9zd0trZnJJUTNWSHhOUTI1OEN5ekdtc3hUQ0hNYk14Q3k4VUNNNjVQcXgz?= =?utf-8?B?dDdTQWpJZVZGckViMitlanZ3bDVMcDJlVlpkMUM3TEpHUkhnaWc1VnpVbGZv?= =?utf-8?B?Z2c5VW94SHUyUVhLZllBL1pRWUdUMWpTVS9NZjU3UHdGMk9kdkloRWxPUnVV?= =?utf-8?B?aERkdjJaN0lBVVY0bUg4b0VMTWNCaU1iU1B4MkJMNUppakJlVkIxSkJ5Ujdj?= =?utf-8?B?a0h2eXU2TmpGWGtWNGxrRlZHTjB2Mnh3SmY2YmNvc3dMVWk4a2l4MlZrWE8w?= =?utf-8?B?R1AvUGNlSDdoTU9pMDFRYW45cDArNE92TXdjWGtrNEdXQURPRFgxRWF2ODE4?= =?utf-8?B?dWN2SS9NMUovY1VOS3ZCZVpoMmZyTHYwNjErUG8xVmNWejhvSnV0WVQ0MTlq?= =?utf-8?B?VGx3MGh1WE05clRhTytRNnFWNHdncXBxYWZVYVVoN0FySHZ0USs3OU5SaXg0?= =?utf-8?B?Rnlnd0Z4NS93SGFjdkNhSGxKdUN0L0dGMWJqaWliNWl4ZGV0L2lsTzZadGt1?= =?utf-8?Q?zZfgkFaEQBb8cBHVKWktEuAW7?= 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: PH0PR11MB4775.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: abb4b3cf-5d4e-47f1-301f-08dc7b8d992c X-MS-Exchange-CrossTenant-originalarrivaltime: 24 May 2024 01:05:26.9670 (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: 2oouKqqMKiomgsRSu1hnjbjIbU2I1qBSpEC5rQzUM2WHJrgC2IjAPII+dGo1p15+UeJ6vukuRBoLgR1xcdt5EA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: LV2PR11MB6069 X-OriginatorOrg: intel.com X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org PiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiBGcm9tOiBGZXJydWggWWlnaXQgPGZlcnJ1 aC55aWdpdEBhbWQuY29tPg0KPiBTZW50OiBUaHVyc2RheSwgTWF5IDIzLCAyMDI0IDk6MzIgUE0N Cj4gVG86IE1vcnRlbiBCcsO4cnVwIDxtYkBzbWFydHNoYXJlc3lzdGVtcy5jb20+OyBEdSwgRnJh bmsNCj4gPGZyYW5rLmR1QGludGVsLmNvbT47IGRldkBkcGRrLm9yZw0KPiBDYzogTG9mdHVzLCBD aWFyYSA8Y2lhcmEubG9mdHVzQGludGVsLmNvbT4NCj4gU3ViamVjdDogUmU6IFtQQVRDSCB2NF0g bmV0L2FmX3hkcDogZml4IHVtZW0gbWFwIHNpemUgZm9yIHplcm8gY29weQ0KPiANCj4gT24gNS8y My8yMDI0IDEwOjIyIEFNLCBNb3J0ZW4gQnLDuHJ1cCB3cm90ZToNCj4gPj4gRnJvbTogRnJhbmsg RHUgW21haWx0bzpmcmFuay5kdUBpbnRlbC5jb21dDQo+ID4+IFNlbnQ6IFRodXJzZGF5LCAyMyBN YXkgMjAyNCAxMC4wOA0KPiA+Pg0KPiA+PiBUaGUgY3VycmVudCBjYWxjdWxhdGlvbiBhc3N1bWVz IHRoYXQgdGhlIG1idWZzIGFyZSBjb250aWd1b3VzLg0KPiA+PiBIb3dldmVyLCB0aGlzIGFzc3Vt cHRpb24gaXMgaW5jb3JyZWN0IHdoZW4gdGhlIG1idWYgbWVtb3J5IHNwYW5zIGFjcm9zcw0KPiBo dWdlIHBhZ2UuDQo+ID4+IFRvIGVuc3VyZSB0aGF0IGVhY2ggbWJ1ZiByZXNpZGVzIGV4Y2x1c2l2 ZWx5IHdpdGhpbiBhIHNpbmdsZSBwYWdlLA0KPiA+PiB0aGVyZSBhcmUgZGVsaWJlcmF0ZSBzcGFj aW5nIGdhcHMgd2hlbiBhbGxvY2F0aW5nIG1idWZzIGFjcm9zcyB0aGUNCj4gYm91bmRhcmllcy4N Cj4gPg0KPiA+IEEgYWdyZWUgdGhhdCB0aGlzIHBhdGNoIGlzIGFuIGltcHJvdmVtZW50IG9mIHdo YXQgZXhpc3RlZCBwcmV2aW91c2x5Lg0KPiA+IEJ1dCBJIHN0aWxsIGRvbid0IHVuZGVyc3RhbmQg dGhlIHBhdGNoIGRlc2NyaXB0aW9uLiBUbyBtZSwgaXQgbG9va3MNCj4gPiBsaWtlIHRoZSBwYXRj aCBhZGRzIGEgbWlzc2luZyBjaGVjayBmb3IgY29udGlndW91cyBtZW1vcnksIGFuZCB0aGUNCj4g PiBwYXRjaCBpdHNlbGYgaGFzIG5vdGhpbmcgdG8gZG8gd2l0aCBodWdlIHBhZ2VzLiBBbnl3YXks IGlmIHRoZQ0KPiA+IG1haW50YWluZXIgYWdyZWVzIHdpdGggdGhlIGRlc2NyaXB0aW9uLCBJIGRv bid0IG1pbmQgbm90IGdyYXNwaW5nIGl0Lg0KPiA+IDstKQ0KPiA+DQo+ID4gSG93ZXZlciwgd2hp bGUgdHJ5aW5nIHRvIHVuZGVyc3RhbmQgd2hhdCBpcyBoYXBwZW5pbmcsIEkgdGhpbmsgSSBmb3Vu ZCBvbmUNCj4gbW9yZSAoYWxyZWFkeSBleGlzdGluZykgYnVnLg0KPiA+IEkgd2lsbCBzaG93IHRo cm91Z2ggYW4gZXhhbXBsZSBpbmxpbmUgYmVsb3cuDQo+ID4NCj4gPj4NCj4gPj4gQ29ycmVjdCB0 byBkaXJlY3RseSByZWFkIHRoZSBzaXplIGZyb20gdGhlIG1lbXBvb2wgbWVtb3J5IGNodW5rLg0K PiA+Pg0KPiA+PiBGaXhlczogZDhhMjEwNzc0ZTFkICgibmV0L2FmX3hkcDogc3VwcG9ydCB1bmFs aWduZWQgdW1lbSBjaHVua3MiKQ0KPiA+PiBDYzogc3RhYmxlQGRwZGsub3JnDQo+ID4+DQo+ID4+ IFNpZ25lZC1vZmYtYnk6IEZyYW5rIER1IDxmcmFuay5kdUBpbnRlbC5jb20+DQo+ID4+DQo+ID4+ IC0tLQ0KPiA+PiB2MjoNCj4gPj4gKiBBZGQgdmlydHVhbCBjb250aWd1b3VzIGRldGVjdCBmb3Ig Zm9yIG11bHRpcGxlIG1lbWhkcnMNCj4gPj4gdjM6DQo+ID4+ICogVXNlIFJURV9BTElHTl9GTE9P UiB0byBnZXQgdGhlIGFsaWduZWQgYWRkcg0KPiA+PiAqIEFkZCBjaGVjayBvbiB0aGUgZmlyc3Qg bWVtaGRyIG9mIG1lbW9yeSBjaHVua3MNCj4gPj4gdjQ6DQo+ID4+ICogUmVwbGFjZSB0aGUgaXRl cmF0aW5nIHdpdGggc2ltcGxlIG5iX21lbV9jaHVua3MgY2hlY2sNCj4gPj4gLS0tDQo+ID4+ICBk cml2ZXJzL25ldC9hZl94ZHAvcnRlX2V0aF9hZl94ZHAuYyB8IDMzDQo+ID4+ICsrKysrKysrKysr KysrKysrKysrKysrLS0tLS0tDQo+ID4+ICAxIGZpbGUgY2hhbmdlZCwgMjYgaW5zZXJ0aW9ucygr KSwgNyBkZWxldGlvbnMoLSkNCj4gPj4NCj4gPj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvbmV0L2Fm X3hkcC9ydGVfZXRoX2FmX3hkcC5jDQo+ID4+IGIvZHJpdmVycy9uZXQvYWZfeGRwL3J0ZV9ldGhf YWZfeGRwLmMNCj4gPj4gaW5kZXggNmJhNDU1YmI5Yi4uZDA0MzFlYzA4OSAxMDA2NDQNCj4gPj4g LS0tIGEvZHJpdmVycy9uZXQvYWZfeGRwL3J0ZV9ldGhfYWZfeGRwLmMNCj4gPj4gKysrIGIvZHJp dmVycy9uZXQvYWZfeGRwL3J0ZV9ldGhfYWZfeGRwLmMNCj4gPj4gQEAgLTEwNDAsMTYgKzEwNDAs MzIgQEAgZXRoX2xpbmtfdXBkYXRlKHN0cnVjdCBydGVfZXRoX2RldiAqZGV2DQo+ID4+IF9fcnRl X3VudXNlZCwgIH0NCj4gPj4NCj4gPj4gICNpZiBkZWZpbmVkKFhEUF9VTUVNX1VOQUxJR05FRF9D SFVOS19GTEFHKQ0KPiA+PiAtc3RhdGljIGlubGluZSB1aW50cHRyX3QgZ2V0X2Jhc2VfYWRkcihz dHJ1Y3QgcnRlX21lbXBvb2wgKm1wLA0KPiA+PiB1aW50NjRfdA0KPiA+PiAqYWxpZ24pDQo+ID4+ ICtzdGF0aWMgaW5saW5lIHVpbnRwdHJfdA0KPiA+PiArZ2V0X21lbWhkcl9pbmZvKGNvbnN0IHN0 cnVjdCBydGVfbWVtcG9vbCAqbXAsIHVpbnQ2NF90ICphbGlnbiwNCj4gPj4gK3NpemVfdCAqbGVu KQ0KPiA+PiAgew0KPiA+PiAgCXN0cnVjdCBydGVfbWVtcG9vbF9tZW1oZHIgKm1lbWhkcjsNCj4g Pj4gIAl1aW50cHRyX3QgbWVtaGRyX2FkZHIsIGFsaWduZWRfYWRkcjsNCj4gPj4NCj4gPj4gKwlp ZiAobXAtPm5iX21lbV9jaHVua3MgIT0gMSkgew0KPiA+PiArCQkvKg0KPiA+PiArCQkgKiBUaGUg bWVtcG9vbCB3aXRoIG11bHRpcGxlIGNodW5rcyBpcyBub3QgdmlydHVhbCBjb250aWd1b3VzDQo+ IGJ1dA0KPiA+PiArCQkgKiB4c2sgdW1lbSBvbmx5IHN1cHBvcnQgc2luZ2xlIHZpcnR1YWwgcmVn aW9uIG1hcHBpbmcuDQo+ID4+ICsJCSAqLw0KPiA+PiArCQlBRl9YRFBfTE9HKEVSUiwgIlRoZSBt ZW1wb29sIGNvbnRhaW4gbXVsdGlwbGUgJXUgbWVtb3J5DQo+ID4+IGNodW5rc1xuIiwNCj4gPj4g KwkJCQkgICBtcC0+bmJfbWVtX2NodW5rcyk7DQo+ID4+ICsJCXJldHVybiAwOw0KPiA+PiArCX0N Cj4gPj4gKw0KPiA+PiArCS8qIEdldCB0aGUgbWVtcG9vbCBiYXNlIGFkZHIgYW5kIGFsaWduIGZy b20gdGhlIGhlYWRlciBub3cgKi8NCj4gPj4gIAltZW1oZHIgPSBTVEFJTFFfRklSU1QoJm1wLT5t ZW1fbGlzdCk7DQo+ID4+ICsJaWYgKCFtZW1oZHIpIHsNCj4gPj4gKwkJQUZfWERQX0xPRyhFUlIs ICJUaGUgbWVtcG9vbCBpcyBub3QgcG9wdWxhdGVkXG4iKTsNCj4gPj4gKwkJcmV0dXJuIDA7DQo+ ID4+ICsJfQ0KPiA+PiAgCW1lbWhkcl9hZGRyID0gKHVpbnRwdHJfdCltZW1oZHItPmFkZHI7DQo+ ID4+IC0JYWxpZ25lZF9hZGRyID0gbWVtaGRyX2FkZHIgJiB+KGdldHBhZ2VzaXplKCkgLSAxKTsN Cj4gPj4gKwlhbGlnbmVkX2FkZHIgPSBSVEVfQUxJR05fRkxPT1IobWVtaGRyX2FkZHIsIGdldHBh Z2VzaXplKCkpOw0KPiA+PiAgCSphbGlnbiA9IG1lbWhkcl9hZGRyIC0gYWxpZ25lZF9hZGRyOw0K PiA+PiAtDQo+ID4+ICsJKmxlbiA9IG1lbWhkci0+bGVuOw0KPiA+PiAgCXJldHVybiBhbGlnbmVk X2FkZHI7DQo+ID4NCj4gPiBPbiB4ODZfNjQsIHRoZSBwYWdlIHNpemUgaXMgNCBLQiA9IDB4MTAw MC4NCj4gPg0KPiA+IExldCdzIGxvb2sgYXQgYW4gZXhhbXBsZSB3aGVyZSBtZW1oZHItPmFkZHIg aXMgbm90IGFsaWduZWQgdG8gdGhlIHBhZ2Ugc2l6ZToNCj4gPg0KPiA+IEluIHRoZSBleGFtcGxl LA0KPiA+IG1lbWhkci0+YWRkciBpcyAweDcwMDEwMCwgYW5kDQo+ID4gbWVtaGRyLT5sZW4gaXMg MHgyMDAwMC4NCj4gPg0KPiA+IFRoZW4NCj4gPiBhbGlnbmVkX2FkZHIgYmVjb21lcyAweDcwMDAw MCwNCj4gPiAqYWxpZ24gYmVjb21lcyAweDEwMCwgYW5kDQo+ID4gKmxlbiBiZWNvbWVzIDB4MjAw MDAuDQo+ID4NCj4gPj4gIH0NCj4gPj4NCj4gPj4gQEAgLTExMjYsNiArMTE0Miw3IEBAIHhza191 bWVtX2luZm8gKnhkcF91bWVtX2NvbmZpZ3VyZShzdHJ1Y3QNCj4gPj4gcG1kX2ludGVybmFscyAq aW50ZXJuYWxzLA0KPiA+PiAgCXZvaWQgKmJhc2VfYWRkciA9IE5VTEw7DQo+ID4+ICAJc3RydWN0 IHJ0ZV9tZW1wb29sICptYl9wb29sID0gcnhxLT5tYl9wb29sOw0KPiA+PiAgCXVpbnQ2NF90IHVt ZW1fc2l6ZSwgYWxpZ24gPSAwOw0KPiA+PiArCXNpemVfdCBsZW4gPSAwOw0KPiA+Pg0KPiA+PiAg CWlmIChpbnRlcm5hbHMtPnNoYXJlZF91bWVtKSB7DQo+ID4+ICAJCWlmIChnZXRfc2hhcmVkX3Vt ZW0ocnhxLCBpbnRlcm5hbHMtPmlmX25hbWUsICZ1bWVtKSA8IDApIEBADQo+ID4+IC0xMTU3LDEw ICsxMTc0LDEyIEBAIHhza191bWVtX2luZm8gKnhkcF91bWVtX2NvbmZpZ3VyZShzdHJ1Y3QNCj4g Pj4gcG1kX2ludGVybmFscyAqaW50ZXJuYWxzLA0KPiA+PiAgCQl9DQo+ID4+DQo+ID4+ICAJCXVt ZW0tPm1iX3Bvb2wgPSBtYl9wb29sOw0KPiA+PiAtCQliYXNlX2FkZHIgPSAodm9pZCAqKWdldF9i YXNlX2FkZHIobWJfcG9vbCwgJmFsaWduKTsNCj4gPj4gLQkJdW1lbV9zaXplID0gKHVpbnQ2NF90 KW1iX3Bvb2wtPnBvcHVsYXRlZF9zaXplICoNCj4gPj4gLQkJCQkodWludDY0X3QpdXNyX2NvbmZp Zy5mcmFtZV9zaXplICsNCj4gPj4gLQkJCQlhbGlnbjsNCj4gPj4gKwkJYmFzZV9hZGRyID0gKHZv aWQgKilnZXRfbWVtaGRyX2luZm8obWJfcG9vbCwgJmFsaWduLCAmbGVuKTsNCj4gPj4gKwkJaWYg KCFiYXNlX2FkZHIpIHsNCj4gPj4gKwkJCUFGX1hEUF9MT0coRVJSLCAiVGhlIG1lbW9yeSBwb29s IGNhbid0IGJlIG1hcHBlZA0KPiBhcw0KPiA+PiB1bWVtXG4iKTsNCj4gPj4gKwkJCWdvdG8gZXJy Ow0KPiA+PiArCQl9DQo+ID4+ICsJCXVtZW1fc2l6ZSA9ICh1aW50NjRfdClsZW4gKyBhbGlnbjsN Cj4gPg0KPiA+IEhlcmUsIHVtZW1fc2l6ZSBiZWNvbWVzIDB4MjAxMDAuDQo+ID4NCj4gPj4NCj4g Pj4gIAkJcmV0ID0geHNrX3VtZW1fX2NyZWF0ZSgmdW1lbS0+dW1lbSwgYmFzZV9hZGRyLA0KPiB1 bWVtX3NpemUsDQo+ID4+ICAJCQkJJnJ4cS0+ZnEsICZyeHEtPmNxLCAmdXNyX2NvbmZpZyk7DQo+ ID4NCj4gPiBIZXJlLCB4c2tfdW1lbV9fY3JlYXRlKCkgaXMgY2FsbGVkIHdpdGggdGhlIGJhc2Vf YWRkcmVzcyAoMHg3MDAwMDApDQo+IHByZWNlZGluZyB0aGUgYWRkcmVzcyBvZiB0aGUgbWVtb3J5 IGNodW5rICgweDcwMDEwMCkuDQo+ID4gSXQgbG9va3MgbGlrZSBhIGJ1ZywgY2F1c2luZyBhIGJ1 ZmZlciB1bmRlcnJ1bi4gSS5lLiB3aWxsIGl0IGFjY2VzcyBtZW1vcnkgc3RhcnRpbmcNCj4gYXQg YmFzZV9hZGRyZXNzPw0KPiA+DQo+IA0KPiBJIGFscmVhZHkgYXNrZWQgZm9yIHRoaXMgb24gdjIs IEZyYW5rIG1lbnRpb25lZCB0aGF0IGFyZWEgaXMgbm90IGFjY2Vzc2VkIGFuZA0KPiBoYXZpbmcg Z2FwIGlzIHNhZmUuDQoNCnhza191bWVtX19jcmVhdGUoKSByZXF1aXJlcyBhIGJhc2UgYWRkcmVz cyB0aGF0IGlzIGFsaWduZWQgdG8gYSBwYWdlIGJvdW5kYXJ5LiANCkFuZCwgdGhlcmUgaXMgbm8g Y2hhbmNlIHRvIGFjY2VzcyB0aGUgYXJlYSBiZXR3ZWVuIDB4NzAwMDAwIGFuZCAweDcwMDEwMCwN CmJlY2F1c2UgdGhlIG1lbW9yeSBwb2ludGVyIGZvciBlYWNoIFhTSyBUWC9SWCBkZXNjcmlwdG9y IGlzIGRlcml2ZWQgZnJvbSB0aGUNCm1idWYgZGF0YSBhcmVhLg0KDQo+IA0KPiA+IElmIEknbSBj b3JyZWN0LCB0aGUgY29kZSBzaG91bGQgcHJvYmFibHkgZG8gdGhpcyBmb3IgYWxpZ25tZW50IGlu c3RlYWQ6DQo+ID4NCj4gPiBhbGlnbmVkX2FkZHIgPSBSVEVfQUxJR05fQ0VJTChtZW1oZHJfYWRk ciwgZ2V0cGFnZXNpemUoKSk7ICphbGlnbiA9DQo+ID4gYWxpZ25lZF9hZGRyIC0gbWVtaGRyX2Fk ZHI7IHVtZW1fc2l6ZSA9ICh1aW50NjRfdClsZW4gLSBhbGlnbjsNCj4gPg0KPiA+DQo+ID4gRGlz Y2xhaW1lcjogSSBkb24ndCBrbm93IG11Y2ggYWJvdXQgdGhlIEFGX1hEUCBpbXBsZW1lbnRhdGlv biwgc28gbWF5YmUgSQ0KPiBqdXN0IGRvbid0IHVuZGVyc3RhbmQgd2hhdCBpcyBnb2luZyBvbi4N Cj4gPg0KPiA+PiAtLQ0KPiA+PiAyLjM0LjENCj4gPg0KDQo=