Received: by 2002:ad5:474a:0:0:0:0:0 with SMTP id i10csp415477imu; Wed, 21 Nov 2018 22:53:32 -0800 (PST) X-Google-Smtp-Source: AFSGD/Xxn+80zzYnOcalsnuG/K6QrGg7Ko/MS7lZ7gpWMGNouSqbTU9rCbhjo8SbR2qBDYG7zZg2 X-Received: by 2002:a65:610d:: with SMTP id z13mr9048073pgu.427.1542869612867; Wed, 21 Nov 2018 22:53:32 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1542869612; cv=none; d=google.com; s=arc-20160816; b=Ru3ecCx3r3aeLkw6RkYUWGoilr7ix1jPo0BigZIIm86tMnSksFmhWpQ8IIYe8Rw0NB gImThqImZjDHs+TWGlxjGwqXHwxR3DujgbwnFkiIpy1W5rQ/vysV6mw/xFRlh7dnqKUM VAoX7sVX18yYELwNuA4z8MBKhN/ssWmEJCinuNFfRmH9TOfXD4v1lcmAdnz3YG3DV3SQ E80l9h2/a6UtYqIiiWzBOuqGq2k75fibIgRj66admxKnRMRTIM4h7Q0Z5gJGVc9c9Ebc /4G6VOBd8S0hRN9ch7F0WwOEI3UUFtdPyRIsXObCYhQXsNCwaG71s1tyT25pAqHSCEgg MBOA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:mime-version:content-transfer-encoding :spamdiagnosticmetadata:spamdiagnosticoutput:content-language :accept-language:in-reply-to:references:message-id:date:thread-index :thread-topic:subject:cc:to:from:dkim-signature; bh=LPMRQnus3G1e4diRCVbXX129TloKmMK8UNgNM/jg2RQ=; b=X1r9AEO4C5DJCEHfKnIu8L4Maf1f1eSkWXY5OdP0qFPaMv93Tao0ob0wFn4ZNFTsF3 4TD4ZcHsdbgaDR1swNQ3sGASWj8Nt1+RO//+U2E+txs855kQ1NEwR7ny2rn3IfQ9Wxfk BFAVR1mNZFpsrVMPCbTi04Y8zgmWDJqyHhALYg2QgFRavk+1PWBpY7icaUUSCFdrFlDY G0krU17bKqpjozepcVl7d84+v2WlLoqxVklJU3vjZi6mI7gRI4Lahja56WwiBPUIoffz pLYg0HUxzmboi747gi4stAcsG3lJrhNXq05D5NlkwaEoTsZe5ghx9gX7gPpdd+csVSbb ZwqQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@amdcloud.onmicrosoft.com header.s=selector1-amd-com header.b=OSy2op4j; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id h65-v6si54845201pfc.62.2018.11.21.22.53.17; Wed, 21 Nov 2018 22:53:32 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@amdcloud.onmicrosoft.com header.s=selector1-amd-com header.b=OSy2op4j; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1733189AbeKVHEg (ORCPT + 99 others); Thu, 22 Nov 2018 02:04:36 -0500 Received: from mail-eopbgr690075.outbound.protection.outlook.com ([40.107.69.75]:42050 "EHLO NAM04-CO1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1732914AbeKVHEd (ORCPT ); Thu, 22 Nov 2018 02:04:33 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amdcloud.onmicrosoft.com; s=selector1-amd-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=LPMRQnus3G1e4diRCVbXX129TloKmMK8UNgNM/jg2RQ=; b=OSy2op4jUcBACI15J2QTK7dkPVNSMGFK3XzmQnmDGL1Mq18nqZXrFdvXqN6WJuDjyzl3i9fi4Ens4+T64gjSfjBGYrJdNDmzXhrLNA61XKw8bGVwLQnubux1LpcFKkofVumzhod5a9joQsYokf5FBNof01jKWO07MUxnSir3Vzs= Received: from DM5PR12MB2471.namprd12.prod.outlook.com (52.132.141.138) by DM5PR12MB1610.namprd12.prod.outlook.com (10.172.40.16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.1339.28; Wed, 21 Nov 2018 20:28:30 +0000 Received: from DM5PR12MB2471.namprd12.prod.outlook.com ([fe80::7def:eb99:298c:2952]) by DM5PR12MB2471.namprd12.prod.outlook.com ([fe80::7def:eb99:298c:2952%2]) with mapi id 15.20.1339.027; Wed, 21 Nov 2018 20:28:30 +0000 From: "Moger, Babu" To: "tglx@linutronix.de" , "mingo@redhat.com" , "bp@alien8.de" , "corbet@lwn.net" , "fenghua.yu@intel.com" , "reinette.chatre@intel.com" , "peterz@infradead.org" , "gregkh@linuxfoundation.org" , "davem@davemloft.net" , "akpm@linux-foundation.org" CC: "hpa@zytor.com" , "x86@kernel.org" , "mchehab+samsung@kernel.org" , "arnd@arndb.de" , "kstewart@linuxfoundation.org" , "pombredanne@nexb.com" , "rafael@kernel.org" , "kirill.shutemov@linux.intel.com" , "tony.luck@intel.com" , "qianyue.zj@alibaba-inc.com" , "xiaochen.shen@intel.com" , "pbonzini@redhat.com" , "Singh, Brijesh" , "Hurwitz, Sherry" , "dwmw2@infradead.org" , "Lendacky, Thomas" , "luto@kernel.org" , "joro@8bytes.org" , "jannh@google.com" , "vkuznets@redhat.com" , "rian@alum.mit.edu" , "jpoimboe@redhat.com" , "Moger, Babu" , "linux-kernel@vger.kernel.org" , "linux-doc@vger.kernel.org" Subject: [PATCH v9 03/13] x86/resctrl: Re-arrange RDT init code Thread-Topic: [PATCH v9 03/13] x86/resctrl: Re-arrange RDT init code Thread-Index: AQHUgdjD47ro2rGux0SF8Zx1RnjAnw== Date: Wed, 21 Nov 2018 20:28:29 +0000 Message-ID: <20181121202811.4492-4-babu.moger@amd.com> References: <20181121202811.4492-1-babu.moger@amd.com> In-Reply-To: <20181121202811.4492-1-babu.moger@amd.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-clientproxiedby: SN2PR01CA0084.prod.exchangelabs.com (2603:10b6:800::52) To DM5PR12MB2471.namprd12.prod.outlook.com (2603:10b6:4:b5::10) authentication-results: spf=none (sender IP is ) smtp.mailfrom=Babu.Moger@amd.com; x-ms-exchange-messagesentrepresentingtype: 1 x-originating-ip: [165.204.78.1] x-ms-publictraffictype: Email x-microsoft-exchange-diagnostics: 1;DM5PR12MB1610;20:5NsHsuqQ77vVuTef+inHMkO6vTTbUosQzSmIB/U1rW2WZgfDIrv9b+G6ryselMNlcrBfs5YbVYXrxvItIQ6in1s2aM2wU5Thsv0HqF5KkdV9kF8JuzXAtBXrkndXHwti4bHbxZFssGnw+lDkmost6eINIEqE/Uru5glnUjWv65AH+vB15OjPYUyVdwo0MeySjSsieqX58aO1bd6fIu2t7UBiv96iFNY/0y+1ceO+3almoUaHsJwkQLo+76s487f4 x-ms-office365-filtering-correlation-id: e185c51a-073a-417a-f73a-08d64fefe621 x-ms-office365-filtering-ht: Tenant x-microsoft-antispam: BCL:0;PCL:0;RULEID:(2390098)(7020095)(4652040)(8989299)(4534185)(4627221)(201703031133081)(201702281549075)(8990200)(5600074)(711020)(4618075)(2017052603328)(7153060)(7193020);SRVR:DM5PR12MB1610; x-ms-traffictypediagnostic: DM5PR12MB1610: x-microsoft-antispam-prvs: x-ms-exchange-senderadcheck: 1 x-exchange-antispam-report-cfa-test: BCL:0;PCL:0;RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(823302103)(3002001)(3231442)(944501410)(52105112)(10201501046)(93006095)(93001095)(6055026)(148016)(149066)(150057)(6041310)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123564045)(20161123560045)(20161123562045)(20161123558120)(201708071742011)(7699051)(76991095);SRVR:DM5PR12MB1610;BCL:0;PCL:0;RULEID:;SRVR:DM5PR12MB1610; x-forefront-prvs: 08635C03D4 x-forefront-antispam-report: SFV:NSPM;SFS:(10009020)(39860400002)(366004)(346002)(376002)(136003)(396003)(199004)(189003)(54906003)(76176011)(52116002)(256004)(71200400001)(71190400001)(5660300001)(6436002)(36756003)(68736007)(6486002)(99286004)(486006)(7416002)(26005)(2201001)(575784001)(66066001)(7406005)(102836004)(6506007)(186003)(386003)(476003)(7736002)(6512007)(3846002)(2501003)(6116002)(478600001)(2900100001)(8936002)(305945005)(11346002)(53936002)(14454004)(97736004)(81156014)(81166006)(316002)(2616005)(110136005)(105586002)(446003)(106356001)(86362001)(8676002)(1076002)(25786009)(72206003)(4326008)(2906002)(921003)(1121003);DIR:OUT;SFP:1101;SCL:1;SRVR:DM5PR12MB1610;H:DM5PR12MB2471.namprd12.prod.outlook.com;FPR:;SPF:None;LANG:en;PTR:InfoNoRecords;A:1;MX:1; received-spf: None (protection.outlook.com: amd.com does not designate permitted sender hosts) x-microsoft-antispam-message-info: lw8o1Jx9PCf1hjk4uNGnrzefumx3IqZCaOqCV1OCO0vZboYNVJssnEhaOAX6gXq4LCtPsLIlm/A1IyX/xEWjzUWJqSzHYhvq4xoGvX/fd4PNte86W5HnRSxtMh2gBNFktxcQAYVdEmsVXdwv2lCMksDxpbekTZ73V7tgYonFkn2DkUpiqx04PXao6svnOYd4IEybLf/aeMwbkEGlo7CZhJaHtKMODKNOg/h+/vjeKrnJFenYIeEdCezT4dMIotEmFSH3vY4CWrfkneCnb/bZWYyyj1h0beLpkb3rZfiP2sE1jzmi6kN20zzEHjjcv+tknW3s5LFfkGiQp2siWn6P3NihskPZySa04K9C8uXeszg= spamdiagnosticoutput: 1:99 spamdiagnosticmetadata: NSPM Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-Network-Message-Id: e185c51a-073a-417a-f73a-08d64fefe621 X-MS-Exchange-CrossTenant-originalarrivaltime: 21 Nov 2018 20:28:29.7986 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM5PR12MB1610 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Separate the call sequence for rdt_quirks and MBA feature. This is in preparation to handle vendor differences in these call sequences. Rename the functions to make it bit more meaningful. Signed-off-by: Babu Moger --- arch/x86/kernel/cpu/resctrl/core.c | 28 +++++++++++++++++++++------- 1 file changed, 21 insertions(+), 7 deletions(-) diff --git a/arch/x86/kernel/cpu/resctrl/core.c b/arch/x86/kernel/cpu/resct= rl/core.c index 0cf890ae0de2..40380731c588 100644 --- a/arch/x86/kernel/cpu/resctrl/core.c +++ b/arch/x86/kernel/cpu/resctrl/core.c @@ -259,7 +259,7 @@ static inline bool rdt_get_mb_table(struct rdt_resource= *r) return false; } =20 -static bool rdt_get_mem_config(struct rdt_resource *r) +static bool __get_mem_config(struct rdt_resource *r) { union cpuid_0x10_3_eax eax; union cpuid_0x10_x_edx edx; @@ -794,6 +794,14 @@ static bool __init rdt_cpu_has(int flag) return ret; } =20 +static __init bool get_mem_config(void) +{ + if (rdt_cpu_has(X86_FEATURE_MBA)) + return __get_mem_config(&rdt_resources_all[RDT_RESOURCE_MBA]); + + return false; +} + static __init bool get_rdt_alloc_resources(void) { bool ret =3D false; @@ -818,10 +826,9 @@ static __init bool get_rdt_alloc_resources(void) ret =3D true; } =20 - if (rdt_cpu_has(X86_FEATURE_MBA)) { - if (rdt_get_mem_config(&rdt_resources_all[RDT_RESOURCE_MBA])) - ret =3D true; - } + if (get_mem_config()) + ret =3D true; + return ret; } =20 @@ -840,7 +847,7 @@ static __init bool get_rdt_mon_resources(void) return !rdt_get_mon_l3_config(&rdt_resources_all[RDT_RESOURCE_L3]); } =20 -static __init void rdt_quirks(void) +static __init void __check_quirks_intel(void) { switch (boot_cpu_data.x86_model) { case INTEL_FAM6_HASWELL_X: @@ -855,9 +862,14 @@ static __init void rdt_quirks(void) } } =20 +static __init void check_quirks(void) +{ + if (boot_cpu_data.x86_vendor =3D=3D X86_VENDOR_INTEL) + __check_quirks_intel(); +} + static __init bool get_rdt_resources(void) { - rdt_quirks(); rdt_alloc_capable =3D get_rdt_alloc_resources(); rdt_mon_capable =3D get_rdt_mon_resources(); =20 @@ -871,6 +883,8 @@ static int __init resctrl_late_init(void) struct rdt_resource *r; int state, ret; =20 + check_quirks(); + if (!get_rdt_resources()) return -ENODEV; =20 --=20 2.17.1