Received: by 2002:ab2:5c0e:0:b0:1ef:a325:1205 with SMTP id i14csp239041lqk; Thu, 14 Mar 2024 01:24:57 -0700 (PDT) X-Forwarded-Encrypted: i=3; AJvYcCUpz+dAlGGXUAElrd8EH9fffEnsj/Na2U7xSHmH7c3BpOf/fokE9qe1cZXjpRHZIPDUP6b48xeEHqKHK49nUOM1SXeXwwv5op8Nq0tD6A== X-Google-Smtp-Source: AGHT+IHSl9Qf4eAAYR9Xeye3u6ShpQrjkoqXhQgHRzFYkF3wpwWBeGDgluMGiRTNj7uxjGjYKC53 X-Received: by 2002:a17:90b:230d:b0:29c:6001:eb7a with SMTP id mt13-20020a17090b230d00b0029c6001eb7amr973210pjb.1.1710404696840; Thu, 14 Mar 2024 01:24:56 -0700 (PDT) Return-Path: Received: from sv.mirrors.kernel.org (sv.mirrors.kernel.org. [2604:1380:45e3:2400::1]) by mx.google.com with ESMTPS id y16-20020a17090aca9000b0029c7692a095si174580pjt.120.2024.03.14.01.24.56 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 14 Mar 2024 01:24:56 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel+bounces-102969-linux.lists.archive=gmail.com@vger.kernel.org designates 2604:1380:45e3:2400::1 as permitted sender) client-ip=2604:1380:45e3:2400::1; Authentication-Results: mx.google.com; dkim=pass header.i=@amd.com header.s=selector1 header.b=dm9GTlFd; arc=fail (signature failed); spf=pass (google.com: domain of linux-kernel+bounces-102969-linux.lists.archive=gmail.com@vger.kernel.org designates 2604:1380:45e3:2400::1 as permitted sender) smtp.mailfrom="linux-kernel+bounces-102969-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=amd.com Received: from smtp.subspace.kernel.org (wormhole.subspace.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by sv.mirrors.kernel.org (Postfix) with ESMTPS id 7927D286592 for ; Thu, 14 Mar 2024 08:24:56 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id CA5C55D744; Thu, 14 Mar 2024 08:24:49 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=amd.com header.i=@amd.com header.b="dm9GTlFd" Received: from NAM12-MW2-obe.outbound.protection.outlook.com (mail-mw2nam12on2045.outbound.protection.outlook.com [40.107.244.45]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 3B0A946A2; Thu, 14 Mar 2024 08:24:45 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=40.107.244.45 ARC-Seal:i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1710404688; cv=fail; b=qm892sccQXJVbapizUpVmtDnPbyvDoQ12u2HsXIs4GOBE7/mn51G8IBzCEytM9SBE2MdNRd/11KkwZ36nUBYGh8gd7QtR9UFrgGiEFv31+JFvQVqJP7wR87hFX0jX4SoJRAwKt/xBVu8BDHGPW57XsRBa+LHU/UqHam2hljmrGY= ARC-Message-Signature:i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1710404688; c=relaxed/simple; bh=cqzwCYo0KoP2kCBniiiGZXl54UjMCflfbzKImyazTCE=; h=From:To:CC:Subject:Date:Message-ID:References:In-Reply-To: Content-Type:MIME-Version; b=uBGnU9XGyIXA+6pRbjK0/HW4xMiQ8293AzdmgDK95vXI5jgyFdh4ElB+9Uw8o+zB/rV/8ElVUwW1dxFRn060oPacvRlkaqHwVFWAqQPwbyUvYBuMIJNvFwRKZALtfPP5zAI1nPxq1PzWN2pwv9d+89RgTDlyHDGZnSNm0m5TgYI= ARC-Authentication-Results:i=2; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=amd.com; spf=fail smtp.mailfrom=amd.com; dkim=pass (1024-bit key) header.d=amd.com header.i=@amd.com header.b=dm9GTlFd; arc=fail smtp.client-ip=40.107.244.45 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=amd.com Authentication-Results: smtp.subspace.kernel.org; spf=fail smtp.mailfrom=amd.com ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=D8B3N3EWRi8m8l0xduHuE/ZwaAAAequLlB4R3NfahQ4eTeRfppdwp5PIu9Y+DPX5pjlNQpf8kbNBCw611jhJX+RKSeelygf6+qc496G8DGKrc5sVfcqbwfIOebviJceoiuvpNxKhEnIuSI0kjQzsLSJ7roxOxlGcPs0vLWwTJZ13xgO5LwsUoao9snNMjqiZKpf3gMnjzIGMtPOCxzdyNPmfWqYrcwpOpEO4d5Yjc7n3sOopcPerQ6iWZbApDdELOOBnPHmpd0DVwiFMVtcxa+j5/wtIH8kAmt88Jho+b76GBvUpQ8loIlyDT50oHGk4sAeul0CdQikarpBB6H4Zlg== 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=cqzwCYo0KoP2kCBniiiGZXl54UjMCflfbzKImyazTCE=; b=bAnQyu142WzQ70JtrEPZF6WYw1mVM2p/KTJ04uYiiUGPK25zVt7OxnDhzG0JXtm4zb2ESfjPClc7hJlqwmq+XEkiLqZcFxNnxSAKFXndEcIouQANDLbzs0WYhwxA/UoRXMQaHTsoic2vu6hnaRe0R+5lSZ0bwZvZko0WhC3cm80CIqhPTocT/jGIK486hRp9DVuggQh3YyrscWqF1/JcF+glHellcqE0J8yVEPKh+Jnqkb4rS6Fn/MY0HGZ4b/I1SaNdispnCj+08NH3NBPuu6OxQz3cIcIRjaQ+zaB5qp7eEnV9RFMXrTOu7QHPPc2Vl5MdMoHh4qCGfHcCKfk5ww== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass header.d=amd.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=cqzwCYo0KoP2kCBniiiGZXl54UjMCflfbzKImyazTCE=; b=dm9GTlFdz2LMOBGMtxabm5zVCKbpykaQhJ2unqXCQaf+9sVLTw9bZMVFQBsrKT9jNgZLY953ga5cpnJDVCv2PYIPcj6aE8KOAHXZJ3dFGMF4nkMzbHf8GbPXu8/kvUEqpDyxtaOj/ZV1gr8vTlJJFZ3LEf6ekHowXhSUnUyR4EA= Received: from CYYPR12MB8655.namprd12.prod.outlook.com (2603:10b6:930:c4::19) by IA1PR12MB8237.namprd12.prod.outlook.com (2603:10b6:208:3f3::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7386.18; Thu, 14 Mar 2024 08:24:43 +0000 Received: from CYYPR12MB8655.namprd12.prod.outlook.com ([fe80::64d2:3c49:7c63:1749]) by CYYPR12MB8655.namprd12.prod.outlook.com ([fe80::64d2:3c49:7c63:1749%4]) with mapi id 15.20.7362.035; Thu, 14 Mar 2024 08:24:43 +0000 From: "Yuan, Perry" To: "Shenoy, Gautham Ranjal" CC: "rafael.j.wysocki@intel.com" , "Limonciello, Mario" , "viresh.kumar@linaro.org" , "Huang, Ray" , "Petkov, Borislav" , "Deucher, Alexander" , "Huang, Shimmer" , "Du, Xiaojian" , "Meng, Li (Jassmine)" , "linux-pm@vger.kernel.org" , "linux-kernel@vger.kernel.org" Subject: RE: [PATCH v7 6/6] cpufreq:amd-pstate: initialize capabilities in amd_pstate_init_perf Thread-Topic: [PATCH v7 6/6] cpufreq:amd-pstate: initialize capabilities in amd_pstate_init_perf Thread-Index: AQHadS2KSU7iP6MtuUaRZ+Sa6WXd9bE2yiGAgAAb7OA= Date: Thu, 14 Mar 2024 08:24:42 +0000 Message-ID: References: In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: msip_labels: MSIP_Label_4342314e-0df4-4b58-84bf-38bed6170a0f_ActionId=64a08776-2899-4be2-a6fd-762ecf13c17d;MSIP_Label_4342314e-0df4-4b58-84bf-38bed6170a0f_ContentBits=0;MSIP_Label_4342314e-0df4-4b58-84bf-38bed6170a0f_Enabled=true;MSIP_Label_4342314e-0df4-4b58-84bf-38bed6170a0f_Method=Standard;MSIP_Label_4342314e-0df4-4b58-84bf-38bed6170a0f_Name=General;MSIP_Label_4342314e-0df4-4b58-84bf-38bed6170a0f_SetDate=2024-03-14T08:18:33Z;MSIP_Label_4342314e-0df4-4b58-84bf-38bed6170a0f_SiteId=3dd8961f-e488-4e60-8e11-a82d994e183d; authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=amd.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: CYYPR12MB8655:EE_|IA1PR12MB8237:EE_ x-ms-office365-filtering-correlation-id: abb84453-546a-4815-ccc3-08dc44003340 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: JqylB5NFFtvoAAwRGa8Y15MFCDjMyxLep1BKI0dIvph72lYB1RkN5lW0vaHBI+kFyfmueAchkFuhtKptuip1Soz0OBM/YsgfWchzCYLjcDpjiMySrzxi7XErDVhKhpcBhFmXc9hE9Ce5AuUhG0r0c/c7EOgklRgqVYP6uDXRGCdgcUS8VfSbWBZrWejqow2CK27MDChZUqNf3ZF4b8dCK2fwiSYDRQabzJ1XEvs6DmN8pzpVps8VKcDCBUZ8mX435xijU2TykVyEBhucXRfeCWp1IzBbfs6lGQEF5bhvSm3slyR8FUKkTBNQ8MhDbv0ltlsLtzlhFkAAsCLGbKwx1BdGt7Xgi0VF/6cVKX93DCWZjAehvIl7OOvS2T4Bxc+PBD5xtxZK7ZE55I2rdz49LcrfA60UTPqaeFMJL4SrVNEALcf4YMmxgD+TZYMCmXCUuwLeUlzfk734yq/dWfTTpavT6rUvRPROQvZluQeGX2DXMmxWHoZgjoKOGnUfAZennD7HTAi+vJ+R0q6fdp+IJrAuDM0nZmiBnDdA2tUpnKSYU7n6CqdUzuVqsYCRQq3GZoOW/4/rqZLttA/u5sOk+Dn1xtHF+h5LdHPdR7IY9ns0WQz/6+7VVs0z0+ZiG4SsOuWMk3nlpx9cS9zBTW7QEIM2cp/QCOx89pz+ef3/wjuwnDB9CXV6DuCIazHrp4PRWfoqdqVc+4tTYXbq2mceRrHZbxOsLf1dxck+gRNWIa0= x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CYYPR12MB8655.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(376005)(1800799015)(38070700009);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?T0JJQjJOU1VQWXkwaHVjVnN6dEs4b1UveXlaN3JYNC9UR1VtMkxwWWVWSFVy?= =?utf-8?B?bjFuYmNyZWltUG1icHJTUVAyTEY3azlFL3NEV3E3aHJKUmpzVXp2S3plZmlC?= =?utf-8?B?dFpuOTl0YjRVaGwxQ3ZNKzRNaDNJOHVxSmtIOFUyNFRnSjFtMGU2ZXRoMFFS?= =?utf-8?B?WUJmTlp3ek9lQ3ZjSC9rQ2RYb1UyOXIreFlJd0ZTOGR0WWRscXF0eVU0emRy?= =?utf-8?B?WVNOTGJYbXJaaDVwczZWYkFMUDFiOTE0cjhva3hjYWI5WDBVL3RueG03U01P?= =?utf-8?B?V2ZvVk5vaVJXeGZDQVBYdG5SL0dOWTNraWF4eEV4QjZIeHg0VklCVVdaMjNk?= =?utf-8?B?TmVRQWlhMU9Wd1ZKbkltTWMxWjJsNjA5c0NEU3g2Um1Ta1pWSDBvQ1cvUlAz?= =?utf-8?B?dnI1TU5qbktEZEdIRGFaUDJDZHBsaElUVFIxSzRlSERoWDAvNU5oNjJJRFA3?= =?utf-8?B?WGJ4VTlRMDZxa3FCemRVN2w5eUxXNHg0R1FZbmRaSnE1d2g2UytwU0N5WG1S?= =?utf-8?B?UlVnN3VpR0Y0YzQ1bUZoZnlsdk10dDZ1cTI1NnFuaGNqZnhSQW9PMWNPUC9x?= =?utf-8?B?ZTRJSThRQ1UxSndNM1h3N2k0VTNWWXFGbTlTdVR5ZUNKQlhHdWFHOGRJUmpB?= =?utf-8?B?YVNQZFRZUFBsZmtLT0s2b2h0c2h3emVuZ0NISm1EVmxnR1lWZG0zaFlEbmdN?= =?utf-8?B?eUNJY2dTeHlYRWU1SFFYbW5iUzJiRFgzREhmWTdhTmo1bW1TRHpJQjM2dDRY?= =?utf-8?B?VEJRNno5Y1V0VW9VdndsUDRPeStpSHhnWEJUdFNSaUY5RkI4VkJWakNsaGt3?= =?utf-8?B?UGJIMU5hcDQwVjBlTE04UThxVGlldzl5cmR1TEJXejVSZEtuNHRsc0RFZ2RV?= =?utf-8?B?cEhLTHVwTjdQV0FhRjJRY2ZvelArSkhHQ3pHUCtFTU91ZEtabXhNcnFyY2l1?= =?utf-8?B?VG9YMDdEOWlTckErdXVpazhDTWJIZ2Q3ME12aDZiNFducGRjcjV0N1dEQlU1?= =?utf-8?B?UjJDSVpMS201U3Bxa2hXNU1Yc3oyN2swL0o2NW90ek1DR1N3SFpPdkRaSXhL?= =?utf-8?B?a0pQZmlNRURPZVE2RHhHY1g5SE0xNnoybmIrV2tRVXlTb2RrQWlHcmQva3M5?= =?utf-8?B?a0ZCWXEzTzZHcHRiN0t2MCtwSTcrZ3prMFJlQkI0Z0swVkJUbXF2RTdUalBh?= =?utf-8?B?ekp5TFlHSnMyVnh2UUl3YUE2QzYrbVFHK0RneVlNVitlQVhjZHB3ZEdZc0dy?= =?utf-8?B?UFZMRkhsMklnNEY2QWRCblFWR2VCTnFhU0ZTS2NqRHVDdFBvSDRtUFZjMjkx?= =?utf-8?B?Uno3T1N4a0F4V1gvNTZ2RXZXdTBOSWZtdEl3QlpTSldxZENnWEMrMnBQYlhj?= =?utf-8?B?K0YxNWlvdDBxVnVWWkNmZ0RDQXlSbjRkMVMyTmlQNGJCdGI3SlpSMm9qSExn?= =?utf-8?B?YTJPL2dSTUJOUkNocnhGcTFhQ0QwN1BSNDh5Yk5NL09nUElSdmMvWWVjMXpi?= =?utf-8?B?ZTZKbjA1SG1KMDlYTWE0NEhPRUFoM2V1ajR2dFdqckZYb1I5N3F4TlN4aDlG?= =?utf-8?B?VHFYWk4rMDZkOE1FbXByUElKT1dwNmZucjFIcEtzdmxVdDdUeXJRb3Q3UHZw?= =?utf-8?B?K3NPdE44dW5PbmliQ0pXbUU0aFBDQUdUUnNMOG9lN2o5aFZyQTNabCtNRndl?= =?utf-8?B?V0FhRjM5QTRmRmt0SDg1MFdmeXMvZGpzRGh6emhMWGoxSXk1Mi90NWVTRDQ0?= =?utf-8?B?K1RHRDhKMFFjMWt3Y0p4aFQvVElnSHdNYzVsOEtRUHJrUlJGdnByN0tVZGpt?= =?utf-8?B?TTZ3RGJnbFRLM0p1ZFlQZ2J2SGZ1RXVyZ1dEcmJmbHp5bEVBZzRUZzlhZ0RI?= =?utf-8?B?TWNjT0ZyWjJEM2xJVjd0RW9CUnM2aXNVWlRIT1dhci93VlhoZ2VsR1AxcEYx?= =?utf-8?B?WFpWWkNqQ2hITzhDNnhjUjZKRFR1TEpQUjNPNW5iVWlibmhBWmtaZS9xVzVz?= =?utf-8?B?cGJFeW53SkI3dldUZTZHdmR4enZxbVNZVXJsaDhOTmVSQTVMSnFxazR2Ymt4?= =?utf-8?B?amNpaVZMdkxvSVNSSjFhSnBTcWhDVmEwbGlLN2pLMTNnaE9wUGtkdlVqazNn?= =?utf-8?Q?6Z+4=3D?= Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: CYYPR12MB8655.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: abb84453-546a-4815-ccc3-08dc44003340 X-MS-Exchange-CrossTenant-originalarrivaltime: 14 Mar 2024 08:24:42.9727 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: D1JgpO5be3oWs/0hQVbNlGUwbotCT8pMXvJqopSHPuIT1JHvsSlpWlXWFcTljoZGjgfKGdpbBsVeZuOnju2lBw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: IA1PR12MB8237 W0FNRCBPZmZpY2lhbCBVc2UgT25seSAtIEdlbmVyYWxdDQoNCkhpIEdhdXRoYW0sDQoNCj4gLS0t LS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogU2hlbm95LCBHYXV0aGFtIFJhbmphbCA8 Z2F1dGhhbS5zaGVub3lAYW1kLmNvbT4NCj4gU2VudDogVGh1cnNkYXksIE1hcmNoIDE0LCAyMDI0 IDI6MzkgUE0NCj4gVG86IFl1YW4sIFBlcnJ5IDxQZXJyeS5ZdWFuQGFtZC5jb20+DQo+IENjOiBy YWZhZWwuai53eXNvY2tpQGludGVsLmNvbTsgTGltb25jaWVsbG8sIE1hcmlvDQo+IDxNYXJpby5M aW1vbmNpZWxsb0BhbWQuY29tPjsgdmlyZXNoLmt1bWFyQGxpbmFyby5vcmc7IEh1YW5nLCBSYXkN Cj4gPFJheS5IdWFuZ0BhbWQuY29tPjsgUGV0a292LCBCb3Jpc2xhdiA8Qm9yaXNsYXYuUGV0a292 QGFtZC5jb20+Ow0KPiBEZXVjaGVyLCBBbGV4YW5kZXIgPEFsZXhhbmRlci5EZXVjaGVyQGFtZC5j b20+OyBIdWFuZywgU2hpbW1lcg0KPiA8U2hpbW1lci5IdWFuZ0BhbWQuY29tPjsgRHUsIFhpYW9q aWFuIDxYaWFvamlhbi5EdUBhbWQuY29tPjsgTWVuZywNCj4gTGkgKEphc3NtaW5lKSA8TGkuTWVu Z0BhbWQuY29tPjsgbGludXgtcG1Admdlci5rZXJuZWwub3JnOyBsaW51eC0NCj4ga2VybmVsQHZn ZXIua2VybmVsLm9yZw0KPiBTdWJqZWN0OiBSZTogW1BBVENIIHY3IDYvNl0gY3B1ZnJlcTphbWQt cHN0YXRlOiBpbml0aWFsaXplIGNhcGFiaWxpdGllcyBpbg0KPiBhbWRfcHN0YXRlX2luaXRfcGVy Zg0KPg0KPiBIZWxsbyBQZXJyeSwNCj4NCj4gT24gV2VkLCBNYXIgMTMsIDIwMjQgYXQgMDU6NTk6 MThQTSArMDgwMCwgUGVycnkgWXVhbiB3cm90ZToNCj4gPiBNb3ZlZCB0aGUgaW5pdGlhbGl6YXRp b24gb2Ygc29tZSBwZXJmIGFuZCBmcmVxdWVuY3kgdmFsdWVzIHJlbGF0ZWQgdG8NCj4gPiBjcHVk YXRhIHRvIHRoZSBhbWRfcHN0YXRlX2luaXRfcGVyZiBhbmQgY3BwY19pbml0X3BlcmYgZnVuY3Rp b25zLg0KPiA+IEl0IGNhbiBhdm9pZCBkdXBsaWNhdGUgY2FsbHMgdG8gY3BwY19nZXRfcGVyZl9j YXBzIGZ1bmN0aW9uLg0KPg0KPiBEb2VzIGl0IG1ha2Ugc2Vuc2UgdG8gZm9sZCB0aGlzIGludG8g UGF0Y2ggMiB3aGVyZSB5b3UgYXJlIGNhY2hpbmcgdGhlIG5vbWluYWwNCj4gZnJlcXVlbmN5IGZv ciBsYXRlciB1c2UgPw0KPg0KPiBPdGhlcndpc2UsIHRoaXMgcGF0Y2ggbG9va3MgZ29vZCB0byBt ZS4NCg0KVGhhdCBub21pbmFsIHBlcmYgY2hhbmdlIGlzIHJldmlld2VkIGJ5IE1hcmlvLA0KVGhp cyBwYXRjaCBjYW4gYmUgcmV2aWV3ZWQgc2VwYXJhdGVseSBhbmQgdGhlIHdob2xlIGNoYW5nZXMg Y2FuIGJlIGFwcGxpZWQgYWZ0ZXIgdGhhdCB3aXRob3V0IGZ1bmN0aW9uIGltcGFjdC4NCkl0IHdp bGwgYmUgc2ltcGxlciB0byBsb29rIHdoYXQgd2UgY2hhbmdlZCBpbiB0aGlzIG9uZS4g8J+Yig0K DQpUaGFua3MgZm9yIHlvdXIgcmV2aWV3IGVmZm9ydHMhDQoNClBlcnJ5Lg0KDQo+DQo+IC0tDQo+ IFRoYW5rcyBhbmQgUmVnYXJkcw0KPiBnYXV0aGFtLg0KPg0KPiA+DQo+ID4gU2lnbmVkLW9mZi1i eTogUGVycnkgWXVhbiA8cGVycnkueXVhbkBhbWQuY29tPg0KPiA+IC0tLQ0KPiA+ICBkcml2ZXJz L2NwdWZyZXEvYW1kLXBzdGF0ZS5jIHwgNDMgKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0t LS0tLS0tDQo+ID4gIGluY2x1ZGUvbGludXgvYW1kLXBzdGF0ZS5oICAgfCAgMSArDQo+ID4gIDIg ZmlsZXMgY2hhbmdlZCwgMTggaW5zZXJ0aW9ucygrKSwgMjYgZGVsZXRpb25zKC0pDQo+ID4NCj4g PiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9jcHVmcmVxL2FtZC1wc3RhdGUuYw0KPiA+IGIvZHJpdmVy cy9jcHVmcmVxL2FtZC1wc3RhdGUuYyBpbmRleCA1OWJjZGY4MjljOTMuLjM4NzdkNGVjYjVkNA0K PiAxMDA2NDQNCj4gPiAtLS0gYS9kcml2ZXJzL2NwdWZyZXEvYW1kLXBzdGF0ZS5jDQo+ID4gKysr IGIvZHJpdmVycy9jcHVmcmVxL2FtZC1wc3RhdGUuYw0KPiA+IEBAIC0zMzAsMTIgKzMzMCwxOCBA QCBzdGF0aWMgaW50IHBzdGF0ZV9pbml0X3BlcmYoc3RydWN0IGFtZF9jcHVkYXRhDQo+ID4gKmNw dWRhdGEpICB7DQo+ID4gICAgIHU2NCBjYXAxOw0KPiA+ICAgICB1MzIgaGlnaGVzdF9wZXJmOw0K PiA+ICsgICBzdHJ1Y3QgY3BwY19wZXJmX2NhcHMgY3BwY19wZXJmOw0KPiA+ICsgICBpbnQgcmV0 Ow0KPiA+DQo+ID4gLSAgIGludCByZXQgPSByZG1zcmxfc2FmZV9vbl9jcHUoY3B1ZGF0YS0+Y3B1 LCBNU1JfQU1EX0NQUENfQ0FQMSwNCj4gPiArICAgcmV0ID0gcmRtc3JsX3NhZmVfb25fY3B1KGNw dWRhdGEtPmNwdSwgTVNSX0FNRF9DUFBDX0NBUDEsDQo+ID4gICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgJmNhcDEpOw0KPiA+ICAgICBpZiAocmV0KQ0KPiA+ICAgICAgICAgICAgIHJl dHVybiByZXQ7DQo+ID4NCj4gPiArICAgcmV0ID0gY3BwY19nZXRfcGVyZl9jYXBzKGNwdWRhdGEt PmNwdSwgJmNwcGNfcGVyZik7DQo+ID4gKyAgIGlmIChyZXQpDQo+ID4gKyAgICAgICAgICAgcmV0 dXJuIHJldDsNCj4gPiArDQo+ID4gICAgIC8qIEZvciBwbGF0Zm9ybXMgdGhhdCBkbyBub3Qgc3Vw cG9ydCB0aGUgcHJlZmVycmVkIGNvcmUgZmVhdHVyZSwgdGhlDQo+ID4gICAgICAqIGhpZ2hlc3Rf cGVmIG1heSBiZSBjb25maWd1cmVkIHdpdGggMTY2IG9yIDI1NSwgdG8gYXZvaWQgbWF4DQo+IGZy ZXF1ZW5jeQ0KPiA+ICAgICAgKiBjYWxjdWxhdGVkIHdyb25nbHkuIHdlIHRha2UgdGhlIEFNRF9D UFBDX0hJR0hFU1RfUEVSRihjYXAxKQ0KPiB2YWx1ZQ0KPiA+IGFzIEBAIC0zNTMsNiArMzU5LDkg QEAgc3RhdGljIGludCBwc3RhdGVfaW5pdF9wZXJmKHN0cnVjdCBhbWRfY3B1ZGF0YQ0KPiAqY3B1 ZGF0YSkNCj4gPiAgICAgV1JJVEVfT05DRShjcHVkYXRhLT5sb3dlc3RfcGVyZiwNCj4gQU1EX0NQ UENfTE9XRVNUX1BFUkYoY2FwMSkpOw0KPiA+ICAgICBXUklURV9PTkNFKGNwdWRhdGEtPnByZWZj b3JlX3JhbmtpbmcsDQo+IEFNRF9DUFBDX0hJR0hFU1RfUEVSRihjYXAxKSk7DQo+ID4gICAgIFdS SVRFX09OQ0UoY3B1ZGF0YS0+bWluX2xpbWl0X3BlcmYsDQo+IEFNRF9DUFBDX0xPV0VTVF9QRVJG KGNhcDEpKTsNCj4gPiArICAgV1JJVEVfT05DRShjcHVkYXRhLT5sb3dlc3RfZnJlcSwgY3BwY19w ZXJmLmxvd2VzdF9mcmVxKTsNCj4gPiArICAgV1JJVEVfT05DRShjcHVkYXRhLT5ub21pbmFsX2Zy ZXEsIGNwcGNfcGVyZi5ub21pbmFsX2ZyZXEpOw0KPiA+ICsNCj4gPiAgICAgcmV0dXJuIDA7DQo+ ID4gIH0NCj4gPg0KPiA+IEBAIC0zNjAsOCArMzY5LDkgQEAgc3RhdGljIGludCBjcHBjX2luaXRf cGVyZihzdHJ1Y3QgYW1kX2NwdWRhdGENCj4gPiAqY3B1ZGF0YSkgIHsNCj4gPiAgICAgc3RydWN0 IGNwcGNfcGVyZl9jYXBzIGNwcGNfcGVyZjsNCj4gPiAgICAgdTMyIGhpZ2hlc3RfcGVyZjsNCj4g PiArICAgaW50IHJldDsNCj4gPg0KPiA+IC0gICBpbnQgcmV0ID0gY3BwY19nZXRfcGVyZl9jYXBz KGNwdWRhdGEtPmNwdSwgJmNwcGNfcGVyZik7DQo+ID4gKyAgIHJldCA9IGNwcGNfZ2V0X3BlcmZf Y2FwcyhjcHVkYXRhLT5jcHUsICZjcHBjX3BlcmYpOw0KPiA+ICAgICBpZiAocmV0KQ0KPiA+ICAg ICAgICAgICAgIHJldHVybiByZXQ7DQo+ID4NCj4gPiBAQCAtMzc4LDYgKzM4OCw4IEBAIHN0YXRp YyBpbnQgY3BwY19pbml0X3BlcmYoc3RydWN0IGFtZF9jcHVkYXRhDQo+ICpjcHVkYXRhKQ0KPiA+ ICAgICBXUklURV9PTkNFKGNwdWRhdGEtPmxvd2VzdF9wZXJmLCBjcHBjX3BlcmYubG93ZXN0X3Bl cmYpOw0KPiA+ICAgICBXUklURV9PTkNFKGNwdWRhdGEtPnByZWZjb3JlX3JhbmtpbmcsIGNwcGNf cGVyZi5oaWdoZXN0X3BlcmYpOw0KPiA+ICAgICBXUklURV9PTkNFKGNwdWRhdGEtPm1pbl9saW1p dF9wZXJmLCBjcHBjX3BlcmYubG93ZXN0X3BlcmYpOw0KPiA+ICsgICBXUklURV9PTkNFKGNwdWRh dGEtPmxvd2VzdF9mcmVxLCBjcHBjX3BlcmYubG93ZXN0X2ZyZXEpOw0KPiA+ICsgICBXUklURV9P TkNFKGNwdWRhdGEtPm5vbWluYWxfZnJlcSwgY3BwY19wZXJmLm5vbWluYWxfZnJlcSk7DQo+ID4N Cj4gPiAgICAgaWYgKGNwcGNfc3RhdGUgPT0gQU1EX1BTVEFURV9BQ1RJVkUpDQo+ID4gICAgICAg ICAgICAgcmV0dXJuIDA7DQo+ID4gQEAgLTY0MiwxNyArNjU0LDEyIEBAIHN0YXRpYyB2b2lkIGFt ZF9wc3RhdGVfYWRqdXN0X3BlcmYodW5zaWduZWQgaW50DQo+ID4gY3B1LA0KPiA+DQo+ID4gIHN0 YXRpYyBpbnQgYW1kX2dldF9taW5fZnJlcShzdHJ1Y3QgYW1kX2NwdWRhdGEgKmNwdWRhdGEpICB7 DQo+ID4gLSAgIHN0cnVjdCBjcHBjX3BlcmZfY2FwcyBjcHBjX3BlcmY7DQo+ID4gICAgIHUzMiBs b3dlc3RfZnJlcTsNCj4gPg0KPiA+IC0gICBpbnQgcmV0ID0gY3BwY19nZXRfcGVyZl9jYXBzKGNw dWRhdGEtPmNwdSwgJmNwcGNfcGVyZik7DQo+ID4gLSAgIGlmIChyZXQpDQo+ID4gLSAgICAgICAg ICAgcmV0dXJuIHJldDsNCj4gPiAtDQo+ID4gICAgIGlmIChxdWlya3MgJiYgcXVpcmtzLT5sb3dl c3RfZnJlcSkNCj4gPiAgICAgICAgICAgICBsb3dlc3RfZnJlcSA9IHF1aXJrcy0+bG93ZXN0X2Zy ZXE7DQo+ID4gICAgIGVsc2UNCj4gPiAtICAgICAgICAgICBsb3dlc3RfZnJlcSA9IGNwcGNfcGVy Zi5sb3dlc3RfZnJlcTsNCj4gPiArICAgICAgICAgICBsb3dlc3RfZnJlcSA9IFJFQURfT05DRShj cHVkYXRhLT5sb3dlc3RfZnJlcSk7DQo+ID4NCj4gPiAgICAgLyogU3dpdGNoIHRvIGtoeiAqLw0K PiA+ICAgICByZXR1cm4gbG93ZXN0X2ZyZXEgKiAxMDAwOw0KPiA+IEBAIC02NjAsMTQgKzY2Nyw5 IEBAIHN0YXRpYyBpbnQgYW1kX2dldF9taW5fZnJlcShzdHJ1Y3QgYW1kX2NwdWRhdGENCj4gPiAq Y3B1ZGF0YSkNCj4gPg0KPiA+ICBzdGF0aWMgaW50IGFtZF9nZXRfbWF4X2ZyZXEoc3RydWN0IGFt ZF9jcHVkYXRhICpjcHVkYXRhKSAgew0KPiA+IC0gICBzdHJ1Y3QgY3BwY19wZXJmX2NhcHMgY3Bw Y19wZXJmOw0KPiA+ICAgICB1MzIgbWF4X3BlcmYsIG1heF9mcmVxLCBub21pbmFsX2ZyZXEsIG5v bWluYWxfcGVyZjsNCj4gPiAgICAgdTY0IGJvb3N0X3JhdGlvOw0KPiA+DQo+ID4gLSAgIGludCBy ZXQgPSBjcHBjX2dldF9wZXJmX2NhcHMoY3B1ZGF0YS0+Y3B1LCAmY3BwY19wZXJmKTsNCj4gPiAt ICAgaWYgKHJldCkNCj4gPiAtICAgICAgICAgICByZXR1cm4gcmV0Ow0KPiA+IC0NCj4gPiAgICAg bm9taW5hbF9mcmVxID0gUkVBRF9PTkNFKGNwdWRhdGEtPm5vbWluYWxfZnJlcSk7DQo+ID4gICAg IG5vbWluYWxfcGVyZiA9IFJFQURfT05DRShjcHVkYXRhLT5ub21pbmFsX3BlcmYpOw0KPiA+ICAg ICBtYXhfcGVyZiA9IFJFQURfT05DRShjcHVkYXRhLT5oaWdoZXN0X3BlcmYpOyBAQCAtNjgzLDM2 DQo+ICs2ODUsMjUgQEANCj4gPiBzdGF0aWMgaW50IGFtZF9nZXRfbWF4X2ZyZXEoc3RydWN0IGFt ZF9jcHVkYXRhICpjcHVkYXRhKQ0KPiA+DQo+ID4gIHN0YXRpYyBpbnQgYW1kX2dldF9ub21pbmFs X2ZyZXEoc3RydWN0IGFtZF9jcHVkYXRhICpjcHVkYXRhKSAgew0KPiA+IC0gICBzdHJ1Y3QgY3Bw Y19wZXJmX2NhcHMgY3BwY19wZXJmOw0KPiA+ICAgICB1MzIgbm9taW5hbF9mcmVxOw0KPiA+DQo+ ID4gLSAgIGludCByZXQgPSBjcHBjX2dldF9wZXJmX2NhcHMoY3B1ZGF0YS0+Y3B1LCAmY3BwY19w ZXJmKTsNCj4gPiAtICAgaWYgKHJldCkNCj4gPiAtICAgICAgICAgICByZXR1cm4gcmV0Ow0KPiA+ IC0NCj4gPiAgICAgaWYgKHF1aXJrcyAmJiBxdWlya3MtPm5vbWluYWxfZnJlcSkNCj4gPiAgICAg ICAgICAgICBub21pbmFsX2ZyZXEgPSBxdWlya3MtPm5vbWluYWxfZnJlcTsNCj4gPiAgICAgZWxz ZQ0KPiA+IC0gICAgICAgICAgIG5vbWluYWxfZnJlcSA9IGNwcGNfcGVyZi5ub21pbmFsX2ZyZXE7 DQo+ID4gKyAgICAgICAgICAgbm9taW5hbF9mcmVxID0gUkVBRF9PTkNFKGNwdWRhdGEtPm5vbWlu YWxfZnJlcSk7DQo+ID4NCj4gPiAgICAgcmV0dXJuIG5vbWluYWxfZnJlcTsNCj4gPiAgfQ0KPiA+ DQo+ID4gIHN0YXRpYyBpbnQgYW1kX2dldF9sb3dlc3Rfbm9ubGluZWFyX2ZyZXEoc3RydWN0IGFt ZF9jcHVkYXRhICpjcHVkYXRhKQ0KPiA+IHsNCj4gPiAtICAgc3RydWN0IGNwcGNfcGVyZl9jYXBz IGNwcGNfcGVyZjsNCj4gPiAgICAgdTMyIGxvd2VzdF9ub25saW5lYXJfZnJlcSwgbG93ZXN0X25v bmxpbmVhcl9wZXJmLA0KPiA+ICAgICAgICAgbm9taW5hbF9mcmVxLCBub21pbmFsX3BlcmY7DQo+ ID4gICAgIHU2NCBsb3dlc3Rfbm9ubGluZWFyX3JhdGlvOw0KPiA+DQo+ID4gLSAgIGludCByZXQg PSBjcHBjX2dldF9wZXJmX2NhcHMoY3B1ZGF0YS0+Y3B1LCAmY3BwY19wZXJmKTsNCj4gPiAtICAg aWYgKHJldCkNCj4gPiAtICAgICAgICAgICByZXR1cm4gcmV0Ow0KPiA+IC0NCj4gPiAgICAgbm9t aW5hbF9mcmVxID0gUkVBRF9PTkNFKGNwdWRhdGEtPm5vbWluYWxfZnJlcSk7DQo+ID4gICAgIG5v bWluYWxfcGVyZiA9IFJFQURfT05DRShjcHVkYXRhLT5ub21pbmFsX3BlcmYpOw0KPiA+IC0NCj4g PiAtICAgbG93ZXN0X25vbmxpbmVhcl9wZXJmID0gY3BwY19wZXJmLmxvd2VzdF9ub25saW5lYXJf cGVyZjsNCj4gPiArICAgbG93ZXN0X25vbmxpbmVhcl9wZXJmID0gUkVBRF9PTkNFKGNwdWRhdGEt DQo+ID5sb3dlc3Rfbm9ubGluZWFyX3BlcmYpOw0KPiA+DQo+ID4gICAgIGxvd2VzdF9ub25saW5l YXJfcmF0aW8gPSBkaXZfdTY0KGxvd2VzdF9ub25saW5lYXJfcGVyZiA8PA0KPiBTQ0hFRF9DQVBB Q0lUWV9TSElGVCwNCj4gPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbm9t aW5hbF9wZXJmKTsNCj4gPiBkaWZmIC0tZ2l0IGEvaW5jbHVkZS9saW51eC9hbWQtcHN0YXRlLmgg Yi9pbmNsdWRlL2xpbnV4L2FtZC1wc3RhdGUuaA0KPiA+IGluZGV4IDdiMmNiYjg5MmZkOS4uMWZi YmU3NWMzZGNjIDEwMDY0NA0KPiA+IC0tLSBhL2luY2x1ZGUvbGludXgvYW1kLXBzdGF0ZS5oDQo+ ID4gKysrIGIvaW5jbHVkZS9saW51eC9hbWQtcHN0YXRlLmgNCj4gPiBAQCAtODgsNiArODgsNyBA QCBzdHJ1Y3QgYW1kX2NwdWRhdGEgew0KPiA+ICAgICB1MzIgICAgIG1pbl9mcmVxOw0KPiA+ICAg ICB1MzIgICAgIG5vbWluYWxfZnJlcTsNCj4gPiAgICAgdTMyICAgICBsb3dlc3Rfbm9ubGluZWFy X2ZyZXE7DQo+ID4gKyAgIHUzMiAgICAgbG93ZXN0X2ZyZXE7DQo+ID4NCj4gPiAgICAgc3RydWN0 IGFtZF9hcGVyZl9tcGVyZiBjdXI7DQo+ID4gICAgIHN0cnVjdCBhbWRfYXBlcmZfbXBlcmYgcHJl djsNCj4gPiAtLQ0KPiA+IDIuMzQuMQ0KPiA+DQo=