From nobody Sun Feb 8 05:06:36 2026 Received: from mail-pl1-f176.google.com (mail-pl1-f176.google.com [209.85.214.176]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 6B0AE1F2C2B for ; Tue, 7 Jan 2025 12:47:59 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.214.176 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1736254083; cv=none; b=YrGCLOxKlCm965IAKLoBWQHegoQ8YIE4YtmaQ57naVdcMyuiq5rEdmuTbX1Ej4k5VoxvFI2TtRr+13+4XGhoiL/KHSChua2ChcXngF5OuxHtAEL+erX/SEpwnD/PP0rqQzxnyhiAPcnveXPJLXgYgBxy7ilwklFeQFkrdsEqCD0= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1736254083; c=relaxed/simple; bh=fAhUoOeYK9fr2EpiTrdYpYKT9gvRJnt1fjb0VAfqM9o=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=jZlmdwr+OtbQovo7ooYTyWsucp92eG+PXilMTQa7iFSHqMMEVqsbBhoWjGbez96GyTlqjrqsHykJ8BU4OsVjdzFN6iJYJruArppGQW4f/bZPCkHef6PnH1JiNTsojqlJIcktouDbUjSYUaeFpZDncmcK7Gl+6JnFB7ZdJLYzu94= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=daynix.com; spf=pass smtp.mailfrom=daynix.com; dkim=pass (2048-bit key) header.d=daynix-com.20230601.gappssmtp.com header.i=@daynix-com.20230601.gappssmtp.com header.b=RkjPzpD/; arc=none smtp.client-ip=209.85.214.176 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=daynix.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=daynix.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=daynix-com.20230601.gappssmtp.com header.i=@daynix-com.20230601.gappssmtp.com header.b="RkjPzpD/" Received: by mail-pl1-f176.google.com with SMTP id d9443c01a7336-21a7ed0155cso5708095ad.3 for ; Tue, 07 Jan 2025 04:47:59 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=daynix-com.20230601.gappssmtp.com; s=20230601; t=1736254079; x=1736858879; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=He/FF4mW6z63rm6Ez1fm+hLtPmYbF/A35f1xOajKz/c=; b=RkjPzpD/zovkAQvLZIb+8eTba875k7yIUfaevBR3fpxGCy+ISx87PtZtfPY27NwcAl 3Ne3KQhlqyLFNmJChjDbfGQxUgEwxHciYxDLImjzuuY1nmXCtxyp7i6CPkA+BN8mhRBn njm6RkzmIMnACjOjXro5FPRUJ6HITyE0CV+GdjwoyGTbHobuiYCX5ttnOtjcNKaRZLee P1yZlGrXk5IQwmjMFD8qqDVw4GIYdGjbeBtfmzpyyzpgB1tOIvwe0elFTwdDq+cQLOto PKwQCKvP3lu6vt6JPR3dZ+PZwGPGfd6/bH71ibpsqbFinkfpPnH8GkgRwFWHAVKbni34 kXHQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1736254079; x=1736858879; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=He/FF4mW6z63rm6Ez1fm+hLtPmYbF/A35f1xOajKz/c=; b=bhcI7NRamE5bYZ2EvQLtbSGaOWiJ73JlWwnnzSpWD0YPQdu2WFxDhYmF0pbYONDiZF We4Ry63Zn0TUdGDAtTgMkk+meMXS6/XCPr28KmAf/0+xotLPMrxO9huJfJOerWnsM9iS HhAi91cSpbm+YlJ3ZxX2FlTEgbkhGhk6MmkYsY8nx+K0rY3COCHmgWXq32t4dLQvhwWo aYWgivhETEE5BuEgAlRxWOpZkaRjuAm//pumX0Gt6GXabkFHfCKYBP2hTXLIp0GeH8a+ 8WGpsN/A51yZDnDCe1Ipt8t7MwwY1KnNCZnKIEA851FOJDmNh5MBcv6+rDRmMziS9ZQS wMoQ== X-Forwarded-Encrypted: i=1; AJvYcCV0mEDa/ZiVTR+dh+Zw0NoLDtnkBMpXX3c8839MXL629oN7ZmMjvIUWzpLqE7I9sm7/WSSApIa+xhVPrnw=@vger.kernel.org X-Gm-Message-State: AOJu0YzfByMtyfbOzzkyMX3DNL3i+fk2VQqHw2R9L623xocEie1Wlhko scAdOkSvRyMpx042uka1WMfJ8qUZe3GXgTYXGs34+a8TyZlMIdU1mGmKrODoO5g= X-Gm-Gg: ASbGnctCL6VdIzMm7lxhg7MJPdYc4DhM4DTAimZ3lHew2J4+L5oPLZka1jK/tBXWTr5 c1XpW9vI+hWhbdgWMdgnzrqhgBhqb1mDT+uvv/BmeiwK++4VIAmBOx+cZzFc68jbEzJ10Rtii1Q iQKN6gph+G3QwL+Sbxgfrho/niWNgMJtlWZyTlhtGGVdJsPDVroUVMqKKHHoFsWtGsXviq/DuE3 TZuXeD2ilvwthvuV0KdMZ2ae7FuFs3yHDF+AB6JFwg3OViuD2XKRqORaSw= X-Google-Smtp-Source: AGHT+IGj6u8NRmS4TeZ/1IMiWstql9gdjkk0bdLulE0ZZ9e8x4y5HEHvh/9HOrX1KoNRUGfFwcEprw== X-Received: by 2002:a17:902:f646:b0:216:501e:e314 with SMTP id d9443c01a7336-219e6e9fdb4mr938029515ad.20.1736254078701; Tue, 07 Jan 2025 04:47:58 -0800 (PST) Received: from localhost ([157.82.203.37]) by smtp.gmail.com with UTF8SMTPSA id d9443c01a7336-219dc962c05sm308643635ad.43.2025.01.07.04.47.54 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Tue, 07 Jan 2025 04:47:58 -0800 (PST) From: Akihiko Odaki Date: Tue, 07 Jan 2025 21:45:52 +0900 Subject: [PATCH v3 1/6] elf: Define note name macros Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20250107-elf-v3-1-99cb505b1ab2@daynix.com> References: <20250107-elf-v3-0-99cb505b1ab2@daynix.com> In-Reply-To: <20250107-elf-v3-0-99cb505b1ab2@daynix.com> To: Eric Biederman , Kees Cook , Catalin Marinas , Mark Brown , Dave Martin , Baoquan He , Vivek Goyal , Dave Young 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 X-Mailer: b4 0.14-dev-fd6e3 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. Signed-off-by: Akihiko Odaki Acked-by: Baoquan He --- include/uapi/linux/elf.h | 86 ++++++++++++++++++++++++++++++++++++++++++++= ++-- 1 file changed, 83 insertions(+), 3 deletions(-) diff --git a/include/uapi/linux/elf.h b/include/uapi/linux/elf.h index b44069d29cec..343f5c40d03a 100644 --- a/include/uapi/linux/elf.h +++ b/include/uapi/linux/elf.h @@ -368,99 +368,179 @@ typedef struct elf64_shdr { #define ELF_OSABI ELFOSABI_NONE #endif =20 +/* Note definitions: NN_ defines names. NT_ defines types. */ + /* * Notes used in ET_CORE. Architectures export some of the arch register s= ets * 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 nam= ed - * "CORE". */ +#define NN_PRSTATUS "CORE" #define NT_PRSTATUS 1 +#define NN_PRFPREG "CORE" #define NT_PRFPREG 2 +#define NN_PRPSINFO "CORE" #define NT_PRPSINFO 3 +#define NN_TASKSTRUCT "CORE" #define NT_TASKSTRUCT 4 +#define NN_AUXV "CORE" #define NT_AUXV 6 /* * Note to userspace developers: size of NT_SIGINFO note may increase * in the future to accomodate more fields, don't assume it is fixed! */ +#define NN_SIGINFO "CORE" #define NT_SIGINFO 0x53494749 +#define NN_FILE "CORE" #define NT_FILE 0x46494c45 +#define NN_PRXFPREG "LINUX" #define NT_PRXFPREG 0x46e62b7f /* copied from gdb5.1/include/elf/= common.h */ +#define NN_PPC_VMX "LINUX" #define NT_PPC_VMX 0x100 /* PowerPC Altivec/VMX registers */ +#define NN_PPC_SPE "LINUX" #define NT_PPC_SPE 0x101 /* PowerPC SPE/EVR registers */ +#define NN_PPC_VSX "LINUX" #define NT_PPC_VSX 0x102 /* PowerPC VSX registers */ +#define NN_PPC_TAR "LINUX" #define NT_PPC_TAR 0x103 /* Target Address Register */ +#define NN_PPC_PPR "LINUX" #define NT_PPC_PPR 0x104 /* Program Priority Register */ +#define NN_PPC_DSCR "LINUX" #define NT_PPC_DSCR 0x105 /* Data Stream Control Register */ +#define NN_PPC_EBB "LINUX" #define NT_PPC_EBB 0x106 /* Event Based Branch Registers */ +#define NN_PPC_PMU "LINUX" #define NT_PPC_PMU 0x107 /* Performance Monitor Registers */ +#define NN_PPC_TM_CGPR "LINUX" #define NT_PPC_TM_CGPR 0x108 /* TM checkpointed GPR Registers */ +#define NN_PPC_TM_CFPR "LINUX" #define NT_PPC_TM_CFPR 0x109 /* TM checkpointed FPR Registers */ +#define NN_PPC_TM_CVMX "LINUX" #define NT_PPC_TM_CVMX 0x10a /* TM checkpointed VMX Registers */ +#define NN_PPC_TM_CVSX "LINUX" #define NT_PPC_TM_CVSX 0x10b /* TM checkpointed VSX Registers */ +#define NN_PPC_TM_SPR "LINUX" #define NT_PPC_TM_SPR 0x10c /* TM Special Purpose Registers */ +#define NN_PPC_TM_CTAR "LINUX" #define NT_PPC_TM_CTAR 0x10d /* TM checkpointed Target Address Register */ +#define NN_PPC_TM_CPPR "LINUX" #define NT_PPC_TM_CPPR 0x10e /* TM checkpointed Program Priority Register= */ +#define NN_PPC_TM_CDSCR "LINUX" #define NT_PPC_TM_CDSCR 0x10f /* TM checkpointed Data Stream Control Regi= ster */ +#define NN_PPC_PKEY "LINUX" #define NT_PPC_PKEY 0x110 /* Memory Protection Keys registers */ +#define NN_PPC_DEXCR "LINUX" #define NT_PPC_DEXCR 0x111 /* PowerPC DEXCR registers */ +#define NN_PPC_HASHKEYR "LINUX" #define NT_PPC_HASHKEYR 0x112 /* PowerPC HASHKEYR register */ +#define NN_386_TLS "LINUX" #define NT_386_TLS 0x200 /* i386 TLS slots (struct user_desc) */ +#define NN_386_IOPERM "LINUX" #define NT_386_IOPERM 0x201 /* x86 io permission bitmap (1=3Ddeny) */ +#define NN_X86_XSTATE "LINUX" #define NT_X86_XSTATE 0x202 /* x86 extended state using xsave */ /* Old binutils treats 0x203 as a CET state */ +#define NN_X86_SHSTK "LINUX" #define NT_X86_SHSTK 0x204 /* x86 SHSTK state */ +#define NN_X86_XSAVE_LAYOUT "LINUX" #define NT_X86_XSAVE_LAYOUT 0x205 /* XSAVE layout description */ +#define NN_S390_HIGH_GPRS "LINUX" #define NT_S390_HIGH_GPRS 0x300 /* s390 upper register halves */ +#define NN_S390_TIMER "LINUX" #define NT_S390_TIMER 0x301 /* s390 timer register */ +#define NN_S390_TODCMP "LINUX" #define NT_S390_TODCMP 0x302 /* s390 TOD clock comparator register */ +#define NN_S390_TODPREG "LINUX" #define NT_S390_TODPREG 0x303 /* s390 TOD programmable register */ +#define NN_S390_CTRS "LINUX" #define NT_S390_CTRS 0x304 /* s390 control registers */ +#define NN_S390_PREFIX "LINUX" #define NT_S390_PREFIX 0x305 /* s390 prefix register */ +#define NN_S390_LAST_BREAK "LINUX" #define NT_S390_LAST_BREAK 0x306 /* s390 breaking event address */ +#define NN_S390_SYSTEM_CALL "LINUX" #define NT_S390_SYSTEM_CALL 0x307 /* s390 system call restart data */ +#define NN_S390_TDB "LINUX" #define NT_S390_TDB 0x308 /* s390 transaction diagnostic block */ +#define NN_S390_VXRS_LOW "LINUX" #define NT_S390_VXRS_LOW 0x309 /* s390 vector registers 0-15 upper half */ +#define NN_S390_VXRS_HIGH "LINUX" #define NT_S390_VXRS_HIGH 0x30a /* s390 vector registers 16-31 */ +#define NN_S390_GS_CB "LINUX" #define NT_S390_GS_CB 0x30b /* s390 guarded storage registers */ +#define NN_S390_GS_BC "LINUX" #define NT_S390_GS_BC 0x30c /* s390 guarded storage broadcast control blo= ck */ +#define NN_S390_RI_CB "LINUX" #define NT_S390_RI_CB 0x30d /* s390 runtime instrumentation */ +#define NN_S390_PV_CPU_DATA "LINUX" #define NT_S390_PV_CPU_DATA 0x30e /* s390 protvirt cpu dump data */ +#define NN_ARM_VFP "LINUX" #define NT_ARM_VFP 0x400 /* ARM VFP/NEON registers */ +#define NN_ARM_TLS "LINUX" #define NT_ARM_TLS 0x401 /* ARM TLS register */ +#define NN_ARM_HW_BREAK "LINUX" #define NT_ARM_HW_BREAK 0x402 /* ARM hardware breakpoint registers */ +#define NN_ARM_HW_WATCH "LINUX" #define NT_ARM_HW_WATCH 0x403 /* ARM hardware watchpoint registers */ +#define NN_ARM_SYSTEM_CALL "LINUX" #define NT_ARM_SYSTEM_CALL 0x404 /* ARM system call number */ +#define NN_ARM_SVE "LINUX" #define NT_ARM_SVE 0x405 /* ARM Scalable Vector Extension registers */ +#define NN_ARM_PAC_MASK "LINUX" #define NT_ARM_PAC_MASK 0x406 /* ARM pointer authentication code masks */ +#define NN_ARM_PACA_KEYS "LINUX" #define NT_ARM_PACA_KEYS 0x407 /* ARM pointer authentication address keys = */ +#define NN_ARM_PACG_KEYS "LINUX" #define NT_ARM_PACG_KEYS 0x408 /* ARM pointer authentication generic key */ +#define NN_ARM_TAGGED_ADDR_CTRL "LINUX" #define NT_ARM_TAGGED_ADDR_CTRL 0x409 /* arm64 tagged address control (prc= tl()) */ +#define NN_ARM_PAC_ENABLED_KEYS "LINUX" #define NT_ARM_PAC_ENABLED_KEYS 0x40a /* arm64 ptr auth enabled keys (prct= l()) */ +#define NN_ARM_SSVE "LINUX" #define NT_ARM_SSVE 0x40b /* ARM Streaming SVE registers */ +#define NN_ARM_ZA "LINUX" #define NT_ARM_ZA 0x40c /* ARM SME ZA registers */ +#define NN_ARM_ZT "LINUX" #define NT_ARM_ZT 0x40d /* ARM SME ZT registers */ +#define NN_ARM_FPMR "LINUX" #define NT_ARM_FPMR 0x40e /* ARM floating point mode register */ +#define NN_ARM_POE "LINUX" #define NT_ARM_POE 0x40f /* ARM POE registers */ +#define NN_ARM_GCS "LINUX" #define NT_ARM_GCS 0x410 /* ARM GCS state */ +#define NN_ARC_V2 "LINUX" #define NT_ARC_V2 0x600 /* ARCv2 accumulator/extra registers */ +#define NN_VMCOREDD "LINUX" #define NT_VMCOREDD 0x700 /* Vmcore Device Dump Note */ +#define NN_MIPS_DSP "LINUX" #define NT_MIPS_DSP 0x800 /* MIPS DSP ASE registers */ +#define NN_MIPS_FP_MODE "LINUX" #define NT_MIPS_FP_MODE 0x801 /* MIPS floating-point mode */ +#define NN_MIPS_MSA "LINUX" #define NT_MIPS_MSA 0x802 /* MIPS SIMD registers */ +#define NN_RISCV_CSR "LINUX" #define NT_RISCV_CSR 0x900 /* RISC-V Control and Status Registers */ +#define NN_RISCV_VECTOR "LINUX" #define NT_RISCV_VECTOR 0x901 /* RISC-V vector registers */ +#define NN_RISCV_TAGGED_ADDR_CTRL "LINUX" #define NT_RISCV_TAGGED_ADDR_CTRL 0x902 /* RISC-V tagged address control (= prctl()) */ +#define NN_LOONGARCH_CPUCFG "LINUX" #define NT_LOONGARCH_CPUCFG 0xa00 /* LoongArch CPU config registers */ +#define NN_LOONGARCH_CSR "LINUX" #define NT_LOONGARCH_CSR 0xa01 /* LoongArch control and status registers */ +#define NN_LOONGARCH_LSX "LINUX" #define NT_LOONGARCH_LSX 0xa02 /* LoongArch Loongson SIMD Extension regist= ers */ +#define NN_LOONGARCH_LASX "LINUX" #define NT_LOONGARCH_LASX 0xa03 /* LoongArch Loongson Advanced SIMD Extens= ion registers */ +#define NN_LOONGARCH_LBT "LINUX" #define NT_LOONGARCH_LBT 0xa04 /* LoongArch Loongson Binary Translation re= gisters */ +#define NN_LOONGARCH_HW_BREAK "LINUX" #define NT_LOONGARCH_HW_BREAK 0xa05 /* LoongArch hardware breakpoint reg= isters */ +#define NN_LOONGARCH_HW_WATCH "LINUX" #define NT_LOONGARCH_HW_WATCH 0xa06 /* LoongArch hardware watchpoint reg= isters */ =20 -/* Note types with note name "GNU" */ +/* Note used in other file types. */ +#define NN_GNU_PROPERTY_TYPE_0 "GNU" #define NT_GNU_PROPERTY_TYPE_0 5 =20 /* Note header in a PT_NOTE section */ --=20 2.47.1 From nobody Sun Feb 8 05:06:36 2026 Received: from mail-pj1-f47.google.com (mail-pj1-f47.google.com [209.85.216.47]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 827161F429C for ; Tue, 7 Jan 2025 12:48:06 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.216.47 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1736254090; cv=none; b=sgfrjmnycdJT8krzmOfSxTNAcNKDf5ZcOctkkvoKMJLXK1w84RRe/9orHWEwVDy/hYEiBhPrkNAghEHwNWD6Y0mr+hhXQovyuCALw1pBB/RY3JZWsfaVO5QYcf589/nH2TWGWbBpVnH176cRebmrtREdnGaqzAy2qRy9lUDFr1M= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1736254090; c=relaxed/simple; bh=nHxDNiGj0kP+OrAR/r8E7Aht5XhcJNfHXGmXX9sgsJw=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=Tiyk7mojnVWEWajt1fCnwk68/LmldW1sBMUDa3IbdPsxCwh4fff1PFqa5PXxwoX40gs2Ftwq0JfYarVN+Nfp28/Okiy6+OP+Kp6m5usvIppuxSnEp8PLK+uzU0iZJyI3fKPYm0RIPpwZmGiUMPg0cyQuBrgmqlGeN9Po0iTf8+8= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=daynix.com; spf=pass smtp.mailfrom=daynix.com; dkim=pass (2048-bit key) header.d=daynix-com.20230601.gappssmtp.com header.i=@daynix-com.20230601.gappssmtp.com header.b=xEfMgI5k; arc=none smtp.client-ip=209.85.216.47 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=daynix.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=daynix.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=daynix-com.20230601.gappssmtp.com header.i=@daynix-com.20230601.gappssmtp.com header.b="xEfMgI5k" Received: by mail-pj1-f47.google.com with SMTP id 98e67ed59e1d1-2f441904a42so22997995a91.1 for ; Tue, 07 Jan 2025 04:48:06 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=daynix-com.20230601.gappssmtp.com; s=20230601; t=1736254086; x=1736858886; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=To6WceQOVEAdrv9VIwdrgLUfIkfIZojfYpt2+tcFAZE=; b=xEfMgI5kbkTVeGptLFiLR+4f5wt4CNNS6VvNfdh6sYspAneYv8nQK2pVIu1l58htvp gLIKKe9Nypr2eElu2ZAQqFKgypPZ1thVz177hD/K0gDeTA/RqlQFmQl2D1eKw7iKUrAY u5DGBeflXwx30ewPWSKNknbvkWgMqf1m6M31+bJ9Ap9amST/dWsaOaTq/j+UvfD6Hq5P K5XDeqTlLJP7daD2WG+k08CpwaqOvDjhrJxBpYlzB/rhSHIcuTd+bjtlYnFZjRgWgz4P ysN2q7zBbzj6hG/gDDKs63K9ExIYe9t3DxxdeVL/OWMA/nFhdshscjsKWDA/7DjCddls 8mlQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1736254086; x=1736858886; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=To6WceQOVEAdrv9VIwdrgLUfIkfIZojfYpt2+tcFAZE=; b=HfG8g2Se/5dkbx24Yp0ieKWtOUxMDl6B9EoaWx5pDzFIp33EsQxAV2LDsflyRdQmm5 hO9foUTwx/3qnkxdIxeK/Lb5U0Ie2lVloG/wMP9xF4EFLIuc9rDEhA+z8qNk2jDxA+pK 3GdFadcqE+PoE/i8YwBnMPbL1ok/M39nUYZBFKRl0+Gn8ROfsxUXpYBxd2NY3kyE30tO pn1iOkZwWovcmJk2Xb87ZF0UrKHOeOFGo8WHxQgpOtuLZBIvD25L5+Z/7vjzdqjd2aLD FFyploIvuGPa/o/J8XumV5Tka/JbTwYPj750BHUZ7lQhDLS2ipLPh/A5qTzu4Qly6qJg EFcQ== X-Forwarded-Encrypted: i=1; AJvYcCVgKr0g2V4OSG9mxWsC3P15FhW7cYr93fxtFHCrTwjxBktK/JH0XvynvX4dnLIfmiAg2vX+sY4nArhyhvA=@vger.kernel.org X-Gm-Message-State: AOJu0Yyt3EL2+u5h5Y782ntzELe0l4/Fi+HGoDzAnaXOlngO49us9xgv Pp6voEecDourG+eOcuxYZ7h6lD5GGe/P4o9Un6q/1xpThdBRc0fp1lqDd/On370= X-Gm-Gg: ASbGncuUQ07bsGaKa6GeulrrJb9aPCK0hRezs/B+Ql86OxbH2r4G84QTO881vU615AH 3VExkNPUOTe7I6GVoE/4snjde+uxVVOEec/zulx4PM5ZN+WvcOLJa4lWBq9QgrScWbXhKefy5Bh Ax9mxksMsODWZxy1Cvprd3HEqVihnxBSYgaHT9sKsHLii3UpeRB74w0t+o2brNdpm7Jnx4kGfew 3UTPc9dlDKhkY+4qUhQrjjOJYkRWhpqWGkrWGtAKYAYagrEA6we1545emg= X-Google-Smtp-Source: AGHT+IHmQrtd6DArE28HS9MI+ljcSHS0URGz6WZZfYPdopYVfnKvqXeHpkFOcVWEZed1yb1h138/0Q== X-Received: by 2002:a05:6a00:22c2:b0:725:ef4b:de33 with SMTP id d2e1a72fcca58-72abdbe4de8mr79321688b3a.0.1736254085564; Tue, 07 Jan 2025 04:48:05 -0800 (PST) Received: from localhost ([157.82.203.37]) by smtp.gmail.com with UTF8SMTPSA id d2e1a72fcca58-72aad90b338sm33355957b3a.174.2025.01.07.04.48.01 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Tue, 07 Jan 2025 04:48:05 -0800 (PST) From: Akihiko Odaki Date: Tue, 07 Jan 2025 21:45:53 +0900 Subject: [PATCH v3 2/6] binfmt_elf: Use note name macros Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20250107-elf-v3-2-99cb505b1ab2@daynix.com> References: <20250107-elf-v3-0-99cb505b1ab2@daynix.com> In-Reply-To: <20250107-elf-v3-0-99cb505b1ab2@daynix.com> To: Eric Biederman , Kees Cook , Catalin Marinas , Mark Brown , Dave Martin , Baoquan He , Vivek Goyal , Dave Young 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 X-Mailer: b4 0.14-dev-fd6e3 Use note name macros to match with the userspace's expectation. Signed-off-by: Akihiko Odaki Acked-by: Baoquan He --- fs/binfmt_elf.c | 21 ++++++++++----------- fs/binfmt_elf_fdpic.c | 8 ++++---- 2 files changed, 14 insertions(+), 15 deletions(-) diff --git a/fs/binfmt_elf.c b/fs/binfmt_elf.c index 106f0e8af177..5b4a92e5e508 100644 --- a/fs/binfmt_elf.c +++ b/fs/binfmt_elf.c @@ -762,8 +762,7 @@ static int parse_elf_property(const char *data, size_t = *off, size_t datasz, } =20 #define NOTE_DATA_SZ SZ_1K -#define GNU_PROPERTY_TYPE_0_NAME "GNU" -#define NOTE_NAME_SZ (sizeof(GNU_PROPERTY_TYPE_0_NAME)) +#define NOTE_NAME_SZ (sizeof(NN_GNU_PROPERTY_TYPE_0)) =20 static int parse_elf_properties(struct file *f, const struct elf_phdr *phd= r, struct arch_elf_state *arch) @@ -800,7 +799,7 @@ static int parse_elf_properties(struct file *f, const s= truct elf_phdr *phdr, if (note.nhdr.n_type !=3D NT_GNU_PROPERTY_TYPE_0 || note.nhdr.n_namesz !=3D NOTE_NAME_SZ || strncmp(note.data + sizeof(note.nhdr), - GNU_PROPERTY_TYPE_0_NAME, n - sizeof(note.nhdr))) + NN_GNU_PROPERTY_TYPE_0, n - sizeof(note.nhdr))) return -ENOEXEC; =20 off =3D round_up(sizeof(note.nhdr) + NOTE_NAME_SZ, @@ -1603,14 +1602,14 @@ static void fill_auxv_note(struct memelfnote *note,= struct mm_struct *mm) do i +=3D 2; while (auxv[i - 2] !=3D AT_NULL); - fill_note(note, "CORE", NT_AUXV, i * sizeof(elf_addr_t), auxv); + fill_note(note, NN_AUXV, NT_AUXV, i * sizeof(elf_addr_t), auxv); } =20 static void fill_siginfo_note(struct memelfnote *note, user_siginfo_t *csi= gdata, const kernel_siginfo_t *siginfo) { copy_siginfo_to_external(csigdata, siginfo); - fill_note(note, "CORE", NT_SIGINFO, sizeof(*csigdata), csigdata); + fill_note(note, NN_SIGINFO, NT_SIGINFO, sizeof(*csigdata), csigdata); } =20 /* @@ -1706,7 +1705,7 @@ static int fill_files_note(struct memelfnote *note, s= truct coredump_params *cprm } =20 size =3D name_curpos - (char *)data; - fill_note(note, "CORE", NT_FILE, size, data); + fill_note(note, NN_FILE, NT_FILE, size, data); return 0; } =20 @@ -1767,7 +1766,7 @@ static int fill_thread_core_info(struct elf_thread_co= re_info *t, regset_get(t->task, &view->regsets[0], sizeof(t->prstatus.pr_reg), &t->prstatus.pr_reg); =20 - fill_note(&t->notes[0], "CORE", NT_PRSTATUS, + fill_note(&t->notes[0], NN_PRSTATUS, NT_PRSTATUS, PRSTATUS_SIZE, &t->prstatus); info->size +=3D notesize(&t->notes[0]); =20 @@ -1801,7 +1800,7 @@ static int fill_thread_core_info(struct elf_thread_co= re_info *t, if (is_fpreg) SET_PR_FPVALID(&t->prstatus); =20 - fill_note(&t->notes[note_iter], is_fpreg ? "CORE" : "LINUX", + fill_note(&t->notes[note_iter], is_fpreg ? NN_PRFPREG : "LINUX", note_type, ret, data); =20 info->size +=3D notesize(&t->notes[note_iter]); @@ -1821,7 +1820,7 @@ static int fill_thread_core_info(struct elf_thread_co= re_info *t, fill_prstatus(&t->prstatus.common, p, signr); elf_core_copy_task_regs(p, &t->prstatus.pr_reg); =20 - fill_note(&t->notes[0], "CORE", NT_PRSTATUS, sizeof(t->prstatus), + fill_note(&t->notes[0], NN_PRSTATUS, NT_PRSTATUS, sizeof(t->prstatus), &(t->prstatus)); info->size +=3D notesize(&t->notes[0]); =20 @@ -1832,7 +1831,7 @@ static int fill_thread_core_info(struct elf_thread_co= re_info *t, } =20 t->prstatus.pr_fpvalid =3D 1; - fill_note(&t->notes[1], "CORE", NT_PRFPREG, sizeof(*fpu), fpu); + fill_note(&t->notes[1], NN_PRFPREG, NT_PRFPREG, sizeof(*fpu), fpu); info->size +=3D notesize(&t->notes[1]); =20 return 1; @@ -1852,7 +1851,7 @@ static int fill_note_info(struct elfhdr *elf, int phd= rs, psinfo =3D kmalloc(sizeof(*psinfo), GFP_KERNEL); if (!psinfo) return 0; - fill_note(&info->psinfo, "CORE", NT_PRPSINFO, sizeof(*psinfo), psinfo); + fill_note(&info->psinfo, NN_PRPSINFO, NT_PRPSINFO, sizeof(*psinfo), psinf= o); =20 #ifdef CORE_DUMP_USE_REGSET view =3D task_user_regset_view(dump_task); diff --git a/fs/binfmt_elf_fdpic.c b/fs/binfmt_elf_fdpic.c index f1a7c4875c4a..96bd9d2f23d7 100644 --- a/fs/binfmt_elf_fdpic.c +++ b/fs/binfmt_elf_fdpic.c @@ -1397,7 +1397,7 @@ static struct elf_thread_status *elf_dump_thread_stat= us(long signr, struct task_ regset_get(p, &view->regsets[0], sizeof(t->prstatus.pr_reg), &t->prstatus.pr_reg); =20 - fill_note(&t->notes[0], "CORE", NT_PRSTATUS, sizeof(t->prstatus), + fill_note(&t->notes[0], NN_PRSTATUS, NT_PRSTATUS, sizeof(t->prstatus), &t->prstatus); t->num_notes++; *sz +=3D notesize(&t->notes[0]); @@ -1415,7 +1415,7 @@ static struct elf_thread_status *elf_dump_thread_stat= us(long signr, struct task_ } =20 if (t->prstatus.pr_fpvalid) { - fill_note(&t->notes[1], "CORE", NT_PRFPREG, sizeof(t->fpu), + fill_note(&t->notes[1], NN_PRFPREG, NT_PRFPREG, sizeof(t->fpu), &t->fpu); t->num_notes++; *sz +=3D notesize(&t->notes[1]); @@ -1530,7 +1530,7 @@ static int elf_fdpic_core_dump(struct coredump_params= *cprm) */ =20 fill_psinfo(psinfo, current->group_leader, current->mm); - fill_note(&psinfo_note, "CORE", NT_PRPSINFO, sizeof(*psinfo), psinfo); + fill_note(&psinfo_note, NN_PRPSINFO, NT_PRPSINFO, sizeof(*psinfo), psinfo= ); thread_status_size +=3D notesize(&psinfo_note); =20 auxv =3D (elf_addr_t *) current->mm->saved_auxv; @@ -1538,7 +1538,7 @@ static int elf_fdpic_core_dump(struct coredump_params= *cprm) do i +=3D 2; while (auxv[i - 2] !=3D AT_NULL); - fill_note(&auxv_note, "CORE", NT_AUXV, i * sizeof(elf_addr_t), auxv); + fill_note(&auxv_note, NN_AUXV, NT_AUXV, i * sizeof(elf_addr_t), auxv); thread_status_size +=3D notesize(&auxv_note); =20 offset =3D sizeof(*elf); /* ELF header */ --=20 2.47.1 From nobody Sun Feb 8 05:06:36 2026 Received: from mail-pj1-f41.google.com (mail-pj1-f41.google.com [209.85.216.41]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 360E31F2C58 for ; Tue, 7 Jan 2025 12:48:13 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.216.41 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1736254097; cv=none; b=gE3AKemlXUhR6DgpFlUbYTyTDuM4QmDmpOkONWfvN4Q3ZRsuX31g3VOdz6rJ97h5WE2YuqHbpqdyExefe0+hIWVdvBteoJjTidErZvCLAPfKfUw3EMl7Ktvnsluh1Hm7Rky1iB47QLPkHvdthq6NgBk6gLK6vpnP6d84BYdej64= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1736254097; c=relaxed/simple; bh=+dyGO7LzstjjCAGXXiQqnw5sSHzhUQEkL0tM4qAP1Fs=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=rSQcbsdqxDPwm+kwE0lI7bGQUJTnLbAPZ7ohAs7OEmFRCRLW4uZYzwaPF51Ex8ayyYSxL9/DDaWtAkDfW00lZSN6kSvbdEySaYLddLMbwb9+43pWlzZC2d/h7BJdEK3ewRBIaXr+ik1xehqzKZWlcnXvGeY/eyOrAt0fae8eqfo= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=daynix.com; spf=pass smtp.mailfrom=daynix.com; dkim=pass (2048-bit key) header.d=daynix-com.20230601.gappssmtp.com header.i=@daynix-com.20230601.gappssmtp.com header.b=pN8ShrVQ; arc=none smtp.client-ip=209.85.216.41 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=daynix.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=daynix.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=daynix-com.20230601.gappssmtp.com header.i=@daynix-com.20230601.gappssmtp.com header.b="pN8ShrVQ" Received: by mail-pj1-f41.google.com with SMTP id 98e67ed59e1d1-2ee397a82f6so22991497a91.2 for ; Tue, 07 Jan 2025 04:48:12 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=daynix-com.20230601.gappssmtp.com; s=20230601; t=1736254092; x=1736858892; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=NDoGkIZOBZADHox4rebBhOBkiub95NT2vaNCAf0u1/w=; b=pN8ShrVQC293/PxcptrwQk7u4ff/Zp0mKNFmQlcvl8ZGLxE9G4DSmyNS9V3SfrRQif EnxJTQA1EEZ8xQ+MfgvHr0+oryQ8kboG7NJwYftW86UYSz/cDtPjSvgHrxJVFMcRW25Z wwvfHgo1XqYUKWR9DzyNqrGoFPzNT3Gb4DqLKGzVgTZlUUl8Apf17eUQcYu62XF5xS4x toJ0xc5JDxx0WPl1tQHJxMfkuWNIZaxwfnleRkdW/vX9Cuwc0NjRSJ8cLJMLWMHhqgB/ cT3gybpXK/K5UvC151DJmlXLbsGEBmniyGZotdATnzN4yRHTg8nS+crZY0Dn0oi/z53l OGgA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1736254092; x=1736858892; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=NDoGkIZOBZADHox4rebBhOBkiub95NT2vaNCAf0u1/w=; b=gqPyuh2eza52Bym0CYAlcRoRZJHixUzKqWqHa3snx0oC184lK/57PbhODltQnG7j/7 B4tlgLPv1r0JZBERQXad/Aw53oCTPX8fOQ+ldEMHjyvAyB8U7ZQdfWF2WGbgzy8fOCKH X1icRA+gxZplgfHtSlPNifCqmYLsXgeGz8FUnoTeATVvr6WX12qfiyGgCmVgRdeMRm4t U4LJEOZCmzYn77UGP+phiYqPSMtk9u92TQHm5J+GJaQm7bEzB0+JEeOnaaAWK4Tgh5K2 JyPks09PWcOr/sDGsECEoQN+oFPCguNWIUvCr1UPvqY/CKpR4Hc2MXDgBlUxsTY7N15J 6Eqw== X-Forwarded-Encrypted: i=1; AJvYcCUZhu4gZngmtuguJz6xRsLqnKjOXiqr2I/87oThckeKsfA5890bUdQVB31IzUPRBbPvKwrcSxJcH1vrtPw=@vger.kernel.org X-Gm-Message-State: AOJu0YxO79wsC33u5xm5y39WBrFM6/+QRAkBXWOgKUmS+xbvbyvrV9pP GyIPL0dQA/CX9rCr4PRbylp7LXJEho0iORa07EK3hiuqT2dYldq4h/0ykiSAN+0= X-Gm-Gg: ASbGncv0zQRmgR6aHb4M53h6iB///TAArUcQaX7pJd7TWDpTpdjK6VLh6xVgUK2FbUd b5ylupEbON7MqJanXa/G9sXlc3rPP2nRs+Zicve1xZ1AiFi5Zxx1cS5nTktgykfyPLgqq/Y0uF5 dsfHIwW/yS3ZvuiaHkhj11EpR1+cd77CThaSRi+/fw7IW0AjtyTR/sPw+bfRBk23OzFL5bkUHnc 27DL1lrNZivFm75ovfmkQ7meHDSHhxvNCnWeTacxcAB7SjGybKZS33Nrug= X-Google-Smtp-Source: AGHT+IEVKBP005EvKmW5Tl+CNM3WgQ4gF7V3wiTUcNw/Hf4GbFW1YRz6KtZiTE3d5Nc2ByQmLcCTzA== X-Received: by 2002:a05:6a00:240d:b0:71e:6b8:2f4a with SMTP id d2e1a72fcca58-72abde04f6fmr85408908b3a.12.1736254092437; Tue, 07 Jan 2025 04:48:12 -0800 (PST) Received: from localhost ([157.82.203.37]) by smtp.gmail.com with UTF8SMTPSA id d2e1a72fcca58-72aad90c133sm34268685b3a.183.2025.01.07.04.48.08 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Tue, 07 Jan 2025 04:48:12 -0800 (PST) From: Akihiko Odaki Date: Tue, 07 Jan 2025 21:45:54 +0900 Subject: [PATCH v3 3/6] powwerpc: Use note name macros Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20250107-elf-v3-3-99cb505b1ab2@daynix.com> References: <20250107-elf-v3-0-99cb505b1ab2@daynix.com> In-Reply-To: <20250107-elf-v3-0-99cb505b1ab2@daynix.com> To: Eric Biederman , Kees Cook , Catalin Marinas , Mark Brown , Dave Martin , Baoquan He , Vivek Goyal , Dave Young 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 X-Mailer: b4 0.14-dev-fd6e3 Use note name macros to match with the userspace's expectation. Acked-by: Baoquan He Signed-off-by: Akihiko Odaki --- arch/powerpc/kernel/fadump.c | 2 +- arch/powerpc/platforms/powernv/opal-core.c | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/arch/powerpc/kernel/fadump.c b/arch/powerpc/kernel/fadump.c index 4b371c738213..d44349fe8e2b 100644 --- a/arch/powerpc/kernel/fadump.c +++ b/arch/powerpc/kernel/fadump.c @@ -751,7 +751,7 @@ u32 *__init fadump_regs_to_elf_notes(u32 *buf, struct p= t_regs *regs) * prstatus.pr_pid =3D ???? */ elf_core_copy_regs(&prstatus.pr_reg, regs); - buf =3D append_elf_note(buf, CRASH_CORE_NOTE_NAME, NT_PRSTATUS, + buf =3D append_elf_note(buf, NN_PRSTATUS, NT_PRSTATUS, &prstatus, sizeof(prstatus)); return buf; } diff --git a/arch/powerpc/platforms/powernv/opal-core.c b/arch/powerpc/plat= forms/powernv/opal-core.c index c9a9b759cc92..a379ff86c120 100644 --- a/arch/powerpc/platforms/powernv/opal-core.c +++ b/arch/powerpc/platforms/powernv/opal-core.c @@ -149,7 +149,7 @@ static Elf64_Word *__init auxv_to_elf64_notes(Elf64_Wor= d *buf, /* end of vector */ bufp[idx++] =3D cpu_to_be64(AT_NULL); =20 - buf =3D append_elf64_note(buf, CRASH_CORE_NOTE_NAME, NT_AUXV, + buf =3D append_elf64_note(buf, NN_AUXV, NT_AUXV, oc_conf->auxv_buf, AUXV_DESC_SZ); return buf; } @@ -252,7 +252,7 @@ static Elf64_Word * __init opalcore_append_cpu_notes(El= f64_Word *buf) * crashing CPU's prstatus. */ first_cpu_note =3D buf; - buf =3D append_elf64_note(buf, CRASH_CORE_NOTE_NAME, NT_PRSTATUS, + buf =3D append_elf64_note(buf, NN_PRSTATUS, NT_PRSTATUS, &prstatus, sizeof(prstatus)); =20 for (i =3D 0; i < oc_conf->num_cpus; i++, bufp +=3D size_per_thread) { @@ -279,7 +279,7 @@ static Elf64_Word * __init opalcore_append_cpu_notes(El= f64_Word *buf) fill_prstatus(&prstatus, thread_pir, ®s); =20 if (thread_pir !=3D oc_conf->crashing_cpu) { - buf =3D append_elf64_note(buf, CRASH_CORE_NOTE_NAME, + buf =3D append_elf64_note(buf, NN_PRSTATUS, NT_PRSTATUS, &prstatus, sizeof(prstatus)); } else { @@ -287,7 +287,7 @@ static Elf64_Word * __init opalcore_append_cpu_notes(El= f64_Word *buf) * Add crashing CPU as the first NT_PRSTATUS note for * GDB to process the core file appropriately. */ - append_elf64_note(first_cpu_note, CRASH_CORE_NOTE_NAME, + append_elf64_note(first_cpu_note, NN_PRSTATUS, NT_PRSTATUS, &prstatus, sizeof(prstatus)); } --=20 2.47.1 From nobody Sun Feb 8 05:06:36 2026 Received: from mail-pj1-f43.google.com (mail-pj1-f43.google.com [209.85.216.43]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id AD8CA1F03C1 for ; Tue, 7 Jan 2025 12:48:19 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.216.43 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1736254103; cv=none; b=W0dinAQe3dhDOtna3UVCCtCWl/NeswdyiDr3T7/9WskjENxahtfUYowtCP7YIYzP48pTAsaodvJvK2PojJ5m6NO3j9R1wRq61CCMvBE2D5keKZADH9W6l3KKvRbzGjys+doApYL/i8E58jByh4lo/BbMy+kV6fhYz299gLUZqwo= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1736254103; c=relaxed/simple; bh=N4IhUv6S3uRsh7HsLEUL+nZigf4kpss6dQVVVdHm5r4=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=ELMRUKL15wuAnVwLorEPSs2EPxu9wZ5oQfpbX0va4VhFNpPlXh7TpdVmD4SmYnn0CIywJ06xchynBX1ikaog6AGEnbLznueF2RTR+zyEwsUxMDzwUNm8IZTvAfJmvBADrqXUEqOD03+NgVgpwSIg0LQGxxHjHpVfEVsLl9U/OYY= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=daynix.com; spf=pass smtp.mailfrom=daynix.com; dkim=pass (2048-bit key) header.d=daynix-com.20230601.gappssmtp.com header.i=@daynix-com.20230601.gappssmtp.com header.b=yT1DaOMY; arc=none smtp.client-ip=209.85.216.43 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=daynix.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=daynix.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=daynix-com.20230601.gappssmtp.com header.i=@daynix-com.20230601.gappssmtp.com header.b="yT1DaOMY" Received: by mail-pj1-f43.google.com with SMTP id 98e67ed59e1d1-2f44353649aso18428109a91.0 for ; Tue, 07 Jan 2025 04:48:19 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=daynix-com.20230601.gappssmtp.com; s=20230601; t=1736254099; x=1736858899; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=d5w0df8A0RGvduNGo/n7gECMAUl7ttjM0kfw51R7kHo=; b=yT1DaOMYXYXho1Dgdarxic59MDRNyJWnNROjN5zdAe8oM/j68bk+VphAlYPqNWM1u4 3P+Nq3mJrlLqiLpL/JO2pM77R2bDMjCjTFiytf8gdXsM93duJDm55oL+B+gcGH7Cd/8I Lu0UIeJYD2dPLNOgyE4iCFmNAHKrpaqmDVeK0iMuDx/cRddF5Ugd7PmPz8vNQ1Bw939u aAvt+RfuzGksTvFS4u/YIxxN8Le+tAgMORXhVkOlu7D1jcbTWXZsPDJw1tOOCQ3BRRdx l5894nUJqc4slOsbeOrHrJedEdXIcUs9L4jvalx6+aAuHNDCIrfB+4kSB5yyZAjw92ti 3blg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1736254099; x=1736858899; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=d5w0df8A0RGvduNGo/n7gECMAUl7ttjM0kfw51R7kHo=; b=q8hzdrzvwg6j6iad/R+QWfsuyX4ddOs7xIim7Y1QQBOwP7DNPLbIzYAhqVFtoCce+u FMWHcSfTdUjt+xWoXHeV2HJOroazVc8EcTNbjENjH1FKXTae9pbOHm+6RtMqW4HDfNZK N+mjLLT6iMgbL4pJlDYVWD+JV+rnOshodl+hFulsQK6IegOc3eMaYX8p6X4WmCqdmR6f JOSrO8TxSj/Pmm0AiivoT2o23Th6S1xuZqbXfpkeNFn37e8BzAo6pH4L5yfThApyE7B1 ppaeSqwQoHVatGvlkUz6zb59+weJWo+C6WL7gmsgYsGloizOPqG57ecNfy6vAcYqaMgj PM/g== X-Forwarded-Encrypted: i=1; AJvYcCWrh01LjGnlQ+e+4Xfiz5nWxWIM++ZmAUtMA61DLf61Mi+1GAlFa6xAfpJURUv6NjRGbtC92pkmMxVEgiA=@vger.kernel.org X-Gm-Message-State: AOJu0YxMJhTndSN+1IB4dp2agZqbYnsT0MXWf+axH5NqASDVe2IvBk/A /c+jCeybL1mR4fOmMbZU6nA0rDE0IMEY0LYSD4zp7lmFKawwdpFT7eB45YANCV1yg5Uh30WvCnu v X-Gm-Gg: ASbGnctGLNLpWgMmG3YpiEsjVMbAfqWF69k27CE5Zh9Pkr9e/z+/HWK8Qn55rlyQ415 gf/mKYvAZxNZUX3oJ7YYSbFRdvY20tTX3SgMJwi8ytqGjH25XEHXepO0/BBqJNLEuWHH0hgbTaA NXJh4sXeM4liZec9T/Itw59ii0NSlXz1iuE/HlhDr8CBRYzZD+wj6gnYTUjC4oG9wI4ABH5B+pg St5uj9cacm03wAdkwXbfh/RIU1IairJKwid4f4dDkvrZXhSXgn6te9kNiE= X-Google-Smtp-Source: AGHT+IF4unLvSG3ozl/K+xZg50qJ9RhkOXYw+z5VR9QTjd55CxK7F8LQeDMLqnNt5CS4t8mxmL2QoA== X-Received: by 2002:a17:90b:534b:b0:2ee:a127:ba96 with SMTP id 98e67ed59e1d1-2f452ec6d35mr81063623a91.23.1736254098937; Tue, 07 Jan 2025 04:48:18 -0800 (PST) Received: from localhost ([157.82.203.37]) by smtp.gmail.com with UTF8SMTPSA id 98e67ed59e1d1-2f2ee06dd46sm41574100a91.36.2025.01.07.04.48.14 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Tue, 07 Jan 2025 04:48:18 -0800 (PST) From: Akihiko Odaki Date: Tue, 07 Jan 2025 21:45:55 +0900 Subject: [PATCH v3 4/6] crash: Use note name macros Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20250107-elf-v3-4-99cb505b1ab2@daynix.com> References: <20250107-elf-v3-0-99cb505b1ab2@daynix.com> In-Reply-To: <20250107-elf-v3-0-99cb505b1ab2@daynix.com> To: Eric Biederman , Kees Cook , Catalin Marinas , Mark Brown , Dave Martin , Baoquan He , Vivek Goyal , Dave Young 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 X-Mailer: b4 0.14-dev-fd6e3 Use note name macros to match with the userspace's expectation. Signed-off-by: Akihiko Odaki Acked-by: Baoquan He --- fs/proc/kcore.c | 12 ++++++------ include/linux/vmcore_info.h | 2 +- kernel/crash_core.c | 2 +- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/fs/proc/kcore.c b/fs/proc/kcore.c index e376f48c4b8b..e5612313b8b4 100644 --- a/fs/proc/kcore.c +++ b/fs/proc/kcore.c @@ -34,8 +34,6 @@ #include #include "internal.h" =20 -#define CORE_STR "CORE" - #ifndef ELF_CORE_EFLAGS #define ELF_CORE_EFLAGS 0 #endif @@ -119,7 +117,9 @@ static size_t get_kcore_size(int *nphdr, size_t *phdrs_= len, size_t *notes_len, =20 *phdrs_len =3D *nphdr * sizeof(struct elf_phdr); *notes_len =3D (4 * sizeof(struct elf_note) + - 3 * ALIGN(sizeof(CORE_STR), 4) + + ALIGN(sizeof(NN_PRSTATUS), 4) + + ALIGN(sizeof(NN_PRPSINFO), 4) + + ALIGN(sizeof(NN_TASKSTRUCT), 4) + VMCOREINFO_NOTE_NAME_BYTES + ALIGN(sizeof(struct elf_prstatus), 4) + ALIGN(sizeof(struct elf_prpsinfo), 4) + @@ -444,11 +444,11 @@ static ssize_t read_kcore_iter(struct kiocb *iocb, st= ruct iov_iter *iter) goto out; } =20 - append_kcore_note(notes, &i, CORE_STR, NT_PRSTATUS, &prstatus, + append_kcore_note(notes, &i, NN_PRSTATUS, NT_PRSTATUS, &prstatus, sizeof(prstatus)); - append_kcore_note(notes, &i, CORE_STR, NT_PRPSINFO, &prpsinfo, + append_kcore_note(notes, &i, NN_PRPSINFO, NT_PRPSINFO, &prpsinfo, sizeof(prpsinfo)); - append_kcore_note(notes, &i, CORE_STR, NT_TASKSTRUCT, current, + append_kcore_note(notes, &i, NN_TASKSTRUCT, NT_TASKSTRUCT, current, arch_task_struct_size); /* * vmcoreinfo_size is mostly constant after init time, but it diff --git a/include/linux/vmcore_info.h b/include/linux/vmcore_info.h index e1dec1a6a749..1672801fd98c 100644 --- a/include/linux/vmcore_info.h +++ b/include/linux/vmcore_info.h @@ -8,7 +8,7 @@ =20 #define CRASH_CORE_NOTE_NAME "CORE" #define CRASH_CORE_NOTE_HEAD_BYTES ALIGN(sizeof(struct elf_note), 4) -#define CRASH_CORE_NOTE_NAME_BYTES ALIGN(sizeof(CRASH_CORE_NOTE_NAME), 4) +#define CRASH_CORE_NOTE_NAME_BYTES ALIGN(sizeof(NN_PRSTATUS), 4) #define CRASH_CORE_NOTE_DESC_BYTES ALIGN(sizeof(struct elf_prstatus), 4) =20 /* diff --git a/kernel/crash_core.c b/kernel/crash_core.c index 078fe5bc5a74..335b8425dd4b 100644 --- a/kernel/crash_core.c +++ b/kernel/crash_core.c @@ -436,7 +436,7 @@ void crash_save_cpu(struct pt_regs *regs, int cpu) memset(&prstatus, 0, sizeof(prstatus)); prstatus.common.pr_pid =3D current->pid; elf_core_copy_regs(&prstatus.pr_reg, regs); - buf =3D append_elf_note(buf, KEXEC_CORE_NOTE_NAME, NT_PRSTATUS, + buf =3D append_elf_note(buf, NN_PRSTATUS, NT_PRSTATUS, &prstatus, sizeof(prstatus)); final_note(buf); } --=20 2.47.1 From nobody Sun Feb 8 05:06:36 2026 Received: from mail-pj1-f43.google.com (mail-pj1-f43.google.com [209.85.216.43]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 507391E131A for ; Tue, 7 Jan 2025 12:48:26 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.216.43 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1736254110; cv=none; b=n8TYvsnK6WxFxmkzz7oC5s6nFK98A94XowEw1V/lRPT0E7TdXBEplgbBhmHzw5UZB2ZP9Kb7ZCj5EK7h2ANwQ1gGLi/Lm4La+9epOTl+o7N2MBtOY/aMpNEIIyWrI+3VYx3siLOA6BVrNlGgECKboBIQokSV3w3y+w8zuV31BhI= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1736254110; c=relaxed/simple; bh=fk1yr9yll80l0GX6PVUrYoQYmm4+oWG0A+5XGSbr4Ws=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=blnSCtAxIv/hD/WnY6GQsuf2E2qv+sqJVJgU2veb4z3ENYGZNKyfi05bIeROjHGzfD0aI8pNHUrwZetxKF1b672VU1PaLzQ5ZVVKv9KjCajdUJSuvEb54U2wzBpBamnQDES4dgWUXiEOHwRrzpBRU0akB289kRWBFAfrVBFF7ZM= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=daynix.com; spf=pass smtp.mailfrom=daynix.com; dkim=pass (2048-bit key) header.d=daynix-com.20230601.gappssmtp.com header.i=@daynix-com.20230601.gappssmtp.com header.b=z7okr5+t; arc=none smtp.client-ip=209.85.216.43 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=daynix.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=daynix.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=daynix-com.20230601.gappssmtp.com header.i=@daynix-com.20230601.gappssmtp.com header.b="z7okr5+t" Received: by mail-pj1-f43.google.com with SMTP id 98e67ed59e1d1-2ef72924e53so22628704a91.3 for ; Tue, 07 Jan 2025 04:48:26 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=daynix-com.20230601.gappssmtp.com; s=20230601; t=1736254105; x=1736858905; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=8B/uoyeuY57p4F5WrCZvdn0Td4esItXL4IJBDCfsGf4=; b=z7okr5+tqDtV+v9bdq0vE18Zy3LyUruKMt0cWwWO8dkqrH8JwUm87JTqnjtw6ACw0k 6xzg63YUGV/VkeXBExB2kRAkdASS71jxlQ6WJ4y2U9mH77ce6kg6SbjunKXe6p6jdFsN 6uSCqns3eiQCSvg3AicdEzSX/Bb/SE5bTTLPNxxPRn2jC2u2w8pHASdBUK94HXK9R9z0 JtJjto47vbAZklcIisbJmdXy17zwnZrvaRISrf6DQotkQnV2cvArzDdPZNS9KzQkYipb lSbQSxgqvEFCtqchRXxF1orWGzVQmh07aGcGrg5JbCSCHrRdl2rqK/Wq+6CYlfrxj6iF Xx3g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1736254105; x=1736858905; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=8B/uoyeuY57p4F5WrCZvdn0Td4esItXL4IJBDCfsGf4=; b=XjwYuZ1EXm/oPgJAqQkaD39kfNC1E3pTYheRlNqh1Q5Ch7Q98e1Xz/HwLmFTAJKsdT efcqLoQLRXRE/5pB9gjVSSn8Tf2kc17CJvXg3B0bEZD8uCsnwIc95MlYShGA+eVF1kBv xBggp1pBd87JRzxjT6QZp+MtMtVokSgYRzWm9nRvKfDHeRVpA1eQRcfgW/dyjDAZ1aZa IQyLAnQK/d2VzRNxt3EKYVUrvA7MqNOwLVF/75U93DMT99WoKK7hu5q9G4NFF9PaZpvK aF3NmFAH9Fm0fSVqnCo9T+4MI2IZ+58R+20ZDrWNO01/qajg1yfqADAPIbyu8Bxz3Rt2 lL6g== X-Forwarded-Encrypted: i=1; AJvYcCUjihJWYbegX9+wi+nXfp53bHC4Gw0WfHAN9G59PtLSKgDQC2WVhwFC+nvz0n5yJVMT2pvcLQP9z/x1PK4=@vger.kernel.org X-Gm-Message-State: AOJu0YzXZ7hXquBU5RmE4clE/g4REkDnOQJY5ny7CYiqRe805DZyvBju odtJzMwraLdr4QBfBF8P+UBaanYwZXVJsXbkuItTXkzqQgEyiEMbediiPZXNG4o= X-Gm-Gg: ASbGncuC03aprSOvKB8C3Edc+KenAarzbGXhtuiRF5GcMhdSicDdQCDbHG1OwN/8A1F dtjcUTdoXDP441KeYsISIT6F8yRKtQXjY7KHF4GC4hlvQDxKCFnx4Qf1SWIjMjGM0zi+wytu0Ep ae59GG6hpnINWmFeoIE5xaagZITfyrENYehYeoE7MQcKb03SidOQtwMGrliCC8pImzurwXuOXDe xB0Ixu4EjkyhDI6EWXY2DQQmXkhwbij5W4Nt4emcodumUMJzpZo7I0PUVA= X-Google-Smtp-Source: AGHT+IFrm4rj/MLEj5on8APad3buiaiqCoLZIEAZ2AeMT04ViEKVqkKOmnPzjy3rlA6C6aSb7vkHeg== X-Received: by 2002:a05:6a00:f96:b0:724:ed8f:4d35 with SMTP id d2e1a72fcca58-72abdedda5fmr91700514b3a.26.1736254105569; Tue, 07 Jan 2025 04:48:25 -0800 (PST) Received: from localhost ([157.82.203.37]) by smtp.gmail.com with UTF8SMTPSA id d2e1a72fcca58-72aad8fd7b0sm22424647b3a.139.2025.01.07.04.48.21 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Tue, 07 Jan 2025 04:48:25 -0800 (PST) From: Akihiko Odaki Date: Tue, 07 Jan 2025 21:45:56 +0900 Subject: [PATCH v3 5/6] s390/crash: Use note name macros Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20250107-elf-v3-5-99cb505b1ab2@daynix.com> References: <20250107-elf-v3-0-99cb505b1ab2@daynix.com> In-Reply-To: <20250107-elf-v3-0-99cb505b1ab2@daynix.com> To: Eric Biederman , Kees Cook , Catalin Marinas , Mark Brown , Dave Martin , Baoquan He , Vivek Goyal , Dave Young 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 X-Mailer: b4 0.14-dev-fd6e3 Use note name macros to match with the userspace's expectation. Signed-off-by: Akihiko Odaki Acked-by: Heiko Carstens --- arch/s390/kernel/crash_dump.c | 62 ++++++++++++++++-----------------------= ---- 1 file changed, 23 insertions(+), 39 deletions(-) diff --git a/arch/s390/kernel/crash_dump.c b/arch/s390/kernel/crash_dump.c index cd0c93a8fb8b..6359ce645756 100644 --- a/arch/s390/kernel/crash_dump.c +++ b/arch/s390/kernel/crash_dump.c @@ -248,15 +248,6 @@ bool is_kdump_kernel(void) } EXPORT_SYMBOL_GPL(is_kdump_kernel); =20 -static const char *nt_name(Elf64_Word type) -{ - const char *name =3D "LINUX"; - - if (type =3D=3D NT_PRPSINFO || type =3D=3D NT_PRSTATUS || type =3D=3D NT_= PRFPREG) - name =3D KEXEC_CORE_NOTE_NAME; - return name; -} - /* * Initialize ELF note */ @@ -281,10 +272,8 @@ static void *nt_init_name(void *buf, Elf64_Word type, = void *desc, int d_len, return PTR_ADD(buf, len); } =20 -static inline void *nt_init(void *buf, Elf64_Word type, void *desc, int d_= len) -{ - return nt_init_name(buf, type, desc, d_len, nt_name(type)); -} +#define NT_INIT(buf, type, desc) \ + (nt_init_name((buf), NT_ ## type, &(desc), sizeof(desc), NN_ ## type)) =20 /* * Calculate the size of ELF note @@ -300,10 +289,7 @@ static size_t nt_size_name(int d_len, const char *name) return size; } =20 -static inline size_t nt_size(Elf64_Word type, int d_len) -{ - return nt_size_name(d_len, nt_name(type)); -} +#define NT_SIZE(type, desc) (nt_size_name(sizeof(desc), NN_ ## type)) =20 /* * Fill ELF notes for one CPU with save area registers @@ -324,18 +310,16 @@ static void *fill_cpu_elf_notes(void *ptr, int cpu, s= truct save_area *sa) memcpy(&nt_fpregset.fpc, &sa->fpc, sizeof(sa->fpc)); memcpy(&nt_fpregset.fprs, &sa->fprs, sizeof(sa->fprs)); /* Create ELF notes for the CPU */ - ptr =3D nt_init(ptr, NT_PRSTATUS, &nt_prstatus, sizeof(nt_prstatus)); - ptr =3D nt_init(ptr, NT_PRFPREG, &nt_fpregset, sizeof(nt_fpregset)); - ptr =3D nt_init(ptr, NT_S390_TIMER, &sa->timer, sizeof(sa->timer)); - ptr =3D nt_init(ptr, NT_S390_TODCMP, &sa->todcmp, sizeof(sa->todcmp)); - ptr =3D nt_init(ptr, NT_S390_TODPREG, &sa->todpreg, sizeof(sa->todpreg)); - ptr =3D nt_init(ptr, NT_S390_CTRS, &sa->ctrs, sizeof(sa->ctrs)); - ptr =3D nt_init(ptr, NT_S390_PREFIX, &sa->prefix, sizeof(sa->prefix)); + ptr =3D NT_INIT(ptr, PRSTATUS, nt_prstatus); + ptr =3D NT_INIT(ptr, PRFPREG, nt_fpregset); + ptr =3D NT_INIT(ptr, S390_TIMER, sa->timer); + ptr =3D NT_INIT(ptr, S390_TODCMP, sa->todcmp); + ptr =3D NT_INIT(ptr, S390_TODPREG, sa->todpreg); + ptr =3D NT_INIT(ptr, S390_CTRS, sa->ctrs); + ptr =3D NT_INIT(ptr, S390_PREFIX, sa->prefix); if (cpu_has_vx()) { - ptr =3D nt_init(ptr, NT_S390_VXRS_HIGH, - &sa->vxrs_high, sizeof(sa->vxrs_high)); - ptr =3D nt_init(ptr, NT_S390_VXRS_LOW, - &sa->vxrs_low, sizeof(sa->vxrs_low)); + ptr =3D NT_INIT(ptr, S390_VXRS_HIGH, sa->vxrs_high); + ptr =3D NT_INIT(ptr, S390_VXRS_LOW, sa->vxrs_low); } return ptr; } @@ -348,16 +332,16 @@ static size_t get_cpu_elf_notes_size(void) struct save_area *sa =3D NULL; size_t size; =20 - size =3D nt_size(NT_PRSTATUS, sizeof(struct elf_prstatus)); - size +=3D nt_size(NT_PRFPREG, sizeof(elf_fpregset_t)); - size +=3D nt_size(NT_S390_TIMER, sizeof(sa->timer)); - size +=3D nt_size(NT_S390_TODCMP, sizeof(sa->todcmp)); - size +=3D nt_size(NT_S390_TODPREG, sizeof(sa->todpreg)); - size +=3D nt_size(NT_S390_CTRS, sizeof(sa->ctrs)); - size +=3D nt_size(NT_S390_PREFIX, sizeof(sa->prefix)); + size =3D NT_SIZE(PRSTATUS, struct elf_prstatus); + size +=3D NT_SIZE(PRFPREG, elf_fpregset_t); + size +=3D NT_SIZE(S390_TIMER, sa->timer); + size +=3D NT_SIZE(S390_TODCMP, sa->todcmp); + size +=3D NT_SIZE(S390_TODPREG, sa->todpreg); + size +=3D NT_SIZE(S390_CTRS, sa->ctrs); + size +=3D NT_SIZE(S390_PREFIX, sa->prefix); if (cpu_has_vx()) { - size +=3D nt_size(NT_S390_VXRS_HIGH, sizeof(sa->vxrs_high)); - size +=3D nt_size(NT_S390_VXRS_LOW, sizeof(sa->vxrs_low)); + size +=3D NT_SIZE(S390_VXRS_HIGH, sa->vxrs_high); + size +=3D NT_SIZE(S390_VXRS_LOW, sa->vxrs_low); } =20 return size; @@ -373,7 +357,7 @@ static void *nt_prpsinfo(void *ptr) memset(&prpsinfo, 0, sizeof(prpsinfo)); prpsinfo.pr_sname =3D 'R'; strcpy(prpsinfo.pr_fname, "vmlinux"); - return nt_init(ptr, NT_PRPSINFO, &prpsinfo, sizeof(prpsinfo)); + return NT_INIT(ptr, PRPSINFO, prpsinfo); } =20 /* @@ -589,7 +573,7 @@ static size_t get_elfcorehdr_size(int phdr_count) /* PT_NOTES */ size +=3D sizeof(Elf64_Phdr); /* nt_prpsinfo */ - size +=3D nt_size(NT_PRPSINFO, sizeof(struct elf_prpsinfo)); + size +=3D NT_SIZE(PRPSINFO, struct elf_prpsinfo); /* regsets */ size +=3D get_cpu_cnt() * get_cpu_elf_notes_size(); /* nt_vmcoreinfo */ --=20 2.47.1 From nobody Sun Feb 8 05:06:36 2026 Received: from mail-pl1-f172.google.com (mail-pl1-f172.google.com [209.85.214.172]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id CD7B11DF963 for ; Tue, 7 Jan 2025 12:48:32 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.214.172 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1736254117; cv=none; b=GSf8TQNERyMYYmdLMuRTzTIMdIxQYMEuM+MdzPZR4pXOKL78VAwKAkYgsuxun59CANsJY+GB1S26EzWIiX91+uwVhrfIfs+fsaTn7chFXC7v2ldo4uDMzS3x1xNk7SyX3MVKSC3bgTnnfWQKterYbBzyhCjzASLqWpYYXJQXi4k= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1736254117; c=relaxed/simple; bh=PDKDOEbG5wLU1DkJmdPQNhRgipqYHagmRVjwHv2hyKE=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=j/6xM9aWVo5/jm1SHt1G7Tqudvjwsz0C/h6A4gng0XuLsZ7jdsbNhmZY/57LdoMW0mYwW6Azpd1lE6mHS24kZoYxFUkA2Cmr0e9LacG8f+K3cTQ2ZbG/FvP3k6iMxQbaoC3F5R8wIoKxbhGgf5u/HvRHzVv4yEkTI4BKni/inhE= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=daynix.com; spf=pass smtp.mailfrom=daynix.com; dkim=pass (2048-bit key) header.d=daynix-com.20230601.gappssmtp.com header.i=@daynix-com.20230601.gappssmtp.com header.b=Jpc4jVfl; arc=none smtp.client-ip=209.85.214.172 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=daynix.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=daynix.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=daynix-com.20230601.gappssmtp.com header.i=@daynix-com.20230601.gappssmtp.com header.b="Jpc4jVfl" Received: by mail-pl1-f172.google.com with SMTP id d9443c01a7336-21a1e6fd923so7899685ad.1 for ; Tue, 07 Jan 2025 04:48:32 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=daynix-com.20230601.gappssmtp.com; s=20230601; t=1736254112; x=1736858912; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=hJIM5PjsK5XkECqCUUoGiieCybrsun7CzYeIZbw5syM=; b=Jpc4jVfladyAFl8Ao1wMovzGshEbmS6vSc1Uor+uJtQtcHXCUw8EEj4WjYFELtmJMx XISPiWqX3QgS0H56CSdEXgsTzFkSP3k02iPt5xxnXl1F2uMWSExKnL7s3Ia1bdqQkKMp MhjoWz5MIx2QrVjzKEJXQnQtnlmcZ9M1U/Z1TRtZ3ajo2e3yksdm6mm/rOdyCmT1jPom AVsLM8p4OVn/CzS/CXRVOspQx1mlwkI1pED0g5c/AMW8AktmNKePOBVxTej00K4Gd50F zaQE2ZljXc1EkZRaIIhByJYJyYhTh7jiTvB1/vtRhzX6C2ksSCkbq+mMNavhXpHiRy+e qW7Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1736254112; x=1736858912; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=hJIM5PjsK5XkECqCUUoGiieCybrsun7CzYeIZbw5syM=; b=Yhv7quzcxUpfich/rQK386y1AkdiKp3q5AwaGrzgqF6h9lPuKokNA7ng3HZaFr5vOA kgToiNN6VZAWu3HnU73buTAN4UyQaGteW7eKA8CNBJAWhs/+7t5x/Axigop1cZbHBUTQ 7xKyckUCHDAnyDoM5bzCIJdVOHpKm7VmrNlH2ZWOUmfwACIWLRQ7uda6urdT+0yDjXDx ohh191W7gyRLOh3tWeaRTDyTZOItIJeLTXcX2svlUbbx3GKtGS7r8xRvjqnK8UAOmHdr j0VJLXRJjxnQNVkyB1VjEg/4Dw3MH9Gsntauj/4W0SG5hunPA2r7GH0hrp6KOc1Ye5CL BnCA== X-Forwarded-Encrypted: i=1; AJvYcCV3G23Fhi/3nEgrI9XGe9np48y/im0HvoS/YNMxl5bsSHTsejERCxWhxgayHgQU1yg3fWZMJMOR5Uw1aao=@vger.kernel.org X-Gm-Message-State: AOJu0YzmFqBp0b5ZU93dYd1O5I0Yv1eLLd6INYOZ5UxKrSQBegtm32TU 0dG5sgSwcaLrZepCb9HSg4m6cd70iHFjkGXTvZI7mHJ5MjYIRPFDM8i0RJ5z/ME= X-Gm-Gg: ASbGncsUdjfRlAbUlyhCp1ntXUhlZpKlGr9n7iw4vsKOaFGpeI0c5xg6vzJGYE16exz +M/gRn0Xc2s/8iWsO8EqicFVmG4B18o5g0UJT5FzhqCo+j8hZzfSzOeSb4G2lXh/1bGY7nI2eR2 /6ZcKfVsPlh62CmtorkQWnakXWkgp5DY7Vt5aTaoptTpNuouekH+kAQcHciBflClRjgjh7lwAAU fe3cmS4+q92GqwD6yG4Nu8w5tlFMpPYuxR9bi2D9Emm591jj+mhxM8Tkrk= X-Google-Smtp-Source: AGHT+IEgGWm+TwbUeO+9N7FURX28AGtJrPEUj7uS49yO94eCRFf85XIQjkIdMNAyflZYWE42i4plAQ== X-Received: by 2002:a17:903:22c6:b0:216:2474:3c9f with SMTP id d9443c01a7336-219e6f38177mr919043015ad.52.1736254112256; Tue, 07 Jan 2025 04:48:32 -0800 (PST) Received: from localhost ([157.82.203.37]) by smtp.gmail.com with UTF8SMTPSA id d9443c01a7336-219dca02f72sm310596305ad.249.2025.01.07.04.48.28 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Tue, 07 Jan 2025 04:48:31 -0800 (PST) From: Akihiko Odaki Date: Tue, 07 Jan 2025 21:45:57 +0900 Subject: [PATCH v3 6/6] crash: Remove KEXEC_CORE_NOTE_NAME Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20250107-elf-v3-6-99cb505b1ab2@daynix.com> References: <20250107-elf-v3-0-99cb505b1ab2@daynix.com> In-Reply-To: <20250107-elf-v3-0-99cb505b1ab2@daynix.com> To: Eric Biederman , Kees Cook , Catalin Marinas , Mark Brown , Dave Martin , Baoquan He , Vivek Goyal , Dave Young 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 X-Mailer: b4 0.14-dev-fd6e3 KEXEC_CORE_NOTE_NAME is no longer used. Signed-off-by: Akihiko Odaki Acked-by: Baoquan He --- include/linux/kexec.h | 2 -- include/linux/vmcore_info.h | 1 - 2 files changed, 3 deletions(-) diff --git a/include/linux/kexec.h b/include/linux/kexec.h index f0e9f8eda7a3..c840431eadda 100644 --- a/include/linux/kexec.h +++ b/include/linux/kexec.h @@ -68,8 +68,6 @@ extern note_buf_t __percpu *crash_notes; #define KEXEC_CRASH_MEM_ALIGN PAGE_SIZE #endif =20 -#define KEXEC_CORE_NOTE_NAME CRASH_CORE_NOTE_NAME - /* * This structure is used to hold the arguments that are used when loading * kernel binaries. diff --git a/include/linux/vmcore_info.h b/include/linux/vmcore_info.h index 1672801fd98c..37e003ae5262 100644 --- a/include/linux/vmcore_info.h +++ b/include/linux/vmcore_info.h @@ -6,7 +6,6 @@ #include #include =20 -#define CRASH_CORE_NOTE_NAME "CORE" #define CRASH_CORE_NOTE_HEAD_BYTES ALIGN(sizeof(struct elf_note), 4) #define CRASH_CORE_NOTE_NAME_BYTES ALIGN(sizeof(NN_PRSTATUS), 4) #define CRASH_CORE_NOTE_DESC_BYTES ALIGN(sizeof(struct elf_prstatus), 4) --=20 2.47.1