From nobody Tue Jun 28 07:53:14 2022 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 865CD8670AA; Tue, 28 Jun 2022 07:53:14 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4LXGzt2PThz4gDL; Tue, 28 Jun 2022 07:53:14 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1656402794; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=oCQWjV2qnKvKYCsmeD1SbBxiLUEyYk5Cyzc8v9wmCQ0=; b=MRE7986ajmkF4Helblk+shgh4H8keZl+aPqykPpuXENi2CRsgkH/Evz0OpITRy2rUcF2bG 5ofkilIBNgfRZ68G7GK5rRZAmbeqpqOfDiWI6uDI9sj2MR+B0irW5YrF/IBMxPil3kWeQQ 7aknD+0rbqxvDL8RNStBzYmAlaUCliICyEfKn4yx3rbUfj5z1P5alnvSm0E7w8Fe637vxD LWP+2DpD1jiykT7rMhW0Qe1czewPRMBfjsoNuK5Jah3BeUi6CuvMmGY4s1m9yIrHuugdIT uLJ8YEqS3QLRYUx9AnDp1riexx1EiVt+Xk4196mdhGAAhmRjNWjGuIqVPU2aOA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 295C819321; Tue, 28 Jun 2022 07:53:14 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 25S7rEYP028942; Tue, 28 Jun 2022 07:53:14 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 25S7rE4c028941; Tue, 28 Jun 2022 07:53:14 GMT (envelope-from git) Date: Tue, 28 Jun 2022 07:53:14 GMT Message-Id: <202206280753.25S7rE4c028941@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: =?utf-8?Q?Roger=20Pau=20Monn=C3=A9?= Subject: git: 881c145431b7 - main - elfnote: place note in a PT_NOTE program header List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: royger X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 881c145431b7aa956b93f6d2e7b861fe00ecc892 Auto-Submitted: auto-generated ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1656402794; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=oCQWjV2qnKvKYCsmeD1SbBxiLUEyYk5Cyzc8v9wmCQ0=; b=KiZpQSXVv3cxkF15FZTExqI/Br3AyGazSx9ihjtESPeBrUyo7FKkNaKsehz4bk5Z+ySqp6 yGP8/EwgAU7Frt/zurcLuoAKD2N/elsGl7agsBsAA5Qga3v0+Tnww8Mh0UMMvlRUQDbeQp u31bU3CMT4MjGmk9wg18YjsXnN6wH4ouy84Kt+cxCtAQVhbT+vg5v13hDcsPyLilN9QI18 cCOJ+IJkq3BhbiwAXMCW2n1SEcrQiJJHOHfgyZpXVQf8Ixji6hEsR4TaZSOZBcZDoCu08Z X4+mmPLpvhFPQ31Jnh2lF67liEWue/hs/q9DT3GbJ87UDd3EQMJY5unYzsoecw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1656402794; a=rsa-sha256; cv=none; b=ZRkC2wKcic/dHXfUJXFmznyORh3bV69MhClFDDE8NoNmhVj86r8s7Dvv/4vxe8AOjfLA/u SpN/0YNpbhjYfjrC9wKC+1+b7Q/29QizebCeZer9kzVHPcv95O8ViwV9AwSJcH5g0CR302 dst+UphGC7iSIU6TfOrMqvwDs4fXsdJnqLclT1yoav4nP6LwHA8JITQ9dd/8wE5O7/lkVl 9kvJsDkCwaOYgztyHolSZqBrsS7UF8NKemRJFilpYty6r8QxiJzcKJZ6Sah1WW7zx7zMpO t/4yT0+wgwtTwgVNMgvW30vTX6ntH6QkTWGTj/jnu7qHpE4Nz1JtWN2BR9TugQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by royger: URL: https://cgit.FreeBSD.org/src/commit/?id=881c145431b7aa956b93f6d2e7b861fe00ecc892 commit 881c145431b7aa956b93f6d2e7b861fe00ecc892 Author: Roger Pau Monné AuthorDate: 2022-06-27 13:51:28 +0000 Commit: Roger Pau Monné CommitDate: 2022-06-28 07:51:57 +0000 elfnote: place note in a PT_NOTE program header Some tools (firecraker loader) only check for notes in PT_NOTE program headers, so make sure the notes added using the ELFNOTE macro end up in such header. Output from readelf -Wl for and amd64 kernel after the change: Elf file type is EXEC (Executable file) Entry point 0xffffffff8038a000 There are 11 program headers, starting at offset 64 Program Headers: Type Offset VirtAddr PhysAddr FileSiz MemSiz Flg Align PHDR 0x000040 0xffffffff80200040 0x0000000000200040 0x000268 0x000268 R 0x8 INTERP 0x0002a8 0xffffffff802002a8 0x00000000002002a8 0x00000d 0x00000d R 0x1 [Requesting program interpreter: /red/herring] LOAD 0x000000 0xffffffff80200000 0x0000000000200000 0x189e28 0x189e28 R 0x200000 LOAD 0x18a000 0xffffffff8038a000 0x000000000038a000 0xe447e8 0xe447e8 R E 0x200000 LOAD 0xfce7f0 0xffffffff811ce7f0 0x00000000011ce7f0 0x6b955c 0x6b955c R 0x200000 LOAD 0x1800000 0xffffffff81a00000 0x0000000001a00000 0x000140 0x000140 RW 0x200000 LOAD 0x1801000 0xffffffff81a01000 0x0000000001a01000 0x1c8480 0x5ff000 RW 0x200000 DYNAMIC 0x1800000 0xffffffff81a00000 0x0000000001a00000 0x000140 0x000140 RW 0x8 GNU_RELRO 0x1800000 0xffffffff81a00000 0x0000000001a00000 0x000140 0x000140 R 0x1 GNU_STACK 0x000000 0x0000000000000000 0x0000000000000000 0x000000 0x000000 RW 0 NOTE 0x1687ae0 0xffffffff81887ae0 0x0000000001887ae0 0x0001c0 0x0001c0 R 0x4 Section to Segment mapping: Segment Sections... [...] 10 .note.gnu.build-id .note.Xen Reported by: cperciva Fixes: 1a9cdd373a6a ('xen: add PV/PVH kernel entry point') Fixes: 93ee134a24fa ('Integrate support for xen in to i386 common code.') Sponsored by: Citrix Systems R&D Reviewed by: emaste Differential revision: https://reviews.freebsd.org/D35611 --- sys/amd64/include/asmacros.h | 4 ++-- sys/arm/include/asmacros.h | 2 +- sys/i386/include/asmacros.h | 4 ++-- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/sys/amd64/include/asmacros.h b/sys/amd64/include/asmacros.h index a0d2e153f09b..a54ea56de2d5 100644 --- a/sys/amd64/include/asmacros.h +++ b/sys/amd64/include/asmacros.h @@ -243,7 +243,7 @@ X\vec_name: #ifdef __STDC__ #define ELFNOTE(name, type, desctype, descdata...) \ -.pushsection .note.name ; \ +.pushsection .note.name, "a", @note ; \ .align 4 ; \ .long 2f - 1f /* namesz */ ; \ .long 4f - 3f /* descsz */ ; \ @@ -255,7 +255,7 @@ X\vec_name: .popsection #else /* !__STDC__, i.e. -traditional */ #define ELFNOTE(name, type, desctype, descdata) \ -.pushsection .note.name ; \ +.pushsection .note.name, "a", @note ; \ .align 4 ; \ .long 2f - 1f /* namesz */ ; \ .long 4f - 3f /* descsz */ ; \ diff --git a/sys/arm/include/asmacros.h b/sys/arm/include/asmacros.h index a41af82febba..1b5d13e2b20e 100644 --- a/sys/arm/include/asmacros.h +++ b/sys/arm/include/asmacros.h @@ -41,7 +41,7 @@ mrc p15, 0, tmp, c13, c0, 4 #define ELFNOTE(section, type, vendor, desctype, descdata...) \ - .pushsection section ; \ + .pushsection section, "a", %note ; \ .balign 4 ; \ .long 2f - 1f /* namesz */ ; \ .long 4f - 3f /* descsz */ ; \ diff --git a/sys/i386/include/asmacros.h b/sys/i386/include/asmacros.h index 9d212246b0c1..bc663a91b30d 100644 --- a/sys/i386/include/asmacros.h +++ b/sys/i386/include/asmacros.h @@ -156,7 +156,7 @@ #ifdef __STDC__ #define ELFNOTE(name, type, desctype, descdata...) \ -.pushsection .note.name ; \ +.pushsection .note.name, "a", @note ; \ .align 4 ; \ .long 2f - 1f /* namesz */ ; \ .long 4f - 3f /* descsz */ ; \ @@ -168,7 +168,7 @@ .popsection #else /* !__STDC__, i.e. -traditional */ #define ELFNOTE(name, type, desctype, descdata) \ -.pushsection .note.name ; \ +.pushsection .note.name, "a", @note ; \ .align 4 ; \ .long 2f - 1f /* namesz */ ; \ .long 4f - 3f /* descsz */ ; \