From nobody Thu Dec 18 03:58:50 2025 Received: from mail-pl1-f180.google.com (mail-pl1-f180.google.com [209.85.214.180]) (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 0B4DF22FAE3 for ; Wed, 15 Jan 2025 05:48:44 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.214.180 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1736920126; cv=none; b=Log7b+Qz1k3XytMQsdCMjAG0l2XxfrHQsnRG53f8IEFdqrXHLO0FLiuhMJ4wLTMhKGdGiBnNkhr754vA+wkWQsAwRD8MBhnGrXMEXLcObWEKd9qCCo8b40UFdp3ixSAGM7dvGmMSILERemsOv09na0nI8lo9olHzcPJBB1Ft/+g= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1736920126; c=relaxed/simple; bh=GlbXCeDYomWSeKDojm9Z/ytHwmxGwy6S9teTclpfWhs=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=KcW019xcFETugAetOepoxoS++XJsWv0ZbWjHbvIotSFh6KzWfLHXBG9e02xxm4YYuKSNE69zdigAq62WTH0s3VKE8Rh0ynKyST9JGHF2a32fg27yIPjDaUpN8AOf+2aEXECKAyMht4IPGuGtFNZ9V3Yqau0OXNLhrTlsSB8MBSY= 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=YoOmNgEW; arc=none smtp.client-ip=209.85.214.180 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="YoOmNgEW" Received: by mail-pl1-f180.google.com with SMTP id d9443c01a7336-2166360285dso111737195ad.1 for ; Tue, 14 Jan 2025 21:48:44 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=daynix-com.20230601.gappssmtp.com; s=20230601; t=1736920124; x=1737524924; 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=fZpSo6SfUC/c8jq/24P0QMTbOGHfF/+b8e/6Q9KEQLE=; b=YoOmNgEWGGqU8/dSfPolMmShhCo9RyeDdk1tTmC+DbrIHs07Jk59JfyS1Vv17zOtQY MffT2/IazT1iiatJXn5jXSomVszZFlG4WHxQ54+/+DV0DXms9qcvP8XX0JItH9sdk4c5 7Yg2kPvYZ0gc176cH0V/JmGZLDmWHiJ89fU9O7YKgecT8HgqThdCAieU2iwXH1NK130D NyNuE9O0T5nIDTEeuBZTmWGoot//9jE60P7I7DXYQ+R8qQUlneR0UKj/KxGRHcQLzl9d dLy0kCcDwnpuCzmEMdiJdjRcMV56huLchfJ/oh8WcUBj/ROFGgAAEzM1h5SFJhRhTH1S zI8g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1736920124; x=1737524924; 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=fZpSo6SfUC/c8jq/24P0QMTbOGHfF/+b8e/6Q9KEQLE=; b=onL03JJHZq5AQQ+PRimYdFOHcdEUEJtelLqBjRkCYUpPWSoUMcRC4RQkkj4a38/vcb w/AQyUhiXgV046I21/z5ANEPGX8XMNUF9NTioMH2NEH+ecWKX37K2coAYFo0LIu89Lgx yFjrtGyRy9zQEZmJ3R5orGBPQDtb+Kefa1PEaWvS7yfnG4OKyp+gueLpr3xtaU+a17aZ PtOOQp0I3zxUP+mopf0Wh+12urFKI+K1K5SDtDjyhbBbCZmaFJ+wAA78rK1fENKllrth qOE5mQ0+93Spqkpru6CKXmw7JpXcRLKLd2LnbKUpW+sNAbcHzCaB1i2eUYrTrI6hOhYz K9cg== X-Forwarded-Encrypted: i=1; AJvYcCWtvX3hMQzza/Hd1zGnSS7f0pcrxp7XTlbLHIZcD5wiLq+1ilnCvriJfLqmhTJooY9T5lSggRS0QxqS5C0=@vger.kernel.org X-Gm-Message-State: AOJu0YwR7y2GvVfwfnVeppyQO5NYNF8zEVGVlXgAbi/yeAR4JDj5hG1o xP7ncExq1kxk4K0vj6zHAmA5s4DGChi9C5CpYkIalFv17D7pZliewfpZ/RWMTYt2ACcyJK0DcIx lWQM= X-Gm-Gg: ASbGnctvvckcVqlAiP1IlVkxAFj59bubv4COXDuWVkp7Q0aWr8ZzoaRqvz+Ngmht2Gp 1x4gM5dA1dImM9hM5PzXLeS4/0JeQBkjvbFsnEnlBxj/Ko9DYf6U5yqN0jfCKoJNyHUNqEE3bp0 PyOrBLEUSHZKrL6A/b1cbqVZlM9UqVfsvcE8m3x49U9ezpuYd04dQdgjvz/INIH7/jdKyHx5Ei7 ShygYuJBrrieG3Mf5zGGkhcMP76CxdMweSQ3NRsDJnv8MPQQ7rgTNTDkXk= X-Google-Smtp-Source: AGHT+IE9Ko/sfU4l3gRoKIw1VpifRpZPoszZMRitXvYKUHMEVA/Y6+gd5cQmHupnz5hw/xWHCrALGQ== X-Received: by 2002:a17:902:d582:b0:216:69ca:7714 with SMTP id d9443c01a7336-21a83f339damr415380795ad.11.1736920124219; Tue, 14 Jan 2025 21:48:44 -0800 (PST) Received: from localhost ([157.82.203.37]) by smtp.gmail.com with UTF8SMTPSA id d9443c01a7336-21a9f219b7fsm75675195ad.116.2025.01.14.21.48.39 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Tue, 14 Jan 2025 21:48:43 -0800 (PST) From: Akihiko Odaki Date: Wed, 15 Jan 2025 14:47:58 +0900 Subject: [PATCH v5 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: <20250115-elf-v5-1-0f9e55bbb2fc@daynix.com> References: <20250115-elf-v5-0-0f9e55bbb2fc@daynix.com> In-Reply-To: <20250115-elf-v5-0-0f9e55bbb2fc@daynix.com> 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 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 to remove their duplicate definitions of note names. Signed-off-by: Akihiko Odaki Acked-by: Baoquan He Reviewed-by: Dave Martin --- include/uapi/linux/elf.h | 89 ++++++++++++++++++++++++++++++++++++++++++++= +--- 1 file changed, 84 insertions(+), 5 deletions(-) diff --git a/include/uapi/linux/elf.h b/include/uapi/linux/elf.h index b44069d29cec..592507aa9b3a 100644 --- a/include/uapi/linux/elf.h +++ b/include/uapi/linux/elf.h @@ -368,101 +368,180 @@ typedef struct elf64_shdr { #define ELF_OSABI ELFOSABI_NONE #endif =20 +/* Note definitions: NN_ defines names. NT_ defines types. */ + +#define NN_GNU_PROPERTY_TYPE_0 "GNU" +#define NT_GNU_PROPERTY_TYPE_0 5 + /* * 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" */ -#define NT_GNU_PROPERTY_TYPE_0 5 - /* Note header in a PT_NOTE section */ typedef struct elf32_note { Elf32_Word n_namesz; /* Name size */ --=20 2.47.1 From nobody Thu Dec 18 03:58:50 2025 Received: from mail-pl1-f173.google.com (mail-pl1-f173.google.com [209.85.214.173]) (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 E63F722FDEF for ; Wed, 15 Jan 2025 05:48:51 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.214.173 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1736920133; cv=none; b=dq4AuMCgaBU7tp7m5sK2X2uJCxF9w4YMbHgmJb45UD8YOBSL3HxIQeyMVuE0kTa9LN4GsfVGfftq9qNfERg59EF3g1J8Erq1czWgBOF/taoSydxWHFdKgyNkOQ6cCQy7pP+DemMBWq+B3S25YuyHPfCA/Z8IEvDuAYSdT5CBTls= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1736920133; c=relaxed/simple; bh=OznTh8CTSKljoZuFx8Vgv0i+Bhff7ONaPIhGZUma42Y=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=j+k/Teaf+c11rBAHlOAK2nDyjj4kYWApO0dqnkcBZWVBBLca6cMdcR8B2mNl5nc54x9/f4HQ1D7wyDmXD3Gl58YKzROhkpl3sxRASzqgtm+sd1NQWVpPhxs+hrxMotxEGCk+TTZxdPMfbBB2lKeJ5h1Jne3X+C5lG7F2PMWdQqs= 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=UXiMGbGN; arc=none smtp.client-ip=209.85.214.173 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="UXiMGbGN" Received: by mail-pl1-f173.google.com with SMTP id d9443c01a7336-21636268e43so148565625ad.2 for ; Tue, 14 Jan 2025 21:48:51 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=daynix-com.20230601.gappssmtp.com; s=20230601; t=1736920131; x=1737524931; 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=sHzEFJeIZDo3f5k/3U0rvOC8rXQluzySCipEOCSBJIE=; b=UXiMGbGNBKqtjkRYNcPYLsYORGzkJtiUyvztX8o0vJie/KV0ViDtiDnUL/PkhRaUvm tPNGzmmruqAF7QGZ2jJV8KkC3ojFD5Q844WWxGgXFjJXmm2ml+MhnzoT58XHOakhxFc5 XywETxzrRg3z9IDi8Cihk09N39Kc2pIOt81GXNB87vxor7njkVBxRNAno0gvZphwaLtT 1ulXqgEJVkb5iz+JBsJ8KhJHkTbKw0XOTLU5RmIz8+D+2uF2Etq0PGBXY1bqd0wQwqeP hxG6d+O6DXvOrGQn5cjOWPV5iHLbVrqT+6tO+pDPrTUbeys/LxgqnTuWL3a1HmF+pcXz iKCA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1736920131; x=1737524931; 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=sHzEFJeIZDo3f5k/3U0rvOC8rXQluzySCipEOCSBJIE=; b=tGl8uRoBAwBM8ibpPckDo9iQio+f2H3oRvi+MHF+kZT96km3pZFmKXXrAypdzx+kaX QtoNYSu80G2SwprPiBOqr0VwMHPVjzXxzurnQ0Qn+j7eqtro9cjETGtIatWkO5y6OS4j H6ACugXbQimmmlv0OZmsjdc407ZVtkqlGyWIW86WFteDbwLIwUjkLk3ELxtw5FqyHR5n alzJusiLIbU3YKLcHUL0WVg9Lwz120CrT/5aLeTu9c3/RUAmwU5iQnHREdE2cfTefKKf s9QqTLHog3cmKWNBVp3zzpR/USioTuiANFHu2CFBdq+GA+I+wcKJetUTMtyBSoV2NaOl YRdQ== X-Forwarded-Encrypted: i=1; AJvYcCURt2tVTjIhEBhSqL43Agor+y6GH2/i2AlCNAEzVjZj4CYW0joFObpWqeWx2CXkZRNSPf2YPPZw/FVor8k=@vger.kernel.org X-Gm-Message-State: AOJu0YzkS26s/AsDGMcIG3aHKVMB0e7bNTN/E4xhhR18k8EiFhjtwQN3 SbCS9a/SHM6MrIVaEGbcI6xwGHVPvBPV+bLo3w3clNl220dLnW4S/vU/b3E6y+o= X-Gm-Gg: ASbGncttCPnk9Tj0gfRLIOFQO6vExuHXSTghbbKj4iaIHPj07/nuaeFXzwmEooE44GR Kh264tPoDQoUzAG57gxkGcIx9DYO4WQ6RDgUAfG5cjpCJlIkypXW2qPeFl+EiuRNqiQdNBqPmta ktc69pwjNa65MhfDRWJKh/lYGCVPYoe64igrn9fmo0teOTOpNMQzCivaKED967AA6TmTmfYrR6a pETSEu7U2EgGXKfhlc1ZZYEwnF51dlKGfB63Mzox3pDQ8XQYynyKU/QQTc= X-Google-Smtp-Source: AGHT+IE4WOueDadHkE/pTRlVlFsVpAiJG9FV/RBFhyadWkGkb4TxZaWQPSECPYbRg96If6idldoCOw== X-Received: by 2002:a05:6a00:9a3:b0:725:eacf:cfdb with SMTP id d2e1a72fcca58-72d22033ef6mr42478714b3a.24.1736920131167; Tue, 14 Jan 2025 21:48:51 -0800 (PST) Received: from localhost ([157.82.203.37]) by smtp.gmail.com with UTF8SMTPSA id d2e1a72fcca58-72d8bda6e9asm691573b3a.51.2025.01.14.21.48.46 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Tue, 14 Jan 2025 21:48:50 -0800 (PST) From: Akihiko Odaki Date: Wed, 15 Jan 2025 14:47:59 +0900 Subject: [PATCH v5 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: <20250115-elf-v5-2-0f9e55bbb2fc@daynix.com> References: <20250115-elf-v5-0-0f9e55bbb2fc@daynix.com> In-Reply-To: <20250115-elf-v5-0-0f9e55bbb2fc@daynix.com> 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 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 Reviewed-by: Dave Martin --- 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 Thu Dec 18 03:58:50 2025 Received: from mail-pl1-f180.google.com (mail-pl1-f180.google.com [209.85.214.180]) (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 1130C230D2B for ; Wed, 15 Jan 2025 05:48:57 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.214.180 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1736920139; cv=none; b=pnE6oaJ/IEUtemW/QJOTDc91E2BItRIyJiyKvu2HLkM8QFOnniGR0hbjgL6GEvQZiGNBKrhhbr6+eyJgoM28PU0llktjnY5Z3D2o3sjvfdgIU1iqW3PKOV09TAavCqIH2Mpg/8mnpDR0SP154keWXZ9CNaPxF2ChAub3zohPOWc= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1736920139; c=relaxed/simple; bh=mz6/8u0zKO7wXg63oIjhA+TZ7CRE2siVZkZdSTOwyCc=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=bnVxPpwuUuTeKUrP/TJBLYD1g8lRrutiwZNu9kP5cPlSl05LgYzNdTIePKbTN1DmjPxAEKTIjWHC6yWViv24IaV4wENNwCZnBrIVIILqBAcde0B83T8zlGUTYVWL2KQc7dSxR+RePrLsh4hwHjfULPZKwvbNU+deay6/GTS02EQ= 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=UxLprjXm; arc=none smtp.client-ip=209.85.214.180 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="UxLprjXm" Received: by mail-pl1-f180.google.com with SMTP id d9443c01a7336-218c8aca5f1so136772805ad.0 for ; Tue, 14 Jan 2025 21:48:57 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=daynix-com.20230601.gappssmtp.com; s=20230601; t=1736920137; x=1737524937; 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=I4SRmWOkQdk58NJ10wmqwv5TrRHdqCAxdQV3fT7eobo=; b=UxLprjXmoGzUX6iqd9kD3is/F5zV2iSgLuVkkuEl8k+tWP5VF+kBRA1T82DpBV8t7f MYiukD6akMZtGzPIU0iZbMgMVmEkOvuslNaO+zlvUhBwk2UWc0PijL41Sf8JPyw0YtMU FAJ3QabIcohf+RnyzVE1L80FbpoW8vTkpD09cez9/RSlmOM9KVYMHXYbvtIGdsXwpX26 cyO+9DQ+loBS3D4afNAJUFKVvL4kRWxx85dgFmoMs0mLTYuj6rkBa8U8N31d71GaBUFz UluXGjaOmZzcJqu4wNex3GWR+YdnPlSSu73PU70vxPZqi/X/B1d87z9U5epwOPn6Hi/r ogZg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1736920137; x=1737524937; 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=I4SRmWOkQdk58NJ10wmqwv5TrRHdqCAxdQV3fT7eobo=; b=UifhUMn1xZxKH+fNF9H+lQweTbHLHHCwgziskaZLcEsD6BTYXNTzbnwyaQ43gXLJqj uDJW4dYP1YGIoAtsJkSybJd2AZIqScJv7F7BDuwR+KDVefHdOIwa7BJ8xNlX9Tvl1R+r sxT9Ab7rRdgWYAx2MYURoO3DxZngPjqZAQCEuG/F3u6u+bgCdZPH//3pZMAjNNAtKPtY UevejwqGcw/ngE4Tu11XzrXQz2lpvDlQ+pVzi3GmpnI4EvtyhptO6a6cusP5VWH5gjHi 5DxNoMekXmgK8EC8+glKnHNtbUS10k0XnJHoICnONk13kVGQO+aPyT5JOssPvbq8k3gy ks5w== X-Forwarded-Encrypted: i=1; AJvYcCWaGRXWlCpq5v8xGTXe/pNS9NdB/S30cdEzBlsYiMJOMAsjKGlwuuDVaLhk86UAsoHD/AqRoIwov0iwr+Y=@vger.kernel.org X-Gm-Message-State: AOJu0Yz9DCw4LjaOV7Rc8XzQ4U1mtDzq4uv3raY88LAXlbNd+kV+vTcQ bPskvWu+8M5qsagqLi7dRenGdpybRiP7B2yfjoO86J8CrWubvpAy8gfUpb2rid4= X-Gm-Gg: ASbGncsA5kT5YfjCSCmZlg7IwLoZuSujvCZ5J94vRnMRPg5PoCqyv73Ol2l+0Cg3qEz 1I2GeHNE2Hr4MIX7Js1DTnhLELY+XANyzf47mh3y8XOOfmnPiiB+P/8b/HB6uCc0EbDdAx/si4A naJXtgzjX3QfFzKHS5eod4aPMI1y8nmXp5SAtaEsPLdFJ9NvGbVG41jiaKU6zYf4A0YYAoxN1Xz EfJ9L+U3C33mKcO6SN0LtkGnL7fQND6lauzcrbmOwZ31WQcdxObU8KDtzo= X-Google-Smtp-Source: AGHT+IELo9CjdL+yrG4BCg5jbLzJxkebkveFvc3aZpHyweclYXLk3OeSuIMKxGoccunx18mtoTdJlQ== X-Received: by 2002:a17:902:f644:b0:216:48f4:4f3d with SMTP id d9443c01a7336-21a83f56bdfmr398040455ad.13.1736920137397; Tue, 14 Jan 2025 21:48:57 -0800 (PST) Received: from localhost ([157.82.203.37]) by smtp.gmail.com with UTF8SMTPSA id d9443c01a7336-21a9f111b82sm75035235ad.35.2025.01.14.21.48.53 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Tue, 14 Jan 2025 21:48:57 -0800 (PST) From: Akihiko Odaki Date: Wed, 15 Jan 2025 14:48:00 +0900 Subject: [PATCH v5 3/6] powerpc: 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: <20250115-elf-v5-3-0f9e55bbb2fc@daynix.com> References: <20250115-elf-v5-0-0f9e55bbb2fc@daynix.com> In-Reply-To: <20250115-elf-v5-0-0f9e55bbb2fc@daynix.com> 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 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 Reviewed-by: Dave Martin --- 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 Thu Dec 18 03:58:50 2025 Received: from mail-pj1-f45.google.com (mail-pj1-f45.google.com [209.85.216.45]) (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 ED1E02309A5 for ; Wed, 15 Jan 2025 05:49:04 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.216.45 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1736920146; cv=none; b=CCUrefMsDpCTraqW5L+QNMtYDnoMEW8uxiGef/SXwJk7bvRh5vmz9CTM8Dpc86Yg4D7sguayKct7j60eDfdldOCq+zCDNrzlW3RdI1ZvBn+hapJCeb5QyhCstJ6GU+T0wCOiHDQ9nrPiPeM/SwLqBct1tA55yKYruEUF+1ldlr4= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1736920146; c=relaxed/simple; bh=Leybf68felJQDMCcU0PIjLxf2dyR5XwKl+2uZ4yvwsU=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=Tc3GDE/pzZPwK8iq8LM2rduiYZuwc9uNhqntQUV1TSnm2OQN76087psHrEDZER7HFZHKTuM6LrRSAArT9OhNMIo2rkCmWLKpNegsFVlaPlBAb36+ADEL3oZ8k+ycuKM+wuEFgrJwMlSnPBRrPF8w5lJSBwqDADVLdXCJ1/LYxk8= 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=WISw5qgX; arc=none smtp.client-ip=209.85.216.45 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="WISw5qgX" Received: by mail-pj1-f45.google.com with SMTP id 98e67ed59e1d1-2ef748105deso7926833a91.1 for ; Tue, 14 Jan 2025 21:49:04 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=daynix-com.20230601.gappssmtp.com; s=20230601; t=1736920144; x=1737524944; 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=D7R1Z0m4AmDiEDGrwLKGXNpW3g69MQHysWRaDTZFxP4=; b=WISw5qgXspnR1XVd1mKZpS46lVwkSx7Stcp71Zr622f8B36Z3md187O77VUAEpaH3e Ku7sn8N34vhS2c09UEIqgNtgNy70LYQiV1jTfPog2RDFclpN0YpYrssGhsKL7kNSchmh l7mF7RV92cXi9cnMyk+rjHhoiKqUlDDBVArq7z1tlBEXfOafDzEx0eSFsFqW3inl4dRx CSObDygU4NXwhYmMfsQKImLqWCyocBiKFjZ0vwUoSj4QxqhL9UOITillNavAE2aoICHP Umhbm3x/6ns3U9UqdkRDR9tYgX5doaRuZLWyqR1f3vDHQszBEFWLW4kY+8cfJTci69+1 hjbg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1736920144; x=1737524944; 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=D7R1Z0m4AmDiEDGrwLKGXNpW3g69MQHysWRaDTZFxP4=; b=QkqlTh6rRYAn7PdlTX/N9LmSYImcuqTYLSSDiU6KLHHEz8C3EQbUZKoDvB3cwK2Hug oHND3QR06U2ocIZxs2FL5ynMHnPr3oCF8iumlcsIvtwYcGIE11pTHJJyY/WmwVP9QIdF D3Xjrd+IHneLMaI4I9KmyaY6F5WYSbuoPiVsCi0Prq2tANivEO8BF4JUXp84lT7TZ0rV 0M9zFO1/PFdvuiFfz0IoJfV9OJZQqU2oLhPy/qyPbK6WdnFj6u3EKgUaXBoh8lPlFXKH 17/V998Qs9JqBYC8aSQ2xhGR16xPzcdXXTfqUPY/VlzwF9P40FcmNup5znvxULNZeEZM jZTw== X-Forwarded-Encrypted: i=1; AJvYcCU0w584VTTsBw0dqGa3RhV23te1BI2+1VdMYUEZBXWU2YCt3r+fm9SN181UG5HhKm752nFUZTKpW1Aax6I=@vger.kernel.org X-Gm-Message-State: AOJu0YxxIAfKp9OskUG7JA6YpZUG+wtsA4s3TYwmbPHrhvppDy/BUD19 xEJlrqa2hWA66wOztjX8ModKW909tdE5tQq1Ut7MBT5iU6xddrQy44Kq6b8zWHQ= X-Gm-Gg: ASbGnctXOeeGwUCevHJkAnOZa4ELXmnjeFY00CeHHHDpUsrUPVVzvHkJMzTUoF7W+HN aJx/MXS9lZXvV+i0kziE1XgcVXUjHHQ/0CJtAnksVH7C22wKIyJBLnwY0TiCXjM15/HIK5vgKXn kGdEbxipQwGhA52ntFLPJOMo2C3Xn0r2Ueb7NC+SUqXLQsIejqcoAWDyUUFROpBVU0YDOr714Gx zBGSnNsH7fuzv3v1Y6rleOCYb/TadI2zS2qkWkCoZ6WPuZAV6hCLJF32iQ= X-Google-Smtp-Source: AGHT+IF72SLq1My1g7dtb+6XlMl4Y+R7t/efbYmDZTCYwSHPEhtpwytSLWotlhp9pmcuYRJ5nSVCuw== X-Received: by 2002:a17:90a:dfcc:b0:2ee:ad18:b30d with SMTP id 98e67ed59e1d1-2f548e98f31mr36439035a91.6.1736920144269; Tue, 14 Jan 2025 21:49:04 -0800 (PST) Received: from localhost ([157.82.203.37]) by smtp.gmail.com with UTF8SMTPSA id 98e67ed59e1d1-2f7085261dcsm1516002a91.0.2025.01.14.21.48.59 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Tue, 14 Jan 2025 21:49:03 -0800 (PST) From: Akihiko Odaki Date: Wed, 15 Jan 2025 14:48:01 +0900 Subject: [PATCH v5 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: <20250115-elf-v5-4-0f9e55bbb2fc@daynix.com> References: <20250115-elf-v5-0-0f9e55bbb2fc@daynix.com> In-Reply-To: <20250115-elf-v5-0-0f9e55bbb2fc@daynix.com> 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 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 Reviewed-by: Dave Martin --- 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 Thu Dec 18 03:58:50 2025 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 7854B2309A5 for ; Wed, 15 Jan 2025 05:49:11 +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=1736920153; cv=none; b=oAZ5qUMFauxyYlieDJQnj6+nrBnRnFGLuB3Q7gn+AWhBopwuYwiC4916f1NpMbdxHLRZi59ZpEzWCKYCID77opudUWgMZXXfBtKsE4iPgFugv9q/GC2EKcu1cuz/STH5ZiYlSL3X8c0KXRyuZ9DeD68xBf+f41LigldaORamx7k= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1736920153; c=relaxed/simple; bh=JF3FfcrCfNzsuJEQqs2GHPMkdzmPYzsry0avRsoHtk4=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=OKr81a1WorOkxsHnKSvacI9w+urbWiOD20dcsgx3tCEmdp8mYfhVULjZVHDKoK7mElzjCRPz00mMIFhUQFrG6PzMpXbzHuOwMtZAZFocS9ASt4iFIEMQ9DypHqtZVay9gJXbmcusGt3X8D1qYajByD5tbC0nPJzjcZmaGDX4jHI= 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=wESmEgiD; 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="wESmEgiD" Received: by mail-pl1-f172.google.com with SMTP id d9443c01a7336-21644aca3a0so138939625ad.3 for ; Tue, 14 Jan 2025 21:49:11 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=daynix-com.20230601.gappssmtp.com; s=20230601; t=1736920151; x=1737524951; 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=gqxfn2Bh8pqSgpWAhYuCaH8o2BUeXgVOaRACTrcmMAY=; b=wESmEgiD7hn3U+PaL+I6rdb9VBHeGpO4JRPnv2iDRb73IF9jAXhpbMm8LaNrr5I6Hm bqgPKCYlmNLSUoROqYDaw6OxrmMW5i5AcIpupg9E4We5Lw1/0J77DfjKKeo9Bvb2rtbl yH7iSQvW0u5JojIPkkqsGHlisHu7brFQ8neFgArhax1xuX6IP++qTvYPSp3k7FLsaLvC D+lvoAevauVTfEEZFCgp8Y0IxClAEXEzfrqGZWD//mqsXAsegAxyfnyqF8c37Sw6199o NvVkq7qVQZ4TJ1bzxgHWwfI7w7IOmamdXwFKHqblntOM4bcdXvshfMkrT+HUbw0HiF0k +jXA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1736920151; x=1737524951; 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=gqxfn2Bh8pqSgpWAhYuCaH8o2BUeXgVOaRACTrcmMAY=; b=ZwpzhAp43oBMBk57r7J9oylTbaD9AkaSIZib+e/+l7FYHJRtAGwvUgRoC8UhbCa5eF ldJVz0+9bIhKfpo0AbSWJbu5T4aU+0SdYZiLdGXnWzqatxySf6pb4VImDF0+2/3pYbLA R1ppKISvLJLa2/9RWv3AzImGzMz9RPu+nxNKgEcZBEOa6+wAlijH3Zlq5qY8i82rlZuV vTU3y1AoRVNudwdk6rHeXJ0SYYfS7tsF3VlOTIWMJ1zpAO4P4I703OD661ptkxezvqSt jODMMHJXXiYWhZV4LqpIJZcgY9JSFS8qTffEKSi8nDwt97d1+RJMqFPRHHsmIIa3+n9z HHUg== X-Forwarded-Encrypted: i=1; AJvYcCXHwP/j2QGgZHbCJZpUfiB088555u21E7cS+F2Gh6rUC+K9RP+rOossHAHVBgsEGr6scw0Lvz5nd8DyYy4=@vger.kernel.org X-Gm-Message-State: AOJu0YxOObXb4/l1xuRUPbYN8mD4+UzeHf///a30Lrx8IqrGwnAzH5EB 7GgD4NgUq+I0Km6o0mciriTzL0Usy+NxYeEoc9Lc7GLdkfwlvi3w1oiq8B+rOm0= X-Gm-Gg: ASbGnctYWfop7flD6IP0/cdJkVFtsz30X13hIxbxJX3UakJViV1Ey3pTt0/4YCGGJgI T5iwoHWSp7kqSqGcCqOyC8I2DCYlHRSnDZNc7L12WPNRSRQcoSGv8Erh3CXHaFEuWUbynVd6E5i Iv5c43Hun5SQ4S/OVqJ1QlYYD2Yvr/m86baEZoZ3Cm/QbNl+10QQtaAAhGmSRdxafhKprbQ9J4N C4dGJguPNuBu1EqeXN+Ne9723soaB/s9xbWXIgqMKtXnDrey+GE0DYezRE= X-Google-Smtp-Source: AGHT+IGEE8Fm6k+e43goXL9XR3kNG0Qk7QvIMeGK5viYe25EF4qO0xqHuY9x+AzGWdKmvE+R7dTOXQ== X-Received: by 2002:a05:6a21:1087:b0:1e1:b727:181a with SMTP id adf61e73a8af0-1e88cfd3cb1mr47297876637.24.1736920150754; Tue, 14 Jan 2025 21:49:10 -0800 (PST) Received: from localhost ([157.82.203.37]) by smtp.gmail.com with UTF8SMTPSA id d2e1a72fcca58-72d406a94b8sm8295174b3a.167.2025.01.14.21.49.06 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Tue, 14 Jan 2025 21:49:10 -0800 (PST) From: Akihiko Odaki Date: Wed, 15 Jan 2025 14:48:02 +0900 Subject: [PATCH v5 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: <20250115-elf-v5-5-0f9e55bbb2fc@daynix.com> References: <20250115-elf-v5-0-0f9e55bbb2fc@daynix.com> In-Reply-To: <20250115-elf-v5-0-0f9e55bbb2fc@daynix.com> 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 Use note name macros to match with the userspace's expectation. Signed-off-by: Akihiko Odaki Acked-by: Heiko Carstens Reviewed-by: Dave Martin --- 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..022f4f198edf 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 Thu Dec 18 03:58:50 2025 Received: from mail-pl1-f180.google.com (mail-pl1-f180.google.com [209.85.214.180]) (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 DA41B2361FC for ; Wed, 15 Jan 2025 05:49:17 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.214.180 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1736920159; cv=none; b=GkdvUc/sX6Id7L57Yzqv+3WJm6DZzNEtujus4RIDayoEXJRSrLDtQ9Nr1Pbdb8I3AVAKtlyqYnftb11X8RBepCvIRpzkjqbkP3no9Rw7g9h36lQfaUX0/Mt09Orh501/OEKJzwC2wC0jetWgaJw8u2HW5tEA4GxI9w2HZlTxva4= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1736920159; c=relaxed/simple; bh=dKp+neVs5VrK9cir+kWUKvbt+PUYfPNBvEjaFi25JA0=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=NUeeUfHNvIJcMUYXTIVzfcNf9hxU9SGMurznFZovR2sv2a1fYEHmHS+ZcdTRQDQmyBWujwG8ioZ5z0V/vudxMGU6DEYykywUmyRdVoQ9qHXxwbAOmCBbpPIlECLT6qvfx+Wwot5KgoH1FVJZD1rdKJS2F82J8r5f2SRiJ8EZREs= 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=WXjmUHf+; arc=none smtp.client-ip=209.85.214.180 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="WXjmUHf+" Received: by mail-pl1-f180.google.com with SMTP id d9443c01a7336-2163bd70069so115035705ad.0 for ; Tue, 14 Jan 2025 21:49:17 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=daynix-com.20230601.gappssmtp.com; s=20230601; t=1736920157; x=1737524957; 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=88SqYtXaTV08jsATT/J9IavghVGb0T0MbX3fafAbdCI=; b=WXjmUHf+v1ga8Qdyp7ljEb9P4TEeKXQQkApzYqc7N44ooa1o1skljC4UTf53783sbG 7qzB30u9X1U+UtNGOTd4mT+189VHQTgfkWvLOT3fsRbqX2R1HgU46mLPVl5o6eoodNbV cT3AM0rvmXUDJXPSn7aElu+E08xIC6oMyXXbR8jzN1x9CuVKm/IvfzKL55dkjclE7AU3 N4fnLJM0OMDjRGL+X/pYYjFO+xEzJTvtmjmyHdT7Qm98JtxYrq5V8ovCmTn3n0uzvTsa 5+4TCfWFjlaAlT4FgC7wN9ZPxNIM/1R/R6XA5tULOsgcheINkYOpZlHDId0s0kXfOii3 JtIA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1736920157; x=1737524957; 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=88SqYtXaTV08jsATT/J9IavghVGb0T0MbX3fafAbdCI=; b=lcYI20ue1zzuVqBkODBJZQE5bfwivGfr1rMZ6bpiSOAFnn0XKUhHNyqXWomfbYsxhA Q01j0nAYGoIFOoso3CaUFqwOQekxgrYZRLyefHCHI/Hk2w+Kok0aN4F7XlMG+ABVTyDu 5y8FKqV4VjonKFwpE4eCXcd75reH+83H9TWUOykfTUdPQdbRct3kNUpRlyqZyUXI1EtR x7o9ftleNgFiPBjjiapChnKr7QKZZIb4iAa/VxbWWgN1hFbBMiQrq6eo3hFGfpoJX6zD alh3By9Or16ItmVMlwB3vjUjAUV6eGeu5d5RbItWTQYF5W3gnn5tT/rT2QsiKGXIwYiY PaLA== X-Forwarded-Encrypted: i=1; AJvYcCVq7oKFY8G5uBaBlXCM8XMGIdHwVoborGLxYeWMdZxI0ZzJN8fe8OnN85OdfYf9e+/56mywuH2TAp3L+Ak=@vger.kernel.org X-Gm-Message-State: AOJu0YwkFFulXEav+bJIQ16Ox217Y2876j8sq6Ts9QcxSYCWnmsuLzUP 22TLH6xGTFlj05Gsgf9tkBQIS8M81/9KGz75VluBrshAOGUNidFV9g+t9RB4VSs= X-Gm-Gg: ASbGncsGq8DF7pIwqA/RHjucbAxtKc0UNHPQFZMiMP+gJroQULZeu00gXJkTb4ZnThs ja0sznO1VIMhwrfoEurUXGTyzjvgjeV0pRJrW+yQpAC+6UjLXqwZWXgSGWJW4QZIxeQMwx/9Y5O ZiFhs2cMMe2+9+oxJE6dg8zA7VIhMj3LZYRPiJw4DbItkiYXZvx7yz5LdyaSHrRQ8sKhdEhhgHF TOgTTXdhkF0X583nWOibC4CIDYI/eEZodIxbpcrc8EFliNj2+4/Ezv0bSQ= X-Google-Smtp-Source: AGHT+IE7CP/5jGWZAR0IrIqQIqvoQb7g5wi9hxFsU0CFVXu0dR68h2h3F8IAezzLwnE0Rlv/Ybh8/Q== X-Received: by 2002:a17:902:d48a:b0:216:4064:53ad with SMTP id d9443c01a7336-21a840109d2mr433462125ad.48.1736920157113; Tue, 14 Jan 2025 21:49:17 -0800 (PST) Received: from localhost ([157.82.203.37]) by smtp.gmail.com with UTF8SMTPSA id d9443c01a7336-21a9f22e591sm76124125ad.180.2025.01.14.21.49.12 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Tue, 14 Jan 2025 21:49:16 -0800 (PST) From: Akihiko Odaki Date: Wed, 15 Jan 2025 14:48:03 +0900 Subject: [PATCH v5 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: <20250115-elf-v5-6-0f9e55bbb2fc@daynix.com> References: <20250115-elf-v5-0-0f9e55bbb2fc@daynix.com> In-Reply-To: <20250115-elf-v5-0-0f9e55bbb2fc@daynix.com> 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 X-Mailer: b4 0.14-dev-fd6e3 KEXEC_CORE_NOTE_NAME is no longer used. Signed-off-by: Akihiko Odaki Acked-by: Baoquan He Reviewed-by: Dave Martin --- 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