All of lore.kernel.org
 help / color / mirror / Atom feed
From: Baoquan He <bhe@redhat.com>
To: gregkh@linuxfoundation.org
Cc: akpm@linux-foundation.org, chenhuacai@loongson.cn,
	dyoung@redhat.com, jbohac@suse.cz, lihuafei1@huawei.com,
	mingo@kernel.org, stable@vger.kernel.org
Subject: Re: FAILED: patch "[PATCH] crash: use macro to add crashk_res into iomem early for" failed to apply to 6.8-stable tree
Date: Mon, 1 Apr 2024 16:47:57 +0800	[thread overview]
Message-ID: <Zgp0vZityCen4Ngd@MiWiFi-R3L-srv> (raw)
In-Reply-To: <2024033005-graded-dangle-3a21@gregkh>

On 03/30/24 at 10:29am, gregkh@linuxfoundation.org wrote:
> 
> The patch below does not apply to the 6.8-stable tree.
> If someone wants it applied there, or to any other stable or longterm
> tree, then please email the backport, including the original git commit
> id to <stable@vger.kernel.org>.
> 
> To reproduce the conflict and resubmit, you may use the following commands:
> 
> git fetch https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/ linux-6.8.y
> git checkout FETCH_HEAD
> git cherry-pick -x 32fbe5246582af4f611ccccee33fd6e559087252
> # <resolve conflicts, build, test, etc.>
> git commit -s
> git send-email --to '<stable@vger.kernel.org>' --in-reply-to '2024033005-graded-dangle-3a21@gregkh' --subject-prefix 'PATCH 6.8.y' HEAD^..
> 
> Possible dependencies:
> 
> 32fbe5246582 ("crash: use macro to add crashk_res into iomem early for specific arch")
> 85fcde402db1 ("kexec: split crashkernel reservation code out from crash_core.c")

I back ported it to 6.8 stable tree according to above steps of
git operation as below. Please feel free to add it in.

From 04676ac2e7e5c45b54f6b9f78666005aa017fa61 Mon Sep 17 00:00:00 2001
From: Baoquan He <bhe@redhat.com>
Date: Mon, 1 Apr 2024 16:35:31 +0800
Subject: [PATCH] crash: use macro to add crashk_res into iomem early for
 specific arch
Content-type: text/plain

This is back ported to v6.8 stable tree.

