From nobody Mon May 6 22:41:50 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) client-ip=192.237.175.120; envelope-from=xen-devel-bounces@lists.xenproject.org; helo=lists.xenproject.org; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org; arc=pass (i=1 dmarc=pass fromdomain=suse.com); dmarc=pass(p=quarantine dis=none) header.from=suse.com ARC-Seal: i=2; a=rsa-sha256; t=1638529028; cv=pass; d=zohomail.com; s=zohoarc; b=BWxPOulYCt7FSbShxnCuo9xsTieyzo4hbfBX7IIzBXkTO1/wRaxdFzih51ZWucZYAQX+YGCjtWEfTHe//NdLCxI178iQmNK9NNh+mbBcN3MorkjAFu2rMs81uoGOaL8K8IHhtItWKOqWS8sN07uMhiHVyPgU3ZsSJDB4R140Kjg= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1638529028; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=QD9We1Cx5H7zmR7/ANXcnQ1Rln6q7zD3LKt1U64J4VU=; b=VaDPt+oeTrSK9SbpZ6jByRKd4ygBD1vVuwlQo0ETVpMyn0qv/smzzTOfa3HcHQQZEXACAHpc34MBpEIYc7+vCyxJE2ve/F5iMqv822aRtswAqz28qtYIp6tF7NPGMoJQog53lhsf8m7NYJk0DiH4Iu5as/TNY+piAWTTJF2FHQQ= ARC-Authentication-Results: i=2; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org; arc=pass (i=1 dmarc=pass fromdomain=suse.com); dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) by mx.zohomail.com with SMTPS id 1638529028415652.3215290896725; Fri, 3 Dec 2021 02:57:08 -0800 (PST) Received: from list by lists.xenproject.org with outflank-mailman.237341.411644 (Exim 4.92) (envelope-from ) id 1mt6F5-0007t1-JR; Fri, 03 Dec 2021 10:56:39 +0000 Received: by outflank-mailman (output) from mailman id 237341.411644; Fri, 03 Dec 2021 10:56:39 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1mt6F5-0007su-G8; Fri, 03 Dec 2021 10:56:39 +0000 Received: by outflank-mailman (input) for mailman id 237341; Fri, 03 Dec 2021 10:56:39 +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 1mt6F4-0007sk-UW for xen-devel@lists.xenproject.org; Fri, 03 Dec 2021 10:56:39 +0000 Received: from de-smtp-delivery-102.mimecast.com (de-smtp-delivery-102.mimecast.com [194.104.109.102]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id b0033287-5427-11ec-976b-d102b41d0961; Fri, 03 Dec 2021 11:56:37 +0100 (CET) Received: from EUR02-HE1-obe.outbound.protection.outlook.com (mail-he1eur02lp2051.outbound.protection.outlook.com [104.47.5.51]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id de-mta-13-w61jVg3JMDK7ZefYJVqMhw-1; Fri, 03 Dec 2021 11:56:36 +0100 Received: from VI1PR04MB5600.eurprd04.prod.outlook.com (2603:10a6:803:e7::16) by VI1PR0402MB3391.eurprd04.prod.outlook.com (2603:10a6:803:3::23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4734.23; Fri, 3 Dec 2021 10:56:35 +0000 Received: from VI1PR04MB5600.eurprd04.prod.outlook.com ([fe80::5951:a489:1cf0:19fe]) by VI1PR04MB5600.eurprd04.prod.outlook.com ([fe80::5951:a489:1cf0:19fe%5]) with mapi id 15.20.4734.028; Fri, 3 Dec 2021 10:56:34 +0000 Received: from [10.156.60.236] (37.24.206.209) by AM6P193CA0132.EURP193.PROD.OUTLOOK.COM (2603:10a6:209:85::37) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4755.17 via Frontend Transport; Fri, 3 Dec 2021 10:56:33 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version 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: b0033287-5427-11ec-976b-d102b41d0961 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=mimecast20200619; t=1638528997; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=QD9We1Cx5H7zmR7/ANXcnQ1Rln6q7zD3LKt1U64J4VU=; b=awNekeR3AE3BFT+EhaUWUD/0Iy/eaxKqbkla6/7tlbblbe2MEzbrBiBtWujaD3/8uuxGL8 Lm9fso7KVP5sINjmJml5rROYDWwbLSkDVAdbRR4P5Hvwv9VzNyzWVd8T1dhjAPoqcH91bm H6Y5ux4vIQp75ag7GW5GLslRDgxJBPQ= X-MC-Unique: w61jVg3JMDK7ZefYJVqMhw-1 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Cypgf/yfxOH2eOVbElMvsTcMbRRiENLi2VQLrmaLcdUxYgpjxiHM78q3O838shZfCPo1gEkKkHkNAkIuvtYqM1YLooA8B1x9+mLxzFHLZpCSMPs3IbfyDtnXhwq1zOfy9wIhvSepPJhE5i7NvLKBcPxOavBXH+htj2v5j5m1upPJgT0L24M2Nwqi8PKqF9AkU9fvX37Xfu+s4trfAjw4JB4YcJkxHh2aJgpSRIZeDChh1eKIjfdMDaidwBeCLyvVQ7r90DgFfsdiY4Cso19vgANNPFpXuqewylr/cApQB16lgkxs080Agx14pv2v8GQYPdVC5Es1uldkZUuVGbg/Gg== 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=QD9We1Cx5H7zmR7/ANXcnQ1Rln6q7zD3LKt1U64J4VU=; b=BOJhsg9LDei6THoSrvTUPkyaWYf04eapTH6s0WyRQyMx3AEFGbFbEhVyoEuUzOJXQ9CQCtYBvrHcDZaoZQjoVxu1R9ZKLVMX+FQcoodb7g0IkGz8xyCPEfoiWfzTaN+YtN1Hhq0ykgj0eQsth3fYXPPXwb7X5gq+Spbjzuz0m2R4okZleGvSQHmVR97aHlylJc1L9tizMw7x0MPdvFLG6Om54FwMmhXNMXOIgX5zfgRx8KwBEAuX8V03IBYIKuvt8ATcTQZnLuSqK6ws0y0QZcfIbSPCYU4wk/oxxFzjkde1KBdZrwJgNTx6/C92U6WYlGKxWAoMzlkkjvbGEDdzjw== 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 Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: <8b369fc8-8f9e-c350-95de-790d47fd9aae@suse.com> Date: Fri, 3 Dec 2021 11:56:32 +0100 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101 Thunderbird/91.3.2 Subject: [PATCH 1/3] EFI: move efi-boot.h inclusion point Content-Language: en-US From: Jan Beulich To: "xen-devel@lists.xenproject.org" Cc: Andrew Cooper , George Dunlap , Ian Jackson , Julien Grall , Stefano Stabellini , Wei Liu References: <46de3a57-76d0-1538-ec3b-79290d1bfb70@suse.com> In-Reply-To: <46de3a57-76d0-1538-ec3b-79290d1bfb70@suse.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: AM6P193CA0132.EURP193.PROD.OUTLOOK.COM (2603:10a6:209:85::37) To VI1PR04MB5600.eurprd04.prod.outlook.com (2603:10a6:803:e7::16) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 0e6c7a3d-642a-4a54-f908-08d9b64b9284 X-MS-TrafficTypeDiagnostic: VI1PR0402MB3391: X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:949; X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 6ZIsJhoj2chQ+jrQgpTPKQPD5tod0g7pz9mCDVRBT+rf2Pl57+We61xQpfO8ZXOvlhoxTy8fKbVxNiHXLqZ12iZUZlSYKzox5g1eLSZGW0ZQJidtjBlkL/DwS+yzByv39w4DrdrXBdLhtWgYGAyFZbM5Us/j6xrLb9UZkaxLZFCwSZLxLkgrPc47RsmrAHUXv3OR5kKlZhuZyPoLCpyiim2cpFvg1LbzKcoeYbrOXvZvZGFjIWQsFNsiSQ5uWFb/sBL0T2TojIvH8nSXceBN6Y6904oFV99Y3De0d0K4hq941NVffAWUBcK3MDZDai7URwenjrH+dDPwiwzAwV37Grc5tZo3qGWutEl7z7G59FH7Eq4Yv6uDDrPi3OANjIt0vFEpml+OhwvJ1tGP8C/zIZ8jmDTAqzmhkp1ZLWyfPCVyJD+Ygzn+XV5y3pRwY0rs4BUEK+41RQAm0/fqZkHgZ/WUcV5lIJGOipyfUoL0GNjT11u4ki50jVJefBRaEofBr3qEZO5Loek9wruwxxFldRxdXxPSGgaDEQwjbMjbQNfHyWgR5TXJ0GxpBiXeuc8NRwx8wq9sh7W7yA05tkSfR7bYyBbPr8NYgR3S/WoPpZHXwxZDgOHKqpjrNJXucictf9Rp96sYqOJS5BXx0K2PgQOBdJ83xOzref61nWq9UpPX330ZVB/hMYRgshO0nPNfCXR2qo1p8WqpyPOvIMpxbnnNPBvPPaYwKYsDucmw0JKCEZXZjOmQhjdX6ReJ+wFr X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VI1PR04MB5600.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(366004)(6916009)(4326008)(186003)(2906002)(54906003)(66476007)(5660300002)(66556008)(31696002)(2616005)(16576012)(6486002)(508600001)(66946007)(36756003)(86362001)(8936002)(316002)(26005)(956004)(8676002)(38100700002)(31686004)(83380400001)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?SzdZdi9GNEQ4YnRDZFdkbDA3ZFVQdExqcWxIZTlQWlpxOTFQd3ZLbVJBbEFG?= =?utf-8?B?YW1YcXBOYkNkL1hiKzRsM05IM0VBWHA3MGNlc2ZBTHFSZXR2cFZ6MHhFMytU?= =?utf-8?B?YzhhY3FKNVZreGw3WkN2bUkwdVlleWpjeUdvRjBjRDlRNzBlbzlVTVR6d1R6?= =?utf-8?B?OE4zMHdXVytVRkk0MjVrb1pSTjBkdTNXays0REtlaVVqNXo3TFFBeldhVEE4?= =?utf-8?B?dWZOS0V5cEx6OThsei8vcmtaTi9iMjQzeHVFVGxpczlOdXloNDlycEJQcXhn?= =?utf-8?B?UldRd3BZOFdISWRWRWYvdlBPbm9tNldCdlNuVzU4bExidUtPa1g5bDdCbkVM?= =?utf-8?B?ZDFwMEV6QmdjUFcvK0pBdGxYTmU5anNlQUtlUEpmWHR3ZTRGZFZodUZhRU5r?= =?utf-8?B?RHF3enNscVpOUVkrTDlyNGUwZ1hzVHlTUW9keklOU3o5c0hUd2RiVGxoNitj?= =?utf-8?B?WDAzVGVvQ2daSjg0L29Fc2dSRTBFcUd5Z2NQQXZRZjRoMHVXTVZTSVdiKzBt?= =?utf-8?B?bHUyNFMvZlpXSmFIRFgvdm1UQ3VKZTBsNElvZmtyUjlMYkZTajR3bCtKS3Fa?= =?utf-8?B?UXh3Q1BJS0pUcm41dlMwSzlxZEFpZGVEcWdqWjN3S0pvc1ZkWjNVTWFwVXFF?= =?utf-8?B?OW5VWHB5TTk5QWFoZ3lzTEZiUnk1MmM3WDY4RUplSFp1OE5ydXlIZHMzU1F6?= =?utf-8?B?QWtzT0ZFNklSQWY4c1p3UG1SVUdtclo2UHcvZFkrQ2YwV0pyUUVObTN5c2Q1?= =?utf-8?B?dU5GYXZNdUZMU2cxUHdNQS9jcGlDRUZXdDZRdlcreC9aUzNKNStxUVZSZjFa?= =?utf-8?B?elZrRmFvc3JZZVM1VGhZS2FNYk5sY2pTbnNGWURoUmRleTd4QTdvZkNvTk50?= =?utf-8?B?eW5oZSt6YlVGUFZnN1lZMjd0TjZOL3ZaMmRzMDlJMUgrOEpLODl0QWFkSG5L?= =?utf-8?B?bWJ4ZjIyaUhKZkR2WE9ncDMrM05KZFp1b3NxbUhPMDNsUmxFY0duZ3k0OVNh?= =?utf-8?B?SGV6ejFmVFJwZmI0b2t2YVZORW41ZDFKVUhiNDRYYSthbExhVzJBN2g5QU4y?= =?utf-8?B?UWpaTC9rZzIyRFAwalcrdnd1ekdETm05TjJuSUtBaWJmRHkzQ252SXVGdlpT?= =?utf-8?B?RUpDZ0IyZHVmMzVzNkE5ajZaUnptVG1iV0NFVEhRbFRKVzhwdklGWjBQajkv?= =?utf-8?B?WHZmRTRuSTA2U1p4OFBwM1Q2bHhOQllCdXJxVnRUN3RUVlJxNkhoR2cxMUd1?= =?utf-8?B?RmJuVUZnU2hlSE9MNlRRYlYrOGRrNEZJRTN5ajVJY1RrT0pVa2JKSTBXWlNE?= =?utf-8?B?MS85VkZUR0hETGtoN1lJZ0ZtWTJqc0FxbDNHNWIxZFhEcFVmZm5tVXZJV0V5?= =?utf-8?B?M1RscEphWW04aERXYWxnTHZIeWlBN0MxUjBQTjMzTGxQQUpkSTZDakQzRjVx?= =?utf-8?B?ZkhxbFFUZjA3cHZWZldDd3ZpQjZXZTFTRDl3MlhnbFl6cFlZK0JxOW1xVkQ2?= =?utf-8?B?OGVoWjEyN3FRMkxLZlFQWUtqZlFCSnBZUU1GUzl6SEI0cjNoVHhlYURqbnBo?= =?utf-8?B?Q3prdmxpaGc2ZUZBcDZwdWVhYXFwdXBkYStCeTVrZ2pGUVkrbG9RR1k1VDF2?= =?utf-8?B?ajFlWkJXYXFTa1lwbXBBVS9yL211K3ZKTklqM1ZCejBvVVJ0RndjOU1ubFIr?= =?utf-8?B?cVJGbFRwVzE5R0Nnc3NQcURnMDNqSW9jbEdMVmZKMFBQTEo4STZFRk5LVEpo?= =?utf-8?B?bGJ6VWY2MDFzQUhsVzNRUWhGaGZqR3lhWDZBenB1TFBUUGV5TnBOdGM2aGp5?= =?utf-8?B?NFFLdWpLanpCeXN2NjByM3ZzTXNwTFFzcUFaNGRTSDU5Z05yVitpejgzbUhm?= =?utf-8?B?cm96OXprTUgwVEdoQTZXT29WOVVWODU2Q2x0d2kwRlUyVERsM2hsaVdoUkkx?= =?utf-8?B?enhNUGlMRDJQaGMxZnp6REs1QW85OXJtam5FY2ZnVDYybmYxY2VoR1Z2Ulls?= =?utf-8?B?NEFyeURhM3RDckwwVm5rVWdTRkJrd2Q4MTRITVRTZ1VxVHBnWTZvVVVJTit3?= =?utf-8?B?NGtYbXZxaVBHMUZLeXhTdjZkVnRuK1hTSHEzWnNsRHBJS215d3pLUU1XYTVB?= =?utf-8?B?TTV3WnJxdW9uZ1FZb0wzNDZKRlFjckJndDV0ODBMSGMxVnZMSzEwN25rWE5S?= =?utf-8?Q?vI00+Li4WpVAhZa0gkH2hbU=3D?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 0e6c7a3d-642a-4a54-f908-08d9b64b9284 X-MS-Exchange-CrossTenant-AuthSource: VI1PR04MB5600.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 03 Dec 2021 10:56:34.8135 (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: 5UneFSaI4BqUH1QBy9++ApcIU1pxPAQ7JfZ48vU7fZPBpZSF+6un+UgSQvrypJ2WBPM18FrvGR/MBvAQP72VOg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR0402MB3391 X-ZohoMail-DKIM: pass (identity @suse.com) X-ZM-MESSAGEID: 1638529029432100001 Content-Type: text/plain; charset="utf-8" When it was introduced, it was imo placed way too high up, making it necessary to forward-declare way too many static functions. Move it down together with - the efi_check_dt_boot() stub, which afaict was deliberately placed immediately ahead of the #include, - blexit(), because of its use of the efi_arch_blexit() hook. Move up get_value() and set_color() to before the inclusion so their forward declarations can also be zapped. Signed-off-by: Jan Beulich Acked-by: Andrew Cooper Reviewed-by: Luca Fancellu --- a/xen/common/efi/boot.c +++ b/xen/common/efi/boot.c @@ -111,25 +111,10 @@ struct file { }; }; =20 -static CHAR16 *FormatDec(UINT64 Val, CHAR16 *Buffer); -static CHAR16 *FormatHex(UINT64 Val, UINTN Width, CHAR16 *Buffer); -static void DisplayUint(UINT64 Val, INTN Width); -static CHAR16 *wstrcpy(CHAR16 *d, const CHAR16 *s); -static void PrintErrMesg(const CHAR16 *mesg, EFI_STATUS ErrCode); -static char *get_value(const struct file *cfg, const char *section, - const char *item); -static char *split_string(char *s); -static CHAR16 *s2w(union string *str); -static char *w2s(const union string *str); -static EFI_FILE_HANDLE get_parent_handle(EFI_LOADED_IMAGE *loaded_image, - CHAR16 **leaf); static bool read_file(EFI_FILE_HANDLE dir_handle, CHAR16 *name, struct file *file, const char *options); static bool read_section(const EFI_LOADED_IMAGE *image, const CHAR16 *name, struct file *file, const char *options); -static size_t wstrlen(const CHAR16 * s); -static int set_color(u32 mask, int bpp, u8 *pos, u8 *sz); -static bool match_guid(const EFI_GUID *guid1, const EFI_GUID *guid2); =20 static void efi_init(EFI_HANDLE ImageHandle, EFI_SYSTEM_TABLE *SystemTable= ); static void efi_console_set_mode(void); @@ -168,19 +153,6 @@ static void __init PrintErr(const CHAR16 StdErr->OutputString(StdErr, (CHAR16 *)s ); } =20 -#ifndef CONFIG_HAS_DEVICE_TREE -static int __init efi_check_dt_boot(EFI_LOADED_IMAGE *loaded_image) -{ - return 0; -} -#endif - -/* - * Include architecture specific implementation here, which references the - * static globals defined above. - */ -#include "efi-boot.h" - static CHAR16 *__init FormatDec(UINT64 Val, CHAR16 *Buffer) { if ( Val >=3D 10 ) @@ -291,30 +263,6 @@ static bool __init match_guid(const EFI_ !memcmp(guid1->Data4, guid2->Data4, sizeof(guid1->Data4)); } =20 -void __init noreturn blexit(const CHAR16 *str) -{ - if ( str ) - PrintStr(str); - PrintStr(newline); - - if ( !efi_bs ) - efi_arch_halt(); - - if ( cfg.need_to_free ) - efi_bs->FreePages(cfg.addr, PFN_UP(cfg.size)); - if ( kernel.need_to_free ) - efi_bs->FreePages(kernel.addr, PFN_UP(kernel.size)); - if ( ramdisk.need_to_free ) - efi_bs->FreePages(ramdisk.addr, PFN_UP(ramdisk.size)); - if ( xsm.need_to_free ) - efi_bs->FreePages(xsm.addr, PFN_UP(xsm.size)); - - efi_arch_blexit(); - - efi_bs->Exit(efi_ih, EFI_SUCCESS, 0, NULL); - unreachable(); /* not reached */ -} - /* generic routine for printing error messages */ static void __init PrintErrMesg(const CHAR16 *mesg, EFI_STATUS ErrCode) { @@ -542,6 +490,7 @@ static CHAR16 *__init point_tail(CHAR16 break; } } + /* * Truncate string at first space, and return pointer * to remainder of string, if any/ NULL returned if @@ -559,6 +508,95 @@ static char * __init split_string(char * return NULL; } =20 +static char *__init get_value(const struct file *cfg, const char *section, + const char *item) +{ + char *ptr =3D cfg->str, *end =3D ptr + cfg->size; + size_t slen =3D section ? strlen(section) : 0, ilen =3D strlen(item); + bool match =3D !slen; + + for ( ; ptr < end; ++ptr ) + { + switch ( *ptr ) + { + case 0: + continue; + case '[': + if ( !slen ) + break; + if ( match ) + return NULL; + match =3D strncmp(++ptr, section, slen) =3D=3D 0 && ptr[slen] = =3D=3D ']'; + break; + default: + if ( match && strncmp(ptr, item, ilen) =3D=3D 0 && ptr[ilen] = =3D=3D '=3D' ) + { + ptr +=3D ilen + 1; + /* strip off any leading spaces */ + while ( *ptr && isspace(*ptr) ) + ptr++; + return ptr; + } + break; + } + ptr +=3D strlen(ptr); + } + return NULL; +} + +static int __init __maybe_unused set_color(uint32_t mask, int bpp, + uint8_t *pos, uint8_t *sz) +{ + if ( bpp < 0 ) + return bpp; + if ( !mask ) + return -EINVAL; + for ( *pos =3D 0; !(mask & 1); ++*pos ) + mask >>=3D 1; + for ( *sz =3D 0; mask & 1; ++*sz) + mask >>=3D 1; + if ( mask ) + return -EINVAL; + return max(*pos + *sz, bpp); +} + +#ifndef CONFIG_HAS_DEVICE_TREE +static int __init efi_check_dt_boot(EFI_LOADED_IMAGE *loaded_image) +{ + return 0; +} +#endif + +/* + * Include architecture specific implementation here, which references the + * static globals defined above. + */ +#include "efi-boot.h" + +void __init noreturn blexit(const CHAR16 *str) +{ + if ( str ) + PrintStr(str); + PrintStr(newline); + + if ( !efi_bs ) + efi_arch_halt(); + + if ( cfg.need_to_free ) + efi_bs->FreePages(cfg.addr, PFN_UP(cfg.size)); + if ( kernel.need_to_free ) + efi_bs->FreePages(kernel.addr, PFN_UP(kernel.size)); + if ( ramdisk.need_to_free ) + efi_bs->FreePages(ramdisk.addr, PFN_UP(ramdisk.size)); + if ( xsm.need_to_free ) + efi_bs->FreePages(xsm.addr, PFN_UP(xsm.size)); + + efi_arch_blexit(); + + efi_bs->Exit(efi_ih, EFI_SUCCESS, 0, NULL); + unreachable(); /* not reached */ +} + static void __init handle_file_info(const CHAR16 *name, const struct file *file, const char *o= ptions) { @@ -685,42 +723,6 @@ static void __init pre_parse(const struc " last line will be ignored.\r\n"); } =20 -static char *__init get_value(const struct file *cfg, const char *section, - const char *item) -{ - char *ptr =3D cfg->str, *end =3D ptr + cfg->size; - size_t slen =3D section ? strlen(section) : 0, ilen =3D strlen(item); - bool match =3D !slen; - - for ( ; ptr < end; ++ptr ) - { - switch ( *ptr ) - { - case 0: - continue; - case '[': - if ( !slen ) - break; - if ( match ) - return NULL; - match =3D strncmp(++ptr, section, slen) =3D=3D 0 && ptr[slen] = =3D=3D ']'; - break; - default: - if ( match && strncmp(ptr, item, ilen) =3D=3D 0 && ptr[ilen] = =3D=3D '=3D' ) - { - ptr +=3D ilen + 1; - /* strip off any leading spaces */ - while ( *ptr && isspace(*ptr) ) - ptr++; - return ptr; - } - break; - } - ptr +=3D strlen(ptr); - } - return NULL; -} - static void __init efi_init(EFI_HANDLE ImageHandle, EFI_SYSTEM_TABLE *Syst= emTable) { efi_ih =3D ImageHandle; @@ -1114,21 +1116,6 @@ static void __init efi_exit_boot(EFI_HAN efi_fw_vendor =3D (void *)efi_fw_vendor + DIRECTMAP_VIRT_START; } =20 -static int __init __maybe_unused set_color(u32 mask, int bpp, u8 *pos, u8 = *sz) -{ - if ( bpp < 0 ) - return bpp; - if ( !mask ) - return -EINVAL; - for ( *pos =3D 0; !(mask & 1); ++*pos ) - mask >>=3D 1; - for ( *sz =3D 0; mask & 1; ++*sz) - mask >>=3D 1; - if ( mask ) - return -EINVAL; - return max(*pos + *sz, bpp); -} - void EFIAPI __init noreturn efi_start(EFI_HANDLE ImageHandle, EFI_SYSTEM_TABLE *SystemTable) { From nobody Mon May 6 22:41:50 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) client-ip=192.237.175.120; envelope-from=xen-devel-bounces@lists.xenproject.org; helo=lists.xenproject.org; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org; arc=pass (i=1 dmarc=pass fromdomain=suse.com); dmarc=pass(p=quarantine dis=none) header.from=suse.com ARC-Seal: i=2; a=rsa-sha256; t=1638529075; cv=pass; d=zohomail.com; s=zohoarc; b=UvSwpefW6HtvRPgNt7/rZV7ZfJh4c7unMoodKJVQvr7P/oml016aKy48s31NUXo3u547/74YuZ6E6auhiZ6oxPaUnxJnEFetE84OFMw+Bf6pW9r3zzTg6iqn3HOAfMDuHSEziVOknTIWZ7kZUNVuLtPEih4QIVBiuhmg0AB8ggg= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1638529075; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=fdGuHEod0PjyKKkct1qPtti9jY5e6u+ZzA9caApkWi8=; b=Q3p/g8vaHd3FwPMk7/yE6ZaUx/HO9izmUnUFjx4O+IkS3xa+CgrWZY+4GtEHxTavZglkA1dersxIgFN9Hai3YqxZuoV8/yG3wovcVMpMmxxRqJLvyt39jqdj0RoBGrjyvc7cm7NCx3gAOELc7Q3PXVLY3MbHOk6anraRClNWNik= ARC-Authentication-Results: i=2; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org; arc=pass (i=1 dmarc=pass fromdomain=suse.com); dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) by mx.zohomail.com with SMTPS id 1638529074759179.63896772287183; Fri, 3 Dec 2021 02:57:54 -0800 (PST) Received: from list by lists.xenproject.org with outflank-mailman.237348.411654 (Exim 4.92) (envelope-from ) id 1mt6G4-0000Iv-0m; Fri, 03 Dec 2021 10:57:40 +0000 Received: by outflank-mailman (output) from mailman id 237348.411654; Fri, 03 Dec 2021 10:57:39 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1mt6G3-0000Io-U8; Fri, 03 Dec 2021 10:57:39 +0000 Received: by outflank-mailman (input) for mailman id 237348; Fri, 03 Dec 2021 10:57:39 +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 1mt6G3-0007qi-2R for xen-devel@lists.xenproject.org; Fri, 03 Dec 2021 10:57:39 +0000 Received: from de-smtp-delivery-102.mimecast.com (de-smtp-delivery-102.mimecast.com [194.104.111.102]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id d426d624-5427-11ec-b1df-f38ee3fbfdf7; Fri, 03 Dec 2021 11:57:38 +0100 (CET) Received: from EUR04-HE1-obe.outbound.protection.outlook.com (mail-he1eur04lp2053.outbound.protection.outlook.com [104.47.13.53]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id de-mta-12-6c8DX1yBOnSyOEKqLJyx5g-1; Fri, 03 Dec 2021 11:57:37 +0100 Received: from VI1PR04MB5600.eurprd04.prod.outlook.com (2603:10a6:803:e7::16) by VI1PR0402MB3391.eurprd04.prod.outlook.com (2603:10a6:803:3::23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4734.23; Fri, 3 Dec 2021 10:57:35 +0000 Received: from VI1PR04MB5600.eurprd04.prod.outlook.com ([fe80::5951:a489:1cf0:19fe]) by VI1PR04MB5600.eurprd04.prod.outlook.com ([fe80::5951:a489:1cf0:19fe%5]) with mapi id 15.20.4734.028; Fri, 3 Dec 2021 10:57:35 +0000 Received: from [10.156.60.236] (37.24.206.209) by AM6P194CA0036.EURP194.PROD.OUTLOOK.COM (2603:10a6:209:90::49) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4755.16 via Frontend Transport; Fri, 3 Dec 2021 10:57:34 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version 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: d426d624-5427-11ec-b1df-f38ee3fbfdf7 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=mimecast20200619; t=1638529058; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=fdGuHEod0PjyKKkct1qPtti9jY5e6u+ZzA9caApkWi8=; b=Z7G5Q5JsfHV/zMl8MDGFEW+Ecxz6N9zg5h/oZafMyMMCpabZ1HGNhc9FjPu4rlxmDJETeE kC7B+OmiKNrvhJr7g9OUSwlEDyjAVBLpwN121/hb6FpECcXh8AAtsFiBs0RIPPBPCZ07JI OHa5x2cg52fCqbpktNZ4QIMMU4Fmi74= X-MC-Unique: 6c8DX1yBOnSyOEKqLJyx5g-1 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Faz+QAnarOJ23z3QiRZ0Ukp2/WXg2JosfCFtbTds/j4RFBoux53KnycfiUoO0KJgZRR3eB7uACJKmqPE7PmZ05THwWIwACmyLOdhFAfoZQnm/Vwsv7HEEVoi28Ugz4uR2nwYL7IOkxRT9y6If8ksPokf/bPvQp1A40vPy26BWOatgIqatVtdpFOFN/E8C9RtgdjCiz6Bs4+YPinRfrCS6l9fJ9rusPrzWsIW3w1PcQT8T6BGlKj/lDRNB4J26q2kEC76WXW7zm9/SIRxPw56v1KLXJDn/p7nj0CCrixZTKBf3KqDUwquSICr4wA3YhPA9Zj+UEbmMYEvTGvBrd/Wxw== 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=fdGuHEod0PjyKKkct1qPtti9jY5e6u+ZzA9caApkWi8=; b=QT8a0ONwjD4LQY9PLihw+c1qdZNpKF3agrxWhql/n1dCX7zuStk2Vf0cojAsYS1JJL4f4Qw0gFrj+gfJITD5W/tbqxDqR/xPIXiXl32e61oX5T4ABpmis8TC1tulIHb5R42VVQFxSsdObzkh9m9FlyDbngmK7Dl1DdPUglo6v2t9Que9/r8L5u6HkJmqD2mQmhTpX0eSGqvIvp/woGhOasUR+KsJM3zaci5/efybKU84rkrwtdAPVKTQefKCrpNzjHBnp4elpJ5cmwXW47cmWqZc78d1d0uDKyA1QIJvvSzV/LfqT8e8+vkZheA8YaLR0yZu+1E2isoEilijYTWRAw== 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 Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: Date: Fri, 3 Dec 2021 11:57:33 +0100 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101 Thunderbird/91.3.2 Subject: [PATCH 2/3] EFI: constify EFI_LOADED_IMAGE * function parameters Content-Language: en-US From: Jan Beulich To: "xen-devel@lists.xenproject.org" Cc: Andrew Cooper , George Dunlap , Ian Jackson , Julien Grall , Stefano Stabellini , Wei Liu References: <46de3a57-76d0-1538-ec3b-79290d1bfb70@suse.com> In-Reply-To: <46de3a57-76d0-1538-ec3b-79290d1bfb70@suse.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: AM6P194CA0036.EURP194.PROD.OUTLOOK.COM (2603:10a6:209:90::49) To VI1PR04MB5600.eurprd04.prod.outlook.com (2603:10a6:803:e7::16) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 17e26e88-f964-4342-5fae-08d9b64bb6ab X-MS-TrafficTypeDiagnostic: VI1PR0402MB3391: X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:7219; X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: OXkmzpEvH/38LjDuUPlQH6oqk02ybulncz2RhBHrMr3aJoHMjiZ167gid06vg9BThol6i5xWJKqStbUoC48kf8s3RfthZNsBHQpkf3XvuSqq4fXqrqk5Gx654lcxr9fS6UkDp7t8TzvJg8RlYetyiHtppgj0UFkH8XnGSZQpwPnwFQxsJ4T9KcIApvxSiyzqJuFvVSdnNk9VU8rHnLSQg8btSXexluqx747cRolI5Gy6CNsEe0hGhoLV9fWcKerQY10pL6oaPkwnzTmfnTcUCyNC69DO1JCb8KXDUoe2oCBbzMvBDbwE1n/9NjNT1RRIN6JEqsRvsV4+wUOB/OSCUgFWx9HoF47cWqUEthQovU6L0wB5s/MMwROKoPbWXLWe+do6kDtlMVs4+KzKCJLZLUbEATTXb+RX7/ga+de/jsGuKJIUYdq8hffKFzbLdGA2duBEtIPRPrUVzLuXgPeLTsfSBvebEjW8bFrMzzqNPwa3OIFtZWmiTpyDVtInREaGubo0kR8dOMOSorI+aDnd/hNg3Uy10moeb6XaC5pBFWZvG3FOT3KQgFV9L8RB9Gj4JyC7J0yxqi2nYz5VkxtJfvR0uZGHKKH4hXCpkvG1Sac6hcVCVIV4tcuY4wQne6o921G8W+FTG+4QGvDzJOG4rZqQtWaMYnAGOxqDkS5YHtWdiVgbOsEhKJQWTRx+qkm13gdtHfO/Ry4AcDquTGBLHn9C3LxTgu4G16MoLkEgwJxHzTV8Jw+j8CrGVSsJ3F8o X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VI1PR04MB5600.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(366004)(6916009)(4326008)(186003)(2906002)(54906003)(66476007)(5660300002)(66556008)(31696002)(2616005)(16576012)(6486002)(508600001)(66946007)(36756003)(86362001)(8936002)(316002)(26005)(956004)(8676002)(38100700002)(31686004)(83380400001)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?ZlRvdXlSNmJEaXJCVDN5RU9rVExoOWlOVTJ1QS8wKzdrWGpuV0VQODY1UnVQ?= =?utf-8?B?R2hwMWN3K2RwdXhYS2JXMm9jeDJoYVlmN01HWndQR3VCeDB5Tm4xRHMrbDAz?= =?utf-8?B?dk5iUkxyZlp6TkVqcDJPaUlNeWttTXE0YXBYMEtFakUxbGpNcnpsWjNEQUtG?= =?utf-8?B?SUdXdzdVUjN2MnBpelBDWEZnQSs3TXo2bXVCM2NtSkdtRFBYUm85MWNKYmlS?= =?utf-8?B?WHFla1B1L0p6VmJyVVdoNHRXUUk5OEVld2xvRWZLKzdDSjBHY0N3WEpwaWpt?= =?utf-8?B?Zm9nTU5KMUU2WmFwVi9VVS9Cenpjemh6SkRIZStacGRkempkYUJsYk85Y0hu?= =?utf-8?B?SDMwMDhmVjF0U1V0WklpSUtueVpmcnI5ajFFVmpSREtRUXFZN0l1UUdmQ1RI?= =?utf-8?B?TmkxQmJXRUxKR2w5Ty9GQjd6aFJKa3B0M1RjRkJ4ZjR0Qzd1Z1dCblRvdjNk?= =?utf-8?B?ZkZUaG4yOVJLcXhzaVgzUHdHQW45OXdZNEFtZm50b2Z0RzZiZjUxWUJBREhO?= =?utf-8?B?WFh3YkY4M1UvOXRybEoxTDZDYlJsQjloTlExYUw1eGttbDBpM0F6NGNsU2dH?= =?utf-8?B?WEwyRVNKbG1WaHNkcWt4UnVqWDk5d1Fnam1vdHFGVVpCeGgyQzRzTzcrN2JN?= =?utf-8?B?bnNld3Boem9KN3duUU9qZi9FeENHR1FCNHhrc0plemxlc0RVdUpHTWo2NXJl?= =?utf-8?B?UHZjdFpZRGhaY3lqRzR2Z3lsQ0JkR3dLMGxhWkZHVmdNbXNtUEtadzZUT21h?= =?utf-8?B?Ni9xd3hSbnc0MlpXOFlnQ0gwb0NlUG9MMUVyT2t5bmtIM0NIMnNncEdNVm9m?= =?utf-8?B?dFc1eCtHYW1pUmZBRE1Bb0oyK3N1VkM5WHhLL2NpZlByYXdoeGY3eG9jTWpD?= =?utf-8?B?ZWplRHcwZnFUOGVFSHBqcVhpZ1FFRXlDWEo0TW5rdFpDL0FrZUlURTlXUG5Y?= =?utf-8?B?elRRQUx5aS9KSG5hUkZrdVlISlVJa29KMEJnYVV4R010RTdsL2FKVlo4T2RM?= =?utf-8?B?ZVkxVVI2K2taTU1rb1U1UHhpdlZDUE4zMjM1S1BoM1dYaWprUDNxbGtVUjVP?= =?utf-8?B?K1hUMklqSDRMbmJlSFVMQ3RrZkdrMmhRc1dyMmRPYXRqZUhyMUlmbWZDY09w?= =?utf-8?B?NU4xQmtQeFA1U0ZUbXlnWmpPbzJQdEVDZVU2VXpWeXY2bEdJV0pQVGxpV2xC?= =?utf-8?B?UFpGRHFqT3VXTlpZQU5uN0hUUE5YYVZrcDA3K0hTYkJnLzRqOWxvTDBrTEtO?= =?utf-8?B?djY0N1l0L1FJbzFUb0hjcEwvdmMzc0l3c1NvNHhZVzhldHdjbXpCQXRYemdv?= =?utf-8?B?akpINkFqOXJDZGpGWVRlUHI2Mlc2Vm1XN1dEOU52S2NIYnJWV3NVSEF1Yjhz?= =?utf-8?B?QXJ3aVpuUWp4WHJGSjdDVHVIcTcvWW5TMDNKZGJuY1N6Zm4vS2RwQll5OUIz?= =?utf-8?B?VE4zeUQyMzdzK1VFd2FDNE44ZXBHcHdORXY5VWlESGF0TXNaOXI1NHVuV0NP?= =?utf-8?B?NGpMeWlGdVo2SDZMdkE2YlYyc1dEY2ZrSWhkQzF1dEZ1SXAzNXRkN3kxdDJD?= =?utf-8?B?dWtwNW1GMUZCUm9uT0FwRDgxWUwyWk1HTTYyOGVVemhmWXR0S0FwVTQ3TXRO?= =?utf-8?B?R0FXaFpEVWtoTjh1RHM4T1lmbEdtT2xCV1pSK21XMHE1cmgzQTdHc0x5VnNr?= =?utf-8?B?bThNT3p3K3RZYXhSRTNWdHcxd3h2djRUL2tZd0kvSXZrM3Q0Vk5nNmJETUhm?= =?utf-8?B?SzFycXlHY3V4MzVhWEc1Mi9ITVdHUXdtdGdQTWYxK2lpdmFnSmIvVGNUVVU4?= =?utf-8?B?OVliRUtSY3NBdGFoNTFTTExJZTVZOHVlK3ZoRHNjVWtGejcyRmFCQ1VHOG02?= =?utf-8?B?NkVRckFkZXFURGU1Z1hqU0RIb2t1NXFleWtTV2ovcno0S0w0MzBYVnhDY20y?= =?utf-8?B?Zk5OWkFLeW5tK1R3L2xkZFNJMXIvblhKV2pxOHdwOXhNY2liYTY5dG9PdWp2?= =?utf-8?B?T3ZKMzIvTjB5eFl5VzNaaVFCWWVydmlKL084VHUwLzhmclVQdnZiejJZUzRw?= =?utf-8?B?b0VLQUVYYUtDWFQ5V3dBWkVJejNlamdERzJtOExteGUzOFp6VVc1VHJEWE5r?= =?utf-8?B?bEcvWUUvSXhwd1MvbFg4VG81dGV6MmhIZUI5Y1kwZSszcUtTYjlxZC9FVSsr?= =?utf-8?Q?S6VoTw5qxq2Fox21JrfGRn4=3D?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 17e26e88-f964-4342-5fae-08d9b64bb6ab X-MS-Exchange-CrossTenant-AuthSource: VI1PR04MB5600.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 03 Dec 2021 10:57:35.4412 (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: WXBHDNu5nYwmIaNTo+1bKc5jXuRa4r0ZoKyyH04vfubo3CPb+vKKko1PqnmhDExA230rQzmTpYrHUdrJkg4oiA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR0402MB3391 X-ZohoMail-DKIM: pass (identity @suse.com) X-ZM-MESSAGEID: 1638529077205100001 Content-Type: text/plain; charset="utf-8" Instead of altering Arm's forward declarations, drop them. Like elsewhere we should limit such to cases where the first use lives ahead of the definition. Signed-off-by: Jan Beulich Acked-by: Julien Grall Reviewed-by: Luca Fancellu --- a/xen/arch/arm/efi/efi-boot.h +++ b/xen/arch/arm/efi/efi-boot.h @@ -44,20 +44,6 @@ void __flush_dcache_area(const void *vad =20 static int get_module_file_index(const char *name, unsigned int name_len); static void PrintMessage(const CHAR16 *s); -static int allocate_module_file(EFI_LOADED_IMAGE *loaded_image, - EFI_FILE_HANDLE *dir_handle, - const char *name, - unsigned int name_len); -static int handle_module_node(EFI_LOADED_IMAGE *loaded_image, - EFI_FILE_HANDLE *dir_handle, - int module_node_offset, - int reg_addr_cells, - int reg_size_cells, - bool is_domu_module); -static int handle_dom0less_domain_node(EFI_LOADED_IMAGE *loaded_image, - EFI_FILE_HANDLE *dir_handle, - int domain_node); -static int efi_check_dt_boot(EFI_LOADED_IMAGE *loaded_image); =20 #define DEVICE_TREE_GUID \ {0xb1b621d5, 0xf19c, 0x41a5, {0x83, 0x0b, 0xd9, 0x15, 0x2c, 0x69, 0xaa, 0x= e0}} @@ -650,7 +636,7 @@ static void __init PrintMessage(const CH * This function allocates a binary and keeps track of its name, it return= s the * index of the file in the modules array or a negative number on error. */ -static int __init allocate_module_file(EFI_LOADED_IMAGE *loaded_image, +static int __init allocate_module_file(const EFI_LOADED_IMAGE *loaded_imag= e, EFI_FILE_HANDLE *dir_handle, const char *name, unsigned int name_len) @@ -713,7 +699,7 @@ static int __init allocate_module_file(E * for the reg property into the module DT node. * Returns 1 if module is multiboot,module, 0 if not, < 0 on error */ -static int __init handle_module_node(EFI_LOADED_IMAGE *loaded_image, +static int __init handle_module_node(const EFI_LOADED_IMAGE *loaded_image, EFI_FILE_HANDLE *dir_handle, int module_node_offset, int reg_addr_cells, @@ -814,7 +800,7 @@ static int __init handle_module_node(EFI * in the DT. * Returns number of multiboot,module found or negative number on error. */ -static int __init handle_dom0less_domain_node(EFI_LOADED_IMAGE *loaded_ima= ge, +static int __init handle_dom0less_domain_node(const EFI_LOADED_IMAGE *load= ed_image, EFI_FILE_HANDLE *dir_handle, int domain_node) { @@ -862,7 +848,7 @@ static int __init handle_dom0less_domain * dom0 and domU guests to be loaded. * Returns the number of multiboot modules found or a negative number for = error. */ -static int __init efi_check_dt_boot(EFI_LOADED_IMAGE *loaded_image) +static int __init efi_check_dt_boot(const EFI_LOADED_IMAGE *loaded_image) { int chosen, node, addr_len, size_len; unsigned int i =3D 0, modules_found =3D 0; @@ -942,7 +928,7 @@ static void __init efi_arch_halt(void) stop_cpu(); } =20 -static void __init efi_arch_load_addr_check(EFI_LOADED_IMAGE *loaded_image) +static void __init efi_arch_load_addr_check(const EFI_LOADED_IMAGE *loaded= _image) { if ( (unsigned long)loaded_image->ImageBase & ((1 << 12) - 1) ) blexit(L"Xen must be loaded at a 4 KByte boundary."); --- a/xen/arch/x86/efi/efi-boot.h +++ b/xen/arch/x86/efi/efi-boot.h @@ -709,7 +709,7 @@ static void __init efi_arch_halt(void) halt(); } =20 -static void __init efi_arch_load_addr_check(EFI_LOADED_IMAGE *loaded_image) +static void __init efi_arch_load_addr_check(const EFI_LOADED_IMAGE *loaded= _image) { xen_phys_start =3D (UINTN)loaded_image->ImageBase; if ( (xen_phys_start + loaded_image->ImageSize - 1) >> 32 ) --- a/xen/common/efi/boot.c +++ b/xen/common/efi/boot.c @@ -389,7 +389,7 @@ static unsigned int __init get_argv(unsi return argc; } =20 -static EFI_FILE_HANDLE __init get_parent_handle(EFI_LOADED_IMAGE *loaded_i= mage, +static EFI_FILE_HANDLE __init get_parent_handle(const EFI_LOADED_IMAGE *lo= aded_image, CHAR16 **leaf) { static EFI_GUID __initdata fs_protocol =3D SIMPLE_FILE_SYSTEM_PROTOCOL; @@ -561,7 +561,7 @@ static int __init __maybe_unused set_col } =20 #ifndef CONFIG_HAS_DEVICE_TREE -static int __init efi_check_dt_boot(EFI_LOADED_IMAGE *loaded_image) +static int __init efi_check_dt_boot(const EFI_LOADED_IMAGE *loaded_image) { return 0; } From nobody Mon May 6 22:41:50 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) client-ip=192.237.175.120; envelope-from=xen-devel-bounces@lists.xenproject.org; helo=lists.xenproject.org; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org; arc=pass (i=1 dmarc=pass fromdomain=suse.com); dmarc=pass(p=quarantine dis=none) header.from=suse.com ARC-Seal: i=2; a=rsa-sha256; t=1638529130; cv=pass; d=zohomail.com; s=zohoarc; b=RL5OYdoVESoGU8aywpjqKfWNIsfpqhQSzZBxTylIX0h0eRwiLDnrEh9yRfJdRp5u54eFm9dLrCo9AB38Vv/ucoYleMxeFUivMWJ8+0TT8PtyhIdqutRc3JViBtBRFtkRVNARbGrGzEZ7mjoS8vx/DepMN4yuNBQS4dXrHx+Nttk= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1638529130; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=lyHpDq+f1Yn1Y+Nw40SlcTxVr78qVUTB+hT/e8DkD7A=; b=Q6ZjH4gw5oqCk15Aq4sq7fwOs3Yt1LYUxg0YT/Rj9eB8W5OwYUTbwmGvw24gTHScszcSZudCpjXiEikODcqYh9mMlv0sxWbc3fd5iFMql/uldZvIijooh5Vixrt8QVueDUIUczEgGV8RyLl/hsjgF558wRjlZUa7i+7SpSPzOa4= ARC-Authentication-Results: i=2; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org; arc=pass (i=1 dmarc=pass fromdomain=suse.com); dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) by mx.zohomail.com with SMTPS id 1638529130565329.4780823542105; Fri, 3 Dec 2021 02:58:50 -0800 (PST) Received: from list by lists.xenproject.org with outflank-mailman.237352.411666 (Exim 4.92) (envelope-from ) id 1mt6Gn-0000ts-Ab; Fri, 03 Dec 2021 10:58:25 +0000 Received: by outflank-mailman (output) from mailman id 237352.411666; Fri, 03 Dec 2021 10:58:25 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1mt6Gn-0000tl-7W; Fri, 03 Dec 2021 10:58:25 +0000 Received: by outflank-mailman (input) for mailman id 237352; Fri, 03 Dec 2021 10:58:24 +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 1mt6Gm-0000nF-2H for xen-devel@lists.xenproject.org; Fri, 03 Dec 2021 10:58:24 +0000 Received: from de-smtp-delivery-102.mimecast.com (de-smtp-delivery-102.mimecast.com [194.104.109.102]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id eede6215-5427-11ec-976b-d102b41d0961; Fri, 03 Dec 2021 11:58:23 +0100 (CET) Received: from EUR04-HE1-obe.outbound.protection.outlook.com (mail-he1eur04lp2057.outbound.protection.outlook.com [104.47.13.57]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id de-mta-7-N0ogYuKWOOScXHG18jhiKw-1; Fri, 03 Dec 2021 11:58:21 +0100 Received: from VI1PR04MB5600.eurprd04.prod.outlook.com (2603:10a6:803:e7::16) by VI1PR0402MB3391.eurprd04.prod.outlook.com (2603:10a6:803:3::23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4734.23; Fri, 3 Dec 2021 10:58:20 +0000 Received: from VI1PR04MB5600.eurprd04.prod.outlook.com ([fe80::5951:a489:1cf0:19fe]) by VI1PR04MB5600.eurprd04.prod.outlook.com ([fe80::5951:a489:1cf0:19fe%5]) with mapi id 15.20.4734.028; Fri, 3 Dec 2021 10:58:20 +0000 Received: from [10.156.60.236] (37.24.206.209) by AM6P194CA0033.EURP194.PROD.OUTLOOK.COM (2603:10a6:209:90::46) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4755.17 via Frontend Transport; Fri, 3 Dec 2021 10:58:19 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version 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: eede6215-5427-11ec-976b-d102b41d0961 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=mimecast20200619; t=1638529102; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=lyHpDq+f1Yn1Y+Nw40SlcTxVr78qVUTB+hT/e8DkD7A=; b=R81Az5JckaS5zU8uTGusKqQ2f1inQJvajCIT2ioQ6Bc061zEPHzAU2aZedR8difqr04KkC qpYCQc4E43AfKyf8GbfFB3A8lokx1FsI0u2PaAwqYE7u/+yoJcseRDZFMnHpkEHg9eszAG kJ1kI8/Qs3wnTeyjUPFQDB2H6XgvjTM= X-MC-Unique: N0ogYuKWOOScXHG18jhiKw-1 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Z4cMBeRZRMNoZ/Nip+eSIwLTXwb/K69kihURpo+cxoh/+tpeOdcOPSouardHbSIvYbOuTkkiCmwRUGNwpP+K1XgUPghP8175/RPXnjlDkI8PQnTurYFw3NG/QNPgOLJHcGdBbCy8fJsS5fSQpYLmJjpmh0b8dcfQWIF4gHOPfrPJGCT0SKZHSyes4/Wq+AcQGm5sH/Ls/JmznqtXXfza1+rvbl33ndVluGTOK8fCZXRRTseUdTbaEFOfAzJpNMg+iqR0DpZuKOB77q5cMnx84hqIeMVT6KlyRaNkowCZB8GuuowZgjkhBEz84rAEEuU2P6KzHDflD1IEEfXeufRpyQ== 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=lyHpDq+f1Yn1Y+Nw40SlcTxVr78qVUTB+hT/e8DkD7A=; b=WqG6OZAd/jLKfirDmd/v21p9vssEy+5msy/81qCn7XJuxPVThdlTViMWs3SVwEiSuFrKqQnMlpeEoazB1H7RlkwqSJqlVJX8MS9QDIVPUVnCuR8CtawpVerbmsQ+itRkPc4U9O0ZhjIwOSLF6yMeIvXxxSZoR9ub+8YMl3m9CYqDoWeDIXMTl/TTqn8gncwLxlrJJ//xzJEhM3xwtsp5rLsJ4OBzThTNnuc7BbWo4Y7aAup18xnoEgZxlTwTpEf8NOCrJwCKsWm2mUPsrfn/kaksj+oH7v83COXP8eK/xaWYzXhgAdynIVyKjK2lm2rI7NOcVT7+i7s7/9HXU6R44Q== 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 Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: Date: Fri, 3 Dec 2021 11:58:18 +0100 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101 Thunderbird/91.3.2 Subject: [PATCH 3/3] EFI: drop copy-in from QueryVariableInfo()'s OUT-only variable bouncing Content-Language: en-US From: Jan Beulich To: "xen-devel@lists.xenproject.org" Cc: Andrew Cooper , George Dunlap , Ian Jackson , Julien Grall , Stefano Stabellini , Wei Liu , =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= References: <46de3a57-76d0-1538-ec3b-79290d1bfb70@suse.com> In-Reply-To: <46de3a57-76d0-1538-ec3b-79290d1bfb70@suse.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: AM6P194CA0033.EURP194.PROD.OUTLOOK.COM (2603:10a6:209:90::46) To VI1PR04MB5600.eurprd04.prod.outlook.com (2603:10a6:803:e7::16) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: f987c2f7-a0a0-4f3a-5914-08d9b64bd180 X-MS-TrafficTypeDiagnostic: VI1PR0402MB3391: X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:7219; X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 4U2wHwhL+ZtWppXaUosfUeeoLsrCidE862UBvFYyEmRikUh6808eDT6sKRtRokZUfw5y/D3XZMrEAU6Rz+V0teLnwMD8acoVR+HwP8bm/NBYeMwF8aOAah/FVQexziPz/Vp5jEV+L1KMCLE3QQbTAct3dp9fxksSWIZiJx1YlcnzWniH6V7FTae9h/zIZ0VJLW7vC+eruRU0+/uXqM167GXbj+6UecqvVi14HK7ATM8VUtdj2l2gVQvhOBngPfPdMFh7UExOlmM+drUUibu1VAEJTw5BWUMNQnIt90Q9bkr79xKybeQsG0/eZTawqswY7GSFrvWc2tE7lmJj35I9Q7xQViRRg8GULleED3dJFyVbqZAZrcw7j1+rydDkteT4gVwSjN+t07Ydzpq29Ucv6mYWepwfQ2cIA3tViNtNPUWLmBy87pv54Rv9mP94j4/UM8uyV2CD60SlSKhSDhpTBZ0Nn2iXvvrW3yza+cXSgSRCeUkJaFoiGNWtZNRs23Pehp6/8xq9mNdDH/52J18FCG2d1i17tFVp3CVTGPVTV3Yi2h1KFNCbpWIpaD+SxKY/WuoqZGOQjMVKuWOy74SCUy3Eu/8cY2JS1tyqW4WK2oF4YfBUJL9akEmxm9BYMFkAdq4qTCb92CDByPTnby0o6iQNFsrq7UGde9R7QIFukaD5aJ7/8sg7i1zV+8s5O9gsXpjjXaRKemONrAA+DgGmwljko+FBt8Crun2H8Llw6Hc= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VI1PR04MB5600.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(366004)(6916009)(4326008)(186003)(2906002)(54906003)(66476007)(5660300002)(66556008)(31696002)(2616005)(16576012)(6486002)(508600001)(66946007)(36756003)(86362001)(8936002)(316002)(26005)(956004)(8676002)(38100700002)(31686004)(83380400001)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?VjhmeDNHT094SWY4OW1MOU9tMEdUNkd3N1BiSERvZUZVWkIzNHZQVWpmVEFj?= =?utf-8?B?SlNPclJPU1ExTHEyT00yV3JKK3B5WS8yeHYxYlFlTXVGbUhJbC9VdEZLVzV5?= =?utf-8?B?NzVidGp3V0xJU2dmYjRiVVZrR2IwODNiaFdJNEFZRDN1Tk1EUUxGWjlIZEVl?= =?utf-8?B?MWVnNHNndlVxSXFGK1dDOHpVd0Ztcng1c2Ewd3RBV0s1QzF0bmdpdWlUanRJ?= =?utf-8?B?RGJHakZJRi9BTXhmSE1GRlVUK3ZiRlZmNENuUm1pSkNzTFdtdHV4KzE2eWFz?= =?utf-8?B?cUhTM3loNW50NUJDeGthQmlrUnNGcEgvdThscUh3Nko1WUx6OFplbUJjU2Ns?= =?utf-8?B?YlJFRUpQeERhbUovTi9NNjUxempUcE84ZitaWkh5bHBYOVdnalNlaXlsc3Z6?= =?utf-8?B?YmFvbVA3STVOWjBkRjhUOUtMbHovUSt0Uzg2NElGWUpXdjdBT25Tbi9DN2VS?= =?utf-8?B?VWNudUFaTStETE0zVHVrUStLZXdlU1BUcE9KbVFUUkFKd2FoMC9VckphbmRs?= =?utf-8?B?bDdZMkpiejNRbGxGVU8vakIwaHdSUWdKVEU3SkxBMFpuTXdQQTlLQWNKdG5v?= =?utf-8?B?Z2Qxc1Q0UG1XbkloWVhBenozekw3SG5rQ0crWnJIb2JTVVpwUlAwK0lRNCsw?= =?utf-8?B?azNIVGNXdEk2T2Q5WndORWxONTRaMHZoMjFCVTdIUExSdnpBd0ZpTjFYK013?= =?utf-8?B?ZGVVQVJUL3k5ZGFVSitUUlpmQjJER2hYZEVwUitjVmZCOW5FWThvVnJJM2Np?= =?utf-8?B?MGhwVWFKd3h6SFU0SU9LbUdiSy9USGVSWUtNdHN5U0N2ZlhSWi83N0lSVnBt?= =?utf-8?B?ZS9NaEpvNVdXRW9yR3BsVG9OcDlRZ2MzV05BSEpzQytCTlcrYmRjMWd3ZlE3?= =?utf-8?B?VFBtOFNKZm1FK2VUNUdlNk0yYnhZQWxCaGYrYTIxL05wVnRkc0lxbC9KVVQ5?= =?utf-8?B?K0ZPQW5uaDBSOWZFVXI3SWxJMzZTV25HOEdMbDRaeTlYMnFndWRMZ3NUbTNl?= =?utf-8?B?OVpSVHNlV2Zqa1g5Ri85WDUwVnd6eW82RllaMGdXSW1KN1dPMnhCbHAxNkVl?= =?utf-8?B?SEtOc3g0S0Y5bXZBM0NwV0w1bEJSbTJ6cGE4VlQ4U2V4Q1o4WGRlSVpoS2p3?= =?utf-8?B?cGswejJDdzV1MWJMMUhuUWVsSkdUbHR6bG42OWFrVkhicDc5UGdXMHNxcjBJ?= =?utf-8?B?b2c2RHhaS0NsQXl6TTBmK3ZWRDJnZE5SU0ttQkdJS1VuQVJSa1k3T09Mckdn?= =?utf-8?B?Q01Qa3lnaFhVTnpaWDRlWHVSak5UajBZb3g1bWRPeCt1OHFibFFkOFNXcFp1?= =?utf-8?B?T24rdWcyR0tzWHUyZ0V4bzR6Q2pseUFvSXdCZUJoNnhTcVI4MVBnTTQwaEMx?= =?utf-8?B?VFJNRDRCOG1QQ3orb3ZoRG44MjNpazZ4VUZyaEt3UmtZR1hZZjdKNEFwQW5Y?= =?utf-8?B?RytSNHhkNHU1OG1SNzZsSis1M2YzdktWbE5yNFB5ZnAwK1ZWMEViazlqenJM?= =?utf-8?B?SmU0RWlCZDlYMDZ5Znl5VWN2dU9RMGFrZGdhQmwyZUROYmdneUFLUUcwQmgr?= =?utf-8?B?QnJ2eU1DRDhyN0YvbkFlNUtqYnNlV0hza3NqaFhLQ3BWMFRTdXZYQ0hkdDVL?= =?utf-8?B?Nngrckxzamt3SHc3R3BySkQ0b0lVMXI3M1Q4bFBaVUFHR2hSZDFpNkZrVXZt?= =?utf-8?B?TjR0ZnpER1JyYy8wNVhac3hBaXZmeVh0VHRZRUNtMkhpd2FwOGxxemtMQi8w?= =?utf-8?B?NE5tN3FBaElvVHVFdVVIcG9qUW9tMk00WFVTby9zaVhCWTgwdnVRSDFjZUph?= =?utf-8?B?cDFTOGc2MzNhVDJvcmFraDdpZmV0YWFlRDdlc1BrdmlmMFVwMU1SMnhJOXhK?= =?utf-8?B?UkNoN3dZM2I4cXhaYWQ0c0tsbFhOSmQ1VGNoQ1FrUGgwSkgvQmRnYVlnZkhT?= =?utf-8?B?dTVvUTBRem1BQmVjTEpyRUpnR1hZeWpPRW1maDhuNUFDaHVrNHpDMlhWcG84?= =?utf-8?B?RW83Sm5IV250L1ZMak9IUUtKdm1PMVpPSkVWZTA2QUVUZGE4anE2cDJqb0hm?= =?utf-8?B?elVadWNCUHNFMHo1dzRtdHZ1Y0JkMzVSUDlEZFR6d0lGYW9MVXp6ZDVjTHVB?= =?utf-8?B?MVlUdjZYK2JnNEtrbnQ3eEExaGlBUE4yazNhNHF2ZlNaejBiRG9wckZRZ0dE?= =?utf-8?Q?hle8/M2ueqxh2sPZCpxLrcc=3D?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: f987c2f7-a0a0-4f3a-5914-08d9b64bd180 X-MS-Exchange-CrossTenant-AuthSource: VI1PR04MB5600.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 03 Dec 2021 10:58:20.4886 (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: B8A1AYkIZEJtRPlwzGhfNzju25hkPMVVSF5+JHf5mZbeWZvjR6/g5DBt8EojKcH93xHMNExOpzu/j3NuGaYijA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR0402MB3391 X-ZohoMail-DKIM: pass (identity @suse.com) X-ZM-MESSAGEID: 1638529132634100001 Content-Type: text/plain; charset="utf-8" While be12fcca8b78 ("efi: fix alignment of function parameters in compat mode") intentionally bounced them both ways to avoid any functional change so close to the release of 4.16, the bouncing-in shouldn't really be needed. In exchange the local variables need to gain initializers to avoid copying back prior stack contents. Signed-off-by: Jan Beulich Reviewed-by: Luca Fancellu --- a/xen/common/efi/runtime.c +++ b/xen/common/efi/runtime.c @@ -608,7 +608,15 @@ int efi_runtime_call(struct xenpf_efi_ru =20 case XEN_EFI_query_variable_info: { - uint64_t max_store_size, remain_store_size, max_size; + /* + * Put OUT variables on the stack to make them 8 byte aligned when + * called from the compat handler, as their placement in + * compat_pf_efi_runtime_call will make them 4 byte aligned instead + * and compilers may validly complain. This is done regardless of + * whether called from the compat handler or not, as it's not worth + * the extra logic to differentiate. + */ + uint64_t max_store_size =3D 0, remain_store_size =3D 0, max_size = =3D 0; =20 if ( op->misc & ~XEN_EFI_VARINFO_BOOT_SNAPSHOT ) return -EINVAL; @@ -642,21 +650,6 @@ int efi_runtime_call(struct xenpf_efi_ru if ( !efi_enabled(EFI_RS) || (efi_rs->Hdr.Revision >> 16) < 2 ) return -EOPNOTSUPP; =20 - /* - * Bounce the variables onto the stack to make them 8 byte aligned= when - * called from the compat handler, as their placement in - * compat_pf_efi_runtime_call will make them 4 byte aligned instea= d and - * and compilers may validly complain. - * - * Note that while the function parameters are OUT only, copy the - * values here anyway just in case. This is done regardless of whe= ther - * called from the compat handler or not, as it's not worth the ex= tra - * logic to differentiate. - */ - max_store_size =3D op->u.query_variable_info.max_store_size; - remain_store_size =3D op->u.query_variable_info.remain_store_size; - max_size =3D op->u.query_variable_info.max_size; - state =3D efi_rs_enter(); if ( !state.cr3 ) return -EOPNOTSUPP;