mbox series

[0/2] hw/nvme: fix hibernation-based migration

Message ID 20240310-fix-msix-exclusive-bar-v1-0-4483205ae22e@samsung.com
Headers show
Series hw/nvme: fix hibernation-based migration | expand

Message

Klaus Jensen March 10, 2024, 11:07 a.m. UTC
Julien Grall, in #2184, reported that hibernation-based migration with
hw/nvme is broken when suspending on a pre 6.0 QEMU and resuming on a
more recent one. This is because the BAR layout was changed in 6.0.

Fix this by adding a machine compatibility parameter that restores the
old behavior.

Signed-off-by: Klaus Jensen <k.jensen@samsung.com>
---
Klaus Jensen (2):
      hw/nvme: generalize the mbar size helper
      hw/nvme: add machine compatibility parameter to enable msix exclusive bar

 hw/core/machine.c |  1 +
 hw/nvme/ctrl.c    | 73 ++++++++++++++++++++++++++++++++++++-------------------
 hw/nvme/nvme.h    |  1 +
 3 files changed, 50 insertions(+), 25 deletions(-)
---
base-commit: f901bf11b3ddf852e591593b09b8aa7a177f9a0b
change-id: 20240310-fix-msix-exclusive-bar-d65564414a2c

Best regards,

Comments

Klaus Jensen March 10, 2024, 11:12 a.m. UTC | #1
On Mar 10 12:07, Klaus Jensen wrote:
> Julien Grall, in #2184, reported that hibernation-based migration with
> hw/nvme is broken when suspending on a pre 6.0 QEMU and resuming on a
> more recent one. This is because the BAR layout was changed in 6.0.
> 
> Fix this by adding a machine compatibility parameter that restores the
> old behavior.
> 
> Signed-off-by: Klaus Jensen <k.jensen@samsung.com>
> ---
> Klaus Jensen (2):
>       hw/nvme: generalize the mbar size helper
>       hw/nvme: add machine compatibility parameter to enable msix exclusive bar
> 
>  hw/core/machine.c |  1 +
>  hw/nvme/ctrl.c    | 73 ++++++++++++++++++++++++++++++++++++-------------------
>  hw/nvme/nvme.h    |  1 +
>  3 files changed, 50 insertions(+), 25 deletions(-)
> ---
> base-commit: f901bf11b3ddf852e591593b09b8aa7a177f9a0b
> change-id: 20240310-fix-msix-exclusive-bar-d65564414a2c
> 
> Best regards,
> -- 
> Klaus Jensen <k.jensen@samsung.com>
> 

Whoops, forgot Fixes: and Resolves: tags.

Will add that on the pull.
Jesper Wendel Devantier March 11, 2024, 11:15 a.m. UTC | #2
On Sun, Mar 10, 2024 at 12:07:24PM +0100, Klaus Jensen wrote:
> Julien Grall, in #2184, reported that hibernation-based migration with
> hw/nvme is broken when suspending on a pre 6.0 QEMU and resuming on a
> more recent one. This is because the BAR layout was changed in 6.0.
> 
> Fix this by adding a machine compatibility parameter that restores the
> old behavior.
> 
> Signed-off-by: Klaus Jensen <k.jensen@samsung.com>
> ---
> Klaus Jensen (2):
>       hw/nvme: generalize the mbar size helper
>       hw/nvme: add machine compatibility parameter to enable msix exclusive bar
> 
>  hw/core/machine.c |  1 +
>  hw/nvme/ctrl.c    | 73 ++++++++++++++++++++++++++++++++++++-------------------
>  hw/nvme/nvme.h    |  1 +
>  3 files changed, 50 insertions(+), 25 deletions(-)
> ---
> base-commit: f901bf11b3ddf852e591593b09b8aa7a177f9a0b
> change-id: 20240310-fix-msix-exclusive-bar-d65564414a2c
> 
> Best regards,
> -- 
> Klaus Jensen <k.jensen@samsung.com>
> 
> 

Reviewed-by: Jesper Wendel Devantier <foss@defmacro.it>