From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1030926AbdEWPRy (ORCPT ); Tue, 23 May 2017 11:17:54 -0400 Received: from g2t1383g.austin.hpe.com ([15.233.16.89]:21120 "EHLO g2t1383g.austin.hpe.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1030911AbdEWPRw (ORCPT ); Tue, 23 May 2017 11:17:52 -0400 Authentication-Results: hpe.com; dkim=none (message not signed) header.d=none;hpe.com; dmarc=none action=none header.from=hpe.com; Subject: Re: [PATCH v2 1/2] x86/UV: Introduce a helper function to check UV system at earlier stage To: Baoquan He , CC: Thomas Gleixner , Ingo Molnar , "H. Peter Anvin" , , Russ Anderson , Dimitri Sivanich , "travis@sgi.com" , Frank Ramsay References: <1495281758-11320-1-git-send-email-bhe@redhat.com> <1495281758-11320-2-git-send-email-bhe@redhat.com> From: Mike Travis Message-ID: <19a2a15b-c478-425a-74cc-dcb21ca825ed@hpe.com> Date: Tue, 23 May 2017 08:17:31 -0700 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:52.0) Gecko/20100101 Thunderbird/52.1.1 MIME-Version: 1.0 In-Reply-To: <1495281758-11320-2-git-send-email-bhe@redhat.com> Content-Type: text/plain; charset="windows-1252"; format=flowed Content-Transfer-Encoding: 7bit Content-Language: en-US X-Originating-IP: [73.222.225.80] X-ClientProxiedBy: BN6PR03CA0072.namprd03.prod.outlook.com (10.173.137.34) To CS1PR84MB0230.NAMPRD84.PROD.OUTLOOK.COM (10.162.190.152) X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CS1PR84MB0230: X-MS-Office365-Filtering-Correlation-Id: a3cb9652-6022-4d7e-81cc-08d4a1eed5a8 X-MS-Office365-Filtering-HT: Tenant X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:(22001)(48565401081)(201703131423075)(201703031133081);SRVR:CS1PR84MB0230; X-Microsoft-Exchange-Diagnostics: 1;CS1PR84MB0230;3:XEn9ZSsZcPaV0g39zDw37v4Ox4HSPmBjEdzM4iWyc20aBHJDo4o9nHAQvysn3Ox1/JeD36UloErYkH2gDGrGrFeLAWCnRLJlFlq1tGROgiWVK/v6nUBzkv8ZXBa7Hevv9/3pm3A/DpzH051plJy3YQY3ajZwsDGpLsqNpvGqQK+onOP2eay3oYg/zhSOEq5DxfCSbiMrrSSFwsKE8XJWehCwS55/JY3AjuBzAKIDj1gGc+mgNOq/pcaZZ7ulOwBIJy53RCbHl2ovavh5Mx+1RdF+oMXXVRuwbuDGmW64YCqQ2oWDF9VwhyVVFVE5l01FoQ4AgKJl9DBg0rbyTiehY3NaMGKEF9gu6rBQxyAAAVY=;25:B6xS3FG9zcspuLPKoanlU4I6T06zYVfXfoMuynuXGUTFbSrG7+YTNYgDo1F6GO2OVZYEzTduCnv+NJOy5uNV7U5FJDRPG6pD09tfEH+GvqYB2lAetOsbt9TTVSiN4/9TqPzHfsNNULuIaRTpbtGXFe43Riv4p3QZ3sIJ7n94XbsNRV/Khc+dHTvncmDMB2qtp+GSrmPhsD566ZdOaD5EcipuaVJ50dkucoofJs0pJXYwZ1i9dM8fiUcSQfElUODPYi9dVA7nWHXKrf9LoZOk17Evj7BnOlqlLfaZ4gwdZuAN83CvwQqj47iwfaz5zKOAnRcMo7L6GCXoBJQaAsariYOiWtVDoXxbXLGvLGLFva4OQS3FwSrB/vTaCjTmyW4NwbJ3OFe4JuoKfeKJQSGPDzM33AT58QcscubqBXTBaUoFML72487nQxJxQOiL3y6MMPdAGuvxqD8A/HD444gOIuTym9z38rjsH8Z2rN47w1U= X-Microsoft-Exchange-Diagnostics: 1;CS1PR84MB0230;31:gu+9ySgd2sJWbhl2/FyIcQOoPWXbCpixCIwDuAyQ/tbVXcNSUM43s+ThObNzwcNeSBIVqjtWQnwhGDufW38cLNOVZgRUqkL/PYIJSxnrCrNvmn+J2p5ZQXr4AH3x2Fma2kukSv/dESfMLvbF4kk/M6CFn/DC4ZRD1ZzcqGxJ8u7bGkp88UHqRKHwWDqF4DSYYPALDV/jvpnApUHfWvjt+ImcAc5oWdEcVwpCBit2sow=;20:VJZP7M5Vcxru+m37rxvBheFRnzKFka92g/9Czh1kiJA7I3TlxAQgyZ/66ZJNHDAXAuem2EIdUKL/PejFse3gdHbgs6kESJUxKfpEZwyqQVU6WD80ioWmYdKbNOIZzoEITipIhfeyjiOnhJWDfTEYymVeNfXXSuv8UJ0U9AZ/6Wv0/TRcqt1Lpx/ikCfBUdjAMw5C4lIb5PM/oUmk55p+ezmxfvA08lGlnt/1heUAZIx5e4xPyhdH5U8zwap0FkqRjjsnzDBNZjrfXhdph1zfbGpEFVP+HqENoZyK4G8e7kisLsmgRwWydg6xkFcd/H+nu8PBGSEttThWttjKcO6MONSzeT1u7DJ+okFTRFYYioKreNEfHEYDrKBNhpzNQPHWY2zJWC/b9yI16V+7qXvLv2h3AbppCZ5PMypuTL8FTZXC0CyCOVFHkRts7iuGzVxxfaRD5vk4kaJfacWib5O5xNnwD5biMtWGwFh6WJltoxDyeaKZajjHLJuAtTX00+dO X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(227479698468861); X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(6040450)(601004)(2401047)(5005006)(8121501046)(93006095)(93001095)(3002001)(10201501046)(6055026)(6041248)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123558100)(20161123560025)(20161123564025)(20161123562025)(20161123555025)(6072148);SRVR:CS1PR84MB0230;BCL:0;PCL:0;RULEID:;SRVR:CS1PR84MB0230; X-Microsoft-Exchange-Diagnostics: 1;CS1PR84MB0230;4:KDCs7zHivrQARRYoEc0W8tRZZSpLaTVCu5Shb+a4ef8CW1c6sMrMlD0mIbHlS/WUApwSXOlAyerzm2b0azzeRClG/vNdf288tt7EMtgsCB6h9y4FRFEq9K1roWNmuXMxc5IotBFJdCJop0LB2Ax/R0nEsCO1L9NLAzSA1p25YJ9rB0df2AH8xAWsJyZ1tfI1GP5HNkUKwbCmf4aUG0Uiyr7Gxfw8NjxXZ/T2TEtluVooDIkcPp7qHvtNpV1Gun3HtBi2Cgef0qD/tk0wxqQH90p58Lj0cvnTAxgzTYSuLycJ4slezZXkNn55wIcg5080KF2yaIszad6R9q27Jeyq2C7cv4RfB19wdSSdVaC3i6dMQcWtVGBol82ALvQ7z0SSHooRdqiHlUJxRw6APKZw84zz89bEQ3zBRkvWCtPNjhRhDkJ5W7qD9pz2bkfDFxN+K/yrobWc5m97w+2m4I6adiPS88a9cRK/EMSTssTCs/2TTaIiKGWi4C/uwrmlDBy9f99JqgdraXf3Dz7To4x9PW1ec12xGmgvghqC379s3JuM7hAY9SQivFvnIG7/xDwIa4i81A/IT2A81ugnQ8P1GOjLbkecydjFXTHOqQrwD1ZtAn+R9EXYUGPmP/DgPCByl9KfUVRS/aPX0FSYhsSSw6Yuar0Hws/ygI72Lm29rcAxb8LKjazd8mN/nBdfC6y+VHh1tk9LkRPmcTqkkMTciCFrBXprNXMHWFHyREv4wSGReCfUDIDyXWwjQV8oHEQsCDmnNpVW3WpAyW7SfL2zId0EsSgH7g9ygkmImIhzmvShbmK8DkFjFEqFVYGyoUtvH9ileu13tKjSzEjbBcxfMYLRZfhXjEirF99pUGFqcdM= X-Forefront-PRVS: 0316567485 X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10019020)(4630300001)(979002)(6009001)(6049001)(39860400002)(39850400002)(39400400002)(39410400002)(39840400002)(39450400003)(24454002)(377454003)(230700001)(54906002)(4326008)(50466002)(64126003)(33646002)(478600001)(65826007)(189998001)(229853002)(53936002)(83506001)(49976008)(6486002)(3260700006)(38730400002)(25786009)(23746002)(53546009)(6246003)(36756003)(305945005)(7736002)(42186005)(8676002)(31686004)(86362001)(2906002)(76176999)(54356999)(31696002)(5660300001)(50986999)(2950100002)(3846002)(6116002)(66066001)(65956001)(81166006)(4001350100001)(65806001)(47776003)(78286005)(969003)(989001)(999001)(1009001)(1019001);DIR:OUT;SFP:1102;SCL:1;SRVR:CS1PR84MB0230;H:[134.15.31.44];FPR:;SPF:None;MLV:ovrnspm;PTR:InfoNoRecords;LANG:en; X-Microsoft-Exchange-Diagnostics: =?Windows-1252?Q?1;CS1PR84MB0230;23:bWJkkMAffyOloQz1aL5szGWTokYfJWA75mP/4?= =?Windows-1252?Q?F7BVDK8emlABgGRQlU+CVwUq4WG6MQ+iA5iXb1Ew+GNE8ky0tTnBCzvr?= =?Windows-1252?Q?y9Zv+iF4a3+nSi+q4w2mXay7jCs+M4Bmwwl5BxY6N/GJysXKLjnBhVCo?= =?Windows-1252?Q?Vy+xJYF9CDQTHLaKA33lxbsS/YIatZTYlUam1HnVPNeVnfp07f6k8Ofj?= =?Windows-1252?Q?XML7IruC4GjyIuneZ2HO4w19Q0INoGWYgIQdY/AqoiGstRKT3RrDZemF?= =?Windows-1252?Q?Z8KYWTf445jEBWAhEDM09SlRqpxOSO4bQCxQi4uI/KNb0d5k/22jGVAZ?= =?Windows-1252?Q?06f+V4ON+st3meRiTI3TeT4pJUXvprQGLsQbV0IfxiuRk+MpzZoI6CJR?= =?Windows-1252?Q?B4/nFkYroewUdBYdTXFMn9V3K8rsH0tPYtFigZl3Ij+KavY5pkBfbaWB?= =?Windows-1252?Q?UblmdT/ZLu/4xE4wuaSfAPPlzaGtzTFfB118wE4XM85FyrVDkDqUmU32?= =?Windows-1252?Q?JlKuOGg/CWvucExBw1r4ofgdcAmwVtgvS7KcxIxsonfrewhLHE3yhiwG?= =?Windows-1252?Q?VzBxwzM532hxTSLUQ6sxUVEXk9PXSS+me0iqRGW8KxE9yxTiZGaV5qxU?= =?Windows-1252?Q?8UW/joQ9H/YwmdSppqFTjepqLddKJr4GaUfaBDysB+WdGf4IHS11t5V9?= =?Windows-1252?Q?IdduWRCx+NUIUuOau1wWG7LTUP/joRdsyFgsLDJALMDwwJvjtDfmz5nH?= =?Windows-1252?Q?UrdL+bJkhUHovG2PlMofro/kS/pM/jZErqmdErCiP9PmwGONAdWtHRaN?= =?Windows-1252?Q?CgElOCcnSSXG1DV+6uMSk7SpWXRh2Se0PQY/7Tl5d7ZWhst2Mgj2g7Ee?= =?Windows-1252?Q?89fcip/wOLq8l+LfcLcMwi/jzWRiIiEYEyh9pwry78oBTvbb1ng/LR5o?= =?Windows-1252?Q?g+RJjngdmAFEqAfM3JOOGP0zEQqmOf+MZo8VV2RlSzUqtvGB7m/bgfed?= =?Windows-1252?Q?eN72K5wVQYw3q8qHraQkgdDLsDEZF8FGCj7rdW0B0fqGcAijW0FBdps3?= =?Windows-1252?Q?Ybd8Mz6Q2ERS5j1Ko3WKRVdJ3wqO7lROSF8PGYB+9ZG52XFTYTLd9qdL?= =?Windows-1252?Q?kt8XsSD0EWqfTcIBlG2k0K6tJh19Rp/l9+XUHmZVwcmMqj1GT/wk16Su?= =?Windows-1252?Q?bXjR9nDkDn7d0/Y5114o/BX59y08huwX7iK0daAr3PdysjZhuRYqXqym?= =?Windows-1252?Q?I6ce8JHd7pywSGfZIBirK/tLa/rIMNVUpyXca97haMjDLcsBJFFNeRer?= =?Windows-1252?Q?R/NkIg4UxC+JQoovYqZSDCx3syplmqlSW4aNP3RG/bKzc/6xbIj6Nz9s?= =?Windows-1252?Q?x3yLzSm/tDJ0mLwQAG4zVtI8nfLNaC0l3PLaszunhMniOxNPyD8krAL1?= =?Windows-1252?Q?ZOaLd1ieh4zT/lK44KNhode+c2MghyC/IDMJAle4q7Jz49XC77qumh2j?= =?Windows-1252?Q?QPESh5fe9PeE1bASGq1TNUFpOZCeT9jeUop5bsYJMf3r2WXhHM44fJLI?= =?Windows-1252?Q?BhNPn4gf6x/a7I=3D?= X-Microsoft-Exchange-Diagnostics: 1;CS1PR84MB0230;6:XoizXxAJYSZKFkjTMenyjys9SGYwCkAiBjM9qn1fGZnlJSNkxyTPB/NqMO096oAIbHVlBSS5jNJSvHu58P/orXFS2lLKIIfvB0OHD85cvhwkYzCtNBBec3ATryBumuf0PWTPNXssZX45XFwiqHN/9T0xwJv8JA8wb32LXpXu9/Pf1TQodRTdFaPgVDBQDpst1p73LgycsL67cF6bPbTZ815Cp6pDxrC4PmQZr1bDVxPPZvcK45X1IbxKnHcQanSyeCLvxF3F2nt2nqW8HV2J+aBhwObE3yxZNEXhlQBIcMxEfPplu2+SIHAka1levFM4deEG/tVSnfJqbxVP3hAInOXcSuu4wozXWsFXIaLkhKTHcUVouEuzPTJ1iDwXfFmvNxIN4I5l6AZUFhLotyZzn1wlu0DE3qOi1r3kvZk2dVAILTbvSQHMDb32gWW+LfKn6eejgiyd7Gi/VEsYqJ53ty3Dh063qOZXSP9uuqgzTcCU8TEWeLlgUvdJjft8v/orjAzmREtiHBSyf6uYmZhMnG9eCIswC1UEW+Q20FQxyCQ=;5:gEdmWAuvNJwls9ZhY5Q4OquamiBL2XAdB18EqkVMRKccBfD0OpZZ6d8MruyjdGg2BWY+OcdGTKVtav4HCYnMglIm/f9+J9zNhXbdJKolfgboGrEsYae6Ieqd8iLegaBKAZBEou1y7c0dqx6zcc7Crg==;24:ILoOVABhirUEnUnJoB/HGqr+IBO6JkWt6fFyGKFBgR21iWhR/3XsNwSQFEybtio8cKqhazMcMJZQpMAQwF8Ob+ubMxHdoZDlFdtkp+zQlBI= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1;CS1PR84MB0230;7:8oBZ8cK+uG54DmhHL0Kc/fA5uM4Hm/IzhW2r6bC3Zn85dPDOpUe5uRlQtKPOORC/svDusBiZZ9yW9p/y82ZbH8l5z+SLGuUOmFQTjerp9Marft1uKeMWA0mnHsbjO9sNyFNqDKMAWA9677jd4/I5vSbphD2eg1bxXuCNTQ5obN3Cgiya0OF8Oa5Wsc1TVGRxqSc6SQWmzBjhfV9CSsotXh0ODvLEa0yptqIiQL2Ixs/u+8a17vcEMFzkZs/BcTT7dhjt0gBKiyuOoWBRkDyZdnntLHMdVKwP4rXlu6Oli88RrKYUBOLV4UKnq+HSc/ep41a4qMHLgEh8yQVn9FmyKw== X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 May 2017 15:17:30.8486 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: CS1PR84MB0230 X-OriginatorOrg: hpe.com Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Acked-by: Mike Travis On 5/20/2017 5:02 AM, Baoquan He wrote: > The SGI BIOS adds UVsystab, and only systems running SGI BIOS > (and now HPE Hawks2) will have UVsystab. And UVsystab is detected in > efi_init() which is at very early stage. So introduce a new helper > function is_early_uv_system() for later usage. > > Signed-off-by: Baoquan He > Cc: Thomas Gleixner > Cc: Ingo Molnar > Cc: "H. Peter Anvin" > Cc: x86@kernel.org > Cc: Russ Anderson > Cc: Dimitri Sivanich > Cc: "travis@sgi.com" > Cc: Mike Travis > Cc: Frank Ramsay > --- > arch/x86/include/asm/uv/uv.h | 6 ++++++ > 1 file changed, 6 insertions(+) > > diff --git a/arch/x86/include/asm/uv/uv.h b/arch/x86/include/asm/uv/uv.h > index 6686820..159f698 100644 > --- a/arch/x86/include/asm/uv/uv.h > +++ b/arch/x86/include/asm/uv/uv.h > @@ -19,6 +19,11 @@ extern const struct cpumask *uv_flush_tlb_others(const struct cpumask *cpumask, > unsigned long start, > unsigned long end, > unsigned int cpu); > +#include > +static inline int is_early_uv_system(void) > +{ > + return !((efi.uv_systab == EFI_INVALID_TABLE_ADDR) || !efi.uv_systab); > +} > > #else /* X86_UV */ > > @@ -31,6 +36,7 @@ static inline const struct cpumask * > uv_flush_tlb_others(const struct cpumask *cpumask, struct mm_struct *mm, > unsigned long start, unsigned long end, unsigned int cpu) > { return cpumask; } > +static inline int is_early_uv_system(void) { return 0; } > > #endif /* X86_UV */ >