commit 32fbe5246582af4f611ccccee33fd6e559087252
Author: Baoquan He <bhe@redhat.com>
Date:   Mon Mar 25 09:50:50 2024 +0800

    crash: use macro to add crashk_res into iomem early for specific arch

    There are regression reports[1][2] that crashkernel region on x86_64 can't
    be added into iomem tree sometime.  This causes the later failure of kdump
    loading.

    This happened after commit 4a693ce65b18 ("kdump: defer the insertion of
    crashkernel resources") was merged.

    Even though, these reported issues are proved to be related to other
    component, they are just exposed after above commmit applied, I still
    would like to keep crashk_res and crashk_low_res being added into iomem
    early as before because the early adding has been always there on x86_64
    and working very well.  For safety of kdump, Let's change it back.

    Here, add a macro HAVE_ARCH_ADD_CRASH_RES_TO_IOMEM_EARLY to limit that
    only ARCH defining the macro can have the early adding
    crashk_res/_low_res into iomem. Then define
    HAVE_ARCH_ADD_CRASH_RES_TO_IOMEM_EARLY on x86 to enable it.

    Note: In reserve_crashkernel_low(), there's a remnant of crashk_low_res
    handling which was mistakenly added back in commit 85fcde402db1 ("kexec:
    split crashkernel reservation code out from crash_core.c").

    [1]
    [PATCH V2] x86/kexec: do not update E820 kexec table for setup_data
    https://lore.kernel.org/all/Zfv8iCL6CT2JqLIC@darkstar.users.ipa.redhat.com/T/#u

    [2]
    Question about Address Range Validation in Crash Kernel Allocation
    https://lore.kernel.org/all/4eeac1f733584855965a2ea62fa4da58@huawei.com/T/#u

    Link: https://lkml.kernel.org/r/ZgDYemRQ2jxjLkq+@MiWiFi-R3L-srv
    Fixes: 4a693ce65b18 ("kdump: defer the insertion of crashkernel resources")
    Signed-off-by: Baoquan He <bhe@redhat.com>
    Cc: Dave Young <dyoung@redhat.com>
    Cc: Huacai Chen <chenhuacai@loongson.cn>
    Cc: Ingo Molnar <mingo@kernel.org>
    Cc: Jiri Bohac <jbohac@suse.cz>
    Cc: Li Huafei <lihuafei1@huawei.com>
    Cc: <stable@vger.kernel.org>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>

Signed-off-by: Baoquan He <bhe@redhat.com>
---
 arch/x86/include/asm/crash_core.h | 2 ++
 kernel/crash_core.c               | 8 ++++++++
 2 files changed, 10 insertions(+)

diff --git a/arch/x86/include/asm/crash_core.h b/arch/x86/include/asm/crash_core.h
index 76af98f4e801..041020da8d56 100644
--- a/arch/x86/include/asm/crash_core.h
+++ b/arch/x86/include/asm/crash_core.h
@@ -39,4 +39,6 @@ static inline unsigned long crash_low_size_default(void)
 #endif
 }
 
+#define HAVE_ARCH_ADD_CRASH_RES_TO_IOMEM_EARLY
+
 #endif /* _X86_CRASH_CORE_H */
diff --git a/kernel/crash_core.c b/kernel/crash_core.c
index 75cd6a736d03..40bd908e0a81 100644
--- a/kernel/crash_core.c
+++ b/kernel/crash_core.c
@@ -376,6 +376,9 @@ static int __init reserve_crashkernel_low(unsigned long long low_size)
 
 	crashk_low_res.start = low_base;
 	crashk_low_res.end   = low_base + low_size - 1;
+#ifdef HAVE_ARCH_ADD_CRASH_RES_TO_IOMEM_EARLY
+	insert_resource(&iomem_resource, &crashk_low_res);
+#endif
 #endif
 	return 0;
 }
@@ -457,8 +460,12 @@ void __init reserve_crashkernel_generic(char *cmdline,
 
 	crashk_res.start = crash_base;
 	crashk_res.end = crash_base + crash_size - 1;
+#ifdef HAVE_ARCH_ADD_CRASH_RES_TO_IOMEM_EARLY
+	insert_resource(&iomem_resource, &crashk_res);
+#endif
 }
 
+#ifndef HAVE_ARCH_ADD_CRASH_RES_TO_IOMEM_EARLY
 static __init int insert_crashkernel_resources(void)
 {
 	if (crashk_res.start < crashk_res.end)
@@ -471,6 +478,7 @@ static __init int insert_crashkernel_resources(void)
 }
 early_initcall(insert_crashkernel_resources);
 #endif
+#endif
 
 int crash_prepare_elf64_headers(struct crash_mem *mem, int need_kernel_map,
 			  void **addr, unsigned long *sz)
-- 
2.41.0


  reply	other threads:[~2024-04-01  8:48 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-03-30  9:29 FAILED: patch "[PATCH] crash: use macro to add crashk_res into iomem early for" failed to apply to 6.8-stable tree gregkh
2024-04-01  8:47 ` Baoquan He [this message]
2024-04-01 10:45   ` Greg KH

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=Zgp0vZityCen4Ngd@MiWiFi-R3L-srv \
    --to=bhe@redhat.com \
    --cc=akpm@linux-foundation.org \
    --cc=chenhuacai@loongson.cn \
    --cc=dyoung@redhat.com \
    --cc=gregkh@linuxfoundation.org \
    --cc=jbohac@suse.cz \
    --cc=lihuafei1@huawei.com \
    --cc=mingo@kernel.org \
    --cc=stable@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.