From patchwork Fri Sep 9 14:30:10 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jan Beulich X-Patchwork-Id: 12971871 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 3D2DCECAAD3 for ; Fri, 9 Sep 2022 14:30:30 +0000 (UTC) Received: from list by lists.xenproject.org with outflank-mailman.404428.646892 (Exim 4.92) (envelope-from ) id 1oWf1M-0002Wv-QC; Fri, 09 Sep 2022 14:30:16 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 404428.646892; Fri, 09 Sep 2022 14:30:16 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1oWf1M-0002Wo-NZ; Fri, 09 Sep 2022 14:30:16 +0000 Received: by outflank-mailman (input) for mailman id 404428; Fri, 09 Sep 2022 14:30:15 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1oWf1L-0002Wi-KT for xen-devel@lists.xenproject.org; Fri, 09 Sep 2022 14:30:15 +0000 Received: from EUR02-AM5-obe.outbound.protection.outlook.com (mail-eopbgr00040.outbound.protection.outlook.com [40.107.0.40]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id eb1762c4-304b-11ed-a31c-8f8a9ae3403f; Fri, 09 Sep 2022 16:30:14 +0200 (CEST) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by AS1PR04MB9478.eurprd04.prod.outlook.com (2603:10a6:20b:4d8::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5588.17; Fri, 9 Sep 2022 14:30:13 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::59bc:901a:98a7:76d4]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::59bc:901a:98a7:76d4%5]) with mapi id 15.20.5612.019; Fri, 9 Sep 2022 14:30:12 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: eb1762c4-304b-11ed-a31c-8f8a9ae3403f ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=LTDB6wC5upZX8sr4LyxMqoN8COcSJdyUi3SvPKQtuYG59gZL1vYQKwpBvY2FRljLtTeqqHH5GpBx26fMOrCckptxU60t1X0zOERnBw/ko21zJorDK7pCZwdljB0NLRJnRO937BfTneoXNUXnf6NW6L94Z7LO4v5yLLdpBpVSi06nTHu8zWrWOgLfGIB+/290yCT3GoCOKUloRAt9KX+Gv7PeVJiSgF/VRH2fYOl3b/w3PY+Mea22kPv1iT04tCK1oSjehYiYFETNY+cqr3zQZs7yKuZeCSox97Mydh9gLa8j52UzIHiXOHqGEOyrTQiRfBDD7pPA7YZE70zg4DD3eg== 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=pYInDRVqF3/giNMsCtExKTIiVPwObn6L8MAQq6YWhG8=; b=DNtp+P9iu0lk11MhkA3iYBoHP6hrjgjr6ZTuJWxmbHG5254HojL+KIIYfQ/izZxTvSyQJlGbYfPNAOmVNb/gGq8/e7Ngjz/sVDdErJbo94QXeOfiA/WZvG0zcUBTqG2rueZyFIiXKekO+THJkTKVFkU9tAmzWGWQtIWHnVr72SJN6f+mqR+F9+3KBz/3MnDuz6skjyRv1M+UjoFMY5SVsw9zaKRJqAU0DlvzzSkc6UpPDKhqJoPq4IsVKj1kTkzmJh7I5+bPAtX3BMGi75nlQlWYfLzx8TNWzLvnw7eCux1cexkuWrGw9SL6fthBZuwf3Omh+NlwUVMCl0rNCcSuNQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=pYInDRVqF3/giNMsCtExKTIiVPwObn6L8MAQq6YWhG8=; b=I0S4WNpwQ6TXPn/EDZToEhq92aQH48ZnLfscU4T0i+hosoPiKuvH1j9V1AvI+g2J2UTfp+oXbS5NKEoVmwRYm7//AN7DlkGnJ5IQqZ/eecfqYZ1O+QRvt/IJwwW96dGukLHaDOE7zGHYgIPzBHo/R90EyIQC8efgEKaafeX+2vnkW/YLT4qgt02IOGQbnSfktF8CueMct2+qlof3e3qyUfA+ibJNQbVR7FKrmBmxeGXVP+mHm9PdFhZcJb/K6DgUHeTVqGshcfpZPXiEg7kQzpNGzKaUk4QgBw0amqxwuBTKq7lJWLdjeC/fOAw2Sq9DVxnle/dQ8MZpG9IhND50Yw== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <3e72f386-7afa-84a5-54c5-14d17609dac7@suse.com> Date: Fri, 9 Sep 2022 16:30:10 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.2.1 From: Jan Beulich Subject: [PATCH v2] core-parking: fix build with gcc12 and NR_CPUS=1 To: "xen-devel@lists.xenproject.org" Cc: Andrew Cooper , Wei Liu , =?utf-8?q?Roger_Pau_Monn=C3=A9?= , Julien Grall Content-Language: en-US X-ClientProxiedBy: FR3P281CA0078.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:1f::19) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|AS1PR04MB9478:EE_ X-MS-Office365-Filtering-Correlation-Id: d9fb6e72-30a0-4f5b-e5fb-08da926fce5a X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 1fLN69NFdD6ZI6Uy7VW5GLChWfn5yNvOirORw5lA2PIuBRpCVVAJLVHCW8fQWvbqRGUsOPNnqr/SO/OJb6q/ixkhMRo9xcHN6vGOPs/S7w52I5R4Ep7YogGq+U92/Srdmdc8PqRE3zOHFg5+tg6MiEsgfoX5HSWcZoaLLHDkduAo7KwXbyeu7n0t8pm1wtz0Bxv0jGP9Ud4V7Sg41KQr9tzBw7MWdG7TPV+2AzKUzqrjNseg+OMClbHV7kn7lz7rhEX3C+4A10Y6GmmmT8dzayk0iDubEEUG/hOaHxaAyFlIeIboCmkjlgNniTMjWgl6c6NuaTRITpZhCCZO4GWRrxm2rW6IEe5OaTM7KoM9o7Auu04WYDhH5jZL9biYgvF77ofjxEqlvvmP7oneCQrC38zAv3fZKtbcVDGrX77l3UuzRIWkO/M1p75OKpug2PAccZvuBWnfAjmIXoPcAcIUCPOPRPvgwpg0tN3/H7Jm4J1aHWjFwUpWBlozgBX5yqdQxFTX1scMT4YnvYHJ22o9CegGBdw3aaFQCLsa6Goyu2gf2k7MuzqhjE9VCOkd/H8h1ZZBFlQmb/i9xQKxu2Wfo3I0FhkGJxnTZ+CXtl1oRLnLim6iZfhit1+Thvpx15YsTbbVNJFDFwqzGMDxzyG8Wu690tUYSF69Om7iDXoTsGQW6k5gUQTAELehyL/Ck9jr3jTwlAlstgH7MjvbtRVZ5kQlPqKsCyoVk/5OlMOhf2IlImTpLFhwLnaqWYc9LlUKpuBzDujl5MIThOJ4X1PJHj43zN0p1eXMehSsjU0R+9E= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230016)(366004)(346002)(39860400002)(396003)(376002)(136003)(38100700002)(8676002)(31696002)(86362001)(66946007)(66556008)(36756003)(66476007)(4326008)(31686004)(26005)(41300700001)(6486002)(186003)(8936002)(316002)(478600001)(83380400001)(2616005)(6916009)(6506007)(6512007)(54906003)(2906002)(5660300002)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?q?OlZ5kI11FTlDXDJqBsvAbi3w5Z1P?= =?utf-8?q?qNr4s9FeJsJ7SKQgvlMoiaT/39MRn9C3jy+UmsPXltxuL/LyLSpKpwCXNFLJV8dRz?= =?utf-8?q?1BOTZagTAZiUkNtjbjVdrE6+NjhIfxD+9Uw8/D1GwBacsHC6hmBbI07WAffyvhx4s?= =?utf-8?q?P6preFdg1QkL+8+/HrnH8/AoTivqtUKAUOCH9XNAepq0DKXoSoB7WmWYY7qmlPphp?= =?utf-8?q?mp5gK1UDUhbHQktgXZNz+JINkWnZYgETfatFtmx0RMk/HokGYeZHcqZ1FDWAdzdY/?= =?utf-8?q?DU7y/lEOoqOfvUDwiA40QrtsIV4m640yrJxrwgWmSLhWsQXRXhG+qLkxqkqyAKLZW?= =?utf-8?q?sXTriLZZJnI5JUX86PpSe5Vp7JXPxZGyeIGIHRYgPsuyN6oXNgQFPxyhwueuFUesF?= =?utf-8?q?DA1y7QYiXpT/mJllNp+CRITtnD413PZA2LQFHRd3kZBNoeNdEEeqiG/L34D8wyNss?= =?utf-8?q?OuTOXFHknGRnr+0fUu6L8pF6nbGiQc243wCfvDqyDbz/IdDYHEv588zvaxshY7a4i?= =?utf-8?q?5thx7+fiYUInli94+FwuJ7olXpRSzXsGRUF0XWlkEvPS98aJ/T4pjryPYuE3bLlad?= =?utf-8?q?kReicQa+8jRJJhnipQ+fGLlePUhB8iLZt39+kVnUSC45QFcm6MQ4GenNuIjFXak76?= =?utf-8?q?WZTz6CUAKOlBOO1cNOS+Bom+IePKQbOUlQCUVKbWadzuqwRkWdrEyMMebeRsO0EN9?= =?utf-8?q?Al/eYFFksIfzPQ8L4NuHNE5a13lRrs11mphhHiM8BD3K1tYA6P6cfUQCVC7t9h5b+?= =?utf-8?q?i0E/24PRiIhLCD0xI9HMbs64Li3eOhZUDwXh3oZ4W3p+ZMi20IEJKQkb5XeqIRteZ?= =?utf-8?q?FN/notFVIuPQQFaVyoFFst35VxOcUu77iKQXrqujb1PD/x74RIOu/bRjapZfR8wRM?= =?utf-8?q?joZb/R/NGEPyaOVzXh2o/xR6jz1X9HNAkeVVS3gTgA9mdUfNvr5zPUBKN1d6TMgZt?= =?utf-8?q?xL97V9LceDopCtwfkQYTSptuMvuaWk0Lrq+PJFdjr8t4aU+K7w8vMXhddRAGcLlhr?= =?utf-8?q?0h9xc/gUzRTlz91oMQSj8RtNiRt/K7ruHf2RpdjRMVcnQujxQaYoGF1a6JlDP8ssw?= =?utf-8?q?w3zv3jF9AjMVtL6fY9SCztHf84fq1PKhsJ7jvb11tgJvPe7hs/7tetZh2zWWifP1q?= =?utf-8?q?2zOJ4N/XGqKxzB9+7ZcgZGde1R6ht/VskjJ1eV8hWF1yB1oj9F8McqPdfYA0Dv11v?= =?utf-8?q?ZS5sh6v98DMR1b6wXnum7Zr4xQApxrVPIkxxgb1nvO2zfm19I0RFVyS78Mo6Ch9wu?= =?utf-8?q?qg3J/6TFij8mnQ0ZZjwJI1mbCFx8fySmDARQdr3724f4FXVCqoAvdB5vrBOeJ2ZAV?= =?utf-8?q?XRrK9exlQgkywYUniQ6/jH9D+7vImFQi/ZwHfdSrBY9j04mVfww6BGYsfHPvdKAav?= =?utf-8?q?aWs0BeV+fmyRtJ/KviQN7RpHIV8hFrhhfa+WxgolYO/Mrs3MgbHhZ48DJEFy3MczJ?= =?utf-8?q?SknuS8sROCHpAlIQbbbujOHqjDb+Mg/TZLbSECES+KK0l7tEvOvw6ParUZM45PXsU?= =?utf-8?q?bUzxJXzOxvL1?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: d9fb6e72-30a0-4f5b-e5fb-08da926fce5a X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Sep 2022 14:30:12.8060 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: v7misG8T4qsT0CDc1ToKdycSjMhheShdMSg9nGyh+VEk7YssUfKzBns0o1yU4JN4oljPpU+A5NrDpl5HZyy3EQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS1PR04MB9478 Gcc12 takes issue with core_parking_remove()'s for ( ; i < cur_idle_nums; ++i ) core_parking_cpunum[i] = core_parking_cpunum[i + 1]; complaining that the right hand side array access is past the bounds of 1. Clearly the compiler can't know that cur_idle_nums can only ever be zero in this case (as the sole CPU cannot be parked). Arrange for core_parking.c's contents to not be needed altogether, and then disable its building when NR_CPUS == 1. Signed-off-by: Jan Beulich --- v2: Disable building of core_parking.c altogether. --- a/xen/arch/x86/Kconfig +++ b/xen/arch/x86/Kconfig @@ -10,7 +10,7 @@ config X86 select ALTERNATIVE_CALL select ARCH_MAP_DOMAIN_PAGE select ARCH_SUPPORTS_INT128 - select CORE_PARKING + select CORE_PARKING if NR_CPUS > 1 select HAS_ALTERNATIVE select HAS_COMPAT select HAS_CPUFREQ --- a/xen/arch/x86/platform_hypercall.c +++ b/xen/arch/x86/platform_hypercall.c @@ -727,12 +727,17 @@ ret_t do_platform_op( case XEN_CORE_PARKING_SET: idle_nums = min_t(uint32_t, op->u.core_parking.idle_nums, num_present_cpus() - 1); - ret = continue_hypercall_on_cpu( - 0, core_parking_helper, (void *)(unsigned long)idle_nums); + if ( CONFIG_NR_CPUS > 1 ) + ret = continue_hypercall_on_cpu( + 0, core_parking_helper, + (void *)(unsigned long)idle_nums); + else if ( idle_nums ) + ret = -EINVAL; break; case XEN_CORE_PARKING_GET: - op->u.core_parking.idle_nums = get_cur_idle_nums(); + op->u.core_parking.idle_nums = CONFIG_NR_CPUS > 1 + ? get_cur_idle_nums() : 0; ret = __copy_field_to_guest(u_xenpf_op, op, u.core_parking) ? -EFAULT : 0; break; --- a/xen/arch/x86/sysctl.c +++ b/xen/arch/x86/sysctl.c @@ -157,7 +157,7 @@ long arch_do_sysctl( long (*fn)(void *); void *hcpu; - switch ( op ) + switch ( op | -(CONFIG_NR_CPUS == 1) ) { case XEN_SYSCTL_CPU_HOTPLUG_ONLINE: plug = true;