From nobody Mon May 25 00:09:41 2026 Received: from mail-pg1-f195.google.com (mail-pg1-f195.google.com [209.85.215.195]) (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 9E013190462 for ; Wed, 20 May 2026 09:19:11 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.215.195 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1779268754; cv=none; b=Sm3vBCr+B9ABfNFDcis8B5Vf+3poMVRol8dasn5Vhm2CDqaLGIA7chDc8t5Nl3XEM4yV9raJ2DvPjz57HXi0LY9WH5WU0QLLaym14Fes+UiZ0JR31JqI9lM9xq+nhhh1I/8plxLhXnViGtadwLNyNts1G5BqmJNtaS22LfW35bM= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1779268754; c=relaxed/simple; bh=hg5xbWLp3AkSvJFbtRJektVz3soiPhwBudcg+chCZNQ=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=p1y7Ce9iKkzWQqN+/GJ9piM/Y3lKvI1LAdy6UnIthg81T2QYNaFIQM2T2ZDLo54VUXtMpCPij96Bj+vbJd8LDB9fsH6b7qmSm5AYEICxDJrxjj/omKkyUCgC/0kzSoxVns9AJowDYpxA1TMbQ4YxlMYnyms2tUWR6jUKgxgdSgE= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=B8X7RU3L; arc=none smtp.client-ip=209.85.215.195 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="B8X7RU3L" Received: by mail-pg1-f195.google.com with SMTP id 41be03b00d2f7-c82a6278a4cso3571310a12.3 for ; Wed, 20 May 2026 02:19:11 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1779268751; x=1779873551; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=tlJTNnuSEkuOFcK//QE/3Ty9SdRnFwE8BVFotGGF+Qo=; b=B8X7RU3LGCDvangQc9LkyR00ShOVybh/2rn89RSEzVp7VU0jIB3YRVvrM+qucwcJFe GEf/nsf6t6Ty2Xo/b5bPmNyeysa3JAAITWWfkzWndxN8tvW0CrLUqgFrNb4Z7U7QVKfz pwdjrEdvez7f+N2AnUSoJHQdhF9QfQKqEIXEPllICtzLG7ipqDaBjuS6/njB3SfMu7yF gp2wKmMba30eGf76nnIlGnCdbmkgKh5Szl2zQd2sYquOj3jqhxCod9YvV1OY1mAG9xx7 UPn6dxT2XHDGLAucqjm9ILxMgZnck+1661MgBeuLJ3uAIAiVSU6ng3gZTG/9VvFHpR3t HFxg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1779268751; x=1779873551; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=tlJTNnuSEkuOFcK//QE/3Ty9SdRnFwE8BVFotGGF+Qo=; b=r7PDLqcpDMHXuLkFRbu4dnpZ5zdBBVKWf505AuMP3v1DhOWJBdBPwT4R+q8tiH4jry 1JMZRNEKV9Cjfnhss413HogERtv0QNRtSlS97Qk0MAK/4nUHzIdBq6NPDzi7UAiKfxfq vZA6O9UFVWpaYFMoDp5ef/uZZHdvSkwo/ncmjoL8E2/Ms6/hElSMLeIIk73xjOiF13o0 /agmeW3R0AEZhiigtCBdAWdCYETU+8Vm/29upysmxxHIopRGoejks/hcAFe2S6E4vaQs ZuA1BQb1DQppFuNdYlo0WGcwI0MqFRpDEa5K2Yn6g/K3ZQRH+Kjtgd2Nrd42eTKaUvB+ vmug== X-Forwarded-Encrypted: i=1; AFNElJ/9FdVmR/QlTWf4C2iCQWDT5q1l8TQ1OfnmZXjbE8j0ApVvJRDcs+f41/stenuvvI3f94Rn3nloresSJj0=@vger.kernel.org X-Gm-Message-State: AOJu0Yy2oXw3YfBlgYjSQ4iWe4wRDxyVVegF9dJrkG8zVRw8hgdnRGwT Jb3A+89pUIoUYg6wdIgf79ENU1KWnX1tiZeEgUboBAozo9FIGLGf4xlu X-Gm-Gg: Acq92OHkw6xl4AYgjskyr6EF89g8d9DonHNg9x4XgOQ80pU6DHUdDHAGaAA/9g/HpQk jSpCKUP9LOtxfafNrMMiW1TuuPyxT+/+s5RumNnZD+J4hRWFp7Q8d2A2b1OI1WNgMNgNirQfgb8 a4Ij21cw9L/ZLanRoGHx82JS2JYUbmtfxBkOETyGU907Zq69njbElH/RbVf2L6rnjJduYzFlQLh fLzWUeQju4ADHrL3HR9SKvAkItUc7O7X0AcqZ/2ldfI9Q/iHlPof7sMc4GAtNRdjmbTNc1e2n/f gWqgfC5/SF4J40TjYnQn82Bs9gaFkbGN2Q9CzO6EY5+CwUx+uLGVdCjZHI53+dWxppVUshGpTaf VzS5ajQsq74QfikBNQ1yiO4zdwGGcUPkLhRrS6kpTuk1Eqec3GWzdp0YyLFIr2AtA8e3ODPbViC ddLUBYlcM4V2hlATZ/7OCG6CTTkex4O5PERygAUA== X-Received: by 2002:a05:6a20:2454:b0:3aa:ec28:edc6 with SMTP id adf61e73a8af0-3b22ec63eaamr26158763637.39.1779268750848; Wed, 20 May 2026 02:19:10 -0700 (PDT) Received: from intel.company.local ([210.184.73.204]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-83f63bb986dsm10208967b3a.48.2026.05.20.02.19.00 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 20 May 2026 02:19:10 -0700 (PDT) From: Wandun Chen X-Google-Original-From: Wandun Chen To: linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, loongarch@lists.linux.dev, linux-riscv@lists.infradead.org, devicetree@vger.kernel.org, kexec@lists.infradead.org, iommu@lists.linux.dev, zhaomeijing@lixiang.com Cc: catalin.marinas@arm.com, will@kernel.org, chenhuacai@kernel.org, kernel@xen0n.name, pjw@kernel.org, palmer@dabbelt.com, aou@eecs.berkeley.edu, alex@ghiti.fr, robh@kernel.org, saravanak@kernel.org, akpm@linux-foundation.org, bhe@redhat.com, rppt@kernel.org, pasha.tatashin@soleen.com, pratyush@kernel.org, ruirui.yang@linux.dev, m.szyprowski@samsung.com, robin.murphy@arm.com, leitao@debian.org, kees@kernel.org, coxu@redhat.com, tangyouling@kylinos.cn, songshuaishuai@tinylab.org Subject: [PATCH v2 1/8] of: reserved_mem: handle NULL name in of_reserved_mem_lookup() Date: Wed, 20 May 2026 17:18:37 +0800 Message-ID: <20260520091844.592753-2-chenwandun@lixiang.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260520091844.592753-1-chenwandun@lixiang.com> References: <20260520091844.592753-1-chenwandun@lixiang.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Wandun Chen From: Wandun Chen Prepare for an upcoming change that appends /memreserve/ entries to reserved_mem[]; such entries have no name. No functional change. Signed-off-by: Wandun Chen --- drivers/of/of_reserved_mem.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/drivers/of/of_reserved_mem.c b/drivers/of/of_reserved_mem.c index 8d5777cb5d1b..313cbc57aa45 100644 --- a/drivers/of/of_reserved_mem.c +++ b/drivers/of/of_reserved_mem.c @@ -788,7 +788,8 @@ struct reserved_mem *of_reserved_mem_lookup(struct devi= ce_node *np) =20 name =3D kbasename(np->full_name); for (i =3D 0; i < reserved_mem_count; i++) - if (!strcmp(reserved_mem[i].name, name)) + if (reserved_mem[i].name && + !strcmp(reserved_mem[i].name, name)) return &reserved_mem[i]; =20 return NULL; --=20 2.43.0 From nobody Mon May 25 00:09:41 2026 Received: from mail-pf1-f195.google.com (mail-pf1-f195.google.com [209.85.210.195]) (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 A1F813B47E3 for ; Wed, 20 May 2026 09:19:21 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.210.195 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1779268763; cv=none; b=PWqWndL7HsVL5XZma6O2u1+FnnritAkb06XmIz/FXOLInRvjssRlqfgg9VKhpTgFAC0QoRZQaoL5EX4s9yUmIAXvkPx485f6HfkFsrFSABxS/UQ5m0hP270I0jScBK/bhTGAgQxEd9WRVUHuv+R7CBBE9ceCHT7kMtP/Tjsum8s= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1779268763; c=relaxed/simple; bh=1mrJpHLdgZoQ9z8hnMeKjo6Nk1qat8gxfyVXkzyrD20=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=l+kAdct3UnYyzawBW47wJlrdy/znFEcO0iW4eiob1HvUMNuzIt/+L/golSQ3zNJdHGS+3Ws6bIjwjWin7AdDVtkyj3IFQuh06KyE3xvlGr7IkLZneDQzqzBxdc7OqoDeND0CxOf4Dj+jTOpK983fKwfd4Bq3P/KDZ9QCFZhNKlk= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=GwLq39LR; arc=none smtp.client-ip=209.85.210.195 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="GwLq39LR" Received: by mail-pf1-f195.google.com with SMTP id d2e1a72fcca58-82fbf5d4dc2so3215467b3a.1 for ; Wed, 20 May 2026 02:19:21 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1779268761; x=1779873561; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=9oyw9vanLGG7tQ9dBSW9pJHSWXBGqZj5GxnQmef6pVg=; b=GwLq39LRIUNkKgBqO6N2HEA8OiLYOWUugIClJQwmCsqqtyLOAi9T6hAxa/XX71i7mR mQk+G2B65k2NC2X34EYv2tE+BrI8uoQIUr+YX0mSbVCxkD5BA7LkIKx+hPkod5o7IaEb Wt0X2WIiZvw256O2xG5te/wPn7hZO1Grto6iloLUh4q5p0lu+LlOHJyFRElUMVvZrG2E zL6MB9wxVoA6906DbxHOm8tOwV20m/PqoHNNX4DRS0eaGjurrL4fwJ7XaNQ8ok7NOp33 2ZTbe/gRnMfud2GBLhc2xcY0lVHnw3t9045R6sxkOjlnoXQtEtDOte86mfmrB+WFF4Nn ho7Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1779268761; x=1779873561; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=9oyw9vanLGG7tQ9dBSW9pJHSWXBGqZj5GxnQmef6pVg=; b=BBrUHac1K3otHTV+CClQ/8pd8L9QvRAyznBW6k3KrBTVyojy6eHy9QBBZ23QKahA4N +ocucdX0kirIqNWlt4EaL5SGikxZgTf/f3phfXjCXyLJ3SIgQhNQCRtnQe8v7FOeQyX2 fcXt9SJvmrAsnoP7uflJNii9bjBaHxkQd7ZIo2mTzzhDnJfLMj2NWFBiIkpfbsbsLyRe wMMsyjmgEgKEmnRFbf9MK/gWr4zYy09A99DXUtR5DbOccMPkSEmpbSjHCd4Xk46FJCt6 V3ZsXSDv9m9Wcp9Zsh8yKUWgfYkOj3QRwN81T9WRt3YwZBtr0k0Yizdb8nQGbrJGNDFp CSfg== X-Forwarded-Encrypted: i=1; AFNElJ/82ceNGsEpbDmWM6Q+qNMcL2TwHHuKH2b3aXQeZc+/QQq2hW6Ur1ZlklrksII2kPDsOzl3qbHnl7UxwtI=@vger.kernel.org X-Gm-Message-State: AOJu0Yx96f4K30m9yttB27BmU8G3uVR2qrKehzW992R5RIn8jcLY0j3x AhfyHvjeU9qJBGnEDK10WZuE2z+mlHguH4e6EZS0cYZU5/4OdIJ76vki X-Gm-Gg: Acq92OGeUFSG8RFrLvKUVuAeAJhJVqgn3MzrJnPF1E/+4b5UBQF7FGgIUid+wIJHVjZ 4xNSw0N4udkOp1pwwkzCE9p9SQTyXfEegoKiX4TCPrlFfMjI7mrbfd0I9tz30icW+2LdQPc5BXt XYU6lmJO33oCd7+vJB6SoIfsD8J4aTeO5Sh3VO88vOQ8UleEHiSijoO76BvBrcZxI8LyfMn3YrO naMQjfRE9Mi+CbWMfkUPVhX/MFtadxvgqr+bWiKZoYbom8A//Ok6FkJjAJgxh4hK5+7DrcIOy0s qITPEDo4oGaU6bUpdmv/3BYbWQf0UaDOjQNAtmFAkUjjQIYonw/OXW78WKk1tPm3+i6yv6ww6G9 Q3ydqXfBDK2tTOQvUemuefKun7pCXzXvcv/n+MoxWM9wZuaYCmbd0lg0a/hBkPkGAmYFUnUUF1L wwXRyrDnFB1C6KDwsy6rkiqZckfPUA5SRl3mKrGQ== X-Received: by 2002:a05:6a00:3289:b0:82a:7aa3:a2fb with SMTP id d2e1a72fcca58-83f33c9b2dcmr22248125b3a.37.1779268761111; Wed, 20 May 2026 02:19:21 -0700 (PDT) Received: from intel.company.local ([210.184.73.204]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-83f63bb986dsm10208967b3a.48.2026.05.20.02.19.11 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 20 May 2026 02:19:20 -0700 (PDT) From: Wandun Chen X-Google-Original-From: Wandun Chen To: linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, loongarch@lists.linux.dev, linux-riscv@lists.infradead.org, devicetree@vger.kernel.org, kexec@lists.infradead.org, iommu@lists.linux.dev, zhaomeijing@lixiang.com Cc: catalin.marinas@arm.com, will@kernel.org, chenhuacai@kernel.org, kernel@xen0n.name, pjw@kernel.org, palmer@dabbelt.com, aou@eecs.berkeley.edu, alex@ghiti.fr, robh@kernel.org, saravanak@kernel.org, akpm@linux-foundation.org, bhe@redhat.com, rppt@kernel.org, pasha.tatashin@soleen.com, pratyush@kernel.org, ruirui.yang@linux.dev, m.szyprowski@samsung.com, robin.murphy@arm.com, leitao@debian.org, kees@kernel.org, coxu@redhat.com, tangyouling@kylinos.cn, songshuaishuai@tinylab.org Subject: [PATCH v2 2/8] kexec/crash: provide crash_exclude_mem_range() stub when CONFIG_CRASH_DUMP=n Date: Wed, 20 May 2026 17:18:38 +0800 Message-ID: <20260520091844.592753-3-chenwandun@lixiang.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260520091844.592753-1-chenwandun@lixiang.com> References: <20260520091844.592753-1-chenwandun@lixiang.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Wandun Chen From: Wandun Chen Prepare for an upcoming change that excludes non-dumpable reserved regions from the kdump vmcore and will call crash_exclude_mem_range() from generic, non-arch code. No functional change. Signed-off-by: Wandun Chen --- include/linux/crash_core.h | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/include/linux/crash_core.h b/include/linux/crash_core.h index c1dee3f971a9..0033d4777648 100644 --- a/include/linux/crash_core.h +++ b/include/linux/crash_core.h @@ -87,6 +87,12 @@ static inline int kexec_should_crash(struct task_struct = *p) { return 0; } static inline int kexec_crash_loaded(void) { return 0; } static inline void crash_save_cpu(struct pt_regs *regs, int cpu) {}; static inline int kimage_crash_copy_vmcoreinfo(struct kimage *image) { ret= urn 0; }; +static inline int crash_exclude_mem_range(struct crash_mem *mem, + unsigned long long mstart, + unsigned long long mend) +{ + return 0; +} #endif /* CONFIG_CRASH_DUMP*/ =20 #ifdef CONFIG_CRASH_DM_CRYPT --=20 2.43.0 From nobody Mon May 25 00:09:41 2026 Received: from mail-pf1-f196.google.com (mail-pf1-f196.google.com [209.85.210.196]) (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 22AE93BE64B for ; Wed, 20 May 2026 09:19:32 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.210.196 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1779268773; cv=none; b=t+hFzia1W4rjLR+HfX+Auz+rn/08FZyUhWjpKJ8qJsd3KVEQlHlw/sJDL5JdFoyemnilory7x47uTHoQp9C3KfFpiQiYvG2umddh/qomNewfkMB3h8dWljkoT8EPLO5j08/nNhIAMI2TxuTrDBPwzZYyYgqwymLaYLJudYPuD2I= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1779268773; c=relaxed/simple; bh=25Wos8h+kuVxYdWnXQjvGbC62TvhYYtucbzUo5/jn3s=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=SjO0MsDk9g25wW9GL2p6Ih+3bWXkg5UAIYtnbJrOb+FgumWngtURi9styIFdsi6hw4oi9o/Nwr0xi321QCPcvAd5uIa8MaNyyGM0nBkmb4N/Zt3RwHld3pQmVsJxwuOtPlCBkjW8jn8Rf15dTGuZLHpRsWSDLb6rpfSsiEEEUAo= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=Cv133uTE; arc=none smtp.client-ip=209.85.210.196 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="Cv133uTE" Received: by mail-pf1-f196.google.com with SMTP id d2e1a72fcca58-83f674f978fso1462889b3a.3 for ; Wed, 20 May 2026 02:19:32 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1779268771; x=1779873571; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=ciQnv+j7sn9Iwh07+rP7odEwkTvIV/Tmpz7NteXq2I8=; b=Cv133uTEd7NoIU1iQ72IFWNo9+QdDJtmJ9+EDluXIZWepY4Jh4JKGb8ZjkGfQnxqTK 6jWjLLM3TS5ksgZYRgyRtPIH4g+5LuRHsf4cCmxeqkRzVK55MPTkSAHukSJCHjla9BpG m4SS0EM9QdoR2WgjdnQaQ2ZaExMiS0WDUq+06XhF+5HcsgzMbTiiTQNG80O4yIu+T/4q nBvthhe5FOjxvRFJiywgGtenfWT5eQeWSfbowrr+EaUqznAeyVvbZDf26c3D7sjRf+BI kgzI/pvejDST4gc3rj6V5A5nhxjfcx1rbsFn4+BmJOAnDwcNccIbzi6sDr2gp4lG2cPs ls6w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1779268771; x=1779873571; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=ciQnv+j7sn9Iwh07+rP7odEwkTvIV/Tmpz7NteXq2I8=; b=PWaB5Y/EIDMD7E8VKeCYSWrDZwkPOmsTD8dCpm0sJXxigc4kyqE4QWnec7N1QNDJ05 O9LHSD8RkR3UnJQmNi789A881ELlx8J9ooBZOAiT4JQWOGySiUp7Bcyu7dtBojGKAgkg ncV8CGWIbKS4taqjSZLyL1S1O6hq97mu0VTRJ0oKof8uqNObhM+yoA8ttCAH7LiJcJBj 9fIXbTcTGZJhh1SjyOeg1eRO51NvFbRdIQIS2DqVrnOqTilUshqTuMlyINRX9KPFuAns GQQauGLuSUglcCKhX17rJt1l/BUaCgN9nGemmVASMHv+43LM5FTyZXC6G3MeRmF6slU6 addw== X-Forwarded-Encrypted: i=1; AFNElJ8CCylCYeYNWZNduJv/X6jg5y2xKtCZr4Djh8yu9m33kWbEJddm7OpFE08YY06uaa9mtTQxXmAR/7r6dYs=@vger.kernel.org X-Gm-Message-State: AOJu0Yxg+aIRGruwOl75lhwcyxLx19N3gcCCqCr1pdznQSjS1EjWoU36 3Iep3JHcMiptwH4fP3+esoBIMUqAauwPomnuMzanL1ejtDaQUpmkkjoE X-Gm-Gg: Acq92OHGuBp2Kykvawtgn8MZ0+vkV8Qn+CQ39G7CEihopuc1pnR/wqqhxcrl2XfiguM VHGRp0Ltacdw6JhU7Keg1gTf7fVLtkMvF9ANbBAmm8Wd7YcIzktfCNPq3GCv+nb35O1V9+UKA6V AQm5hr+dfAzjXtSlGSA/cJKz0wytLE7BQsGFjvFCMUVP6cAnYsV3yxZ7ZTL+bukdmGWzHJQgQ+r IxRGrYy5dZvSF7dqKm4z45/d76KKo+O8AUVYpZZ03O7xqTdxzRMspSBhzD/t7ihmn6DcggHxyFw jFuFoyYI6qnaotS9MTop0qGywnmYs5LDRBH9ff2eEUuY7b9+jcljsO9Orx3h8LUoqARNYw7T0At yYIZOYMQBnlt38Ggk3YasW6KwkyjfATtiA8LXTBvB9qxBssJM3i/FpYhE/XrUujLjhL5HxdqoCd kpdq6eRq/BnmvzBEMZEPIonstSxzwf9N0ABFl9TPVtb+m5lkRS X-Received: by 2002:a05:6a00:90aa:b0:829:8c08:d1f4 with SMTP id d2e1a72fcca58-83f33ccd856mr24019073b3a.39.1779268771454; Wed, 20 May 2026 02:19:31 -0700 (PDT) Received: from intel.company.local ([210.184.73.204]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-83f63bb986dsm10208967b3a.48.2026.05.20.02.19.21 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 20 May 2026 02:19:30 -0700 (PDT) From: Wandun Chen X-Google-Original-From: Wandun Chen To: linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, loongarch@lists.linux.dev, linux-riscv@lists.infradead.org, devicetree@vger.kernel.org, kexec@lists.infradead.org, iommu@lists.linux.dev, zhaomeijing@lixiang.com Cc: catalin.marinas@arm.com, will@kernel.org, chenhuacai@kernel.org, kernel@xen0n.name, pjw@kernel.org, palmer@dabbelt.com, aou@eecs.berkeley.edu, alex@ghiti.fr, robh@kernel.org, saravanak@kernel.org, akpm@linux-foundation.org, bhe@redhat.com, rppt@kernel.org, pasha.tatashin@soleen.com, pratyush@kernel.org, ruirui.yang@linux.dev, m.szyprowski@samsung.com, robin.murphy@arm.com, leitao@debian.org, kees@kernel.org, coxu@redhat.com, tangyouling@kylinos.cn, songshuaishuai@tinylab.org Subject: [PATCH v2 3/8] of: reserved_mem: add dumpable flag to opt-in vmcore Date: Wed, 20 May 2026 17:18:39 +0800 Message-ID: <20260520091844.592753-4-chenwandun@lixiang.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260520091844.592753-1-chenwandun@lixiang.com> References: <20260520091844.592753-1-chenwandun@lixiang.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Wandun Chen From: Wandun Chen Add a 'dumpable' flag to struct reserved_mem so the kernel can decide whether a reserved area should be included in the kdump vmcore. Most reserved regions are owned by devices and do not contain data useful for kernel crash analysis, so excluding them by default is the right behaviour. Reusable CMA regions are different: pages in a CMA region are handed back to the buddy allocator and may contain key data for crash analysis, so set dumpable to true in rmem_cma_setup(). Suggested-by: Rob Herring Signed-off-by: Wandun Chen Tested-by: Meijing Zhao Link: https://lore.kernel.org/all/20260506144542.GA2072596-robh@kernel.org/ Acked-by: Marek Szyprowski --- include/linux/of_reserved_mem.h | 1 + kernel/dma/contiguous.c | 1 + 2 files changed, 2 insertions(+) diff --git a/include/linux/of_reserved_mem.h b/include/linux/of_reserved_me= m.h index e8b20b29fa68..55a67cee41ea 100644 --- a/include/linux/of_reserved_mem.h +++ b/include/linux/of_reserved_mem.h @@ -15,6 +15,7 @@ struct reserved_mem { phys_addr_t base; phys_addr_t size; void *priv; + bool dumpable; }; =20 struct reserved_mem_ops { diff --git a/kernel/dma/contiguous.c b/kernel/dma/contiguous.c index 03f52bd17120..eddec89eb414 100644 --- a/kernel/dma/contiguous.c +++ b/kernel/dma/contiguous.c @@ -579,6 +579,7 @@ static int __init rmem_cma_setup(unsigned long node, st= ruct reserved_mem *rmem) dma_contiguous_default_area =3D cma; =20 rmem->priv =3D cma; + rmem->dumpable =3D true; =20 pr_info("Reserved memory: created CMA memory pool at %pa, size %ld MiB\n", &rmem->base, (unsigned long)rmem->size / SZ_1M); --=20 2.43.0 From nobody Mon May 25 00:09:41 2026 Received: from mail-pf1-f195.google.com (mail-pf1-f195.google.com [209.85.210.195]) (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 565A93BB668 for ; Wed, 20 May 2026 09:19:42 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.210.195 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1779268783; cv=none; b=lpO/chfIzLs0fcJN5r6dYKinOA8NAFd403NbVACzsfQncFIpd7A2zvLyWEhEa4By7zHe6csubRX5OfxrTUNJAXAPw/7DVkUcjypB6GumVNK9kLzG0xgUYFNvfSvqtoXZ5uYRcZ0TgSQsLYb93f92Yi/bZTMnDvdXym1+3PQ1J1U= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1779268783; c=relaxed/simple; bh=z+pV8J3G9vBpigYuBP9S8akaNmUvqt94D2AXmVvYIIg=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=KIF/FrPN1dqB0ZZvNaT+aEpdwh9QnU17S5isfMs08+MaIZeI+sMFCeVCjGYFOwh6MOJjvmpBMIMGkz6KymaRUPbh5pB8PkUeYb8cPsRq2lNdabWSYhuC49+BHZ4YEnBkhiLhaPkEuMN0WnGjFYUrkBFZ6uEXkL6dAjwqXIrZodo= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=Dv/eVgQj; arc=none smtp.client-ip=209.85.210.195 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="Dv/eVgQj" Received: by mail-pf1-f195.google.com with SMTP id d2e1a72fcca58-83945063f70so2656061b3a.0 for ; Wed, 20 May 2026 02:19:42 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1779268782; x=1779873582; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=hOCzBK8k01kCn1ct1tqBM3o0gO2HRIsLOEiUTag/y2g=; b=Dv/eVgQjAn8fMk3uWr6FAPe83z4CjDuKXuIjI80QDJdU8lM7KAFUPQqvJukuT242vU WeYYhvSlI4jQK/OvX+jQM3eKaln85sPueWx40W4+4y/Sji5jKA6mFSxFXCRiknrtnZvP LczLZOnkvxMC0wL8LJWV9AWM6+LSTY1Dbs661SSXuEVOZXm0NOcH6YZYJkPHgXI2xFEZ G2ljurpZoiZDI8RRiuUC4C6/rDT+3Eop0oLwL6MW6nZLec5fC4bceZ2lDGTGj8lld7j2 JQzjn3DDfvNUarDCswYReLAn56v8wdL2BBsS5rsbXIxyfN98DFmR983kBh0JDzQJy+/T QaMA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1779268782; x=1779873582; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=hOCzBK8k01kCn1ct1tqBM3o0gO2HRIsLOEiUTag/y2g=; b=mYk/vNgNn9o0v2aZRc5e8RU6xe8XW9YigsZltJRQlgHlGN2gNv1dT9B45bIZNbKyMi LtYyDUnvN6Psh21UrvtDDeWNJLcwbG6ff/TRsl7buf0XpEokVCzVNe9joskARkCYFyuJ DBF29OCWrNQ8dZxenFIY0UyYHBu7vnXWRwxcCTAKMsq/GKuJp5FttiwSHVPIseHMntnw zwBtMqFdw1IMstYyFdUF4QFd6JBPIOuqzCmHJiT4r1EaL0WUX78F5pWfOmaWb1JSJRgo 7PafRv0QtB+4z8TibzM4JyGgVzREls1dL/MDo5ebZENTyv4QVYQENwa9/ew3GliPQ5UZ OarA== X-Forwarded-Encrypted: i=1; AFNElJ9Iek4clP6kMDZwoxKmIV7KPvyke8gzGWooEKLUKRROr8a3rmn7YMiHHF8+Zk2pciPFxWtclY6G+5xhtDk=@vger.kernel.org X-Gm-Message-State: AOJu0YyT3xasBG0cQAK5k6+8h2MdDhmR2L613G75d9QUus9n7z5c35a1 ISHvgAw8M56RV3+qxRnOoUOAQMv04w3DjpovSjbyv4YqVpqomDF27uM2 X-Gm-Gg: Acq92OH66gTYM2+tD98d2GzmL7WUoUojZ+SpqrY2GTazUwASquZIjFbeKEqWQ284uYB xQzqBOWySEpeGXacQgg6pGl07TU+pLA5A4ngniBehr78L+OzivVV4/O3jbivul8ZqNi44QUg7tj R0FHAINVDK49xtB4uLbFwPdVjZVNnpGfYoJr5myE7Gw1DTM8OcP2yBzmtmpq1w7tJd+UDBHz24r nZN/ulwfwIMsxFu2++uMDbJORSVsofxu0IqxhiEi+qMbs8FZ9olVuHrVs8+UhpcB2OP24Ir5dud mj/bIKj1CaqXRSWTmnuoIUFgPPlh6S3VsItR3cX4cjBOe+avJQ/CkdiSigReyh5IM0+zDy7Ejzk c9rQ+QLf2vmvuzcadedLT3yFrhu6KJSmIOcTvST73J6JekZCpqahcK6YknpaUrXM7Nif2pj06JY J+PDPSgDYq3qWPNFxHOkA/jyDweCO9gSMrTwtpDA== X-Received: by 2002:a05:6a00:3028:b0:82f:2aaa:c14c with SMTP id d2e1a72fcca58-83f18e770a7mr21882568b3a.16.1779268781713; Wed, 20 May 2026 02:19:41 -0700 (PDT) Received: from intel.company.local ([210.184.73.204]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-83f63bb986dsm10208967b3a.48.2026.05.20.02.19.31 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 20 May 2026 02:19:41 -0700 (PDT) From: Wandun Chen X-Google-Original-From: Wandun Chen To: linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, loongarch@lists.linux.dev, linux-riscv@lists.infradead.org, devicetree@vger.kernel.org, kexec@lists.infradead.org, iommu@lists.linux.dev, zhaomeijing@lixiang.com Cc: catalin.marinas@arm.com, will@kernel.org, chenhuacai@kernel.org, kernel@xen0n.name, pjw@kernel.org, palmer@dabbelt.com, aou@eecs.berkeley.edu, alex@ghiti.fr, robh@kernel.org, saravanak@kernel.org, akpm@linux-foundation.org, bhe@redhat.com, rppt@kernel.org, pasha.tatashin@soleen.com, pratyush@kernel.org, ruirui.yang@linux.dev, m.szyprowski@samsung.com, robin.murphy@arm.com, leitao@debian.org, kees@kernel.org, coxu@redhat.com, tangyouling@kylinos.cn, songshuaishuai@tinylab.org Subject: [PATCH v2 4/8] of: reserved_mem: save /memreserve/ entries into the reserved_mem array Date: Wed, 20 May 2026 17:18:40 +0800 Message-ID: <20260520091844.592753-5-chenwandun@lixiang.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260520091844.592753-1-chenwandun@lixiang.com> References: <20260520091844.592753-1-chenwandun@lixiang.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Wandun Chen From: Wandun Chen /memreserve/ is used by firmware or bootloaders, such regions hold no useful data for crash analysis, they should be excluded from the kdump vmcore, so save /memreserve/ entries into the reserved_mem array for later exclusion. If a /memreserve/ entry overlaps any dumpable reserved region, mark the whole memreserve entry dumpable as well. This may keep slightly more memory in vmcore than strictly necessary, but avoids splitting entries and never drops data that may be useful for crash analysis. Signed-off-by: Wandun Chen Tested-by: Meijing Zhao --- drivers/of/fdt.c | 5 ++++ drivers/of/of_private.h | 2 ++ drivers/of/of_reserved_mem.c | 55 ++++++++++++++++++++++++++++++++++++ 3 files changed, 62 insertions(+) diff --git a/drivers/of/fdt.c b/drivers/of/fdt.c index 82f7327c59ea..d2bcaf149fe8 100644 --- a/drivers/of/fdt.c +++ b/drivers/of/fdt.c @@ -499,6 +499,7 @@ void __init early_init_fdt_scan_reserved_mem(void) int n; int res; u64 base, size; + int nr_memreserve =3D 0; =20 if (!initial_boot_params) return; @@ -516,7 +517,9 @@ void __init early_init_fdt_scan_reserved_mem(void) if (!size) break; memblock_reserve(base, size); + nr_memreserve++; } + fdt_reserved_mem_account_memreserve(nr_memreserve); } =20 /** @@ -1287,6 +1290,8 @@ void __init unflatten_device_tree(void) /* Save the statically-placed regions in the reserved_mem array */ fdt_scan_reserved_mem_late(); =20 + fdt_reserved_mem_save_memreserve_entries(); + /* Populate an empty root node when bootloader doesn't provide one */ if (!fdt) { fdt =3D (void *) __dtb_empty_root_begin; diff --git a/drivers/of/of_private.h b/drivers/of/of_private.h index 0ae16da066e2..646b5f43ad47 100644 --- a/drivers/of/of_private.h +++ b/drivers/of/of_private.h @@ -187,6 +187,8 @@ static inline struct device_node *__of_get_dma_parent(c= onst struct device_node * =20 int fdt_scan_reserved_mem(void); void __init fdt_scan_reserved_mem_late(void); +void __init fdt_reserved_mem_account_memreserve(int n); +void __init fdt_reserved_mem_save_memreserve_entries(void); =20 bool of_fdt_device_is_available(const void *blob, unsigned long node); =20 diff --git a/drivers/of/of_reserved_mem.c b/drivers/of/of_reserved_mem.c index 313cbc57aa45..6dfe9e03c535 100644 --- a/drivers/of/of_reserved_mem.c +++ b/drivers/of/of_reserved_mem.c @@ -241,6 +241,43 @@ static void __init __rmem_check_for_overlap(void) } } =20 +static void __init fdt_reserved_mem_add_memreserve(phys_addr_t base, + phys_addr_t size) +{ + struct reserved_mem *rmem; + bool dumpable =3D false; + int i; + + if (reserved_mem_count =3D=3D total_reserved_mem_cnt) { + pr_err("not enough space for memreserve regions.\n"); + return; + } + + for (i =3D 0; i < reserved_mem_count; i++) { + rmem =3D &reserved_mem[i]; + + if (!rmem->dumpable) + continue; + + if (base < rmem->base + rmem->size && rmem->base < base + size) { + dumpable =3D true; + break; + } + } + + rmem =3D &reserved_mem[reserved_mem_count]; + rmem->base =3D base; + rmem->size =3D size; + rmem->dumpable =3D dumpable; + + reserved_mem_count++; +} + +void __init fdt_reserved_mem_account_memreserve(int n) +{ + total_reserved_mem_cnt +=3D n; +} + /** * fdt_scan_reserved_mem_late() - Scan FDT and initialize remaining reserv= ed * memory regions. @@ -301,6 +338,24 @@ void __init fdt_scan_reserved_mem_late(void) __rmem_check_for_overlap(); } =20 +void __init fdt_reserved_mem_save_memreserve_entries(void) +{ + const void *fdt =3D initial_boot_params; + u64 base, size; + int n; + + if (!fdt) + return; + + for (n =3D 0; ; n++) { + if (fdt_get_mem_rsv(fdt, n, &base, &size)) + break; + if (!size) + break; + fdt_reserved_mem_add_memreserve(base, size); + } +} + static int __init __reserved_mem_alloc_size(unsigned long node, const char= *uname); =20 /* --=20 2.43.0 From nobody Mon May 25 00:09:41 2026 Received: from mail-pf1-f196.google.com (mail-pf1-f196.google.com [209.85.210.196]) (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 870973B47E3 for ; Wed, 20 May 2026 09:19:52 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.210.196 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1779268793; cv=none; b=ZqawM/ENUULeYnxCsTwf8OyBQUwl65LhBqXjM3Ztw/N/0ovh8eZEYim8V5hehmSxH7koCcr2z8SlNMNqCHb6YzWn0gm6aiiEFdZuuReN7kxKmMsOgM/bWNyxA/3aYj5hPvowJwlBvylultA/f8F44+DVzEU1Ilr46VD4+Z0LPHE= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1779268793; c=relaxed/simple; bh=DixxRB+/67Q1zkAFDPBGZyJxWiYRN5jMpXd6m5DN7R8=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=OOObeeysY+n8RsGviMgMcAygniPOo1qOFVkUtUVRl58CZPCKOi5XC8T784NntzaGkPVjbEa7BjerhciScY9oh+WXVFN/a1hv6B28oKNVjgTZEmILwkLdd1iwAN1hCxixKTID8GC7x8Va0wBp0BFq1nZNkNfLpnnK6OEqZXgIPoU= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=CuqI/6DD; arc=none smtp.client-ip=209.85.210.196 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="CuqI/6DD" Received: by mail-pf1-f196.google.com with SMTP id d2e1a72fcca58-837b39eb078so3141699b3a.2 for ; Wed, 20 May 2026 02:19:52 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1779268792; x=1779873592; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=42F8CHAqoHCrwDp1G0wHxf9X6caXzIhKy/g2LWPqXJ4=; b=CuqI/6DDLoY5VV7108Qod5RuWtlS7YC2vDpBLIKTG6cH3ZyT2gOFLyqLs/zQQwBVfi YKw5U3lg4MaVVnuyv9jbATSqm9KZAHL84D642KQ7S45dMbIn1bzAd3d2UztuGDzPgnAQ +2ezUC1MXPWcbIFBBvMzQ7/ee++gfb7+E/up8KTnf2KfUmD9rtRw0Ux9wlC3WZQc4zeW ZmC8pzFFPBLEsRdhbBwIFn/f/YXH4hr1KlxWH7BZAGYbaL1yhdM4AsgO0iT1oeLkCfPr x1x0cdhiPoRGE4ATovXpwUF5Ywxr17SKVBK6vi+BJ5/o4Mm4wJV6/5Lkg/JOOK4v685x qzQA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1779268792; x=1779873592; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=42F8CHAqoHCrwDp1G0wHxf9X6caXzIhKy/g2LWPqXJ4=; b=a1BKryJ9NZsEjZgvrEai+atGFRitWgU606sbmhrkV6bMfje1yEMLZnkJgmfjPBEqJ5 uEoSAZORf1o9WLnWa7x7sdQS+BVERFvP2eQRpd/5dNpClenN5vy7tJ08GE0+Hf9+3/Zc KOKB7+pdtpgAYjlREzsy9JufkWLi/tPMCVTbCVEhG2Dyoq2qMoCMt6RlhT2lH9ZdBv6X 3hI8Ags4/x4PzBmmv0XwpA/V0jo2l3ViU8t5Sm6Lhgi350QJ+jpbYfjH5gspVZ9ALHMo fgZ2Jsd9r07IlOlGZXkYChosszJgChwWT73M6Y3bsWA5ByfTV5CN8D+wt/kBtOptLKCK REJg== X-Forwarded-Encrypted: i=1; AFNElJ/dlrGqE42ao9056C5iceAzTeUaF3W8njc6i8cqESVIhk0osZFBzZ+NQ7vhZ3zRseASWLwmaRy29+k3ei4=@vger.kernel.org X-Gm-Message-State: AOJu0YywN/MvLiq8iKMcFQu4AsQ+yQFzpkUvjhtjgylu2qFmPXmjflqW fEdRuwlxLWyJZPjmfSS8zwu9n/PXptLEYUbv4ThA0BKlogCnui9mwcbz X-Gm-Gg: Acq92OFkWV9RaXr7bdCTe2WsKmO+nqPrNwKPkSQ+QNKT6JRSVlOGgCZjuab8lRAk24O z0SOvfMj3icCIYcqBwptsE+L/3IEzxJN3hC3mqkGEMynQg/pyEzWFIiTaJG7ftWC/HQQCgFBi4r utOUb3e5PUaha8VLSTEBxAScIJa35uMfK0XxlG5clu1B4L9Fyu15UfPD87mFlHjxYJBB3Owevz+ 0yQWbgpHY33DkAQBl+nxymI6q4IoEn19uD2OTP3KLN2RXBiaUNjLgFZylrsz8Peb14OqVfJuI/x i163998KyWNjR3YOEtAeTOd8HliRxrwR/5JWvUqtJtMjA8DHdCz/JT+7kuDRnbrczuT5zu45oOL tokxrB8aXHtEDRFfLLPKQr7htrXTF/bK+pGy94rJOgkc3O00kxt4sDLrkP04L2gEt4l66aFAO/n v4Oz7oJWjEQfRxX9ei8ywe8u+ZgJbSaiOALJIbNA== X-Received: by 2002:a05:6a00:ab0d:b0:82a:6ef8:cb43 with SMTP id d2e1a72fcca58-83f33b34ca2mr23552441b3a.19.1779268792063; Wed, 20 May 2026 02:19:52 -0700 (PDT) Received: from intel.company.local ([210.184.73.204]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-83f63bb986dsm10208967b3a.48.2026.05.20.02.19.42 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 20 May 2026 02:19:51 -0700 (PDT) From: Wandun Chen X-Google-Original-From: Wandun Chen To: linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, loongarch@lists.linux.dev, linux-riscv@lists.infradead.org, devicetree@vger.kernel.org, kexec@lists.infradead.org, iommu@lists.linux.dev, zhaomeijing@lixiang.com Cc: catalin.marinas@arm.com, will@kernel.org, chenhuacai@kernel.org, kernel@xen0n.name, pjw@kernel.org, palmer@dabbelt.com, aou@eecs.berkeley.edu, alex@ghiti.fr, robh@kernel.org, saravanak@kernel.org, akpm@linux-foundation.org, bhe@redhat.com, rppt@kernel.org, pasha.tatashin@soleen.com, pratyush@kernel.org, ruirui.yang@linux.dev, m.szyprowski@samsung.com, robin.murphy@arm.com, leitao@debian.org, kees@kernel.org, coxu@redhat.com, tangyouling@kylinos.cn, songshuaishuai@tinylab.org Subject: [PATCH v2 5/8] of: reserved_mem: add kdump helpers to exclude non-dumpable regions Date: Wed, 20 May 2026 17:18:41 +0800 Message-ID: <20260520091844.592753-6-chenwandun@lixiang.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260520091844.592753-1-chenwandun@lixiang.com> References: <20260520091844.592753-1-chenwandun@lixiang.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Wandun Chen From: Wandun Chen Add two helpers to exclude non-dumpable regions for arch-specific code. - of_reserved_mem_kdump_nr_ranges() returns the count of regions that are not dumpable. Each excluded region may split an existing crash_mem range into two, so callers use this to calculate crash_mem allocation size. - of_reserved_mem_kdump_exclude() walks reserved_mem[] and calls crash_exclude_mem_range() for every non-dumpable region. Signed-off-by: Wandun Chen Tested-by: Meijing Zhao --- drivers/of/of_reserved_mem.c | 34 +++++++++++++++++++++++++++++++++ include/linux/of_reserved_mem.h | 14 ++++++++++++++ 2 files changed, 48 insertions(+) diff --git a/drivers/of/of_reserved_mem.c b/drivers/of/of_reserved_mem.c index 6dfe9e03c535..ef9732865783 100644 --- a/drivers/of/of_reserved_mem.c +++ b/drivers/of/of_reserved_mem.c @@ -24,6 +24,7 @@ #include #include #include +#include =20 #include "of_private.h" =20 @@ -851,6 +852,39 @@ struct reserved_mem *of_reserved_mem_lookup(struct dev= ice_node *np) } EXPORT_SYMBOL_GPL(of_reserved_mem_lookup); =20 +/* + * Count non-dumpable reserved regions. Excluding each one may split a + * crash_mem range in two, callers use this to size the allocation. + */ +unsigned int of_reserved_mem_kdump_nr_ranges(void) +{ + unsigned int i, n =3D 0; + + for (i =3D 0; i < reserved_mem_count; i++) + if (reserved_mem[i].size && !reserved_mem[i].dumpable) + n++; + return n; +} + +/* Exclude non-dumpable reserved regions from @cmem. */ +int of_reserved_mem_kdump_exclude(struct crash_mem *cmem) +{ + unsigned int i; + int ret; + + for (i =3D 0; i < reserved_mem_count; i++) { + struct reserved_mem *r =3D &reserved_mem[i]; + + if (!r->size || r->dumpable) + continue; + ret =3D crash_exclude_mem_range(cmem, r->base, + r->base + r->size - 1); + if (ret) + return ret; + } + return 0; +} + /** * of_reserved_mem_region_to_resource() - Get a reserved memory region as = a resource * @np: node containing 'memory-region' property diff --git a/include/linux/of_reserved_mem.h b/include/linux/of_reserved_me= m.h index 55a67cee41ea..70db99f1fbff 100644 --- a/include/linux/of_reserved_mem.h +++ b/include/linux/of_reserved_mem.h @@ -8,6 +8,7 @@ struct of_phandle_args; struct reserved_mem_ops; struct resource; +struct crash_mem; =20 struct reserved_mem { const char *name; @@ -48,6 +49,9 @@ int of_reserved_mem_region_to_resource_byname(const struc= t device_node *np, const char *name, struct resource *res); int of_reserved_mem_region_count(const struct device_node *np); =20 +unsigned int of_reserved_mem_kdump_nr_ranges(void); +int of_reserved_mem_kdump_exclude(struct crash_mem *cmem); + #else =20 #define RESERVEDMEM_OF_DECLARE(name, compat, ops) \ @@ -92,6 +96,16 @@ static inline int of_reserved_mem_region_count(const str= uct device_node *np) { return 0; } + +static inline unsigned int of_reserved_mem_kdump_nr_ranges(void) +{ + return 0; +} + +static inline int of_reserved_mem_kdump_exclude(struct crash_mem *cmem) +{ + return 0; +} #endif =20 /** --=20 2.43.0 From nobody Mon May 25 00:09:41 2026 Received: from mail-pf1-f194.google.com (mail-pf1-f194.google.com [209.85.210.194]) (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 297193BED26 for ; Wed, 20 May 2026 09:20:02 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.210.194 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1779268804; cv=none; b=qsRUFvTeDySgxEtGA+KRi7/TrOyk7UDE+wVqDfuagI6j8iQOxa2hk37hc90jLEjNXTEhYLy+ZgYL2NP7UdWMkqXfGGjapn2xc8mWi1g2d9kPJ2xdqnlC3NZeX/SVyfkS32ud91VJFn9FYaHwcAlMBb0thyVj0+ilT4lywiM02sg= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1779268804; c=relaxed/simple; bh=fkGCsIowNsF/AXwiEqemLcl3yM1yUzs10iZ5x1XDEp8=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=QCNIDK9vhz6mJlPdzcsQfzgV1Y707dRU5RLDQgbSL2nPWGIgBH7wgPkPFfZBT/YDksxn8EicttdiSQJddLSmjYSB98pgV2+RZvpU5vnq7+D23Uoeg24HdB8FF+ux7a7U+5vr7HEx8LTYmrnDvkGGTAgiu3+xUg6A/J46TmT+be4= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=CVJM0zkd; arc=none smtp.client-ip=209.85.210.194 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="CVJM0zkd" Received: by mail-pf1-f194.google.com with SMTP id d2e1a72fcca58-835b78c3797so1922321b3a.2 for ; Wed, 20 May 2026 02:20:02 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1779268802; x=1779873602; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=uewrEsj0ZjEAk2x/Pk2ITnSJY3Gqt9vqmVdLwg6RP/I=; b=CVJM0zkd55OyovB04mH0kZo1HrMBXsFt/E9t1+4rqUnKOYoaQMi5RIXJM1N+FNzAeE x6ZEv6bkNb6FjfePIFoTL9ReLWafB351D9JBNRSDMwttWVhGpFC1/3Ig70fY1lTn++Zv L+JKsiF03h6D7WHe3ff3LBzouPwIuNZHft2YU595MtfNdGOC7gUBMwJchI3RDdR7K2Cq VsIafJUrr7+7ckBmBRu1aJtEbmWEnrJBrFmPTdxmOuzEJrJxhM9IzwUotkvsaoAls5/O tPisy+f4XHyHkwilqQYCywxPFt63wUG9M8ldXBNJ35I5QhiMaF7ePLGx0vNtL2Dg9Fj6 6ZmQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1779268802; x=1779873602; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=uewrEsj0ZjEAk2x/Pk2ITnSJY3Gqt9vqmVdLwg6RP/I=; b=ShSzf9LyqSgp7F3gb9XrXfdvGKnaKGLKU4JyIxG1jIR1IvBb4HyAqdc8iDSJyJwrhO viFhvMASVnxuHqfgDEZkXQSv5zGeo4mo/6Lg7JHsJ1hgs4c1zKqXNQz1cQNVGooCgNm3 CGgUINkIjONlZRS+FOKleUkzdYmMIhsrg8GPlew0IJXHmlMGs3e6ZZC8gCKb5FZ10M1I k3mBHzoGdCCjstK8ofBjEkUub+NGnVcIEm0OIYmczoptByJ1qzYURazZW3pydvUeuF7j hl/xe40uFgAcCwXXEb9bntQh/l4Rj697Trr8GC/1v+75ndOxZEuUs0W75mb+QPFxhPVU FoYg== X-Forwarded-Encrypted: i=1; AFNElJ9U3u0CRrNNB1Uv4OZLhwjKj+qpGNR7YcrdMKSiZDRUqcJqszSjbNKiSwER68ORyD7A+vi6ExMfXiTyqac=@vger.kernel.org X-Gm-Message-State: AOJu0YzbypHYAffkwdnJGuJqoIwjnnnX19U7iFgqZdsIXi3bKI5av6Yo Nc+ZCCySnumom6Qlg6WxvnJneTvz/1D92gJfgKh+9JaVXiFYzOwiFf9D X-Gm-Gg: Acq92OECo2N2jkJqDJVVixC9QoFUNgdFf9eu0PVxQc1uk+CSU+T28T86UnrZ9Yvpk2+ 7uv+9LRceb7yX0CagmY4cnUACDS+SDuhsrTLFJ2LzA9+ilwuGDnqHL0ivzWMjh1eilaOtQ2l4hI gbj1XENWHaHnfxYJshYiGGPx91OCnHEv2ybWTMEaAbUQxPUU4TINocDNMPGEbAjE/45h46Nh4K7 k3AuWpjWnfGZjnpQTyNh/mXsv5GAcNBgPPax1TfOumxAeSL1y0mk2wHLTjmkFFJIenObi9Ih1jb VuZIinFR3VSD3CTds3b2vdltbf+vkbV0XbHwMBNmFNyikukSP6CuMYyNhem1Mufx5VURxK4dfEE BbifUZXEhgEbLytg4TZnSeVymf/db/+bZl+YKqfnZfAFGEc0I9cxwJjVRd53rZXKzUrWnzw4ohT f19DgFi7khIYLH8JNWytTyTd9GhJkaGYl0ZEJdiQ== X-Received: by 2002:a05:6a00:1954:b0:835:366f:5da2 with SMTP id d2e1a72fcca58-83f33d80937mr23397364b3a.37.1779268802457; Wed, 20 May 2026 02:20:02 -0700 (PDT) Received: from intel.company.local ([210.184.73.204]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-83f63bb986dsm10208967b3a.48.2026.05.20.02.19.52 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 20 May 2026 02:20:02 -0700 (PDT) From: Wandun Chen X-Google-Original-From: Wandun Chen To: linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, loongarch@lists.linux.dev, linux-riscv@lists.infradead.org, devicetree@vger.kernel.org, kexec@lists.infradead.org, iommu@lists.linux.dev, zhaomeijing@lixiang.com Cc: catalin.marinas@arm.com, will@kernel.org, chenhuacai@kernel.org, kernel@xen0n.name, pjw@kernel.org, palmer@dabbelt.com, aou@eecs.berkeley.edu, alex@ghiti.fr, robh@kernel.org, saravanak@kernel.org, akpm@linux-foundation.org, bhe@redhat.com, rppt@kernel.org, pasha.tatashin@soleen.com, pratyush@kernel.org, ruirui.yang@linux.dev, m.szyprowski@samsung.com, robin.murphy@arm.com, leitao@debian.org, kees@kernel.org, coxu@redhat.com, tangyouling@kylinos.cn, songshuaishuai@tinylab.org Subject: [PATCH v2 6/8] arm64: kdump: exclude non-dumpable reserved memory regions from vmcore Date: Wed, 20 May 2026 17:18:42 +0800 Message-ID: <20260520091844.592753-7-chenwandun@lixiang.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260520091844.592753-1-chenwandun@lixiang.com> References: <20260520091844.592753-1-chenwandun@lixiang.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Wandun Chen From: Wandun Chen Reserved memory regions are excluded from vmcore by default unless marked dumpable. Honor the dumpable flag to filter out device firmware regions (e.g., GPU, DSP, modem) reserved via device tree, since they typically contain data not useful for kernel crash analysis and can significantly increase vmcore size. Use of_reserved_mem_kdump_exclude() to perform the exclusion, and pre-size the crash_mem array via of_reserved_mem_kdump_nr_ranges(). Signed-off-by: Wandun Chen Tested-by: Meijing Zhao --- arch/arm64/kernel/machine_kexec_file.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/arch/arm64/kernel/machine_kexec_file.c b/arch/arm64/kernel/mac= hine_kexec_file.c index e31fabed378a..1d65320c6ba4 100644 --- a/arch/arm64/kernel/machine_kexec_file.c +++ b/arch/arm64/kernel/machine_kexec_file.c @@ -17,6 +17,7 @@ #include #include #include +#include #include #include #include @@ -51,6 +52,7 @@ static int prepare_elf_headers(void **addr, unsigned long= *sz) nr_ranges =3D 2; /* for exclusion of crashkernel region */ for_each_mem_range(i, &start, &end) nr_ranges++; + nr_ranges +=3D of_reserved_mem_kdump_nr_ranges(); =20 cmem =3D kmalloc_flex(*cmem, ranges, nr_ranges); if (!cmem) @@ -75,6 +77,10 @@ static int prepare_elf_headers(void **addr, unsigned lon= g *sz) goto out; } =20 + ret =3D of_reserved_mem_kdump_exclude(cmem); + if (ret) + goto out; + ret =3D crash_prepare_elf64_headers(cmem, true, addr, sz); =20 out: --=20 2.43.0 From nobody Mon May 25 00:09:41 2026 Received: from mail-pf1-f196.google.com (mail-pf1-f196.google.com [209.85.210.196]) (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 684D93BED18 for ; Wed, 20 May 2026 09:20:13 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.210.196 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1779268815; cv=none; b=IYw3Pu19yBBLeAa+9rbOC8oXmD8vWJmXH78p4pZQKr1ArZxku2OM+8DQWzywzwdYSF7hR0kQAa5STJKCV7TWj4JInJABZBaGg5hjdi9kJdXii9UBcfE+mIsgOo4ZZvbQKzg/d7cYqNqKqW25x+2cBBQxhgBEKHq1XhRAu9hs+3A= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1779268815; c=relaxed/simple; bh=tykyc4F6DdCin3fut0O+1NMZ9opVL5h+xA3WkGtbPlY=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=Kpb2e70v5UQwtBFajHuHyxKpprBgsuoglYnm5x5cuH8WYs0mZAtRHgI2hkYD+0N6r+8DlfT/kKbciGtXCZn0H8tyJyU60plrTMu+2AbVryTkbYBkRJeDjAq5h6B4eJoHMfHGp8bQTddUJpzkWahIsQgHOLULASp4TEjl07wL0JU= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=IRa4+0Bh; arc=none smtp.client-ip=209.85.210.196 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="IRa4+0Bh" Received: by mail-pf1-f196.google.com with SMTP id d2e1a72fcca58-837dfccd950so2132199b3a.0 for ; Wed, 20 May 2026 02:20:13 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1779268813; x=1779873613; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=qTVbMKm3/twtkQTkDovvFEvZk7HsMSG4qE1A6oaHTA8=; b=IRa4+0Bhg051i2FZirMci8CSAsqqxdsUOU1OH8Ij+JJrNcjllHOKaxTKN81K3+IU7j yfT4uM5LSQhFSOxWKW1z6H0mFtpNklXj/26VL5L4u/C2adlVglhLjdBfj/UF4l6FgMC6 U1a5Rryy7BzS3ulyxMBW102L9zcbRPJOcemzWw7r6fTwfE4Zhjh6WblFgJy2rYc1XRLA GDJLs40aiLwWWM7sr1k4DP1E1Vhmei8RW1Hxc+We1SkISPZbmY+MeGwRrrYx3+XW2KpU jr5l2zx3pbihGEqm1cGQ36YC/kdvrLK6kiIZC9HzAaqNbT9Jb7e9ClfzwULTILi5VJE0 Ye5g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1779268813; x=1779873613; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=qTVbMKm3/twtkQTkDovvFEvZk7HsMSG4qE1A6oaHTA8=; b=E/sQDsSRLj+uIFHFzT/WxFokj+JhXgonziVya0MU7Tx8qsHhWJ/pPi88kIwEjcsAOb pX8qGfmTQ47RwVZVycxJOs3GuxeCGYoU9/O1Fxuj6kxlm0oFQdBLRwAFLiQ7ul60GPGy i9lyAuQfatEDiITr5wnRtQZ0nugjuFYHE1zi2ESPfhvhwuMNSSFkfcr96HQo5rtYZX12 B7J4jZCPNSJJrpHnwg9rZfQ0NOU8DJj6CN0qtEAoWUSk7uVvZpuTnCiRloib0X/wt6Iw c73JSUMt/45jSj2aj8Kuyk9Mt24r21p3kKCvq/mv8WmNU9XvfHS81JhTRzNrGx5tbdP/ sXpA== X-Forwarded-Encrypted: i=1; AFNElJ+HuA7oyLa+sg6op7Vpdrac82kkWVV12P8/qDmNottp6HhJn3GDjFsVOVtTQ/4I15zB7DtOa8vIYfXwvtU=@vger.kernel.org X-Gm-Message-State: AOJu0YxF10X4O96GWT++eKJXGhcjjVZpTN8MlC8ewmuRlrAYfo2xaTrm UsVfFMmaikZ9Khup3H8SewN+Q9Wrp4COJW0rEFeR0X0Eyww6lB/DDS6I X-Gm-Gg: Acq92OEYxfTM43Z1cPAet4p75HiXFpxqJpwyBl1BM5HEvQ/nITqUeRWHLKRf35sEh9A 0w7S9jO8d0M8L+8Z6hVnAxCK7GOGlPk+qPAyoCJ14OCwKGMZCwYGnXOGhKq9sNWW9/VoCx3X9LM 3HsCoxYbXY1ysFNoyhybxND+Mz7eaLz9ARYPSOG8DxRLPJGftSvqxn7+DEiYB1CulpZLRiJJ8Cu p77E19JLpATlKsiLKT9CZl9/I40XlVPDIgquJtjT2Wvdge4idKuZUaGO/xRq4wouZSnWwZco5HE e7hP9VMppljaL1bXEXrVROqD8c3OAVoZ6h07QsLu2S3SAnLn3eqLpnLyJ2uIGfrl+4hqjFreQxY GGikem1RVJ7DRqwRwrpH6QYGyZA6iHcRXOTUlEq5y2VKpdvpl1LJMMYZqDEXQNLgi9K7LylAy8z sfkb1HpEZTq3fSPLhwnpvDCuPKOe7Nt+out0etRnT1gzGdC/Bt X-Received: by 2002:a05:6a00:2295:b0:82f:832a:75cd with SMTP id d2e1a72fcca58-83f33d547ccmr23996834b3a.39.1779268812696; Wed, 20 May 2026 02:20:12 -0700 (PDT) Received: from intel.company.local ([210.184.73.204]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-83f63bb986dsm10208967b3a.48.2026.05.20.02.20.02 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 20 May 2026 02:20:12 -0700 (PDT) From: Wandun Chen X-Google-Original-From: Wandun Chen To: linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, loongarch@lists.linux.dev, linux-riscv@lists.infradead.org, devicetree@vger.kernel.org, kexec@lists.infradead.org, iommu@lists.linux.dev, zhaomeijing@lixiang.com Cc: catalin.marinas@arm.com, will@kernel.org, chenhuacai@kernel.org, kernel@xen0n.name, pjw@kernel.org, palmer@dabbelt.com, aou@eecs.berkeley.edu, alex@ghiti.fr, robh@kernel.org, saravanak@kernel.org, akpm@linux-foundation.org, bhe@redhat.com, rppt@kernel.org, pasha.tatashin@soleen.com, pratyush@kernel.org, ruirui.yang@linux.dev, m.szyprowski@samsung.com, robin.murphy@arm.com, leitao@debian.org, kees@kernel.org, coxu@redhat.com, tangyouling@kylinos.cn, songshuaishuai@tinylab.org Subject: [PATCH v2 7/8] riscv: kdump: exclude non-dumpable reserved memory regions from vmcore Date: Wed, 20 May 2026 17:18:43 +0800 Message-ID: <20260520091844.592753-8-chenwandun@lixiang.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260520091844.592753-1-chenwandun@lixiang.com> References: <20260520091844.592753-1-chenwandun@lixiang.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Wandun Chen From: Wandun Chen Apply the same non-dumpable reserved memory filtering to RISC-V kdump as was done for arm64. Use of_reserved_mem_kdump_exclude() to drop flagged regions from the elfcorehdr PT_LOAD segments, and of_reserved_mem_kdump_nr_ranges() to pre-size the crash_mem array. Signed-off-by: Wandun Chen --- arch/riscv/kernel/machine_kexec_file.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/arch/riscv/kernel/machine_kexec_file.c b/arch/riscv/kernel/mac= hine_kexec_file.c index 54e2d9552e93..c359cf714c79 100644 --- a/arch/riscv/kernel/machine_kexec_file.c +++ b/arch/riscv/kernel/machine_kexec_file.c @@ -10,6 +10,7 @@ #include #include #include +#include #include #include #include @@ -63,6 +64,7 @@ static int prepare_elf_headers(void **addr, unsigned long= *sz) =20 nr_ranges =3D 1; /* For exclusion of crashkernel region */ walk_system_ram_res(0, -1, &nr_ranges, get_nr_ram_ranges_callback); + nr_ranges +=3D of_reserved_mem_kdump_nr_ranges(); =20 cmem =3D kmalloc_flex(*cmem, ranges, nr_ranges); if (!cmem) @@ -76,6 +78,8 @@ static int prepare_elf_headers(void **addr, unsigned long= *sz) =20 /* Exclude crashkernel region */ ret =3D crash_exclude_mem_range(cmem, crashk_res.start, crashk_res.end); + if (!ret) + ret =3D of_reserved_mem_kdump_exclude(cmem); if (!ret) ret =3D crash_prepare_elf64_headers(cmem, true, addr, sz); =20 --=20 2.43.0 From nobody Mon May 25 00:09:41 2026 Received: from mail-pg1-f195.google.com (mail-pg1-f195.google.com [209.85.215.195]) (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 BE2D93BED66 for ; Wed, 20 May 2026 09:20:23 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.215.195 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1779268825; cv=none; b=nAdZ4Ervl0k/c6dqKcyy0EeGnBuZhSrAiGjgkDyJbmrMcVlJh8dIEOHgs9Prm4CFbQYOGQvYtZFYFeZNniPgBiKe/V7d9oWYiBTm/cMkcZlSXrkCKXia2ttiGVdIHVNcos1qyVXUl97QwfbFbjbcBxeZvKBNsl/7/iFYFUPGVJg= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1779268825; c=relaxed/simple; bh=vEY3z8jVj8nmsWJisxSq9AhqFt0JmI3xyGszSp/YCcc=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=pzYOGJTA1v1Jvrw/gz00OVfD00DeQR7o/FPL+IZJH3NkNPKCkb3SuQnIFxbE9yksHQ1ODOEUYb6s2qbmdbJuRXRVTqF978sSenUoo7lQU7Wz2SC6DOSoetWDXjpOtr67BRixVE/4HhQlOhrITe0lcpce/bHQLwu5fPvOrb25Lj8= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=gB86MgRU; arc=none smtp.client-ip=209.85.215.195 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="gB86MgRU" Received: by mail-pg1-f195.google.com with SMTP id 41be03b00d2f7-c8027e876fcso1992351a12.1 for ; Wed, 20 May 2026 02:20:23 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1779268823; x=1779873623; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=yF4iEePz0efKjWWczqPvkzIUeB6xqHtDsvairyfmeUg=; b=gB86MgRUGZDnJk5mL1j8e1EvDh2G7QiYct5oeQwXPkWlhqmFblW6yKjupFJG3hFE88 O2TAG4ETkRimdV/Oho3g5FUO/GU6G2aElrjpFtMUg5xttUQYcnBBIlzU1ejSc3BAXz7C I69sAtHxhh/OfM2fTg2yVorsa604UTMd3u4w0hKv8TgfapLrGZIq8fwfE6we5/9joU2A 6oJPKJfZtIO4+HWkgHCZXfjP00MimFBtFbPaIRi5VvWMrb0jHWFgMDwuAxZ4AakmPTKd jX0B+CM6zUnubAPE3tnMngPPowpYswYV9V6Xs+fZ3eaHF6rKTtXKo2mhLuDQhbs372gw 9dng== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1779268823; x=1779873623; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=yF4iEePz0efKjWWczqPvkzIUeB6xqHtDsvairyfmeUg=; b=SKdZvq4W/FpV57YeQa3hp2CvzfNopVXBU40fHVD3cgF57xrsS1LPDe5kQTOnOwltjn YmPKU16xeco/pF9j/gF2xZrOp5m6FWop6P7/KsH6skT6uwHugJPI//gYarfA0tZjWLNj ocL08Jba4BWxkvDuncxu6HButr4Bodh7m75ObaN+W9kqmUYS4pRG3F3IFBk8feNkcbeS oljNmL8+qKDLyw0y45NmFcK8eAmI4fYB+LEtRYX9X2G0zw0PLLXJyi1sasHBXVIBOlpb IBkxWOhRHxOjJnUEemPfB4BycfM15sD0kVoheqkzzmGpzu3crqbnPEc0DTIx05qzwFLx Q/Og== X-Forwarded-Encrypted: i=1; AFNElJ9Yirjke3VVqjs62c/G6S/Ngjt3Zp5yOus93/pbvuNiYAH35qZaYQuZa7g3D3adXeFtxT1YsToKmmv7VJM=@vger.kernel.org X-Gm-Message-State: AOJu0YwmpV/NXzUJ2KBao7FW3ge1Jv+pwnd7pxf9g4GcYA+/aStdXcfo Vm/VRy4NKNPk1kkWG1TA17+IaQErAJR3Q9AktwjnqCbU5JzvmY7LBd8p X-Gm-Gg: Acq92OHyeGIfEsajYTFbdBU7inVYvGbrYZAkJ124XuMrCKYfIBTnLkKeuO/KXbTp4Zd T2peFNzbTAcMQ6ik2/KffgjdNhfx+O5ViijTcdYOduk2GtcezUVJ3TyrlGp+4tMYWzD1Lv6MXl7 Gq9asaIWTl0CZQ4/49tBsgmLv/nWlYpmcTIJjBWvX5ZWm4IbouvdfKw61hMFgwa+4F+I1kBKA9D WFP/qcW1eNwF1vzW7QgiVgPcP7l9OXAL2fd4/isKiHkKBsxggzaeS0TZkMwpogVdV5IT1DQlh05 RP9L9wWv4shbOtcI2B8yDeqzwkiSJgG8JOqN0m7CUqNIVZgNwEkotDqyIXZvuyevq900UrqWbhX DTlkaJN5Ro+pi1hVAuXGEBRvHEYFO5AhgIvJHzE4CR2ODwKHTKBZ5nPJF05fMd+KdB18zjf/EJy hhKO1RaUsN73a8ye2/HB238Fihg6YwbIk1J2nReQ== X-Received: by 2002:a05:6a00:2e9f:b0:82f:6e7:152d with SMTP id d2e1a72fcca58-83f33c391cfmr24600140b3a.21.1779268822961; Wed, 20 May 2026 02:20:22 -0700 (PDT) Received: from intel.company.local ([210.184.73.204]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-83f63bb986dsm10208967b3a.48.2026.05.20.02.20.13 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 20 May 2026 02:20:22 -0700 (PDT) From: Wandun Chen X-Google-Original-From: Wandun Chen To: linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, loongarch@lists.linux.dev, linux-riscv@lists.infradead.org, devicetree@vger.kernel.org, kexec@lists.infradead.org, iommu@lists.linux.dev, zhaomeijing@lixiang.com Cc: catalin.marinas@arm.com, will@kernel.org, chenhuacai@kernel.org, kernel@xen0n.name, pjw@kernel.org, palmer@dabbelt.com, aou@eecs.berkeley.edu, alex@ghiti.fr, robh@kernel.org, saravanak@kernel.org, akpm@linux-foundation.org, bhe@redhat.com, rppt@kernel.org, pasha.tatashin@soleen.com, pratyush@kernel.org, ruirui.yang@linux.dev, m.szyprowski@samsung.com, robin.murphy@arm.com, leitao@debian.org, kees@kernel.org, coxu@redhat.com, tangyouling@kylinos.cn, songshuaishuai@tinylab.org Subject: [PATCH v2 8/8] loongarch: kdump: exclude non-dumpable reserved memory regions from vmcore Date: Wed, 20 May 2026 17:18:44 +0800 Message-ID: <20260520091844.592753-9-chenwandun@lixiang.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260520091844.592753-1-chenwandun@lixiang.com> References: <20260520091844.592753-1-chenwandun@lixiang.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Wandun Chen From: Wandun Chen Apply the same non-dumpable reserved memory filtering to LoongArch kdump as was done for arm64. Use of_reserved_mem_kdump_exclude() to drop flagged regions from the elfcorehdr PT_LOAD segments, and of_reserved_mem_kdump_nr_ranges() to pre-size the crash_mem array. Signed-off-by: Wandun Chen --- arch/loongarch/kernel/machine_kexec_file.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/arch/loongarch/kernel/machine_kexec_file.c b/arch/loongarch/ke= rnel/machine_kexec_file.c index 5584b798ba46..c5cead362d2d 100644 --- a/arch/loongarch/kernel/machine_kexec_file.c +++ b/arch/loongarch/kernel/machine_kexec_file.c @@ -14,6 +14,7 @@ #include #include #include +#include #include #include #include @@ -67,6 +68,7 @@ static int prepare_elf_headers(void **addr, unsigned long= *sz) nr_ranges =3D 2; /* for exclusion of crashkernel region */ for_each_mem_range(i, &start, &end) nr_ranges++; + nr_ranges +=3D of_reserved_mem_kdump_nr_ranges(); =20 cmem =3D kmalloc_flex(*cmem, ranges, nr_ranges); if (!cmem) @@ -91,6 +93,10 @@ static int prepare_elf_headers(void **addr, unsigned lon= g *sz) goto out; } =20 + ret =3D of_reserved_mem_kdump_exclude(cmem); + if (ret < 0) + goto out; + ret =3D crash_prepare_elf64_headers(cmem, true, addr, sz); =20 out: --=20 2.43.0