From patchwork Mon Nov 7 15:09:13 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jan Beulich X-Patchwork-Id: 13034557 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 919F3C433FE for ; Mon, 7 Nov 2022 15:09:46 +0000 (UTC) Received: from list by lists.xenproject.org with outflank-mailman.439433.693477 (Exim 4.92) (envelope-from ) id 1os3kV-0007XE-2d; Mon, 07 Nov 2022 15:09:19 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 439433.693477; Mon, 07 Nov 2022 15:09:19 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1os3kU-0007X7-WB; Mon, 07 Nov 2022 15:09:18 +0000 Received: by outflank-mailman (input) for mailman id 439433; Mon, 07 Nov 2022 15:09:17 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1os3kT-0007X1-I6 for xen-devel@lists.xenproject.org; Mon, 07 Nov 2022 15:09:17 +0000 Received: from EUR02-VE1-obe.outbound.protection.outlook.com (mail-eopbgr20063.outbound.protection.outlook.com [40.107.2.63]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 2404e2da-5eae-11ed-8fd1-01056ac49cbb; Mon, 07 Nov 2022 16:09:14 +0100 (CET) Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by AS4PR04MB9316.eurprd04.prod.outlook.com (2603:10a6:20b:4e7::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5791.26; Mon, 7 Nov 2022 15:09:12 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::4da2:ea8b:e71e:b8d8]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::4da2:ea8b:e71e:b8d8%4]) with mapi id 15.20.5791.026; Mon, 7 Nov 2022 15:09: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: 2404e2da-5eae-11ed-8fd1-01056ac49cbb ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Y9LOfQ9iAiXbyXpsZXX2mI/4yLS3vss3npSMOyCXrrAlTPYLFmRYR0cZab2Ad83o4DTNqy+FXlDbiLaavJ8h4FUGGbxg34TXoEGs6AHXqPahs2tvAIX76y3W9gnOFdxHbI2GP3T7iwoBIl7pW+mh7MpSto02RI7cBpOELvefb7x2s0AH2XW+h/uccfSogb0mQ4i9Pp/ywGy+Ci7DEQN49SKwor0e7X3ya5t2gqvqxFWL7w+LwRI0lnA36u8QBAPt/d/lyzMpmdMQY5ZasA8QSu1AfoTTqV8DwU3O0WexpxrJQorqXTO2dIeLPfj8/uxhP/dwSTwV9ex55v2YhPkP1Q== 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=szw5kFsGTSOmjgpURbNvhhMr2iPPJJmIgQjLJijPsLE=; b=djpctp75vnNVXvTrv8wY4/uIYMa+dc/Gv3IfXXY2S2CatEGGtuBHEHt77EFvZSTDP1ICdnMdDu429LKXVxnYQpEzrrQfGLdmKpimoAS9b16PWEVexFpm14GE7cydig9vqmVjNJk1PZ1m4nTgXdaOEgEOvh2g0KXkBsbV9hEoIk3ixtiwvUvbCIFeT8/kDnljC6fsvvkAERyDTDBXHicYC02G3ElBybVIZPsfeYhdEontoJ0AWJ0TwP+LnjQrehIuzLoQTzdjTnHb1pDVz0z/EdgqXCDPZ6FFnrl3TR29NwsTcOtxW8YlluFa6XfymPZYT5C2cIMtLtBa6X/gEA94Vw== 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=szw5kFsGTSOmjgpURbNvhhMr2iPPJJmIgQjLJijPsLE=; b=EDrtJSVTRI8OjlY/XsAz4xXRNX/WKpdLIEDkgWoRnyoVtz1QxkFcJvh6tDra7Ij441Yx//f4PZrWwWE376K+7LlR9V6fD3foOruGs/v17+kyaK3EyREeI6B6kLoGP1imogXQQUnwd/tpcTVXMfZDwm3Co7g0rG6mNRZjMC3K+QsYwJjNb2E0/fLADqNRuOf15AIqTkquNxJYvJhpdOVENeTnMEIKH4qhpBORNr+COvBDgH9uUTswWYLuSWkxfF/Sbk/w9/k7Fro2chy5VaUmtxoaNMjOShtRrGQjbuh46I79KOeAR1JSS+0GN3OpMYe7LcZFnc0ftlDRkWmrzzp/Ig== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: Date: Mon, 7 Nov 2022 16:09:13 +0100 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.4.1 Content-Language: en-US To: "xen-devel@lists.xenproject.org" Cc: Andrew Cooper , George Dunlap , Julien Grall , Stefano Stabellini , Wei Liu , Henry Wang From: Jan Beulich Subject: [PATCH][4.17] kexec: restore hypercall 1st arg's type X-ClientProxiedBy: FR3P281CA0035.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:1c::8) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|AS4PR04MB9316:EE_ X-MS-Office365-Filtering-Correlation-Id: 20194bd2-9855-4e77-c911-08dac0d20734 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: P/X3+JUzXjQu+2xOxS3ik1H81v6auy0Ci/iBm8me25G137dH6d9K2S92pkfYHUojxr+olYutHQMrgTwrSy2S2f2dkTL/0ILkZPRhmzRP7x+yhSGWcp7MYjKmsFFso2YNOzkcnonrinaYj1jCpxrBRljZtrrMD6wMghmzBL+9fJp1Z3DO+FJRdjgd3EPfalq1fH9no4oSW3GeSBBsM7xgkPPu5HPC0h+lDpiq8zAOwJLcT/Rwm8efpy6IXh3yrepxzY/Wv30EOEADzd2TgiQdr7XxWcwNRlVPf991yLjLq3m37jxeSXs3HN9WXyZn1gVRLHH6Yj1gka4Jhs6/kug+FHddkLGNnYCSe3b2s1rkYmpj/Bd1yA9oIaE5FDqgRihao5ZuJL3AAIVQsdyiGke/etAVvfqubTV+JlkVkVVejKAckZVMXf2p6DL4BVyjOEWNkIDR5d7Jdgp8S28jGmrMsctlZK9BOSqUW1JAdUBEXWfHN4qTPdpvB+oJi1RaDjewG0xzq7MR2gjDivIXVLor+fgMIRaWVLWcLj92VpZpki9qC+Ttav454uUE8GeS8xVjUwlSzoHVWe8l7fzNATIDYb4zO1RH2e2I6vH8KdPbWBCvPAoS+YX/Bl0LXPfOBCEmq3tq13LRGx2ZSwCgPX/nch1BcFNLtC9eQ2j6KXdjpoiDvKvLSgFY51/mufJKBMm4Yy58xQO0vxxhl94tsxXryPhKBAtum+ckxShY8UuFEIfngn4JK/AGE9l1dkDMTV49aVhK9jcRgmvfhXAvPpRqe2EsOGAoyBS4DhYCmt+/Gi1MD+y085xRNfJa6mQEIUb/ 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:(13230022)(136003)(39860400002)(346002)(396003)(376002)(366004)(451199015)(186003)(38100700002)(6506007)(6512007)(26005)(83380400001)(2906002)(316002)(478600001)(2616005)(54906003)(6916009)(6486002)(41300700001)(5660300002)(8936002)(66556008)(66946007)(66476007)(8676002)(4326008)(36756003)(31696002)(86362001)(31686004)(45980500001)(43740500002)(309714004);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?q?ZVOoRjv5UgFyG68c/1sky88/2XzZ?= =?utf-8?q?rfvS527w0XZ1CDDz1Nejcie7E7XbuKRJv1wdJQFB/NOhNp63meiEDLC9MHABZhprW?= =?utf-8?q?WUINmYFQx+bYM6UpvOEtL4niZkMU44KkjOIrFfxNR1QhnjSbEXPpXK2pDsvFcB4VJ?= =?utf-8?q?IU+5CsO5DnekQHZW2sT5SnT1WiR9u3UdjNJ17XB0X/+LpK8HWe0cxrayTaASbv4GI?= =?utf-8?q?Q/IGfThRbo6esTd9Jd+8cQYmecz32lFZ4mUiJ2S+ky4ZKW0llRI3URUJlwKF5N9rf?= =?utf-8?q?DSPiC/8rySqauGeRkDbcXUY5rmjyYzEHo0CjQgiS7c59yGIImpV2nr7xSxixiUt5o?= =?utf-8?q?hQEwcopS2vmfcA2l4tOBoR0pHVCHAV8ABEvbHSkyaV2HrJcvcXGODrxCygONpKUjj?= =?utf-8?q?YjC8mIpIJoiFsatUnrEV7DRxaQ+vOJnhFY0TgwoLiFEKRk2ZyZg7xreaW6zPJ56YK?= =?utf-8?q?sdpPoK7be3I0MAjWDFhdJZnoVGdQ1zLkxsofUCYcaTBCglq3FN/S0uW+oIvIh/9P2?= =?utf-8?q?Vh1Zp5FGawjpB/WgPMbWT8B548SrJnl0J4zw1so+KnHJXKaUvADzOKamA6JFCyK3j?= =?utf-8?q?+WDCHcp4NxbaDTpg2booKETT6cRQ7O0RGSCJAFNdswdQ0nJC95M5HZjb1WMAhlBEK?= =?utf-8?q?32ToiaM+5BEJCjLvRvd8o0P6ewjxrXsxyliE5247/2yUuU+tWJU62Ki8Z3XfUnc+8?= =?utf-8?q?8lqwEIupN31g9/wSkUgUQAt95yxUl41PYsjufjvK5DWf7hf8h77fJFK9HNWbz2bqj?= =?utf-8?q?vM9zLUP49N3CXap2gJtLx9AQyBdZn/nTPTQcDIT1E1P8c7f5zYBYygWOevtMqMFo+?= =?utf-8?q?HOuRicmB1sZRsGZhvCgNYIoG4rWv8uNUkhMFbm1t3mrJmxNMG7zxATHs1TfHc5EH+?= =?utf-8?q?nAfPj+6PZxl+fvlAXco6prTbTigxvgFe+L1a1XbOYYYPJ8QNVdLO/Rqt8gDVpEDxJ?= =?utf-8?q?AZUm2ROJdMPfd/j+6EuoQhhYfxhhy9+JMfPGoHJnjA0s21zl4fd94h191s1l13WKs?= =?utf-8?q?Tlc0CE0pr8MKh00yOMSdb+T3h4V3SMy1kJ/ZknAh1sMIpOrI5eQ4+q15147226Ewu?= =?utf-8?q?RJvNiVHNiZ7nuAkes6T8GIb3l4Hdny8EZiOPUolgt1rvGuG3vlx0L2BM84X+O/MZw?= =?utf-8?q?5rti8ld8QI8RM9XxXr6JIG8ajcTe6SvatXjnV1aEXJPDvq9y8nO87qrtDbyq+Uu6m?= =?utf-8?q?1O8V7O4OZWyIJ27019gVVBGF9L+ccXPU0ZQrNLGUScJkZPUnlmvb8aSdNrYgEIOfj?= =?utf-8?q?jmCYbpSBXcK7HGUii7K8zddcq+UqjV7Ws3kEz433udQWReYsIesSUxQiZwkHg3aqZ?= =?utf-8?q?1zp1PU9wccNjasjZ4Jo59g1ALyOz+vCyc52E9+PmZt/ae5ajAeH28447xW8nS1Wi5?= =?utf-8?q?/d/XkAp3zucQvb2s2y5vlbjzI43FpHQy4x9U5/NakjlRsf1UuIiPo9jZgslWVcyaf?= =?utf-8?q?XhaxC3TN4kkghJqMafkGeepCW8FuwZovMKfLlSL45F/hOm3eymVRM7FcZfQd7Woc4?= =?utf-8?q?ALGs48aErdQD?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 20194bd2-9855-4e77-c911-08dac0d20734 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Nov 2022 15:09:12.6661 (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: 7mTSHgBx4I3P92GV2NCdfhree2QVxDD2Zt+Y5xoC/FFpiAxsZ9b8ncWXAeF2LNYxpVh+qK/UyMoL8ynLEqj1OQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS4PR04MB9316 This reverts a small part of 7e21b25059ed ("xen: harmonize return types of hypercall handlers"). The change from "unsigned long" to "unsigned int" for the native handler function meant that previously invalid values became valid. While perhaps not a significant issue, strictly speaking that's still a change to the ABI. Don't go as far as restoring the compat entry point's type though: That one can't have values passed which don't fit in 32 bits. Note that as a side effect this fixes the invocation of hypercall_create_continuation(), which by mistake wasn't adjusted by the earlier change. Also take the opportunity and correct the respective comment in the public header. (The way it was it really supports that it probably was pointless to use "long", but that's the way the hypercall was introduced.) Requested-by: Andrew Cooper Signed-off-by: Jan Beulich Reviewed-by: Juergen Gross Acked-by: Andrew Cooper --- a/xen/common/kexec.c +++ b/xen/common/kexec.c @@ -1213,7 +1213,7 @@ static int kexec_status(XEN_GUEST_HANDLE return !!test_bit(bit, &kexec_flags); } -static int do_kexec_op_internal(unsigned int op, +static int do_kexec_op_internal(unsigned long op, XEN_GUEST_HANDLE_PARAM(void) uarg, bool_t compat) { @@ -1265,7 +1265,7 @@ static int do_kexec_op_internal(unsigned return ret; } -long do_kexec_op(unsigned int op, XEN_GUEST_HANDLE_PARAM(void) uarg) +long do_kexec_op(unsigned long op, XEN_GUEST_HANDLE_PARAM(void) uarg) { return do_kexec_op_internal(op, uarg, 0); } --- a/xen/include/hypercall-defs.c +++ b/xen/include/hypercall-defs.c @@ -117,9 +117,6 @@ callback_op(int cmd, const void *arg) #ifdef CONFIG_ARGO argo_op(unsigned int cmd, void *arg1, void *arg2, unsigned long arg3, unsigned long arg4) #endif -#ifdef CONFIG_KEXEC -kexec_op(unsigned int op, void *uarg) -#endif #ifdef CONFIG_PV iret() nmi_op(unsigned int cmd, void *arg) @@ -149,6 +146,9 @@ update_va_mapping_otherdomain(unsigned i #ifndef CONFIG_PV_SHIM_EXCLUSIVE platform_op(compat_platform_op_t *u_xenpf_op) #endif +#ifdef CONFIG_KEXEC +kexec_op(unsigned int op, void *uarg) +#endif #endif /* CONFIG_COMPAT */ #if defined(CONFIG_PV) || defined(CONFIG_ARM) @@ -181,6 +181,9 @@ update_descriptor(uint64_t gaddr, seg_de update_va_mapping(unsigned long va, uint64_t val64, unsigned long flags) update_va_mapping_otherdomain(unsigned long va, uint64_t val64, unsigned long flags, domid_t domid) #endif +#ifdef CONFIG_KEXEC +kexec_op(unsigned long op, void *uarg) +#endif #ifdef CONFIG_IOREQ_SERVER dm_op(domid_t domid, unsigned int nr_bufs, xen_dm_op_buf_t *bufs) #endif --- a/xen/include/public/kexec.h +++ b/xen/include/public/kexec.h @@ -64,7 +64,7 @@ /* * Prototype for this hypercall is: - * int kexec_op(int cmd, void *args) + * int kexec_op(unsigned long cmd, void *args) * @cmd == KEXEC_CMD_... * KEXEC operation to perform * @args == Operation-specific extra arguments (NULL if none).