diff mbox series

spapr: Migrate ail-mode-3 spapr cap

Message ID 20240506115607.13405-1-npiggin@gmail.com
State New
Headers show
Series spapr: Migrate ail-mode-3 spapr cap | expand

Commit Message

Nicholas Piggin May 6, 2024, 11:56 a.m. UTC
This cap did not add the migration code when it was introduced. This
results in migration failure when changing the default using the
command line.

Cc: qemu-stable@nongnu.org
Fixes: ccc5a4c5e10 ("spapr: Add SPAPR_CAP_AIL_MODE_3 for AIL mode 3 support for H_SET_MODE hcall")
Signed-off-by: Nicholas Piggin <npiggin@gmail.com>
---
 include/hw/ppc/spapr.h | 1 +
 hw/ppc/spapr.c         | 1 +
 hw/ppc/spapr_caps.c    | 1 +
 3 files changed, 3 insertions(+)

Comments

Harsh Prateek Bora May 7, 2024, 4:12 a.m. UTC | #1
On 5/6/24 17:26, Nicholas Piggin wrote:
> This cap did not add the migration code when it was introduced. This
> results in migration failure when changing the default using the
> command line.
> 
> Cc: qemu-stable@nongnu.org
> Fixes: ccc5a4c5e10 ("spapr: Add SPAPR_CAP_AIL_MODE_3 for AIL mode 3 support for H_SET_MODE hcall")
> Signed-off-by: Nicholas Piggin <npiggin@gmail.com>

Reviewed-by: Harsh Prateek Bora <harshpb@linux.ibm.com>

