From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga06.intel.com (mga06.intel.com [134.134.136.31]) by mail.toke.dk (Postfix) with ESMTPS id 8AA668E784A for ; Wed, 17 Nov 2021 21:07:20 +0100 (CET) Authentication-Results: mail.toke.dk; dkim=pass (1024-bit key) header.d=intel.onmicrosoft.com header.i=@intel.onmicrosoft.com header.b=f7yZK1N6 X-IronPort-AV: E=McAfee;i="6200,9189,10171"; a="294859005" X-IronPort-AV: E=Sophos;i="5.87,241,1631602800"; d="scan'208";a="294859005" Received: from fmsmga003.fm.intel.com ([10.253.24.29]) by orsmga104.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 17 Nov 2021 12:07:16 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.87,241,1631602800"; d="scan'208";a="586812598" Received: from orsmsx603.amr.corp.intel.com ([10.22.229.16]) by FMSMGA003.fm.intel.com with ESMTP; 17 Nov 2021 12:07:16 -0800 Received: from orsmsx608.amr.corp.intel.com (10.22.229.21) by ORSMSX603.amr.corp.intel.com (10.22.229.16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2242.12; Wed, 17 Nov 2021 12:07:15 -0800 Received: from ORSEDG602.ED.cps.intel.com (10.7.248.7) by orsmsx608.amr.corp.intel.com (10.22.229.21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2242.12 via Frontend Transport; Wed, 17 Nov 2021 12:07:15 -0800 Received: from NAM11-DM6-obe.outbound.protection.outlook.com (104.47.57.173) by edgegateway.intel.com (134.134.137.103) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2242.12; Wed, 17 Nov 2021 12:07:15 -0800 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=AzZAiYegDHsSKcV3Zo3hza0um4cNe2KGs7UvvnF2s5NVNe67qbnYkYLUyfyAhit89r8uvTc8LJEDM8aYNT+JnIQ3/kHiAJM+R1FPz4a6Da9OgL3k7ymxypP7jcmkByy+g2Abm9nOJQZB+QzoBcZY1ofdcG4U1c01pSNEiC2S07X3t85w8RYoHW5lPz9HEAm1vE+yoXhfcQzxtCSVKOZW4TfDf1DnIrc2/SgsaOdUw3Aqk1VjiiTdwYykPU2jCq87iEtrbg6nNcmi8E1Gn5/PiM8/Ac3Z3sf/kS/39fbYHG3a/2Q0nwzlCGFmtyPSdZH1DIBPrTbhm4n0yNekntcD+A== 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=pDpaLvnRwkGm3EKTk8bRt1U8WPUPaMpXUQdYxj4RArg=; b=fac+kLQRW9tQ3v/wsrOoMFHbZyWMHzWbLrqTMHVV9mVYY9aONMOpafJboz3cyMverLb5WyBHz7SW2RRriMoaVA6JXmESRsDe72yctSzSIlFEhYuOP0d8lnxkcRKk4vbr49YlADu/f1ndSAUn2pLfphdce+frQ6pZFMNnkF3gzQtF4Gq6BKgsMX95lqrMaFvZuYElLAnpz+Gh3FH1GGODzu32CgHJefwCCxI487DgVDi4/lCGPhk2USCJhtxtAoQUoiE/TEWIdS1ImWNeHXeeYB5Q/0i9aiYkQUvEo2G27JKsV/cSGIZz2WZ64Gl5/gdb3tVJKfEWNXr9PhoopGqPIQ== 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 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=intel.onmicrosoft.com; s=selector2-intel-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=pDpaLvnRwkGm3EKTk8bRt1U8WPUPaMpXUQdYxj4RArg=; b=f7yZK1N6CK+fT4mBe1KyUJOL1OXfgR6EcUQ0SBkJo+E3FBF8je40oceGNVEF+gQ2Sb7NAYDsJGa/e2uEYKn6zPrmBoZLNiLuJdMeqWwxgFSlsGseo3z3JGqcipRYBWe3rsXpsEkHQPdnNx1sMjYqXM6UH1lrELymMTB0UnZh+iI= Received: from MW3PR11MB4602.namprd11.prod.outlook.com (2603:10b6:303:52::19) by MWHPR1101MB2111.namprd11.prod.outlook.com (2603:10b6:301:4d::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4690.26; Wed, 17 Nov 2021 20:07:12 +0000 Received: from MW3PR11MB4602.namprd11.prod.outlook.com ([fe80::4f9:ec4:ba79:1cfa]) by MW3PR11MB4602.namprd11.prod.outlook.com ([fe80::4f9:ec4:ba79:1cfa%6]) with mapi id 15.20.4690.027; Wed, 17 Nov 2021 20:07:12 +0000 From: "Karlsson, Magnus" To: Jesper Dangaard Brouer , "Desouza, Ederson" Thread-Topic: [xdp-hints] XDP-hints via local BTF info Thread-Index: AQHX29qouOmvMVN7OE6fZtTMaemsgawIFIbA Date: Wed, 17 Nov 2021 20:07:12 +0000 Message-ID: References: In-Reply-To: Accept-Language: sv-SE, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-titus-metadata-40: eyJDYXRlZ29yeUxhYmVscyI6IiIsIk1ldGFkYXRhIjp7Im5zIjoiaHR0cDpcL1wvd3d3LnRpdHVzLmNvbVwvbnNcL0ludGVsMyIsImlkIjoiZDM2MjkzYTEtZTYyZS00MDc5LWE1MjMtM2E1OTlkMTA3NTM1IiwicHJvcHMiOlt7Im4iOiJDVFBDbGFzc2lmaWNhdGlvbiIsInZhbHMiOlt7InZhbHVlIjoiQ1RQX05UIn1dfV19LCJTdWJqZWN0TGFiZWxzIjpbXSwiVE1DVmVyc2lvbiI6IjE3LjEwLjE4MDQuNDkiLCJUcnVzdGVkTGFiZWxIYXNoIjoicE9BMTM5dWhKUkhzVjYySzBTSmVzemo5NVVaUlwvaXZZbm5zZXRhRlE5dW5xcnhyYmVnXC9QK1JCSWRFbnlydTA3In0= dlp-product: dlpe-windows dlp-reaction: no-action dlp-version: 11.6.200.16 x-ctpclassification: CTP_NT authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=intel.com; x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: f2b2a29a-3140-4783-eced-08d9aa05d83c x-ms-traffictypediagnostic: MWHPR1101MB2111: x-ld-processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:10000; x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: xSjg+pTsKBzVB8Nz51jyLXi/Z1srlHLnuzAyo73EwiBs2kVt5VWmVJWN82W3pQ+Ak/kIduThxoMai+N9lpdWDRu6BQnMsEyn0xNmTvMHIuIDJDqkAFgAlLlv4+XvGE+LprXVoJPbxHugINrenvMVjiMsJ+57zOKHxaSBl0fklGRRmv+V4PdWUfOUk6FiR9R6bRRr2u3wJqRFfpzo3Jz+JyhV4mxQvNE/VTqFhfvJz5b0aXQStoGK0LHk9M474Ai8rC46UpW8swHf8b5EA04djX4rT1AfZ+WEmLNrk6DgzzfEzqHPnQUU6yAJvAaPeIcJW/vvqFrSDeubwO1Tcw+fbM41gVNLPmTVRsGoZvsQbGzT+67URqcOXbCYd4kADbFeMMgXCaBueJSKP4O3swDtYY0FqJ0zxxlhb8maV0BOb6goTRmkzuAxQRGMsRLiWPLCmrGwt7gX37kqkVgArPvhBwjCnElbdDtGMyvxtItxMqZDM+q4pSiLD6LuZgMcHheQ1wmZuXnJ3GPOjzdPJkgr0Lbhy7/tvdDQsxvPtHHrLvE0jBAFDUcE8BQvq293ORR1ULgSz8mp4aaZneVIaH7Vy7Pce4Qt1HarP3IwDdbajtoF+sDbVyHo4gX/KvhQq0hj4Lcd0uhMcSgZqWyChNUJpDuWRO4te0vKK3X+z+hPZFuJtK4EbmRUw4icMvhXPHx8A700MOd+R2iCZM3JlXTQIOKyhOCV5GER4Rt/xsde93o7NXwzujg6UZ43g8lbh2/24Ydzsh00u31qfMHImFx74kCNC9bDEhnyDKVQ1l2TE4lQn99RVmo2AxxA4qlX6mUIU0y6sKLxFEA05uskFSc2BA== x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MW3PR11MB4602.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(366004)(966005)(110136005)(86362001)(38070700005)(76116006)(6636002)(7696005)(55016002)(66446008)(316002)(82960400001)(66946007)(64756008)(66556008)(66476007)(122000001)(52536014)(33656002)(38100700002)(508600001)(26005)(8676002)(4326008)(83380400001)(5660300002)(54906003)(6506007)(71200400001)(9686003)(8936002)(2906002)(186003)(107886003)(53546011);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?MkFQbzVXMjg1eW40WU9mTlZsNTFRNTRJV09peXpabm5NdTRBTC8yaEhGZnVU?= =?utf-8?B?R1RJRXc2c29kTDdISmZsS1hhZU5kd3RPTjZYSVBySm9tVmhiUVEwVjFIdGtP?= =?utf-8?B?OUNVQ1RqRDJjWmZFSUllVERudmxKcU55ZHk3R0MrSGVFb09kUnZiVGI0U05w?= =?utf-8?B?UU00SE91SjFFSEs4aVc5RWwyS2FOYlpDUlJTZEhPOWE0RTJ4dDJ0c2hDZHVh?= =?utf-8?B?NXVOY0svOTJnZmRaOFZXalQvbm5sb3FmYnRQV2lwaStDVlFleExPWHFYY09V?= =?utf-8?B?UWFZYW9GZE5FR0U2OVdvVUhIMkVhMHBnMlJPTEZvMlc5RUZFcXBYdTlRcEFu?= =?utf-8?B?MWxkSWlIVmd5RnlZZ0NVejFPdCs3K2hVY1A4OWFaenh0UXZ5eTVpNFdrUkdV?= =?utf-8?B?TDZERHVSN3R3cndVNUdIaXBGczE0Q2pSMVFWZmhoOVAzRDR5QXAxZno4UWxS?= =?utf-8?B?V3VQMTdGYmZRNjR3Y1BCT0ZBZSszaEU3bDZCeHgrS1dlbWdxd1JZa1BLOGlM?= =?utf-8?B?OVZvMmpOeUhqS3NpVFF0MmVqK2pWUzZYblFlcjhEYTdkNTNwT2UxT0lWK0lh?= =?utf-8?B?RkxkekYwRUF2MGx5N290MzRKVGMxK2hYMDVjenFBNC9WSWd5WXR4bUdCZ3VU?= =?utf-8?B?R25QSWtDZHNGdVNhTUtjVHFkaG9ReWtPNU9zSDV1clNRbDRmY1FLYWFBeTNi?= =?utf-8?B?ZDJtdWlxamxtb1dKSGZGQ0dWRjU2aU9jVWNNK1p2Qi9WN2pod1p3d0RyQXVr?= =?utf-8?B?eTBYNHVRTHVmVGpIemVaQmdXY2YwNm55bTVRZ3NxOU0xK0tqZ2ZBYXdlTjJm?= =?utf-8?B?VHdiakxBRlRpZXJKS1NCZU16cEszTXIvZnpISDYyYVNvMFg1TXg3eXBHMFhh?= =?utf-8?B?S3p1a0xMY1g5clRGSnRYbDNVY3JaWVFQMk5aUzBYdFAwWnA2YmxQT0ZET09K?= =?utf-8?B?RlpmYWlwUk5IMTFNWEVCWVZuS0lmQll5eVJYaTB6M1V1R1pXSmJWdkh2U0dn?= =?utf-8?B?NTN3cDQ4ZURvZlZrZnRXSVplbXdIRGdZTEM3b1hhWGJmMmg2ei9FcUIvWFJQ?= =?utf-8?B?SGl3N3l1NllodGlESEF2Z3lYdDJqSitnbmF0eE1zZTZFUGZNaDJ3WndXNDYr?= =?utf-8?B?eEQ1NDZCT216djJLVTM2NlJUbUR1WVhEdldrdHdlTlBPUzQ1UFhqT3pJVmdv?= =?utf-8?B?YTQ3d25GZVdSdWxFeHc4VzZoaElyU1E4UEZNWXFKTVVYbG1oNVR1bk8vV0ZN?= =?utf-8?B?Nk9oYjRpbnRkVTZIeHZxeWVMcWtyeFJkU3BTVE1PYklTOXdIR1FsckpTNUtq?= =?utf-8?B?SXRKZVJWcDlJeHBLRXIzUGg4bnoyQmxZVFRsOE5ubGhRTld4Z3o1UGF0eGhI?= =?utf-8?B?TVVpdDBKMy9lbHFDQTB0b2RPTzdvL2pGSzY4MG1EWGRheWJ6cVRLcmhmVnpn?= =?utf-8?B?U3VOV21GeFlkengrZU9KNTFsajVBU0xwb3dCQ0dBWHdHNjVkY2U2cEgyN2VS?= =?utf-8?B?M2VXQ2NrN2RsVDgySWJoYURiZGJLV2JPNE1tQ1djcmpONDlTR0VUZVlKZkxa?= =?utf-8?B?K2lxVUZXbGE3anNjWk5nQjV0bGxZT1d6anRoS2ZYcW5TMnBxOE8wOVVwbXR0?= =?utf-8?B?L05EVnRtb1pQblI1RElKeVh5c2pJS1NCdmU2NktJLzg5bi96WEZ2U2F5L1Bs?= =?utf-8?B?Mlo3YnQxc0dUR0s2bFl4WW56bllFT3J4NGRFVFdyWDlWUStncW1QYTBhQXhn?= =?utf-8?B?aUdUZWhNLzBJV0pWcElUenBZQWJEdGJsM2ZxSEFjVmpFdDFuSTVoS3JzQU1l?= =?utf-8?B?REZ1QnVmaFBadVNwajF6eDZiZEJudG4wdTlkNGZLQVROSmNnQ2prakJLaWZO?= =?utf-8?B?MCsrWnYrMG8yNlBBSnprVHE3aTU1R0JaY2FHemxzSVBPR2Q1OHd6RTl2djIx?= =?utf-8?B?RC9nWUlsdHNlUnJuN1J2RC9HMFRUR290ZHFrTVcwS21FMFg5MXNtRTRFMis5?= =?utf-8?B?SlRkYTh0R1FwNXc0bjJxaVZCbXJZcTBic0dsVW80aXYrem1PdnR6MkNWVGtx?= =?utf-8?B?eFoxRnUwcDZpQlpRVTRVZU9nUGxVUllzd0t5N010eUhnUE83LzllWHREVDQz?= =?utf-8?B?WVIvZUh3RDlwNlcyVVh3YzFBbHoyb1U4OVBBb1BVbHNiNG5jUHNVbkFnM3Bh?= =?utf-8?B?eUxTS05TemdUSC8vMm1sZkpCR1NTZHRBZCs4czVtWk8wUThtd2lqaEpDbnBt?= =?utf-8?B?Q3VjN3JjL0IzdnJFS1NWeHVkcWtBPT0=?= 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: MW3PR11MB4602.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: f2b2a29a-3140-4783-eced-08d9aa05d83c X-MS-Exchange-CrossTenant-originalarrivaltime: 17 Nov 2021 20:07:12.7711 (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: iqgrKjfhT3U+OONjEGWtRxCuJDAwYCg0g9BIvDzaJEmvYDRF/kLmKgdvrc231WI0++flW1OvZxOSLbhSu9p4f1MtNaecv2Ldv4gEQkv7DV4= X-MS-Exchange-Transport-CrossTenantHeadersStamped: MWHPR1101MB2111 X-OriginatorOrg: intel.com Message-ID-Hash: N7ZCPRG2VA5M36T3GEHCHHY53RZ6V354 X-Message-ID-Hash: N7ZCPRG2VA5M36T3GEHCHHY53RZ6V354 X-MailFrom: magnus.karlsson@intel.com X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header CC: "brouer@redhat.com" , "xdp-hints@xdp-project.net" , Eelco Chaudron , Andrii Nakryiko , "Fijalkowski, Maciej" , "Burakov, Anatoly" X-Mailman-Version: 3.3.4 Precedence: list Subject: [xdp-hints] Re: XDP-hints via local BTF info List-Id: XDP hardware hints design discussion Archived-At: List-Archive: List-Help: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: DQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogSmVzcGVyIERhbmdhYXJk IEJyb3VlciA8amJyb3VlckByZWRoYXQuY29tPg0KPiBTZW50OiBXZWRuZXNkYXksIE5vdmVtYmVy IDE3LCAyMDIxIDY6MjMgUE0NCj4gVG86IERlc291emEsIEVkZXJzb24gPGVkZXJzb24uZGVzb3V6 YUBpbnRlbC5jb20+DQo+IENjOiBicm91ZXJAcmVkaGF0LmNvbTsgeGRwLWhpbnRzQHhkcC1wcm9q ZWN0Lm5ldDsgRWVsY28gQ2hhdWRyb24NCj4gPGVjaGF1ZHJvQHJlZGhhdC5jb20+OyBBbmRyaWkg TmFrcnlpa28gPGFuZHJpaUBrZXJuZWwub3JnPg0KPiBTdWJqZWN0OiBbeGRwLWhpbnRzXSBYRFAt aGludHMgdmlhIGxvY2FsIEJURiBpbmZvDQo+IA0KPiBIaSBFZGVyc29uIGFuZCBvdGhlcnMsDQo+ IA0KPiBJJ3ZlIGNvZGVkIHVwIGFuIFhEUCArIEFGX1hEUCBhcHBsaWNhdGlvblsxXSB0aGF0IGNy ZWF0ZXMgYW5kIHNoYXJlcyBYRFAtDQo+IGhpbnRzIHZpYSBCVEYgZnJvbSBYRFAtcHJvZyB0byBB Rl9YRFAuDQo+IA0KPiBBcyBleHBsYWluZWQgaW4gUkVBRE1FWzJdIGZpbGUsIEFQSSBmb3IgZGVj b2RpbmcgdGhlIEJURiBkYXRhLXN0cnVjdHVyZXMgaW4NCj4gdXNlcnNwYWNlIGhhdmUgYmVlbiBw bGFjZWQgaW50byBzZXBhcmF0ZSBmaWxlcyBsaWJfeHNrX2V4dGVuZC5jIGFuZA0KPiBsaWJfeHNr X2V4dGVuZC5oLg0KPiBUaGUgQVBJIGlzIGJhc2VkIG9uIHdoYXQgRWRlcnNvbiBwcm9wb3NlZFsz XSwgYnV0IEkgaGF2ZSBoZWF2aWx5IG1vZGlmaWVkDQo+IHRoZSBBUEkgd2hpbGUgdXNpbmcgaXQg aW4gdGhlIEFGX1hEUCBhcHAuICBJJ3ZlIGtlcHQgdGhlIGhhc2htYXAgb3B0aW1pemF0aW9uDQo+ IGZvciBub3csIGJ1dCBlbmRlZC11cCBub3QgdXNpbmcgaXQuLi4gc28gSSB3aWxsIHByb3Bvc2Ug cmVtb3ZpbmcgaXQoPykuDQo+IE15IGhvcGUgaXMgd2UgY2FuIGRpc2N1c3MgYW5kIG1hdHVyZSB0 aGUgQVBJIHRvZ2V0aGVyLCBiZWZvcmUgcHJvcG9zaW5nDQo+IHRoZSBBUEkgdG8gYmUgaW5jbHVk ZWQgaW4gZWl0aGVyIGxpYmJwZiBvciBsaWJ4ZHAuDQo+IA0KPiBOb3RpY2Ugbm8ga2VybmVsIGNo YW5nZXMgcmVxdWlyZWQuICBFdmVyeXRoaW5nIHdvcmtzIHRvZGF5IHdpdGggd2hhdCBCVEYNCj4g aW5mbyBhcmUgcHJvdmlkZWQgaW4gdGhlIEJQRiBFTEYtb2JqZWN0IGZpbGUuDQo+IExhdGVyLCB3 ZSB3YW50IHRvIGV4dGVuZCB0aGUgTklDIGRyaXZlcnMgd2l0aCB0aGUgc2FtZSBraW5kIG9mIEJU RiBpbmZvIHRoYXQNCj4gZGVzY3JpYmUgdGhlIG1ldGFkYXRhIGFyZWEgKG91ciBYRFAtaGludHMp LiAgRm9yIG5vdywgQUZfWERQIHVzZXJzcGFjZSB3aWxsDQo+IGluc3RlYWQgZ2V0IHRoZSBCVEYt aW5mbyBmcm9tIGRlY29kaW5nIHRoZSBFTEYtb2JqZWN0IGZpbGUuICBUaHVzLCBmb3Igbm93IHRo ZQ0KPiBYRFAgQlBGLXByb2cgd2lsbCBiZSB0aGUgY3JlYXRvci9wcm92aWRlciBvZiB0aGUgWERQ LWhpbnRzIGxheW91dC4NCj4gDQo+IFRoZSByZXF1aXJlbWVudCBmb3IgYmVpbmcgYSB2YWxpZCBY RFAtaGludHMgZGF0YS1zdHJ1Y3QgaXMgdGhhdCB0aGUgbGFzdA0KPiBtZW1iZXIgaW4gdGhlIHN0 cnVjdCBpcyBuYW1lZCAiYnRmX2lkIiBhbmQgaGF2ZSBzaXplIDQgYnl0ZXMgKDMyLWJpdCkuDQo+ IFdpdGggQlRGIHRoZSBzdHJ1Y3QgInN0cmluZyIgbmFtZXMgYW5kIG1lbWJlciBuYW1lcyBiZWNv bWVzIGltcG9ydGFudCwNCj4gYW5kIGlzIHNvbWV0aGluZyB0aGF0IHVzZXJzcGFjZSB3aWxsIGJl ICJzZWFyY2hpbmciIGZvciwgdG8gZXN0YWJsaXNoIGlmIGENCj4gZHJpdmVyL0JQRi1wcm9nIHBy b3ZpZGUgYSBzcGVjaWZpYyBYRFAtaGludHMgZGF0YSBzdHJ1Y3R1cmUuDQo+IFRoZXJlIGlzIG5v IHJlc3RyaWN0aW9uIG9uIHdoYXQgdGhlIFhEUC1oaW50cyBzdHJ1Y3Qgc2hvdWxkIGJlIG5hbWVk LCBidXQgd2UNCj4gbWlnaHQgd2FudCBzb21lIGNvbnZlcnNpb25zIHdoZW4gYWRkZWQgdGhpcyB0 byB0aGUga2VybmVsIGRyaXZlcnMuDQo+IA0KPiBPcGVuIHRvIGZlZWRiYWNrLA0KPiAtSmVzcGVy DQoNClRoYW5rcyBKZXNwZXIgZm9yIGFsbCBvZiB0aGlzISBHb29kIHRvIHNlZSBzb21lIGNvbmNy ZXRlIGNvZGUuIFdpbGwgZ28gdGhyb3VnaCBpdCBpbiBkZXRhaWwgaW4gdGhlIGNvbWluZyBkYXlz Lg0KDQpPbmUgdGhpbmcgdGhvdWdoIHRoYXQgd29ycmllcyBtZSB3aXRoIGFsbCB0aGUgYXBwcm9h Y2hlcyBzbyBmYXIgaXMgdGhhdCB0aGV5IGFyZSBrZXJuZWwtY2VudHJpYyBpbiB0aGUgd2F5IHRo YXQgaXQgaXMgdGhlIGtlcm5lbCB0aGF0IGRlY2lkZXMgd2VyZSB0byBwdXQgdGhpbmdzIGFuZCBp biBzb21lIHByb3Bvc2FscyB3aGF0IHRvIHB1dCB0aGVyZS4gSSB3b3VsZCBsaWtlIHRvIHR1cm4g dGhpcyBhcm91bmQgYW5kIHByb2R1Y2UgYSBzY2hlbWUgdGhhdCBpcyB1c2VyLXNwYWNlIGNlbnRy aWMgaS5lLiwgdGhlIGFwcGxpY2F0aW9uIGRlY2lkZXMgd2hhdCBpdCBuZWVkcyBhbmQgd2hlcmUg aXQgd2FudHMgaXQsIGJlY2F1c2UgaXQgb25seSBrbm93cyB0aGlzLCBub3QgdGhlIGtlcm5lbC4g WW91ciBwcm9wb3NhbCBoYXMgc29tZSBvZiB0aGVzZSBwcm9wZXJ0aWVzIChmcm9tIG15IGJyaWVm IGdsYW5jaW5nIG92ZXIgaXQpLCBidXQgbm90IGFsbC4gDQoNClRvZ2V0aGVyIHdpdGggTWFjaWVq IGFuZCBBbmF0b2x5LCBJIGhhdmUgYmVlbiB0b3lpbmcgd2l0aCBob3cgdG8gYWNjb21wbGlzaCB0 aGlzLCBidXQgaXQgaXMgZWFybHkgZGF5cyBzbyB3YXJuaW5nIGZvciBzb21lIHNlcmlvdXMgaGFu ZHdhdmluZy4gV2lsbCBwcm9kdWNlIHNvbWUgY29kZSB0byBzZWUgaWYgaXQgaXMgcG9zc2libGUg YXQgYWxsLiBPbmUgZHJhd2JhY2sgd2l0aCBoYXZpbmcgaXQgY29tcGxldGVseSBmbGV4aWJsZSBh bmQgbGV0dGluZyB1c2VyLXNwYWNlIGRlY2lkZSBpcyB0aGUgY29tcGxleGl0eSBpbXBsZW1lbnRp bmcgdGhpcyBpbiB0aGUgZHJpdmVyL2tlcm5lbC4gQnV0IGlzIHRoaXMgbm90IHdoeSB3ZSBoYXZl IGVCUEYgZm9yIGluIHRoZSBmaXJzdCBwbGFjZT8gTWF5YmUgaXQgY2FuIGNvbWUgdG8gdGhlIHJl c2N1ZSBoZXJlLg0KDQpTbyB0aGUgaGlnaCBsZXZlbCBpZGVhIGlzIHRoZSBmb2xsb3dpbmc6DQoN ClVzZXItc3BhY2UgbG9hZCBhbiBYRFAgcHJvZ3JhbS4gSXQgY2FuIGxvb2sgc29tZXRoaW5nIGxp a2UgdGhpcyBza2lwcGluZyBhIGxvdCBvZiBzdHVmZiwgYnV0IGhvcGVmdWxseSB1bmRlcnN0YW5k YWJsZSBhbnl3YXk6DQoNCmludCBteV94ZHBfcHJvZyhzdHJ1Y3QgeGRwX2J1ZmYgKmN0eCkNCnsN CiAgICAvKiBJZiBwYXNzaW5nIHNvbWV0aGluZyB0byBBRl9YRFAgKi8NCiAgICBtZXRhLT5yeF90 aW1lc3RhbXAgPSBicGZfeGRwX2dldF9tZXRhZGF0YShSWF9USU1FU1RBTVApOw0KDQogICAvKiBJ ZiBqdXN0IHVzaW5nIGluIHRoZSBYRFAgcHJvZ3JhbSwgdGhlcmUgaXMgbm8gbmVlZCB0byBzdG9y ZSB0aGlzIGluIHRoZSBtZXRhZGF0YSBhcmVhIHRodXMgc2F2aW5nIG9uZSB3aG9sZSBjYWNoZSBt aXNzISAqLw0KICAgbXlfbG9jYWxfdmFyICA9IGJwZl94ZHBfZ2V0X21ldGFkYXRhKFZMQU5fSUQp Ow0KDQogICB1c2UgbXlfbG9jYWxfdmFyIGluIHNvbWUgd2F5Ow0KDQogICByZXR1cm4gU09NRVRI SU5HOw0KfQ0KDQpUaGUga2V5IGZlYXR1cmUgaGVyZSBpcyB0aGF0IGJwZl94ZHBfZ2V0X21ldGFk YXRhKCkgd2lsbCBhY3R1YWxseSBnbyBhbmQgZmV0Y2ggdGhpcyBmcm9tIHRoZSBIVywgYnkgY2Fs bGluZyBhIHNtYWxsIGNhbGxiYWNrIGZ1bmN0aW9uIGluIHRoZSBkcml2ZXIgdGhhdCByZWFkcyBm b3IgZXhhbXBsZSByeF90aW1lc3RhbXAgZnJvbSB0aGUgSFcgYW5kIHJldHVybnMgaXQgdG8gdGhl IFhEUCBwcm9ncmFtLiBUaGlzIGlzIGNsZWFybHkgbm90IHBvc3NpYmxlIHRvZGF5IGFuZCB3b3Vs ZCByZXF1aXJlIG5ldyBwbHVtYmluZywgaWYgaXQgaXMgZXZlbiBwb3NzaWJsZSB0byBpbXBsZW1l bnQgdGhpcy4gQnV0IGxldCB1cyBsZWF2ZSBhc2lkZSB0aGUgaW1wbGVtZW50YXRpb24gZm9yIG5v dyBhbmQganVzdCBmb2N1cyBvbiB0aGUgYmVuZWZpdCB0aGlzIChvciBzb21ldGhpbmcgbGlrZSBp dCkgY291bGQgcHJvdmlkZSBjb21wYXJlZCB0byBhIGtlcm5lbC1jZW50cmljIGFwcHJvYWNoLg0K DQoqIFVzZXItc3BhY2UgY2FuIGNvbXBsZXRlbHkgY29udHJvbCB3aGVyZSB0byBwdXQgZGF0YSBh bmQgd2hhdCBpdCBwdXRzIHRoZXJlLiBUaGluayBvZiBwcm9kdWNpbmcgdGhlIHN0cnVjdHVyZSB5 b3Ugd2FudCBpbiB1c2VyIHNwYWNlIGRpcmVjdGx5IHdpdGhvdXQgaGF2aW5nIHRvIGNvcHkgdGhp bmdzIGFyb3VuZC4gWW91IGNvdWxkIGZvciBleGFtcGxlIHByb2R1Y2UgYSBEUERLIG1idWYsIG9y IHRoZSBWUFAsIFN1cmlrYXRhIGVxdWl2YWxlbnQgZGlyZWN0bHkuIFdvdWxkIHNhdmUgYSBsb3Qg b2YgY3ljbGVzLg0KDQoqIE5vIG5lZWQgZm9yIGEgbWV0YWRhdGEgZW5hYmxlbWVudCBpbnRlcmZh Y2UuIGVCUEYgY291bGQgZmluZCB0aGlzIG91dCBieSBqdXN0IHBhcnNpbmcgdGhlIFhEUCBwcm9n cmFtIGFuZCBlbmFibGUgdGhlIHVzZWQgbWV0YWRhdGEgZmVhdHVyZXMgaW4gdGhlIEhXIGJ5IGNh bGxpbmcgZW5hYmxlL2Rpc2FibGUgbWV0YWRhdGEgZnVuY3Rpb25zIGluIHRoZSBkcml2ZXIuDQoN CiogTm8gcmVhc29uIHRvIGV4cG9zZSBCVEZzIHRvIHVzZXItc3BhY2UuIE1ha2VzIGl0IGEgbG90 IHNpbXBsZXIuIEFjdHVhbGx5LCBubyBuZWVkIHRvIHVzZSB0aGVtIGluIHRoZSBkcml2ZXIgZWl0 aGVyLg0KDQoqIFdlIGRvIG5vdCBoYXZlIHRvIHVzZSB0aGUgbWV0YWRhdGEgYXJlYSB1bmxlc3Mg aXQgaXMgYWN0dWFsbHkgbmVlZGVkLiBJbiB0aGUgY2FzZSBvZiBBRl9YRFAsIHdlIGhhdmUgdG8g d3JpdGUgaXQgdGhlcmUsIGJ1dCBsb2NhbCB1c2UgaW4gWERQIGRvZXMgbm90LiBZb3Ugd291bGQg c2F2ZSBvbmUgY2FjaGUgbWlzcyBwZXIgcGFja2V0IHJpZ2h0IHRoZXJlLg0KDQoqIFdlIGdldCBh d2F5IGZyb20gbm9uLXNjYWxhYmxlIGRyaXZlciBpbXBsZW1lbnRhdGlvbnMgc3VjaCBhczoNCg0K SWYgKG1ldGFkYXRhX2FfZW5hYmxlZCkNCiAgICBtZXRhLT5hID0gUmVhZF9tZXRhZGF0YV9hKCk7 DQpJZiAobWV0YWRhdGFfYl9lbmFibGVkKQ0KICAgIG1ldGEtPmIgPSBSZWFkX21ldGFkYXRhX2Io KTsNCklmIChtZXRhZGF0YV9jX2VuYWJsZWQpDQogICAgbWV0YS0+YyA9IFJlYWRfbWV0YWRhdGFf YygpOw0KIGFuZCBzbyBvbiBmb3IgbWFueSBlbnRyaWVzLi4uLi4NCg0KT3IgZXZlbiB3b3JzZToN CiAgICBtZXRhLT5hID0gUmVhZF9tZXRhZGF0YV9iKCk7DQogICAgbWV0YS0+YiA9IFJlYWRfbWV0 YWRhdGFfYSgpOw0KICAgIG1ldGEtPmMgPSBSZWFkX21ldGFkYXRhX2MoKTsNCiAgICBhbmQgc28g b24uLi4uDQoNClRoZSBsYXN0IG9uZSB3b3VsZCBraWxsIHBlcmZvcm1hbmNlIGFueSBkYXkuIEV2 ZW4gdGhlIGZpcnN0IG9uZSBpcyBzaHVubmVkIGluIERQREsgZm9yIHBlcmZvcm1hbmNlIHJlYXNv bnMuDQoNCk5vdGUgdGhhdCBpbiBteSBwcm9wb3NhbCBhYm92ZSwgcmVhZF9tZXRhZGF0YV9hKCkg aXMgYSBmdW5jdGlvbiB0aGF0IHdpbGwgYmUgY2FsbGVkIGZyb20gdGhlIFhEUCBwcm9ncmFtIHdo ZW4gbmVlZGVkIGFuZCBvbmx5IHRoZW4sIG5vdCBmcm9tIHRoZSBkcml2ZXIsIHNvIGRyaXZlciBj b2RlIGJlY29tZXMgdW5jbHV0dGVyZWQgYnkgdGhlc2UgbGFyZ2UgaWYgc3RhdGVtZW50cy4NCg0K KiBXZSBhbHNvIGdldCBhd2F5IGZyb20gdGhlIHByb2JsZW0gdGhhdCB0aGUgQlRGIGlkIGNhbiBj aGFuZ2UgZnJvbSB1bmRlcm5lYXRoIHRoZSBBRl9YRFAgYXBwbGljYXRpb24uIFRoaXMgYmVjb21l cyBlc3BlY2lhbGx5IHByb2JsZW1hdGljIHdoZW4gd2Ugd291bGQgbGlrZSB0byBhcHBseSB0aGlz IHRvIHRoZSBUeCBwYXRoIGFuZCBkbyBvZmZsb2Fkcy4gDQoNCkZvciBkcmF3YmFja3M6DQoNCiog TWlnaHQganVzdCBiZSBhIHBpcGUgZHJlYW0gc2luY2UgdGhlcmUgaXMgbm8gY29kZSDwn5iKLiBC dXQgZXZlbiBzbywgbWF5YmUgdGhlcmUgaXMgc29tZSBzaW1wbGVyIGFuZCBwb3NzaWJsZSB3YXkg dG8gcmVhbGl6ZSB0aGlzIHRoYW4gdGhpcyBwcm9wb3NhbD8gUGxlYXNlIGNvbWUgd2l0aCBpZGVh cy4gSXQganVzdCBmZWVscyB0aGF0IGVCUEYgaXMgdGhlIGtleSB0byBjb25maWd1cmFiaWxpdHkg YW5kIGEgZ29vZCB3YXkgZm9yd2FyZC4NCg0KKiBXaWxsIHRoZSBwZXJmb3JtYW5jZSBhY3R1YWxs eSBiZSBiZXR0ZXI/DQoNCiogQW5kIGEgbG90IG9mIG90aGVyIHRoaW5ncyB0aGF0IHlvdSBjYW4g dGVsbCBtZSBhYm91dC4NCg0KSSB3aWxsIHdyaXRlIGRvd24gdGhlIGltcGxlbWVudGF0aW9uIGlk ZWEgaW4gYW5vdGhlciBtYWlsIGFuZCBob3BlZnVsbHkgYmUgYWJsZSB0byBwcm9kdWNlIHNvbWUg Y29kZS4gVGhlIGVhcmxpZXIgd2UgY2FuIHRocm93IHNvbWV0aGluZyBpbiB0aGUgZ2FyYmFnZSBi aW4sIHRoZSBiZXR0ZXIuDQoNCkFueXdheXMsIGdvb2Qgc3R1ZmYgSmVzcGVyLiBXaWxsIGdvIHRo cm91Z2ggaXQgaW4gZGV0YWlsLg0KDQo+IA0KPiAgIFsxXQ0KPiBodHRwczovL2dpdGh1Yi5jb20v eGRwLXByb2plY3QvYnBmLWV4YW1wbGVzL3RyZWUvbWFzdGVyL0FGX1hEUC0NCj4gaW50ZXJhY3Rp b24NCj4gDQo+ICAgWzJdDQo+IGh0dHBzOi8vZ2l0aHViLmNvbS94ZHAtcHJvamVjdC9icGYtZXhh bXBsZXMvYmxvYi9tYXN0ZXIvQUZfWERQLQ0KPiBpbnRlcmFjdGlvbi9SRUFETUUub3JnI3hkcC1o aW50cy12aWEtbG9jYWwtYnRmLWluZm8NCj4gDQo+ICAgWzNdDQo+IGh0dHBzOi8vbG9yZS5rZXJu ZWwub3JnL2JwZi8yMDIxMDgwMzAxMDMzMS4zOTQ1My0xNS0NCj4gZWRlcnNvbi5kZXNvdXphQGlu dGVsLmNvbS8NCg0K