* [PATCH] liveupdate: kho: Enable KHO by default
@ 2025-11-10 18:07 Pasha Tatashin
2025-11-10 18:34 ` Mike Rapoport
2025-11-14 7:30 ` Mike Rapoport
0 siblings, 2 replies; 7+ messages in thread
From: Pasha Tatashin @ 2025-11-10 18:07 UTC (permalink / raw)
To: akpm, pasha.tatashin, rppt, graf, pratyush, linux-kernel, kexec,
linux-mm
Upcoming LUO requires KHO for its operations, the requirement to place
both KHO=on and liveupdate=on becomes redundant. Set KHO to be enabled
by default.
Signed-off-by: Pasha Tatashin <pasha.tatashin@soleen.com>
---
kernel/liveupdate/kexec_handover.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/kernel/liveupdate/kexec_handover.c b/kernel/liveupdate/kexec_handover.c
index b54ca665e005..568cd9fe9aca 100644
--- a/kernel/liveupdate/kexec_handover.c
+++ b/kernel/liveupdate/kexec_handover.c
@@ -51,7 +51,7 @@ union kho_page_info {
static_assert(sizeof(union kho_page_info) == sizeof(((struct page *)0)->private));
-static bool kho_enable __ro_after_init;
+static bool kho_enable __ro_after_init = true;
bool kho_is_enabled(void)
{
base-commit: ab40c92c74c6b0c611c89516794502b3a3173966
--
2.51.2.1041.gc1ab5b90ca-goog
^ permalink raw reply related [flat|nested] 7+ messages in thread
* Re: [PATCH] liveupdate: kho: Enable KHO by default
2025-11-10 18:07 [PATCH] liveupdate: kho: Enable KHO by default Pasha Tatashin
@ 2025-11-10 18:34 ` Mike Rapoport
2025-11-11 13:03 ` Pratyush Yadav
2025-11-14 7:30 ` Mike Rapoport
1 sibling, 1 reply; 7+ messages in thread
From: Mike Rapoport @ 2025-11-10 18:34 UTC (permalink / raw)
To: Pasha Tatashin; +Cc: akpm, graf, pratyush, linux-kernel, kexec, linux-mm
On Mon, Nov 10, 2025 at 01:07:15PM -0500, Pasha Tatashin wrote:
>
> Subject: [PATCH] liveupdate: kho: Enable KHO by default
No need to put a directory (liveupdate) prefix here. "kho: " is enough.
With that fixed
Reviewed-by: Mike Rapoport (Microsoft) <rppt@kernel.org>
> Upcoming LUO requires KHO for its operations, the requirement to place
> both KHO=on and liveupdate=on becomes redundant. Set KHO to be enabled
> by default.
>
> Signed-off-by: Pasha Tatashin <pasha.tatashin@soleen.com>
> ---
> kernel/liveupdate/kexec_handover.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/kernel/liveupdate/kexec_handover.c b/kernel/liveupdate/kexec_handover.c
> index b54ca665e005..568cd9fe9aca 100644
> --- a/kernel/liveupdate/kexec_handover.c
> +++ b/kernel/liveupdate/kexec_handover.c
> @@ -51,7 +51,7 @@ union kho_page_info {
>
> static_assert(sizeof(union kho_page_info) == sizeof(((struct page *)0)->private));
>
> -static bool kho_enable __ro_after_init;
> +static bool kho_enable __ro_after_init = true;
>
> bool kho_is_enabled(void)
> {
>
> base-commit: ab40c92c74c6b0c611c89516794502b3a3173966
> --
> 2.51.2.1041.gc1ab5b90ca-goog
>
--
Sincerely yours,
Mike.
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH] liveupdate: kho: Enable KHO by default
2025-11-10 18:34 ` Mike Rapoport
@ 2025-11-11 13:03 ` Pratyush Yadav
0 siblings, 0 replies; 7+ messages in thread
From: Pratyush Yadav @ 2025-11-11 13:03 UTC (permalink / raw)
To: Mike Rapoport
Cc: Pasha Tatashin, akpm, graf, pratyush, linux-kernel, kexec,
linux-mm
On Mon, Nov 10 2025, Mike Rapoport wrote:
> On Mon, Nov 10, 2025 at 01:07:15PM -0500, Pasha Tatashin wrote:
>>
>> Subject: [PATCH] liveupdate: kho: Enable KHO by default
>
> No need to put a directory (liveupdate) prefix here. "kho: " is enough.
+1
>
> With that fixed
>
> Reviewed-by: Mike Rapoport (Microsoft) <rppt@kernel.org>
Reviewed-by: Pratyush Yadav <pratyush@kernel.org>
>
>> Upcoming LUO requires KHO for its operations, the requirement to place
>> both KHO=on and liveupdate=on becomes redundant. Set KHO to be enabled
>> by default.
>>
>> Signed-off-by: Pasha Tatashin <pasha.tatashin@soleen.com>
>> ---
>> kernel/liveupdate/kexec_handover.c | 2 +-
>> 1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/kernel/liveupdate/kexec_handover.c b/kernel/liveupdate/kexec_handover.c
>> index b54ca665e005..568cd9fe9aca 100644
>> --- a/kernel/liveupdate/kexec_handover.c
>> +++ b/kernel/liveupdate/kexec_handover.c
>> @@ -51,7 +51,7 @@ union kho_page_info {
>>
>> static_assert(sizeof(union kho_page_info) == sizeof(((struct page *)0)->private));
>>
>> -static bool kho_enable __ro_after_init;
>> +static bool kho_enable __ro_after_init = true;
>>
>> bool kho_is_enabled(void)
>> {
>>
>> base-commit: ab40c92c74c6b0c611c89516794502b3a3173966
>> --
>> 2.51.2.1041.gc1ab5b90ca-goog
>>
--
Regards,
Pratyush Yadav
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH] liveupdate: kho: Enable KHO by default
2025-11-10 18:07 [PATCH] liveupdate: kho: Enable KHO by default Pasha Tatashin
2025-11-10 18:34 ` Mike Rapoport
@ 2025-11-14 7:30 ` Mike Rapoport
2025-11-14 9:01 ` Alexander Graf
2025-11-14 14:13 ` Pasha Tatashin
1 sibling, 2 replies; 7+ messages in thread
From: Mike Rapoport @ 2025-11-14 7:30 UTC (permalink / raw)
To: Pasha Tatashin; +Cc: akpm, graf, pratyush, linux-kernel, kexec, linux-mm
On Mon, Nov 10, 2025 at 01:07:15PM -0500, Pasha Tatashin wrote:
> Upcoming LUO requires KHO for its operations, the requirement to place
> both KHO=on and liveupdate=on becomes redundant. Set KHO to be enabled
> by default.
I though more about this and it seems too much of a change. kho=1 enables
scratch areas and that significantly changes how free pages are distributed
in the free lists.
Let's go with a Kconfig option we discussed of-list:
(this is on top of the current mmotm/mm-nonmm-unstable)
From 823299d80aa4f7c16ef6cfd798a19e1dfe1a91ab Mon Sep 17 00:00:00 2001
From: Pasha Tatashin <pasha.tatashin@soleen.com>
Date: Fri, 14 Nov 2025 09:27:47 +0200
Subject: [PATCH] kho: Allow KHO to be enabled by default
Upcoming LUO requires KHO for its operations, the requirement to place
both KHO=on and liveupdate=on becomes reduntant. Let's allow KHO to be
enabled by default, and CONFIG_LIVEUPDATE can select this CONFIG.
Signed-off-by: Pasha Tatashin <pasha.tatashin@soleen.com>
Signed-off-by: Mike Rapoport (Microsoft) <rppt@kernel.org>
---
kernel/liveupdate/Kconfig | 8 ++++++++
kernel/liveupdate/kexec_handover.c | 2 +-
2 files changed, 9 insertions(+), 1 deletion(-)
diff --git a/kernel/liveupdate/Kconfig b/kernel/liveupdate/Kconfig
index d7344d347f69..25c9a4d7781f 100644
--- a/kernel/liveupdate/Kconfig
+++ b/kernel/liveupdate/Kconfig
@@ -63,4 +63,12 @@ config KEXEC_HANDOVER_DEBUGFS
Also, enables inspecting the KHO fdt trees with the debugfs binary
blobs.
+config KEXEC_HANDOVER_ENABLE_DEFAULT
+ bool "Enable kexec handover by default"
+ depends on KEXEC_HANDOVER
+ help
+ Enable the kexec handover by default. It is equivalent of passing
+ kho=on via kernel parameter, and can be overwritten to off via
+ kho=off.
+
endmenu
diff --git a/kernel/liveupdate/kexec_handover.c b/kernel/liveupdate/kexec_handover.c
index 568cd9fe9aca..23a3df297bb3 100644
--- a/kernel/liveupdate/kexec_handover.c
+++ b/kernel/liveupdate/kexec_handover.c
@@ -51,7 +51,7 @@ union kho_page_info {
static_assert(sizeof(union kho_page_info) == sizeof(((struct page *)0)->private));
-static bool kho_enable __ro_after_init = true;
+static bool kho_enable __ro_after_init = IS_ENABLED(CONFIG_KEXEC_HANDOVER_ENABLE_DEFAULT);
bool kho_is_enabled(void)
{
--
2.50.1
--
Sincerely yours,
Mike.
^ permalink raw reply related [flat|nested] 7+ messages in thread
* Re: [PATCH] liveupdate: kho: Enable KHO by default
2025-11-14 7:30 ` Mike Rapoport
@ 2025-11-14 9:01 ` Alexander Graf
2025-11-14 14:13 ` Pasha Tatashin
1 sibling, 0 replies; 7+ messages in thread
From: Alexander Graf @ 2025-11-14 9:01 UTC (permalink / raw)
To: Mike Rapoport, Pasha Tatashin
Cc: akpm, pratyush, linux-kernel, kexec, linux-mm
On 14.11.25 08:30, Mike Rapoport wrote:
> On Mon, Nov 10, 2025 at 01:07:15PM -0500, Pasha Tatashin wrote:
>> Upcoming LUO requires KHO for its operations, the requirement to place
>> both KHO=on and liveupdate=on becomes redundant. Set KHO to be enabled
>> by default.
> I though more about this and it seems too much of a change. kho=1 enables
> scratch areas and that significantly changes how free pages are distributed
> in the free lists.
>
> Let's go with a Kconfig option we discussed of-list:
> (this is on top of the current mmotm/mm-nonmm-unstable)
>
> From 823299d80aa4f7c16ef6cfd798a19e1dfe1a91ab Mon Sep 17 00:00:00 2001
> From: Pasha Tatashin <pasha.tatashin@soleen.com>
> Date: Fri, 14 Nov 2025 09:27:47 +0200
> Subject: [PATCH] kho: Allow KHO to be enabled by default
>
> Upcoming LUO requires KHO for its operations, the requirement to place
> both KHO=on and liveupdate=on becomes reduntant. Let's allow KHO to be
> enabled by default, and CONFIG_LIVEUPDATE can select this CONFIG.
Looks much better, yes :). You can also imply this option automatically
when LUO=y.
Reviewed-by: Alexander Graf <graf@amazon.com>
Alex
>
> Signed-off-by: Pasha Tatashin <pasha.tatashin@soleen.com>
> Signed-off-by: Mike Rapoport (Microsoft) <rppt@kernel.org>
> ---
> kernel/liveupdate/Kconfig | 8 ++++++++
> kernel/liveupdate/kexec_handover.c | 2 +-
> 2 files changed, 9 insertions(+), 1 deletion(-)
>
> diff --git a/kernel/liveupdate/Kconfig b/kernel/liveupdate/Kconfig
> index d7344d347f69..25c9a4d7781f 100644
> --- a/kernel/liveupdate/Kconfig
> +++ b/kernel/liveupdate/Kconfig
> @@ -63,4 +63,12 @@ config KEXEC_HANDOVER_DEBUGFS
> Also, enables inspecting the KHO fdt trees with the debugfs binary
> blobs.
>
> +config KEXEC_HANDOVER_ENABLE_DEFAULT
> + bool "Enable kexec handover by default"
> + depends on KEXEC_HANDOVER
> + help
> + Enable the kexec handover by default. It is equivalent of passing
> + kho=on via kernel parameter, and can be overwritten to off via
> + kho=off.
> +
> endmenu
> diff --git a/kernel/liveupdate/kexec_handover.c b/kernel/liveupdate/kexec_handover.c
> index 568cd9fe9aca..23a3df297bb3 100644
> --- a/kernel/liveupdate/kexec_handover.c
> +++ b/kernel/liveupdate/kexec_handover.c
> @@ -51,7 +51,7 @@ union kho_page_info {
>
> static_assert(sizeof(union kho_page_info) == sizeof(((struct page *)0)->private));
>
> -static bool kho_enable __ro_after_init = true;
> +static bool kho_enable __ro_after_init = IS_ENABLED(CONFIG_KEXEC_HANDOVER_ENABLE_DEFAULT);
>
> bool kho_is_enabled(void)
> {
> --
> 2.50.1
>
>
>
> --
> Sincerely yours,
> Mike.
Amazon Web Services Development Center Germany GmbH
Tamara-Danz-Str. 13
10243 Berlin
Geschaeftsfuehrung: Christian Schlaeger, Christof Hellmis
Eingetragen am Amtsgericht Charlottenburg unter HRB 257764 B
Sitz: Berlin
Ust-ID: DE 365 538 597
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH] liveupdate: kho: Enable KHO by default
2025-11-14 7:30 ` Mike Rapoport
2025-11-14 9:01 ` Alexander Graf
@ 2025-11-14 14:13 ` Pasha Tatashin
2025-11-15 9:42 ` Mike Rapoport
1 sibling, 1 reply; 7+ messages in thread
From: Pasha Tatashin @ 2025-11-14 14:13 UTC (permalink / raw)
To: Mike Rapoport; +Cc: akpm, graf, pratyush, linux-kernel, kexec, linux-mm
On Fri, Nov 14, 2025 at 2:30 AM Mike Rapoport <rppt@kernel.org> wrote:
>
> On Mon, Nov 10, 2025 at 01:07:15PM -0500, Pasha Tatashin wrote:
> > Upcoming LUO requires KHO for its operations, the requirement to place
> > both KHO=on and liveupdate=on becomes redundant. Set KHO to be enabled
> > by default.
>
> I though more about this and it seems too much of a change. kho=1 enables
> scratch areas and that significantly changes how free pages are distributed
> in the free lists.
>
> Let's go with a Kconfig option we discussed of-list:
> (this is on top of the current mmotm/mm-nonmm-unstable)
I will include this into the KHO simplification series
>
> From 823299d80aa4f7c16ef6cfd798a19e1dfe1a91ab Mon Sep 17 00:00:00 2001
> From: Pasha Tatashin <pasha.tatashin@soleen.com>
> Date: Fri, 14 Nov 2025 09:27:47 +0200
> Subject: [PATCH] kho: Allow KHO to be enabled by default
>
> Upcoming LUO requires KHO for its operations, the requirement to place
> both KHO=on and liveupdate=on becomes reduntant. Let's allow KHO to be
> enabled by default, and CONFIG_LIVEUPDATE can select this CONFIG.
>
> Signed-off-by: Pasha Tatashin <pasha.tatashin@soleen.com>
> Signed-off-by: Mike Rapoport (Microsoft) <rppt@kernel.org>
> ---
> kernel/liveupdate/Kconfig | 8 ++++++++
> kernel/liveupdate/kexec_handover.c | 2 +-
> 2 files changed, 9 insertions(+), 1 deletion(-)
>
> diff --git a/kernel/liveupdate/Kconfig b/kernel/liveupdate/Kconfig
> index d7344d347f69..25c9a4d7781f 100644
> --- a/kernel/liveupdate/Kconfig
> +++ b/kernel/liveupdate/Kconfig
> @@ -63,4 +63,12 @@ config KEXEC_HANDOVER_DEBUGFS
> Also, enables inspecting the KHO fdt trees with the debugfs binary
> blobs.
>
> +config KEXEC_HANDOVER_ENABLE_DEFAULT
> + bool "Enable kexec handover by default"
> + depends on KEXEC_HANDOVER
> + help
> + Enable the kexec handover by default. It is equivalent of passing
> + kho=on via kernel parameter, and can be overwritten to off via
> + kho=off.
> +
> endmenu
> diff --git a/kernel/liveupdate/kexec_handover.c b/kernel/liveupdate/kexec_handover.c
> index 568cd9fe9aca..23a3df297bb3 100644
> --- a/kernel/liveupdate/kexec_handover.c
> +++ b/kernel/liveupdate/kexec_handover.c
> @@ -51,7 +51,7 @@ union kho_page_info {
>
> static_assert(sizeof(union kho_page_info) == sizeof(((struct page *)0)->private));
>
> -static bool kho_enable __ro_after_init = true;
> +static bool kho_enable __ro_after_init = IS_ENABLED(CONFIG_KEXEC_HANDOVER_ENABLE_DEFAULT);
>
> bool kho_is_enabled(void)
> {
> --
> 2.50.1
>
>
>
> --
> Sincerely yours,
> Mike.
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH] liveupdate: kho: Enable KHO by default
2025-11-14 14:13 ` Pasha Tatashin
@ 2025-11-15 9:42 ` Mike Rapoport
0 siblings, 0 replies; 7+ messages in thread
From: Mike Rapoport @ 2025-11-15 9:42 UTC (permalink / raw)
To: Pasha Tatashin; +Cc: akpm, graf, pratyush, linux-kernel, kexec, linux-mm
On Fri, Nov 14, 2025 at 09:13:01AM -0500, Pasha Tatashin wrote:
> On Fri, Nov 14, 2025 at 2:30 AM Mike Rapoport <rppt@kernel.org> wrote:
> >
> > On Mon, Nov 10, 2025 at 01:07:15PM -0500, Pasha Tatashin wrote:
> > > Upcoming LUO requires KHO for its operations, the requirement to place
> > > both KHO=on and liveupdate=on becomes redundant. Set KHO to be enabled
> > > by default.
> >
> > I though more about this and it seems too much of a change. kho=1 enables
> > scratch areas and that significantly changes how free pages are distributed
> > in the free lists.
> >
> > Let's go with a Kconfig option we discussed of-list:
> > (this is on top of the current mmotm/mm-nonmm-unstable)
>
> I will include this into the KHO simplification series
Please add Alex's Reviewed-by as well.
--
Sincerely yours,
Mike.
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2025-11-15 9:42 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-11-10 18:07 [PATCH] liveupdate: kho: Enable KHO by default Pasha Tatashin
2025-11-10 18:34 ` Mike Rapoport
2025-11-11 13:03 ` Pratyush Yadav
2025-11-14 7:30 ` Mike Rapoport
2025-11-14 9:01 ` Alexander Graf
2025-11-14 14:13 ` Pasha Tatashin
2025-11-15 9:42 ` Mike Rapoport
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).