From patchwork Thu Apr 21 10:40:03 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jan Beulich X-Patchwork-Id: 12821459 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 3C906C433F5 for ; Thu, 21 Apr 2022 10:40:33 +0000 (UTC) Received: from list by lists.xenproject.org with outflank-mailman.310013.526586 (Exim 4.92) (envelope-from ) id 1nhUEN-00089w-Cz; Thu, 21 Apr 2022 10:40:11 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 310013.526586; Thu, 21 Apr 2022 10:40:11 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1nhUEN-00089p-8j; Thu, 21 Apr 2022 10:40:11 +0000 Received: by outflank-mailman (input) for mailman id 310013; Thu, 21 Apr 2022 10:40:10 +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 1nhUEM-00089j-9U for xen-devel@lists.xenproject.org; Thu, 21 Apr 2022 10:40:10 +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 6a4c62e2-c15f-11ec-a405-831a346695d4; Thu, 21 Apr 2022 12:40:09 +0200 (CEST) Received: from EUR03-VE1-obe.outbound.protection.outlook.com (mail-ve1eur03lp2054.outbound.protection.outlook.com [104.47.9.54]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id de-mta-23-ESgn8edSMpiQh-sI6cFV9A-1; Thu, 21 Apr 2022 12:40:06 +0200 Received: from DU2PR04MB8616.eurprd04.prod.outlook.com (2603:10a6:10:2db::16) by DU2PR04MB8789.eurprd04.prod.outlook.com (2603:10a6:10:2e0::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5186.14; Thu, 21 Apr 2022 10:40:04 +0000 Received: from DU2PR04MB8616.eurprd04.prod.outlook.com ([fe80::5cb0:5195:4203:7c2f]) by DU2PR04MB8616.eurprd04.prod.outlook.com ([fe80::5cb0:5195:4203:7c2f%7]) with mapi id 15.20.5186.015; Thu, 21 Apr 2022 10:40:04 +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: 6a4c62e2-c15f-11ec-a405-831a346695d4 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=mimecast20200619; t=1650537609; 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; bh=ZPRI9TBpt7NqvcTDTjDO9kvTzuTJer701WOTHuYIYd4=; b=CL2YUmew2hko9etCuBtuDNmBrjlUX+/WZ/+8w4OkTuKNbLnsoPOtifepxvG4KeQO0Ub5rc 5YXUeMLjIINRXJA0NFxPNaXm3SzPxf1QW9Lb2Y5acvNyTB941By1nVXUUmXrpuVgW0dEes HphcZdAcLAtoy7gipPUI7RiIUAR7CFw= X-MC-Unique: ESgn8edSMpiQh-sI6cFV9A-1 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=fxqgaOJVIqKd7gvt/mc2X9GbxGYWnp+4pv2nOeh/fgqJqFlENhdQ2QTr6UqQXE88cVmiqZBNFVNM25qVc2raA2nrYVEX976TTGyhP8ZIHWNx7AOcN1VxVPxxb1XqEHrI5uOZws5QY3NIhKl1qRrydPpo4LjzzPDhAunAIwM/kVJTDn2/EDm/D+rEB4EiWfT5U++iEi7eE9go/7WgvN633dnP0s3kJ/5icgM93N0f0Q2O2P7NsAL4mbHwk0Ioahe/Z+Ig4Bh4iPi58PgzfIY0umI1MZFvrEqaSLeGjaUXJFbkYQhFaUvabYmvqT1atUI+9nvUvzY0mWx0huIPUZaBWw== 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=ZPRI9TBpt7NqvcTDTjDO9kvTzuTJer701WOTHuYIYd4=; b=TRSbRNAKEexT0U3RHsj4llRA0vpDM79rMERKmqQB2l7G2Gdw7Vpa9Zx+fzr+fw+cFtxYZwcTvF9/mJRKQ78CiU3jeV7iYkLqLDtkYJko2jQ1SSDaGmapApMyY68VUYt+04V3Ozo/A2vqBct/6E8iaP831xjMoIoKdrctl5a3pQVPg/7i1jBMZU6MQXcdKqqG9Xe7EZEX/fb3A9hpb7kI8Z2jrAwVBctEFh84wSWCFRIpr9qQdNO2VAhpHlLHTYSViFMeHuPcqN+8oM4V1j8Wuikjil2dBCz26xE/N4H5eBOtX3gfOp+1cU9n/a+GXR2l1N/4T2s2YHu2y4JcEoh6uA== 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: <971a1a9a-ab4a-38cd-2c20-534846b440f6@suse.com> Date: Thu, 21 Apr 2022 12:40:03 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101 Thunderbird/91.8.0 Content-Language: en-US To: "xen-devel@lists.xenproject.org" Cc: Andrew Cooper , Wei Liu , =?utf-8?q?Roger_Pau_Monn=C3=A9?= From: Jan Beulich Subject: [PATCH] x86/build: make linking work again with ld incapable of generating build ID X-ClientProxiedBy: AS8PR04CA0121.eurprd04.prod.outlook.com (2603:10a6:20b:127::6) To DU2PR04MB8616.eurprd04.prod.outlook.com (2603:10a6:10:2db::16) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: ed2ee7c5-be7f-4eb1-7bf0-08da23834bd8 X-MS-TrafficTypeDiagnostic: DU2PR04MB8789:EE_ X-Microsoft-Antispam-PRVS: X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: FLES9CT8AK7JAOHnSrVdHebjlAMoqE34wyXVvCQgDd7dzgUNSatmUL8cbhr6at6okBOxLE2vBTkOCRBgcMLgbSU7zERBi16Zq3Or65vAvmsJLZVS+0BHuLknjcQvZfBb/Y3HIDR8mqi33vpfnVmklJNO/gqXzJZWxn17rsYgfasAT6yneIaXG90qjSC65w7N5PU9y/qAOyXF6Tln8M4VVwOFRcN1j+lbr+WZEEHlwGRtdSyMU3fMENf1jb7+vXMJM7M9eXmGcglOe4Uhyuu41Bm/M63BCL2UAzzKyI4REOlEhA7osiPoEINZHI1SSjN1AiOx/deA6GNyU7SMm6AYMrkP//DS4ME6GbFat9CrQC/PRFHpTnoQpZpwl8OREz36k66Fcl1xTmsWzOw59DJPKgiv2DlsFMl+DA9sjSYm0UkjZOuy9H9QaBthpri+PBefQLAclSkL8yK6aporAxWuMCB18urrXCrZeU3poIAQtFt0TLBgyV7dp37jerwQmof3ETSvE1aNDYAWUlc3N+iRbhoks/WQdJE2FQ9sc8hIPhWqQznwrQXNSPMvyXnzabqNTAJYXJFlqLD7/ZivZDRRwcJ5Rhbhmnt2z8I2d7CQOd7E/zQbZ7ag2AYqBVrTH27dthddHIJjPGFixTLYrcPthye6O4MGx/HA+MLZtwP8Wyp79AjDcjjLqBDHdO27Y/DQD3tFilcxgurSxWEMdRDLclsuU9OWTAmBr3ywlEjdUhhJbxxY/YTHXCln3h+2L3au X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU2PR04MB8616.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230001)(366004)(6506007)(4326008)(508600001)(31686004)(38100700002)(8676002)(66946007)(5660300002)(186003)(26005)(2616005)(36756003)(316002)(8936002)(66476007)(6486002)(2906002)(31696002)(86362001)(66556008)(6916009)(6512007)(54906003)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?q?tGBLBqOJ6I4sC1TSiscgypamUZte?= =?utf-8?q?WbuhSqFYPzG7HK+1mNlAbNu+qbCus1Ixpu0kc78mq5RfNfRDWDSYfBcm5q61zRfpL?= =?utf-8?q?Kpf+W8i9OfXr9oEFhm6Rfg2SD7V7/qefdinJPPPNwZz3jfo77ErkOLSCU6L4EyZnQ?= =?utf-8?q?Jl2p1q/6Ed40goCL9l+qd5xUo9KyhcG/AAodn44+0iId+p2w3dEVK5Wgc0TsSV4yo?= =?utf-8?q?vjsKbjQX8/cZ8cvLcxLfNTykrSJG6FqlrFvXWVubW6eXbkrxbVYgts0puOSiaAwRM?= =?utf-8?q?HYBKvqzCMSSbaZFICnFbbs9jZP+0mJoWymxw4aLAo9ZOmjIozt/KYChPkBZG6jTnt?= =?utf-8?q?pehWKpktWWf/pHSqZ3wmJFET2sS9XgLRs3zVfYEx38Ui2Cpex/pXHJwjx1b2Lekjw?= =?utf-8?q?+qiePvYe5xMMQ98OoT0LFgwGR/GLBLr6HuV4uf3LaslFsY0aScW/JUOJZMaT7QPAt?= =?utf-8?q?HnlxKhnEWxpUt5owK5iK44RBEMTEFp0Dq1Ni+vtmYYTuIyOIhkPLhEZZeVGiz7tFc?= =?utf-8?q?u73sdaFSBFGPFn5qWxcSTm09Ba0J5nqyopt5xaji2RbDVBtYwUmwLPdqFmlS6LCsS?= =?utf-8?q?Ka2GF20cR/KwAz4m5frHAcgdMo+8ZLIh87N+L6SV9hkoIe8wSRMKRL/kCgUNSi9xB?= =?utf-8?q?FXC+me8DFfqofhAVumRns8vjbUmi/ohG8lFrcMjBnRKsMqOK/4SVZlQ0mf/nUG3Yl?= =?utf-8?q?T+2vmmXh2PD0PEv2moEExTxloj5PZMJbfwV7gBHF05MT7MeXgsplG6mbIqrGBQa0v?= =?utf-8?q?xaxc4Sbmt4zaqdK1OqajMOeiLpq/m7rJOYkK4w4uuQw6y+lbSMsjnKM4N+2uw7bFK?= =?utf-8?q?3b3EJY25U+RFcE0VWWMA9PAE5RUFH4kgc+3FzAQZx7kBReqsJT7G4C7SqQq/rUHhG?= =?utf-8?q?vc8SUmCtQxwyh/4HBwdp7c0OtR4cO+C9aK7lYbLvZMpoFxfOyJe1SxtvJPDlfAXTg?= =?utf-8?q?Ti+z9hvGmLSlxHEN/11IGNSNRfkf2ONroSO/5EnKwlPT/AphgMDrkL47GUhH5Kot1?= =?utf-8?q?Ewpl44oARwR/HE+41CQE8F/7qtg0u6CXWwxfI/aehkA1uyyCAGZZ/PP391QpkNCiM?= =?utf-8?q?Vt5h97Jg5+01VyQfUaE8ttQUo4M90jtDefreNdEUCSZoX4sxywr55F7+X3lzC3qlI?= =?utf-8?q?6+VJeUZFyqEwZCd0b3pB75L/UgL6JJIaNeioSTrRCFIisNbsBhX6oMqaReDsoVofC?= =?utf-8?q?e8rXIRTihpCcjY3VfTSIDtH2s7P9tHhKwksahx29cFzeoh0HF2jZbIsrRnAIXgxyQ?= =?utf-8?q?ZlwY6m4K2BVwNbMigxJelXX7Wcx6hnpb6fUSMctVh8FZjZWUFWtEJ7WkJE/HuJwEW?= =?utf-8?q?U20+AuWFnXV2a/bnQanHrlFn0FiX/OdKZqrGmL8aNwJZPZmqUZYP4wDoI9LJcV8xf?= =?utf-8?q?eWDfWZE9imomoQK0ogTMH08QRwFC9VnZAdVG2KS4ScPbqraUffkL5HnPh3cJDUXgo?= =?utf-8?q?4+uAoew2Ijd5XfnG/uuVOQgO0HTpotWbyum/KXsIUNMd5rskVtn802MXIPS3Vu6VI?= =?utf-8?q?kWCBWaPQ2MhQvp/pLEm1UmnmqTyMeeou8L9MWCiNT7+CSY+FYECATHfM+wUTb4gt8?= =?utf-8?q?cK0Jy6UMZq9BZC0KzQWjTPb1m0zAGm3PI81QDsRWTybzxXHRSaiHwkYbievw6vT0+?= =?utf-8?q?E+dACtei9pP4S+oUwLGANVElaZVksJIQ=3D=3D?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: ed2ee7c5-be7f-4eb1-7bf0-08da23834bd8 X-MS-Exchange-CrossTenant-AuthSource: DU2PR04MB8616.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Apr 2022 10:40:04.8544 (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: x5HliHGpybZi9K/rViXoIqQSJ5L/Ud/XqFhN+pqMb4cXgprJCuBomJXbfhEWF8aOSF0tGhGMybT5nSSA+DFfMQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU2PR04MB8789 The retaining of .note.* in a PT_NOTE segment requires a matching program header to be present in the first place. Drop the respective conditional and adjust mkelf32 to deal with (ignore) the potentially present but empty extra segment (but have the new code be generic by dropping any excess trailing entirely empty segments). Fixes: dedb0aa42c6d ("x86/build: use --orphan-handling linker option if available") Signed-off-by: Jan Beulich Acked-by: Andrew Cooper --- a/xen/arch/x86/boot/mkelf32.c +++ b/xen/arch/x86/boot/mkelf32.c @@ -320,6 +320,19 @@ int main(int argc, char **argv) (int)in64_ehdr.e_phentsize, (int)sizeof(in64_phdr)); return 1; } + + /* Ignore entirely empty trailing program headers. */ + while ( in64_ehdr.e_phnum > num_phdrs ) + { + (void)lseek(infd, + in64_ehdr.e_phoff + in64_ehdr.e_phnum * sizeof(in64_phdr), + SEEK_SET); + do_read(infd, &in64_phdr, sizeof(in64_phdr)); + endianadjust_phdr64(&in64_phdr); + if ( in64_phdr.p_memsz ) + break; + --in64_ehdr.e_phnum; + } if ( in64_ehdr.e_phnum != num_phdrs ) { fprintf(stderr, "Expect precisly %d program header; found %d.\n", --- a/xen/arch/x86/xen.lds.S +++ b/xen/arch/x86/xen.lds.S @@ -40,9 +40,7 @@ OUTPUT_ARCH(i386:x86-64) PHDRS { text PT_LOAD ; -#if defined(BUILD_ID) || defined(CONFIG_PVH_GUEST) note PT_NOTE ; -#endif } #define PHDR(x) :x #else