From patchwork Wed Jan 15 05:47:57 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Akihiko Odaki X-Patchwork-Id: 57946 Return-Path: X-Original-To: patchwork@sourceware.org Delivered-To: patchwork@sourceware.org Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 52367385481F for ; Wed, 15 Jan 2025 05:50:46 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 52367385481F Authentication-Results: sourceware.org; dkim=pass (2048-bit key, unprotected) header.d=daynix-com.20230601.gappssmtp.com header.i=@daynix-com.20230601.gappssmtp.com header.a=rsa-sha256 header.s=20230601 header.b=a84qh6H9 X-Original-To: binutils@sourceware.org Delivered-To: binutils@sourceware.org Received: from mail-pj1-x102b.google.com (mail-pj1-x102b.google.com [IPv6:2607:f8b0:4864:20::102b]) by sourceware.org (Postfix) with ESMTPS id 555DA385C6DD for ; Wed, 15 Jan 2025 05:48:37 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 555DA385C6DD Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=daynix.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=daynix.com ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 555DA385C6DD Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=2607:f8b0:4864:20::102b ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1736920117; cv=none; b=UNvSKMBGIpcE0zR2Ua3bedHL3Hq/DeDxzmP8aFw5siR7q5T6l4j5Z496rG2daaOGzO7WeXYweAazpDvukVqyvyHu1ORKAHLREKw84mP6PkLargZs1/yeHkFFQ9H6jG/phHm7GTU9Rwm4dEGnmJ+5VrY/ChXxyAeBzdxn8vZTCHg= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1736920117; c=relaxed/simple; bh=xnkO8PQjNpwy4PDi1l9g+TNSCpCBd6V2r9VCEB7db0I=; h=DKIM-Signature:From:Subject:Date:Message-Id:MIME-Version:To; b=A4vdKZmalyNX0/rXtL4rrfisu/+OQYv3Urh08BdlWaazpUUBJc+3fBLbYGYBT1au3tZoTqRFU3laODj7gQAVI40OgQ4NqEcALT1kCrO66uB7dlqNMK9VtwN3yCA28n2qhyUFIvE6BtMoRqMQBpXlGMber4p2SRpA8z2Whd3M3tY= ARC-Authentication-Results: i=1; server2.sourceware.org DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 555DA385C6DD Received: by mail-pj1-x102b.google.com with SMTP id 98e67ed59e1d1-2f44353649aso8354448a91.0 for ; Tue, 14 Jan 2025 21:48:37 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=daynix-com.20230601.gappssmtp.com; s=20230601; t=1736920116; x=1737524916; darn=sourceware.org; h=cc:to:content-transfer-encoding:mime-version:message-id:date :subject:from:from:to:cc:subject:date:message-id:reply-to; bh=Akn62yShjkzTVW+wH6ehtLyqM9iw3YLFKJEmmviG+rI=; b=a84qh6H9Wv242DRQ/saZkkMEYBy3uIHD0MdlL6KovcWhYKR+USXf1PMm8eiD3hv8zd E3Y+FxorccB0K8PFjyc9edb9k5L2gkd8XDkwpp0blnviIByE8gmb5bMq72rmVFcS3iyr V1ze+iNFxdSFORXjG9QomNXpVxpwq1WLjrJP8Wqfucf17Y422Es31jKQlS5mNbWF3i4t QpaiECHW5MXcOBNFHBcpqfSOQm1Vv45AhZloBGbhthUTREvNtaVo/ZhnHo5Mtkgh+HQl nv6Di/vzBTl3e/cFHPLNOuQ2y/VF7PTxCQemJTbzzQMTLsprl79d31nyuMV5xgbtfvXe 6GuA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1736920116; x=1737524916; h=cc:to:content-transfer-encoding:mime-version:message-id:date :subject:from:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=Akn62yShjkzTVW+wH6ehtLyqM9iw3YLFKJEmmviG+rI=; b=wVKqrIpzieWnCInB0JbBkXNRffoy9O4TcwPeH/g8UR8t9+h4e/xU5fR8LamigdOqiM wD2UftiKwIL/ld64oYmIa4jONI2sntda0AfzqPxyHkLXSHXYN32iasIkiNL7CKzHI2Hc TKxN+BQxQ/f7n6GIBgLk4L8Djfd3Hqg1RBXqhSTUDKIHAHZhEYsBB6ivKJI80gtXf/Po YstPylg9Gq186aoug2xZe3OQEQ8N5Cr5B5Ammwyj4M+4k4YDxa00Kcz6pC/18VyJK4gL xdzPcTLZlQ4qqy7iDXpIMd+tq6OWUpoh4/o/A5iUmwVnQ05F08HaZj6/251goZcO9+KD y9AA== X-Forwarded-Encrypted: i=1; AJvYcCUJFJuZ5AIo5NdkTAHCiMAjJjsekRcK1i1JaFP6zSOgPNpwjvMhOD0wSbccwwoqmrjToal7jvQG4w==@sourceware.org X-Gm-Message-State: AOJu0YysXtSZQPiq9AsfoNZqsk1IzrpeXo/uG4m+Z8qez/JPpd8Sd+6Q FoyBRUWIbWbwh1aQuKLsfxo7ZQbW1wsXSyxqCFnHQHczer52V0OouUEjRSmlTmY= X-Gm-Gg: ASbGncvX+MdcN96Vc1s3l5S6gkGF0YerEcjBfkWPxBhS78w4DZEqzuCaFD57z3rTfMs uvygM9qOnMBI0C2i6z04HuuERZgXHGzfnlntAiPLlrjw0UMlwujrvDX5wxdhkZ9u36E8Fa+US1x Wqy/XQt7yBY+B0Za5rBhdZzVyPG5Fffad6ExFGJkxDa5kwurLf4p5kI2ffbU920JZeWobO6s0db rEiMwSLpjZD85xnRTkQ6acN7KYFc/yonroebHWtLsdpBwdMx0p99H9kqvs= X-Google-Smtp-Source: AGHT+IGTAFr6fQ9a6YArcK/8amGmkIoCg+M7qyB/EhAZVK1D/0q1h57yniAmS1nzzXQhV2aOnFsX2A== X-Received: by 2002:a17:90b:3bc3:b0:2ee:bbd8:2b9d with SMTP id 98e67ed59e1d1-2f548f75de6mr34075229a91.34.1736920116365; Tue, 14 Jan 2025 21:48:36 -0800 (PST) Received: from localhost ([157.82.203.37]) by smtp.gmail.com with UTF8SMTPSA id 98e67ed59e1d1-2f72c1cb28csm504577a91.21.2025.01.14.21.48.31 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Tue, 14 Jan 2025 21:48:35 -0800 (PST) From: Akihiko Odaki Subject: [PATCH v5 0/6] elf: Define note name macros Date: Wed, 15 Jan 2025 14:47:57 +0900 Message-Id: <20250115-elf-v5-0-0f9e55bbb2fc@daynix.com> MIME-Version: 1.0 X-B4-Tracking: v=1; b=H4sIAA1Mh2cC/2XMyw6CMBCF4VchXVsz04tYV76HcdHLoE0UDBgCI by7BTTBsDyT+f6BNVRHatgpG1hNbWxiVaahdxnzd1veiMeQNhMgFAoETo+CuyOQlUYZLw1Ln6+ aitjNlcs17Xts3lXdz9EWp+vXCz37Fjny3JBRIDUEDedg+zJ2e1892RRoxQ9pQFALEhx4ngcvC A7BKdoguUb5gmRCxninQTu0TmyQWiHEBamEnDwqLCwEH8wfGsfxA3RS27E2AQAA To: Eric Biederman , Kees Cook , Catalin Marinas , Mark Brown , Dave Martin , Baoquan He , Vivek Goyal , Dave Young , LEROY Christophe Cc: linux-mm@kvack.org, linux-kernel@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-s390@vger.kernel.org, kexec@lists.infradead.org, binutils@sourceware.org, devel@daynix.com, Akihiko Odaki , Heiko Carstens X-Mailer: b4 0.14-dev-fd6e3 X-Spam-Status: No, score=-6.8 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, KAM_MANYTO, RCVD_IN_DNSWL_NONE, SPF_HELO_NONE, SPF_PASS, TXREP autolearn=no autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org X-BeenThere: binutils@sourceware.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Binutils mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: binutils-bounces~patchwork=sourceware.org@sourceware.org elf.h had a comment saying: > Notes used in ET_CORE. Architectures export some of the arch register > sets using the corresponding note types via the PTRACE_GETREGSET and > PTRACE_SETREGSET requests. > The note name for these types is "LINUX", except NT_PRFPREG that is > named "CORE". However, NT_PRSTATUS is also named "CORE". It is also unclear what "these types" refers to. To fix these problems, define a name for each note type. The added definitions are macros so the kernel and userspace can directly refer to them. For userspace program developers --------------------------------------------------- While the main purpose of new macros is documentation, they are also hoped to be useful for userspace programs. Please check patch "elf: Define note name macros" and if you have a suggestion to make it more convenient for you, please share. I added the Binutils mailing list to the CC as it contains code to parse dumps. I'm also planning to share this series on LLVM Discourse. Signed-off-by: Akihiko Odaki --- Changes in v5: - Noted that patch "elf: Define note name macros" allows removing duplicate definitions of note names. - Reordered NT_GNU_PROPERTY_TYPE_0 to precede notes used in ET_CORE to show its not specific to ET_CORE. - Link to v4: https://lore.kernel.org/r/20250111-elf-v4-0-b3841fa0dcd9@daynix.com Changes in v4: - s/powwerpc/powerpc/ - s/NT_INIT/nt_init/g s/NT_SIZE/nt_size/g - Removed parentheses that have little value. - Fixed the code alignment in get_cpu_elf_notes_size(). - Link to v3: https://lore.kernel.org/r/20250107-elf-v3-0-99cb505b1ab2@daynix.com Changes in v3: - Added patch "s390/crash: Use note name macros". - Changed to interleave note name and type macros. - Described NN_ and NT_ macros. - Link to v2: https://lore.kernel.org/r/20250104-elf-v2-0-77dc2e06db4e@daynix.com Changes in v2: - Added a macro definition for each note type instead of trying to describe in a comment. - Link to v1: https://lore.kernel.org/r/20241225-elf-v1-1-79e940350d50@daynix.com --- Akihiko Odaki (6): elf: Define note name macros binfmt_elf: Use note name macros powerpc: Use note name macros crash: Use note name macros s390/crash: Use note name macros crash: Remove KEXEC_CORE_NOTE_NAME arch/powerpc/kernel/fadump.c | 2 +- arch/powerpc/platforms/powernv/opal-core.c | 8 +-- arch/s390/kernel/crash_dump.c | 62 ++++++++------------- fs/binfmt_elf.c | 21 ++++--- fs/binfmt_elf_fdpic.c | 8 +-- fs/proc/kcore.c | 12 ++-- include/linux/kexec.h | 2 - include/linux/vmcore_info.h | 3 +- include/uapi/linux/elf.h | 89 ++++++++++++++++++++++++++++-- kernel/crash_core.c | 2 +- 10 files changed, 134 insertions(+), 75 deletions(-) --- base-commit: a32e14f8aef69b42826cf0998b068a43d486a9e9 change-id: 20241210-elf-b80ea3949c39 Best regards,