[PATCH] ppc/pnv: Fix uninitialized MpiplProcDumpArea struct

Shivang Upadhyay posted 1 patch 2 weeks, 3 days ago
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20260508142029.624039-1-shivangu@linux.ibm.com
Maintainers: Nicholas Piggin <npiggin@gmail.com>, Aditya Gupta <adityag@linux.ibm.com>, Glenn Miles <milesg@linux.ibm.com>
hw/ppc/pnv.c | 16 ++++------------
1 file changed, 4 insertions(+), 12 deletions(-)
[PATCH] ppc/pnv: Fix uninitialized MpiplProcDumpArea struct
Posted by Shivang Upadhyay 2 weeks, 3 days ago
Fix Coverity CID 1658041 by using designated initializers to prevent
uninitialized memory from being written to guest.

Cc: Aditya Gupta <adityag@linux.ibm.com>
Cc: Harsh Prateek Bora <harshpb@linux.ibm.com>
Reported-by: Peter Maydell <peter.maydell@linaro.org>
Suggested-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Shivang Upadhyay <shivangu@linux.ibm.com>"
---
 hw/ppc/pnv.c | 16 ++++------------
 1 file changed, 4 insertions(+), 12 deletions(-)

diff --git a/hw/ppc/pnv.c b/hw/ppc/pnv.c
index 9ed918fa6a..c0afef8197 100644
--- a/hw/ppc/pnv.c
+++ b/hw/ppc/pnv.c
@@ -838,18 +838,10 @@ static void pnv_reset(MachineState *machine, ResetType type)
          * crash
          */
 
-        MpiplProcDumpArea proc_area;
-
-        proc_area.version = PROC_DUMP_AREA_VERSION_P9;
-        proc_area.thread_size = cpu_to_be32(sizeof(MpiplPreservedCPUState));
-
-        /* These are to be allocated & assigned by the firmware */
-        proc_area.alloc_addr = 0;
-        proc_area.alloc_size = 0;
-
-        /* These get assigned after crash, when QEMU preserves the registers */
-        proc_area.dest_addr = 0;
-        proc_area.act_size = 0;
+        MpiplProcDumpArea proc_area = {
+            .version = PROC_DUMP_AREA_VERSION_P9,
+            .thread_size = cpu_to_be32(sizeof(MpiplPreservedCPUState)),
+        };
 
         cpu_physical_memory_write(PROC_DUMP_AREA_OFF, &proc_area,
                 sizeof(proc_area));
-- 
2.53.0
Re: [PATCH] ppc/pnv: Fix uninitialized MpiplProcDumpArea struct
Posted by Aditya Gupta 2 weeks, 3 days ago
On 08/05/26 19:50, Shivang Upadhyay wrote:

> Fix Coverity CID 1658041 by using designated initializers to prevent
> uninitialized memory from being written to guest.
>
> Cc: Aditya Gupta <adityag@linux.ibm.com>
> Cc: Harsh Prateek Bora <harshpb@linux.ibm.com>
> Reported-by: Peter Maydell <peter.maydell@linaro.org>
> Suggested-by: Peter Maydell <peter.maydell@linaro.org>
> Signed-off-by: Shivang Upadhyay <shivangu@linux.ibm.com>"
> ---
>   hw/ppc/pnv.c | 16 ++++------------
>   1 file changed, 4 insertions(+), 12 deletions(-)
>
> diff --git a/hw/ppc/pnv.c b/hw/ppc/pnv.c
> index 9ed918fa6a..c0afef8197 100644
> --- a/hw/ppc/pnv.c
> +++ b/hw/ppc/pnv.c
> @@ -838,18 +838,10 @@ static void pnv_reset(MachineState *machine, ResetType type)
>            * crash
>            */
>   
> -        MpiplProcDumpArea proc_area;
> -
> -        proc_area.version = PROC_DUMP_AREA_VERSION_P9;
> -        proc_area.thread_size = cpu_to_be32(sizeof(MpiplPreservedCPUState));
> -
> -        /* These are to be allocated & assigned by the firmware */
> -        proc_area.alloc_addr = 0;
> -        proc_area.alloc_size = 0;
> -
> -        /* These get assigned after crash, when QEMU preserves the registers */
> -        proc_area.dest_addr = 0;
> -        proc_area.act_size = 0;
> +        MpiplProcDumpArea proc_area = {
> +            .version = PROC_DUMP_AREA_VERSION_P9,
> +            .thread_size = cpu_to_be32(sizeof(MpiplPreservedCPUState)),
> +        };
>   

Thanks for the fix, shivang.

Reviewed-by: Aditya Gupta <adityag@linux.ibm.com>


- Aditya G
Re: [PATCH] ppc/pnv: Fix uninitialized MpiplProcDumpArea struct
Posted by Shivang Upadhyay 2 weeks, 3 days ago
On Fri, 2026-05-08 at 21:07 +0530, Aditya Gupta wrote:
> Reviewed-by: Aditya Gupta <adityag@linux.ibm.com>
Thanks Aditya