> ---
>   include/hw/ppc/spapr.h | 1 +
>   hw/ppc/spapr.c         | 1 +
>   hw/ppc/spapr_caps.c    | 1 +
>   3 files changed, 3 insertions(+)
> 
> diff --git a/include/hw/ppc/spapr.h b/include/hw/ppc/spapr.h
> index 4aaf23d28f..f6de3e9972 100644
> --- a/include/hw/ppc/spapr.h
> +++ b/include/hw/ppc/spapr.h
> @@ -1004,6 +1004,7 @@ extern const VMStateDescription vmstate_spapr_cap_large_decr;
>   extern const VMStateDescription vmstate_spapr_cap_ccf_assist;
>   extern const VMStateDescription vmstate_spapr_cap_fwnmi;
>   extern const VMStateDescription vmstate_spapr_cap_rpt_invalidate;
> +extern const VMStateDescription vmstate_spapr_cap_ail_mode_3;
>   extern const VMStateDescription vmstate_spapr_wdt;
>   
>   static inline uint8_t spapr_get_cap(SpaprMachineState *spapr, int cap)
> diff --git a/hw/ppc/spapr.c b/hw/ppc/spapr.c
> index d2d1e310a3..065f58ec93 100644
> --- a/hw/ppc/spapr.c
> +++ b/hw/ppc/spapr.c
> @@ -2169,6 +2169,7 @@ static const VMStateDescription vmstate_spapr = {
>           &vmstate_spapr_cap_fwnmi,
>           &vmstate_spapr_fwnmi,
>           &vmstate_spapr_cap_rpt_invalidate,
> +        &vmstate_spapr_cap_ail_mode_3,
>           &vmstate_spapr_cap_nested_papr,
>           NULL
>       }
> diff --git a/hw/ppc/spapr_caps.c b/hw/ppc/spapr_caps.c
> index 0a15415a1d..2f74923560 100644
> --- a/hw/ppc/spapr_caps.c
> +++ b/hw/ppc/spapr_caps.c
> @@ -974,6 +974,7 @@ SPAPR_CAP_MIG_STATE(large_decr, SPAPR_CAP_LARGE_DECREMENTER);
>   SPAPR_CAP_MIG_STATE(ccf_assist, SPAPR_CAP_CCF_ASSIST);
>   SPAPR_CAP_MIG_STATE(fwnmi, SPAPR_CAP_FWNMI);
>   SPAPR_CAP_MIG_STATE(rpt_invalidate, SPAPR_CAP_RPT_INVALIDATE);
> +SPAPR_CAP_MIG_STATE(ail_mode_3, SPAPR_CAP_AIL_MODE_3);
>   
>   void spapr_caps_init(SpaprMachineState *spapr)
>   {
Philippe Mathieu-Daudé May 7, 2024, 7:54 a.m. UTC | #2
On 6/5/24 13:56, Nicholas Piggin wrote:
> This cap did not add the migration code when it was introduced. This
> results in migration failure when changing the default using the
> command line.
> 
> Cc: qemu-stable@nongnu.org
> Fixes: ccc5a4c5e10 ("spapr: Add SPAPR_CAP_AIL_MODE_3 for AIL mode 3 support for H_SET_MODE hcall")
> Signed-off-by: Nicholas Piggin <npiggin@gmail.com>
> ---
>   include/hw/ppc/spapr.h | 1 +
>   hw/ppc/spapr.c         | 1 +
>   hw/ppc/spapr_caps.c    | 1 +
>   3 files changed, 3 insertions(+)

Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Michael Tokarev June 6, 2024, 11:26 a.m. UTC | #3
06.05.2024 14:56, Nicholas Piggin wrote:
> This cap did not add the migration code when it was introduced. This
> results in migration failure when changing the default using the
> command line.
> 
> Cc: qemu-stable@nongnu.org
> Fixes: ccc5a4c5e10 ("spapr: Add SPAPR_CAP_AIL_MODE_3 for AIL mode 3 support for H_SET_MODE hcall")
> Signed-off-by: Nicholas Piggin <npiggin@gmail.com>
> ---
>   include/hw/ppc/spapr.h | 1 +
>   hw/ppc/spapr.c         | 1 +
>   hw/ppc/spapr_caps.c    | 1 +
>   3 files changed, 3 insertions(+)

Hi!

Has this change been forgotten?  It's aimed at -stable, so must be
fixing a real issue.

Thanks,

/mjt
Michael Tokarev July 1, 2024, 7:10 a.m. UTC | #4
06.06.2024 14:26, Michael Tokarev wrote:
> 06.05.2024 14:56, Nicholas Piggin wrote:
>> This cap did not add the migration code when it was introduced. This
>> results in migration failure when changing the default using the
>> command line.
>>
>> Cc: qemu-stable@nongnu.org
>> Fixes: ccc5a4c5e10 ("spapr: Add SPAPR_CAP_AIL_MODE_3 for AIL mode 3 support for H_SET_MODE hcall")
>> Signed-off-by: Nicholas Piggin <npiggin@gmail.com>
>> ---
>>   include/hw/ppc/spapr.h | 1 +
>>   hw/ppc/spapr.c         | 1 +
>>   hw/ppc/spapr_caps.c    | 1 +
>>   3 files changed, 3 insertions(+)
> 
> Hi!
> 
> Has this change been forgotten?  It's aimed at -stable, so must be
> fixing a real issue.

Ping #2 ? :)

/mjt
Nicholas Piggin July 4, 2024, 11:08 a.m. UTC | #5
On Mon Jul 1, 2024 at 5:10 PM AEST, Michael Tokarev wrote:
> 06.06.2024 14:26, Michael Tokarev wrote:
> > 06.05.2024 14:56, Nicholas Piggin wrote:
> >> This cap did not add the migration code when it was introduced. This
> >> results in migration failure when changing the default using the
> >> command line.
> >>
> >> Cc: qemu-stable@nongnu.org
> >> Fixes: ccc5a4c5e10 ("spapr: Add SPAPR_CAP_AIL_MODE_3 for AIL mode 3 support for H_SET_MODE hcall")
> >> Signed-off-by: Nicholas Piggin <npiggin@gmail.com>
> >> ---
> >>   include/hw/ppc/spapr.h | 1 +
> >>   hw/ppc/spapr.c         | 1 +
> >>   hw/ppc/spapr_caps.c    | 1 +
> >>   3 files changed, 3 insertions(+)
> > 
> > Hi!
> > 
> > Has this change been forgotten?  It's aimed at -stable, so must be
> > fixing a real issue.
>
> Ping #2 ? :)

Ah sorry, I meant to deal with this before. But yes I did forget it in
the last PR and it does fix a migration issue. Thanks for the reminder
of it.

I'll send it in  soon.

Thanks,
Nick
diff mbox series

Patch

diff --git a/include/hw/ppc/spapr.h b/include/hw/ppc/spapr.h
index 4aaf23d28f..f6de3e9972 100644
--- a/include/hw/ppc/spapr.h
+++ b/include/hw/ppc/spapr.h
@@ -1004,6 +1004,7 @@  extern const VMStateDescription vmstate_spapr_cap_large_decr;
 extern const VMStateDescription vmstate_spapr_cap_ccf_assist;
 extern const VMStateDescription vmstate_spapr_cap_fwnmi;
 extern const VMStateDescription vmstate_spapr_cap_rpt_invalidate;
+extern const VMStateDescription vmstate_spapr_cap_ail_mode_3;
 extern const VMStateDescription vmstate_spapr_wdt;
 
 static inline uint8_t spapr_get_cap(SpaprMachineState *spapr, int cap)
diff --git a/hw/ppc/spapr.c b/hw/ppc/spapr.c
index d2d1e310a3..065f58ec93 100644
--- a/hw/ppc/spapr.c
+++ b/hw/ppc/spapr.c
@@ -2169,6 +2169,7 @@  static const VMStateDescription vmstate_spapr = {
         &vmstate_spapr_cap_fwnmi,
         &vmstate_spapr_fwnmi,
         &vmstate_spapr_cap_rpt_invalidate,
+        &vmstate_spapr_cap_ail_mode_3,
         &vmstate_spapr_cap_nested_papr,
         NULL
     }
diff --git a/hw/ppc/spapr_caps.c b/hw/ppc/spapr_caps.c
index 0a15415a1d..2f74923560 100644
--- a/hw/ppc/spapr_caps.c
+++ b/hw/ppc/spapr_caps.c
@@ -974,6 +974,7 @@  SPAPR_CAP_MIG_STATE(large_decr, SPAPR_CAP_LARGE_DECREMENTER);
 SPAPR_CAP_MIG_STATE(ccf_assist, SPAPR_CAP_CCF_ASSIST);
 SPAPR_CAP_MIG_STATE(fwnmi, SPAPR_CAP_FWNMI);
 SPAPR_CAP_MIG_STATE(rpt_invalidate, SPAPR_CAP_RPT_INVALIDATE);
+SPAPR_CAP_MIG_STATE(ail_mode_3, SPAPR_CAP_AIL_MODE_3);
 
 void spapr_caps_init(SpaprMachineState *spapr)
 {