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 E000E44102; Wed, 29 May 2024 14:57:58 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 5CB2E402CD; Wed, 29 May 2024 14:57:58 +0200 (CEST) Received: from mgamail.intel.com (mgamail.intel.com [192.198.163.14]) by mails.dpdk.org (Postfix) with ESMTP id 270AF402B9 for ; Wed, 29 May 2024 14:57:56 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1716987476; x=1748523476; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=3cwIK8bGaylaj9aeHj/jSyn0bqh0NpbNqYUgcFUsufg=; b=h3Nwnmpm4SFWwi2SUcrzqcATFmOBYHnXaF9MmPvdu2MR9RRRgnyoQ6wY bo1VJEsMmDr/js0Cn+TjXm/XCl9JKp0opXBZIJt4wEGLMKe4SXzbAoA95 kj3wYfos8DUNW6MWm6g6ba3MdOj405gSbS7dQ9NDx8KA23jpICvog7o2A 1LbVWoVg6QZhpxe+f5//cydZ91qKZTGKx8wACXhEQd/Jctn5WtxfxxGZy 7VrXE9nXOvN0ROOkiyM5Z8NM5oh8HvNEODVG4SZtzsKCmeNKUDbXwB2Cn 9k3OBtQCEAwbOiutqCwr49mgzcw0vmATN0TuXmRSYW6rWNGWweCovewzK w==; X-CSE-ConnectionGUID: aQ9YJX61Rx2bD4apkYM+Qg== X-CSE-MsgGUID: fuL+wjSNQ1OUMeV6TvwhMA== X-IronPort-AV: E=McAfee;i="6600,9927,11087"; a="13618709" X-IronPort-AV: E=Sophos;i="6.08,198,1712646000"; d="scan'208";a="13618709" Received: from orviesa008.jf.intel.com ([10.64.159.148]) by fmvoesa108.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 29 May 2024 05:57:55 -0700 X-CSE-ConnectionGUID: 2Xr2P6K2TDG6f38dzezKjg== X-CSE-MsgGUID: l5QqFmKOTxurJwhEPwQ0Qw== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.08,198,1712646000"; d="scan'208";a="35964149" Received: from fmsmsx602.amr.corp.intel.com ([10.18.126.82]) by orviesa008.jf.intel.com with ESMTP/TLS/AES256-GCM-SHA384; 29 May 2024 05:57:55 -0700 Received: from fmsmsx611.amr.corp.intel.com (10.18.126.91) 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; Wed, 29 May 2024 05:57:54 -0700 Received: from fmsmsx610.amr.corp.intel.com (10.18.126.90) by fmsmsx611.amr.corp.intel.com (10.18.126.91) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.39; Wed, 29 May 2024 05:57:54 -0700 Received: from fmsedg601.ED.cps.intel.com (10.1.192.135) by fmsmsx610.amr.corp.intel.com (10.18.126.90) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.39 via Frontend Transport; Wed, 29 May 2024 05:57:54 -0700 Received: from NAM02-SN1-obe.outbound.protection.outlook.com (104.47.57.41) by edgegateway.intel.com (192.55.55.70) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2507.39; Wed, 29 May 2024 05:57:54 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=T2Vc6B8IzhLnjqvi8QZXjKqgJ6Vgt3u5QAOw34T0HPYI5ogM4DcfCl/IS/mu1ihMYd99bFrVZEF0v5QnEYMTYo1Pw3cHyJdIdrP3a0qlPatMkAqvTLJI5429IX5iVO9DmpPUi2zAjpUbZod9j5ZRBzSN4JjSnR5HvStnjLEHQEKmB0RjahOp916M2x1P4NHa2f7OhbZNPxCqZ5L/p2iHFTTevt/uBLjB48bUNQsIS5AEX/vEdq9pahbHt+CzsF5NOaZCHuNS+SMLfMdzhIM440ixFkC4R6s3qliKGA7bwQ4edvlxoTPRUfDYDoFoVviIGl2SvC/YDFjVSDTb59RKEQ== 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=3cwIK8bGaylaj9aeHj/jSyn0bqh0NpbNqYUgcFUsufg=; b=mR6FOzqwq96E6VV5uSxrHTykdn9jqNLfsyXxV5ZX5os+K14wqktiINzE2CM/7tUiCKCaFNSwhfu+t5qex5SUnxS0kdwH/kW5//6nDGLiXsCUEbCxTWGkzHki1ZfCItbJRGDvFOgz1FxFHQVWnoKY2sA1XKUtuC3UwqvY8zUljZsLpDoMyAFVl90t8zFbRT+C3L8M9V8ZKWt63tuYFD04DLBKy4m7NvEp/ldRDBymkPPQgydwupeaW9HC/jcxqh070m/fh55W9KcAOi7ywD9dxGkn0SIxIqGwewa0uX8/ShrdgXfGeeyOABe51BMoyilKTY0UzziFoJe2TkIPzfeUgg== 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 MW4PR11MB5872.namprd11.prod.outlook.com (2603:10b6:303:169::14) by DS0PR11MB7578.namprd11.prod.outlook.com (2603:10b6:8:141::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7611.30; Wed, 29 May 2024 12:57:51 +0000 Received: from MW4PR11MB5872.namprd11.prod.outlook.com ([fe80::6444:ca4c:aa3e:f8d2]) by MW4PR11MB5872.namprd11.prod.outlook.com ([fe80::6444:ca4c:aa3e:f8d2%4]) with mapi id 15.20.7611.030; Wed, 29 May 2024 12:57:50 +0000 From: "Loftus, Ciara" To: "Du, Frank" , =?utf-8?B?TW9ydGVuIEJyw7hydXA=?= CC: Ferruh Yigit , "dev@dpdk.org" , "Andrew Rybchenko" , "Burakov, Anatoly" Subject: RE: [PATCH v2] net/af_xdp: fix umem map size for zero copy Thread-Topic: [PATCH v2] net/af_xdp: fix umem map size for zero copy Thread-Index: AQHao2YIp6/orB3VBEGMOIe5GUdgmLGiCesAgAB9FICAAGT0AIABieOAgAAMbACAAARGAIAJwdgw Date: Wed, 29 May 2024 12:57:50 +0000 Message-ID: References: <20240426005128.148730-1-frank.du@intel.com> <20240511052618.1890677-1-frank.du@intel.com> <0d02e8c6-0ef4-44e3-9dd2-94685b46136a@amd.com> <98CBD80474FA8B44BF855DF32C47DC35E9F487@smartserver.smartshare.dk> <98CBD80474FA8B44BF855DF32C47DC35E9F491@smartserver.smartshare.dk> In-Reply-To: Accept-Language: en-GB, 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: MW4PR11MB5872:EE_|DS0PR11MB7578:EE_ x-ms-office365-filtering-correlation-id: b90e0346-7d9f-4513-4579-08dc7fdef279 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; ARA:13230031|376005|366007|1800799015|38070700009; x-microsoft-antispam-message-info: =?utf-8?B?enEzODBXVkRpTEg2Z1BoZUxaZUw1UXJmMFVQQWVuMW5wNGdaN29haHlwRWRK?= =?utf-8?B?cVlLOWhReDZubENzdmdTWkVuZkNyRlZTVWNEYncwV0RJNUlSUE1uUjVDMFJr?= =?utf-8?B?MWgwNTZwTk9LZnlqS3hoZWlRcUJranZzdUNXZmV5RS9hRmpzQllTaWtsQnhB?= =?utf-8?B?d3RmM1lGbGRNWG9TV1hnS3FQOW1RMjdoSjQrRHFGNkVpZml3TDlxMTVKc3Fi?= =?utf-8?B?S1V1YnZkY0FzNjN0VWVjMms3ZlBNRFB3d21GcXRKMkRNdTVoajh2ZVpPaEpD?= =?utf-8?B?MXhKLzdqR002dkQ3SUs4cTNEM3gyTnBqSHpiQkNrN29mbytFU0ZHWFpKSmJB?= =?utf-8?B?bWladTlkc3R2TGNZVFBTSGhOUUJ2eC92MUZLZXdTYXBqb0dEeTFHb3oweUdC?= =?utf-8?B?TEd1UUxTNHB6ZWFpZDB5U3VvaEJsb1NYcXBNcmpVdlBmbVZiSDI4OWhrbUt0?= =?utf-8?B?SlZXTlNxT3A1bEdCVmhibXRQQm4yUmZBQ0ZyZS8ydWszb09JRlJlMEU2U1ZN?= =?utf-8?B?aGpEMnlXdS9WYjVSQXFOVFI3bHFaZ0dtekRTMGJyZXFNMmh4TVZ4RUtnTGdC?= =?utf-8?B?SUdVZnU5UDk1UzlFNG5YaWY1blZMaDcwSDB1TjR3LzU2WHVhbm55Tk1tVjlw?= =?utf-8?B?bEcrdWptUTU3NXFpTjU3ZDhIVVI3QndNWXZ6WnZOVzJRV25SRWtyYzRXUTAr?= =?utf-8?B?T093S1Y5aVAwdXV3L0dyV1ExOU1Ba3paN2owL3VqdEZpYWx2aGhDU3FMNGly?= =?utf-8?B?Uk1sLzJYaUxUczVWaGwrWUQya1hmSVlwTWJPUmZvYStVbkNtSlA5Qmk3Z0FF?= =?utf-8?B?LzBKSGZubFlHdUROQWsvMURrVmxzYnBXQ3ZKcXF6clJzMndscUhQYUs3eUJV?= =?utf-8?B?YlR5YVpJdFRzZFMyZlBvSS9wajRRcTdUNTFHa2tYSWdsS3pnelVlT0xWV2ww?= =?utf-8?B?c2d5bm53UytvZVczWk0zaXc3b3oyemw1ZjJPME1MOFJYTHkybHJLYkpTd1BR?= =?utf-8?B?VTFrNkx0T0kya016aWZuMmphNWpraDNqQ1NLQmlqYlVuS1ZPUnJxNWlwbmlr?= =?utf-8?B?a3E2MUgzbjJVaURPUndzdUJBRVZzWEVhQVlkUnhKR3ZGU2pUUkpvTHhzVzRT?= =?utf-8?B?ZUF1NGFnR0lhWjkyY0FLaU83QWpsbFhSOCt4UWhaeWlVaWEzT0VEZUIxQzVV?= =?utf-8?B?Z05zVlcrSEtpaG43ZllDT2xoeXNyWFhnVG1jR2JnODZGWkRQL0N1TktYWFFt?= =?utf-8?B?ZldCL0l6TCs4N0Rsd1FXQ2Y2a2FCaFZEeCtTaklvdVh3NmxmbmtrQ04zMTVW?= =?utf-8?B?RWRnRWRlQXFDNmxjRjdhUUUyVEE3d1MzUWpPaCt2bnc2bHNJbWZHUnBDbkJZ?= =?utf-8?B?ZDVOQTRCOWFiSlFYQUNIL1NPL2NURWJ2dE5UNmdnWGUyYTNUMEpUNW5PWW01?= =?utf-8?B?TEYvSk5NSmVRTWhMTktaZysrMkNzZXhjdGs4SGIzVUU0ZEQxRUJ5THU1ako1?= =?utf-8?B?dmszbEtBMHpRUE5WVXZ1Zy9LMzBMQ050eHdrRmJNamRzNUUybDMvQ2xaeEdB?= =?utf-8?B?QjhWai9XNXlpcG5VbmNRVFdaVmRJVnJWYXhROVdJZkdLWXVaeHc2d3JqdlZX?= =?utf-8?B?ZUZ1Z0ZibDFWVEhZMTN1N0M0cW5DUFlQaHhuNVRoQm8zSVlHcUhOTHZuT04x?= =?utf-8?B?TkJheHpZeDBqU2FMM3hWT1lpWkdFYWsyMEQ3SEs3LzJTZUdOZEs5Nk5XRVI5?= =?utf-8?B?eU9UbjBqR3FHQzlycWExM2JMdWRIU044cHZTUXg5RzY3SHZSV0krUUkvaHJO?= =?utf-8?B?c1NVSUd1MS9aZ0tLb0tBQT09?= x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:MW4PR11MB5872.namprd11.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230031)(376005)(366007)(1800799015)(38070700009); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?c1VpSGl1NjJiakRUM3ZFMkhZZnIwdXdQY08yc21HQWxwUHhPWjdJeno3ekYy?= =?utf-8?B?OE50WEpMNmJvTFFaeEY0VGtCdW5NUmxDZDIwcVB6dDV0ZUo0U2ZqVHladzBY?= =?utf-8?B?WHE3YS9aY0ViMm1UbFl4UkVSekdESzc3T0pLRkNsYmhLOG9xdVV1cldOL0NH?= =?utf-8?B?cCtQM3grK0xrVXpDZ21tNTl4VEV3VW91dk5KSkVkbjdXbjVjdFVSMFRzVG0w?= =?utf-8?B?MWVYQkhzU1oxRHRMemxiRUVRU3p3VXA1eUhxT3pQbkJreDhWblk5RU5MeitD?= =?utf-8?B?QjNoVXJQRjBXUzhKMzg3QUUvbnNnL0xNL01TMFFnQWJzTnlwR3QxcGFjZWZh?= =?utf-8?B?WENJZ0Yxb3BGL3dNNHNia21PQlJTWlM0SDVkN0xmT0JOZHdNSnZwdko4RnpF?= =?utf-8?B?clNWbHZqZzdOampuMGdjWXUyYVJpMTZ0MjUzamZIdzdQNmZScHhpN010Z1N0?= =?utf-8?B?ai8reEVJb1NDZTVWM3RFNGVHZmlyWG8vcDVWMEltNkhLVDhVRzR3ajRxNU01?= =?utf-8?B?YTRHWERkU1RBclgwN0xkdi9MWGtqNXJJWERkRStjN2dDV2EvZFFTNDVYUWZB?= =?utf-8?B?d1NWajduaTZMT3F3UndPWmVrUkRlOC9PZTN3VlAwbXlPZ0dBTkt2NzViNjdM?= =?utf-8?B?blhLM2ozUnZkakZGSkVLWUtXd3pKNEVtbXJkeFFDZ3REeHdoRkZBczV2QmIx?= =?utf-8?B?U1huZ01HMmROZzJOVnkydVRCNVdUWlVONGxqQStZVzZTTVFwT01sWS9sWU10?= =?utf-8?B?Z3g4UUJpaEVhbkdoYVhGNkR2N1IrVXo2bVEzMWF4RGdmQnBYNk53M201MjFy?= =?utf-8?B?TE1pS1RtVjN1T1Blb1NNR042VVE4UU1PMmI4eUdPM0pwZWpoY0ptNll5RnFY?= =?utf-8?B?MW5QTFZGeVhZYXFidTRTbWU4d2tXMjBXaGJXeHUxVnR4WWxnajU3c3FNM0gx?= =?utf-8?B?QU9qNGhnVW5DbVAvandLNm5USVUwYWU2Yk5vQzlrS3FHbDZvRnJudXFBVjFi?= =?utf-8?B?NGdCQTVIdEQ2ZDNGNTJpR3hPN3N2OXpkdHR1d2NlTFBsVXRZN2trUDZzaTkw?= =?utf-8?B?RWozM3gzWGZORWFvaXBuOFRqL0trandEbEZlSXBCN3crREFJSlkrZWRiL3Nz?= =?utf-8?B?U01XeVQ3cnBVc2VUN0NTNHRzSHhrQXhuVFVRSHBhWFRQSVFsZDF3c0xWcXVv?= =?utf-8?B?VGRmODJJV3ZvWjBGOFIwR3BRRzVzVmxYT0VwTDd1cmJRMk5sZmNEV04zTXM1?= =?utf-8?B?OGw2WTFXVWxVc2tSSmV3OHdNUVhiOG5DbitPZW8rSXoydElYNTFCV2Q0bVhK?= =?utf-8?B?clR1SXVNRHphK21TS0VkUitwWXNVMmtUSW5HWjVFRSswbkRhMGE0dEc5WTlV?= =?utf-8?B?REFIaVI1Wm0zQVptNkFIT0tYZTRhYVNFN25RTEFHNnB6RGREOVE2YzJ6Tmpn?= =?utf-8?B?SGZoNFBEbnBFbmFYQ3pmeXh5dVpSNEVORlRzWHUxSEdpR2ZqYUdTdlMwSElH?= =?utf-8?B?K2Z6ZVF5ZmNMZ0NPWU1IS0JHd3dZNFVwRWFsUDkvdEUwR280L3ZENUtQcUFS?= =?utf-8?B?V295TGtLNWk5UWlnakVZMUxOazMzeGFUcllFM3dicUZlVSt0cytuY0xGWjcr?= =?utf-8?B?NjJQQ2l3cjY5U3d1M1hsZkhvUGRwM05xdDJDQlR4blJvdXVSL1IzSnY4RkRX?= =?utf-8?B?dmFMdnhjdWxyM1ZmclZ1cWFFRzFWemtpb05Nank5cDRHNWtydUFIekxwVEFz?= =?utf-8?B?a0oxMFZzZE9pZFp3U3ZXNWFlMTBvTnhLVTc3Q25CYWJQTlNkU2pYdFFrZk9E?= =?utf-8?B?Y2tUdGRQd0VsU3lwVVhXUnUvdGJGT09QRGttZjJwNEpXK2E1QzA4cm1kVmhZ?= =?utf-8?B?aTFQSGs0K3dsQjNwOGk5YmZIM3ptZWlWeWxzY3ZkVWc5MC9sTGU2YStBNDhC?= =?utf-8?B?MHA1VGZBUDMwenFHQjdjSmgyS1RvN1F3bDJuZ05JQmkzRGI3YzZTY2FVemIr?= =?utf-8?B?SGFLWGE4QUVwZlprTit2YWFTQkl5YTgyTTZtekNsTVo4TEt2aTFvaEFVUUpX?= =?utf-8?B?TlU2SEI5elNualFSdk8zNDN0OXA2b1FQTkhXTGlTN0VWcGluVmRwVENMSlU3?= =?utf-8?B?R1RGQzNhQXhacGxPMGF3TnEvNitRU216ZzR6cG1WWW5LZldHc2xaWjROdlUr?= =?utf-8?Q?9GVn37NwLDxbLLNBAkUZAAVEPFIOmJdXa7tKIXLZPQfN?= 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: MW4PR11MB5872.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: b90e0346-7d9f-4513-4579-08dc7fdef279 X-MS-Exchange-CrossTenant-originalarrivaltime: 29 May 2024 12:57:50.6777 (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: 3dW7fvFMlt2KqrQ/4ByyBSwWGBrwbLsQR8gz8L3yCxzsHKLQxnmAGY17xnkKWOsW3OwUDJdjyn2R+V3ODYAhFQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS0PR11MB7578 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 DQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogRHUsIEZyYW5rIDxmcmFu ay5kdUBpbnRlbC5jb20+DQo+IFNlbnQ6IFRodXJzZGF5LCBNYXkgMjMsIDIwMjQgODo1NiBBTQ0K PiBUbzogTW9ydGVuIEJyw7hydXAgPG1iQHNtYXJ0c2hhcmVzeXN0ZW1zLmNvbT47IEZlcnJ1aCBZ aWdpdA0KPiA8ZmVycnVoLnlpZ2l0QGFtZC5jb20+OyBkZXZAZHBkay5vcmc7IEFuZHJldyBSeWJj aGVua28NCj4gPGFuZHJldy5yeWJjaGVua29Ab2t0ZXRsYWJzLnJ1PjsgQnVyYWtvdiwgQW5hdG9s eQ0KPiA8YW5hdG9seS5idXJha292QGludGVsLmNvbT4NCj4gQ2M6IExvZnR1cywgQ2lhcmEgPGNp YXJhLmxvZnR1c0BpbnRlbC5jb20+DQo+IFN1YmplY3Q6IFJFOiBbUEFUQ0ggdjJdIG5ldC9hZl94 ZHA6IGZpeCB1bWVtIG1hcCBzaXplIGZvciB6ZXJvIGNvcHkNCj4gDQo+ID4gLS0tLS1PcmlnaW5h bCBNZXNzYWdlLS0tLS0NCj4gPiBGcm9tOiBNb3J0ZW4gQnLDuHJ1cCA8bWJAc21hcnRzaGFyZXN5 c3RlbXMuY29tPg0KPiA+IFNlbnQ6IFRodXJzZGF5LCBNYXkgMjMsIDIwMjQgMzo0MSBQTQ0KPiA+ IFRvOiBEdSwgRnJhbmsgPGZyYW5rLmR1QGludGVsLmNvbT47IEZlcnJ1aCBZaWdpdCA8ZmVycnVo LnlpZ2l0QGFtZC5jb20+Ow0KPiA+IGRldkBkcGRrLm9yZzsgQW5kcmV3IFJ5YmNoZW5rbyA8YW5k cmV3LnJ5YmNoZW5rb0Bva3RldGxhYnMucnU+Ow0KPiBCdXJha292LA0KPiA+IEFuYXRvbHkgPGFu YXRvbHkuYnVyYWtvdkBpbnRlbC5jb20+DQo+ID4gQ2M6IExvZnR1cywgQ2lhcmEgPGNpYXJhLmxv ZnR1c0BpbnRlbC5jb20+DQo+ID4gU3ViamVjdDogUkU6IFtQQVRDSCB2Ml0gbmV0L2FmX3hkcDog Zml4IHVtZW0gbWFwIHNpemUgZm9yIHplcm8gY29weQ0KPiA+DQo+ID4gPiBGcm9tOiBEdSwgRnJh bmsgW21haWx0bzpmcmFuay5kdUBpbnRlbC5jb21dDQo+ID4gPiBTZW50OiBUaHVyc2RheSwgMjMg TWF5IDIwMjQgMDguNTYNCj4gPiA+DQo+ID4gPiA+IEZyb206IE1vcnRlbiBCcsO4cnVwIDxtYkBz bWFydHNoYXJlc3lzdGVtcy5jb20+DQo+ID4gPiA+IFNlbnQ6IFdlZG5lc2RheSwgTWF5IDIyLCAy MDI0IDM6MjcgUE0NCj4gPiA+ID4NCj4gPiA+ID4gPiBGcm9tOiBEdSwgRnJhbmsgW21haWx0bzpm cmFuay5kdUBpbnRlbC5jb21dDQo+ID4gPiA+ID4gU2VudDogV2VkbmVzZGF5LCAyMiBNYXkgMjAy NCAwMy4yNQ0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gPiBGcm9tOiBGZXJydWggWWlnaXQgPGZlcnJ1 aC55aWdpdEBhbWQuY29tPg0KPiA+ID4gPiA+ID4gU2VudDogV2VkbmVzZGF5LCBNYXkgMjIsIDIw MjQgMTo1OCBBTQ0KPiA+ID4gPiA+ID4NCj4gPiA+ID4gPiA+IE9uIDUvMTEvMjAyNCA2OjI2IEFN LCBGcmFuayBEdSB3cm90ZToNCj4gPiA+ID4gPiA+ID4gVGhlIGN1cnJlbnQgY2FsY3VsYXRpb24g YXNzdW1lcyB0aGF0IHRoZSBtYnVmcyBhcmUgY29udGlndW91cy4NCj4gPiA+ID4gPiA+ID4gSG93 ZXZlciwgdGhpcyBhc3N1bXB0aW9uIGlzIGluY29ycmVjdCB3aGVuIHRoZSBtZW1vcnkgc3BhbnMN Cj4gPiA+ID4gPiA+ID4gYWNyb3NzIGEgaHVnZQ0KPiA+ID4gPiA+ID4gcGFnZS4NCj4gPg0KPiA+ IFdoYXQgZG9lcyAidGhlIG1lbW9yeSBzcGFucyBhY3Jvc3MgYSBodWdlIHBhZ2UiIG1lYW4/DQo+ ID4NCj4gPiBTaG91bGQgaXQgYmUgInRoZSBtZW1vcnkgc3BhbnMgYWNyb3NzIG11bHRpcGxlIG1l bW9yeSBjaHVua3MiPw0KPiANCj4gVGhpcyBkb2VzIG5vdCBwZXJ0YWluIHRvIG11bHRpcGxlIG1l bW9yeSBjaHVua3MgYnV0IHJhdGhlciB0byBtYnVmIG1lbW9yeS4NCj4gVGhlIHNjZW5hcmlvIGlu dm9sdmVzIGEgc2luZ2xlIG1lbW9yeSBjaHVuayB1dGlsaXppbmcgbXVsdGlwbGUgMk0gcGFnZXMu IFRvDQo+IGVuc3VyZSB0aGF0IGVhY2ggbWJ1ZiByZXNpZGVzIGV4Y2x1c2l2ZWx5IHdpdGhpbiBh IHNpbmdsZSBwYWdlLCB0aGVyZSBhcmUNCj4gZGVsaWJlcmF0ZSBzcGFjaW5nIGdhcHMgd2hlbiBh bGxvY2F0aW5nIG1idWZzIGFjcm9zcyB0aGUgMk0gcGFnZQ0KPiBib3VuZGFyaWVzLg0KPiANCj4g Pg0KPiA+ID4gPiA+ID4gPiBDb3JyZWN0IHRvIGRpcmVjdGx5IHJlYWQgdGhlIHNpemUgZnJvbSB0 aGUgbWVtcG9vbCBtZW1vcnkgY2h1bmtzLg0KPiA+ID4gPiA+ID4gPg0KPiA+ID4gPiA+ID4gPiBT aWduZWQtb2ZmLWJ5OiBGcmFuayBEdSA8ZnJhbmsuZHVAaW50ZWwuY29tPg0KPiA+ID4gPiA+ID4g Pg0KPiA+ID4gPiA+ID4gPiAtLS0NCj4gPiA+ID4gPiA+ID4gdjI6DQo+ID4gPiA+ID4gPiA+ICog QWRkIHZpcnR1YWwgY29udGlndW91cyBkZXRlY3QgZm9yIGZvciBtdWx0aXBsZSBtZW1oZHJzLg0K PiA+ID4gPiA+ID4gPiAtLS0NCj4gPiA+ID4gPiA+ID4gIGRyaXZlcnMvbmV0L2FmX3hkcC9ydGVf ZXRoX2FmX3hkcC5jIHwgMzQNCj4gPiA+ID4gPiA+ID4gKysrKysrKysrKysrKysrKysrKysrKysr LS0tLS0NCj4gPiA+ID4gPiA+ID4gIDEgZmlsZSBjaGFuZ2VkLCAyOCBpbnNlcnRpb25zKCspLCA2 IGRlbGV0aW9ucygtKQ0KPiA+ID4gPiA+ID4gPg0KPiA+ID4gPiA+ID4gPiBkaWZmIC0tZ2l0IGEv ZHJpdmVycy9uZXQvYWZfeGRwL3J0ZV9ldGhfYWZfeGRwLmMNCj4gPiA+ID4gPiA+ID4gYi9kcml2 ZXJzL25ldC9hZl94ZHAvcnRlX2V0aF9hZl94ZHAuYw0KPiA+ID4gPiA+ID4gPiBpbmRleCAyNjhh MTMwYzQ5Li43NDU2MTA4ZDZkIDEwMDY0NA0KPiA+ID4gPiA+ID4gPiAtLS0gYS9kcml2ZXJzL25l dC9hZl94ZHAvcnRlX2V0aF9hZl94ZHAuYw0KPiA+ID4gPiA+ID4gPiArKysgYi9kcml2ZXJzL25l dC9hZl94ZHAvcnRlX2V0aF9hZl94ZHAuYw0KPiA+ID4gPiA+ID4gPiBAQCAtMTAzOSwxNiArMTAz OSwzNSBAQCBldGhfbGlua191cGRhdGUoc3RydWN0IHJ0ZV9ldGhfZGV2DQo+ID4gPiA+ID4gPiA+ ICpkZXYgX19ydGVfdW51c2VkLCAgfQ0KPiA+ID4gPiA+ID4gPg0KPiA+ID4gPiA+ID4gPiAgI2lm IGRlZmluZWQoWERQX1VNRU1fVU5BTElHTkVEX0NIVU5LX0ZMQUcpDQo+ID4gPiA+ID4gPiA+IC1z dGF0aWMgaW5saW5lIHVpbnRwdHJfdCBnZXRfYmFzZV9hZGRyKHN0cnVjdCBydGVfbWVtcG9vbCAq bXAsDQo+ID4gPiA+ID4gPiA+IHVpbnQ2NF90ICphbGlnbikNCj4gPiA+ID4gPiA+ID4gK3N0YXRp YyBpbmxpbmUgdWludHB0cl90IGdldF9tZW1oZHJfaW5mbyhzdHJ1Y3QgcnRlX21lbXBvb2wNCj4g PiA+ID4gPiA+ID4gKyptcCwgdWludDY0X3QgKmFsaWduLCBzaXplX3QgKmxlbikNCj4gPiA+ID4g PiA+ID4gIHsNCj4gPiA+ID4gPiA+ID4gLQlzdHJ1Y3QgcnRlX21lbXBvb2xfbWVtaGRyICptZW1o ZHI7DQo+ID4gPiA+ID4gPiA+ICsJc3RydWN0IHJ0ZV9tZW1wb29sX21lbWhkciAqbWVtaGRyLCAq bmV4dDsNCj4gPiA+ID4gPiA+ID4gIAl1aW50cHRyX3QgbWVtaGRyX2FkZHIsIGFsaWduZWRfYWRk cjsNCj4gPiA+ID4gPiA+ID4gKwlzaXplX3QgbWVtaGRyX2xlbiA9IDA7DQo+ID4gPiA+ID4gPiA+ DQo+ID4gPiA+ID4gPiA+ICsJLyogZ2V0IHRoZSBtZW1wb29sIGJhc2UgYWRkciBhbmQgYWxpZ24g Ki8NCj4gPiA+ID4gPiA+ID4gIAltZW1oZHIgPSBTVEFJTFFfRklSU1QoJm1wLT5tZW1fbGlzdCk7 DQo+ID4gPiA+ID4gPiA+ICAJbWVtaGRyX2FkZHIgPSAodWludHB0cl90KW1lbWhkci0+YWRkcjsN Cj4gPiA+ID4NCj4gPiA+ID4gVGhpcyBpcyBub3QgYSBuZXcgYnVnOyBidXQgaWYgdGhlIG1lbXBv b2wgaXMgbm90IHBvcHVsYXRlZCwgbWVtaGRyDQo+ID4gPiA+IGlzIE5VTEwNCj4gPiA+IGhlcmUu DQo+ID4gPg0KPiA+ID4gVGhhbmtzLCB3aWxsIGFkZCBhIGNoZWNrIGxhdGVyLg0KPiA+ID4NCj4g PiA+ID4NCj4gPiA+ID4gPiA+ID4gIAlhbGlnbmVkX2FkZHIgPSBtZW1oZHJfYWRkciAmIH4oZ2V0 cGFnZXNpemUoKSAtIDEpOw0KPiA+ID4gPiA+ID4gPiAgCSphbGlnbiA9IG1lbWhkcl9hZGRyIC0g YWxpZ25lZF9hZGRyOw0KPiA+ID4gPiA+ID4gPg0KPiA+ID4gPiA+ID4NCj4gPiA+ID4gPiA+IEkg YW0gYXdhcmUgdGhpcyBpcyBub3QgcGFydCBvZiB0aGlzIHBhdGNoLCBidXQgYXMgbm90ZSwgY2Fu J3Qgd2UNCj4gPiA+ID4gPiA+IHVzZSAnUlRFX0FMSUdOX0ZMT09SJyB0byBjYWxjdWxhdGUgYWxp Z25lZCBhZGRyZXNzLg0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gU3VyZSwgd2lsbCB1c2UgUlRFX0FM SUdOX0ZMT09SIGluIG5leHQgdmVyc2lvbi4NCj4gPiA+ID4gPg0KPiA+ID4gPiA+ID4NCj4gPiA+ ID4gPiA+DQo+ID4gPiA+ID4gPiA+ICsJbWVtaGRyX2xlbiArPSBtZW1oZHItPmxlbjsNCj4gPiA+ ID4gPiA+ID4gKw0KPiA+ID4gPiA+ID4gPiArCS8qIGNoZWNrIGlmIHZpcnR1YWwgY29udGlndW91 cyBtZW1vcnkgZm9yIG11bHRpcGxlIG1lbWhkcnMNCj4gKi8NCj4gPiA+ID4gPiA+ID4gKwluZXh0 ID0gU1RBSUxRX05FWFQobWVtaGRyLCBuZXh0KTsNCj4gPiA+ID4gPiA+ID4gKwl3aGlsZSAobmV4 dCAhPSBOVUxMKSB7DQo+ID4gPiA+ID4gPiA+ICsJCWlmICgodWludHB0cl90KW5leHQtPmFkZHIg IT0gKHVpbnRwdHJfdCltZW1oZHItPmFkZHINCj4gKw0KPiA+ID4gbWVtaGRyLQ0KPiA+ID4gPiA+ ID4gPmxlbikgew0KPiA+ID4gPiA+ID4gPiArCQkJQUZfWERQX0xPRyhFUlIsICJtZW1vcnkgY2h1 bmtzIG5vdA0KPiB2aXJ0dWFsDQo+ID4gPiA+ID4gPiBjb250aWd1b3VzLCAiDQo+ID4gPiA+ID4g PiA+ICsJCQkJCSJuZXh0OiAlcCwgY3VyOiAlcChsZW46ICUiDQo+ID4gUFJJZDY0DQo+ID4gPiA+ ID4gPiAiIClcbiIsDQo+ID4gPiA+ID4gPiA+ICsJCQkJCW5leHQtPmFkZHIsIG1lbWhkci0+YWRk ciwNCj4gPiBtZW1oZHItDQo+ID4gPiA+ID4gPiA+bGVuKTsNCj4gPiA+ID4gPiA+ID4gKwkJCXJl dHVybiAwOw0KPiA+ID4gPiA+ID4gPiArCQl9DQo+ID4gPiA+ID4gPiA+DQo+ID4gPiA+ID4gPg0K PiA+ID4gPiA+ID4gSXNuJ3QgdGhlcmUgYSBtZW1wb29sIGZsYWcgdGhhdCBjYW4gaGVscCB1cyBm aWd1cmUgb3V0IG1lbXBvb2wNCj4gPiA+ID4gPiA+IGlzIG5vdCBJT1ZBIGNvbnRpZ3VvdXM/IElz bid0IGl0IHN1ZmZpY2llbnQgb24gaXRzIG93bj8NCj4gPiA+ID4gPg0KPiA+ID4gPiA+IEluZGVl ZCwgd2hhdCB3ZSBuZWVkIHRvIGFzY2VydGFpbiBpcyB3aGV0aGVyIGl0J3MgY29udGlndW91cyBp bg0KPiA+ID4gPiA+IENQVSB2aXJ0dWFsIHNwYWNlLCBub3QgSU9WQS4gSSBoYXZlbid0IGNvbWUg YWNyb3NzIGEgZmxhZw0KPiA+ID4gPiA+IHNwZWNpZmljYWxseSBmb3IgQ1BVIHZpcnR1YWwgY29u dGlndWl0eS4gVGhlIG1ham9yIGxpbWl0YXRpb24gaW4NCj4gPiA+ID4gPiBYRFAgaXMgWFNLIFVN RU0gb25seSBzdXBwb3J0cyByZWdpc3RlcmluZyBhIHNpbmdsZSBjb250aWd1b3VzIHZpcnR1YWwN Cj4gPiBtZW1vcnkgYXJlYS4NCj4gPiA+ID4NCj4gPiA+ID4gSSB3b3VsZCBhc3N1bWUgdGhhdCB0 aGUgRUFMIG1lbW9yeSBtYW5hZ2VyIG1lcmdlcyBmcmVlIG1lbW9yeSBpbnRvDQo+ID4gPiA+IGNv bnRpZ3VvdXMgY2h1bmtzIHdoZW5ldmVyIHBvc3NpYmxlLg0KPiA+ID4gPiBAQW5hdG9seSwgcGxl YXNlIGNvbmZpcm0/DQo+ID4gPiA+DQo+ID4gPiA+IElmIG15IGFzc3VtcHRpb24gaXMgY29ycmVj dCwgaXQgbWVhbnMgdGhhdCBpZiBtcC0+bmJfbWVtX2NodW5rcyAhPQ0KPiA+ID4gPiAxLCB0aGVu DQo+ID4gPiB0aGUNCj4gPiA+ID4gbWVtcG9vbCBpcyBub3QgdmlydHVhbCBjb250aWd1b3VzLiBB bmQgaWYgbXAtPm5iX21lbV9jaHVua3MgPT0gMSwNCj4gPiA+ID4gdGhlbiBpdA0KPiA+ID4gaXM7 DQo+ID4gPiA+IHRoZXJlIGlzIG5vIG5lZWQgdG8gaXRlcmF0ZSB0aHJvdWdoIHRoZSBtZW1oZHIg bGlzdC4NCj4gPiA+DQo+ID4gPiBJZiB0aGlzJ3MgdHJ1ZSBub3csIGhvd2V2ZXIsIHRoaXMgYXNz dW1wdGlvbiBtYXkgbm90IGhvbGQgdHJ1ZSBpbiB0aGUNCj4gPiA+IGZ1dHVyZSBjb2RlIGNoYW5n ZSwgaXRlcmF0aW5nIHRocm91Z2ggdGhlIGxpc3QgbWF5IGlzIGEgc2FmZXIgd2F5IGFzDQo+ID4g PiBpdCBjYXJlZnVsbHkgY2hlY2tzIHRoZSB2aXJ0dWFsIGFkZHJlc3Mgd2l0aG91dCByZWx5aW5n IG9uIGFueSBjb25kaXRpb24uDQo+ID4NCj4gPiBJZiB0aGVyZSBpcyBleGFjdGx5IG9uZSBtZW1v cnkgY2h1bmssIGl0IGlzIHZpcnR1YWwgY29udGlndW91cy4gSXQgaGFzIG9uZQ0KPiBhZGRyZXNz DQo+ID4gYW5kIG9uZSBsZW5ndGgsIHNvIGl0IG11c3QgYmUuDQo+ID4NCj4gPiBJZiB0aGVyZSBh cmUgbW9yZSB0aGFuIG9uZSBtZW1vcnkgY2h1bmssIEkgY29uc2lkZXIgaXQgdW5saWtlbHkgdGhh dCB0aGV5IGFyZQ0KPiA+IGNvbnRpZ3VvdXMuDQo+ID4gSGF2ZSB5b3UgZXZlciBvYnNlcnZlZCB0 aGUgb3Bwb3NpdGUsIGkuZS4gYSBtZW1wb29sIHdpdGggbXVsdGlwbGUgbWVtb3J5DQo+ID4gY2h1 bmtzIGJlaW5nIHZpcnR1YWwgY29udGlndW91cz8NCj4gPg0KPiA+IEl0ZXJhdGluZyB0aHJvdWdo IHRoZSBsaXN0IGRvZXMgbm90IHNlZW0gc2FmZXIgdG8gbWUsIHF1aXRlIHRoZSBvcHBvc2l0ZS4N Cj4gPiBXaGljaCBmdXR1cmUgY2hhbmdlIGFyZSB5b3UgdHJ5aW5nIHRvIHByZXBhcmUgZm9yPw0K PiA+DQo+ID4gS2VlcGluZyBpdCBzaW1wbGUgaXMgbW9yZSBsaWtlbHkgdG8gbm90IGJyZWFrIHdp dGggZnV0dXJlIGNoYW5nZXMuDQo+IA0KPiBObywgSSBoYXZlbid0IGVuY291bnRlcmVkIGEgbWVt cG9vbCB3aXRoIG11bHRpcGxlIG1lbW9yeSBjaHVua3MgYWN0dWFsbHksDQo+IG5vdCBrbm93IGhv dyB0byBjb25zdHJ1Y3Qgc3VjaCBtZW1wb29sLiBUaGUgaW5pdGlhbCBhcHByb2FjaCB3YXMgdG8g cmV0dXJuDQo+IGFuIGVycm9yIGlmIG11bHRpcGxlIGNodW5rcyB3ZXJlIGRldGVjdGVkLCBhbmQg dGhlIGl0ZXJhdGlvbiBtZXRob2Qgd2FzDQo+IGludHJvZHVjZWQgbGF0ZXIuIEkgY2FuIHJldmVy dCB0byB0aGUgb3JpZ2luYWwsIHNpbXBsZXIgd2F5Lg0KDQpUaGUgbWVtcG9vbCBjcmVhdGVkIGlu IG15ICh2aXJ0dWFsaXplZCkgdGVzdCBlbnZpcm9ubWVudCBhbHdheXMgaGFzIG11bHRpcGxlIG1l bW9yeSBjaHVua3MgYW5kIHRoZSBpdGVyYXRpdmUgY2hlY2sgZm9yIHZpcnR1YWwgY29udGlndWl0 eSBpbiB2MiBvZiB0aGlzIHBhdGNoIHN1Y2NlZWRzIGZvciBtZS4NCkhvd2V2ZXIgaW4gdjQsIHNp bmNlIG1wLT5uYl9tZW1fY2h1bmtzICE9IDEsIGl0IHdpbGwgZmFpbCBmb3IgbWUuDQpTbyBpdCBh cHBlYXJzIHRoYXQgdmlydHVhbCBjb250aWd1aXR5IGlzIHBvc3NpYmxlIGV2ZW4gaWYgbXAtPm5i X21lbV9jaHVua3MgIT0gMSBzbyBJIGRvbid0IHRoaW5rIHdlIGNhbiByZWx5IG9uIHRoYXQgdmFs dWUgZm9yIGRldGVybWluaW5nIHZpcnR1YWwgY29udGlndWl0eS4NCg0K