* [PATCH v2 0/2] ppc: Fixes for fadump feature @ 2025-10-28 8:05 Shivang Upadhyay 2025-10-28 8:05 ` [PATCH v2 1/2] hw/ppc: Fix missing return on allocation failure Shivang Upadhyay 2025-10-28 8:05 ` [PATCH v2 2/2] hw/ppc: Fix memory leak in get_cpu_state_data() Shivang Upadhyay 0 siblings, 2 replies; 13+ messages in thread From: Shivang Upadhyay @ 2025-10-28 8:05 UTC (permalink / raw) To: peter.maydell; +Cc: adityag, harshpb, qemu-devel, shivangu, sourabhjain, philmd Hi, This patch series fixes the coverity issues on the Fadump feature patch series by Aditya [1]. [1] https://lore.kernel.org/qemu-devel/20251021134823.1861675-1-adityag@linux.ibm.com/ Changelog ========= v2: + addressed review comments from Philippe Shivang Upadhyay (2): hw/ppc: Fix missing return on allocation failure hw/ppc: Fix memory leak in get_cpu_state_data() hw/ppc/spapr_fadump.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) -- 2.51.0 ^ permalink raw reply [flat|nested] 13+ messages in thread
* [PATCH v2 1/2] hw/ppc: Fix missing return on allocation failure 2025-10-28 8:05 [PATCH v2 0/2] ppc: Fixes for fadump feature Shivang Upadhyay @ 2025-10-28 8:05 ` Shivang Upadhyay 2025-10-28 8:35 ` Philippe Mathieu-Daudé 2025-10-28 8:05 ` [PATCH v2 2/2] hw/ppc: Fix memory leak in get_cpu_state_data() Shivang Upadhyay 1 sibling, 1 reply; 13+ messages in thread From: Shivang Upadhyay @ 2025-10-28 8:05 UTC (permalink / raw) To: peter.maydell; +Cc: adityag, harshpb, qemu-devel, shivangu, sourabhjain, philmd Fixes coverity (CID 1642026) Cc: Aditya Gupta <adityag@linux.ibm.com> Cc: Harsh Prateek Bora <harshpb@linux.ibm.com> Link: https://lore.kernel.org/qemu-devel/CAFEAcA-SPmsnU1wzsWxBcFC=ZM_DDhPEg1N4iX9Q4bL1xOnwBg@mail.gmail.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/spapr_fadump.c | 1 + 1 file changed, 1 insertion(+) diff --git a/hw/ppc/spapr_fadump.c b/hw/ppc/spapr_fadump.c index fa3aeac94c..883a60cdcf 100644 --- a/hw/ppc/spapr_fadump.c +++ b/hw/ppc/spapr_fadump.c @@ -234,6 +234,7 @@ static bool do_preserve_region(FadumpSection *region) qemu_log_mask(LOG_GUEST_ERROR, "FADump: Failed allocating memory (size: %zu) for copying" " reserved memory regions\n", FADUMP_CHUNK_SIZE); + return false; } num_chunks = ceil((src_len * 1.0f) / FADUMP_CHUNK_SIZE); -- 2.51.0 ^ permalink raw reply related [flat|nested] 13+ messages in thread
* Re: [PATCH v2 1/2] hw/ppc: Fix missing return on allocation failure 2025-10-28 8:05 ` [PATCH v2 1/2] hw/ppc: Fix missing return on allocation failure Shivang Upadhyay @ 2025-10-28 8:35 ` Philippe Mathieu-Daudé 2025-10-28 10:24 ` Shivang Upadhyay 0 siblings, 1 reply; 13+ messages in thread From: Philippe Mathieu-Daudé @ 2025-10-28 8:35 UTC (permalink / raw) To: Shivang Upadhyay, peter.maydell; +Cc: adityag, harshpb, qemu-devel, sourabhjain On 28/10/25 09:05, Shivang Upadhyay wrote: > Fixes coverity (CID 1642026) > > Cc: Aditya Gupta <adityag@linux.ibm.com> > Cc: Harsh Prateek Bora <harshpb@linux.ibm.com> > Link: https://lore.kernel.org/qemu-devel/CAFEAcA-SPmsnU1wzsWxBcFC=ZM_DDhPEg1N4iX9Q4bL1xOnwBg@mail.gmail.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/spapr_fadump.c | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/hw/ppc/spapr_fadump.c b/hw/ppc/spapr_fadump.c > index fa3aeac94c..883a60cdcf 100644 > --- a/hw/ppc/spapr_fadump.c > +++ b/hw/ppc/spapr_fadump.c > @@ -234,6 +234,7 @@ static bool do_preserve_region(FadumpSection *region) > qemu_log_mask(LOG_GUEST_ERROR, FWIW host heap exhaustion is not really a *guest* error, because the guest can not control it. > "FADump: Failed allocating memory (size: %zu) for copying" > " reserved memory regions\n", FADUMP_CHUNK_SIZE); > + return false; > } > > num_chunks = ceil((src_len * 1.0f) / FADUMP_CHUNK_SIZE); ^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [PATCH v2 1/2] hw/ppc: Fix missing return on allocation failure 2025-10-28 8:35 ` Philippe Mathieu-Daudé @ 2025-10-28 10:24 ` Shivang Upadhyay 2025-10-30 8:05 ` Harsh Prateek Bora 0 siblings, 1 reply; 13+ messages in thread From: Shivang Upadhyay @ 2025-10-28 10:24 UTC (permalink / raw) To: Philippe Mathieu-Daudé Cc: peter.maydell, adityag, harshpb, qemu-devel, sourabhjain On Tue, Oct 28, 2025 at 09:35:40AM +0100, Philippe Mathieu-Daudé wrote: > On 28/10/25 09:05, Shivang Upadhyay wrote: > > Fixes coverity (CID 1642026) > > > > Cc: Aditya Gupta <adityag@linux.ibm.com> > > Cc: Harsh Prateek Bora <harshpb@linux.ibm.com> > > Link: https://lore.kernel.org/qemu-devel/CAFEAcA-SPmsnU1wzsWxBcFC=ZM_DDhPEg1N4iX9Q4bL1xOnwBg@mail.gmail.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/spapr_fadump.c | 1 + > > 1 file changed, 1 insertion(+) > > > > diff --git a/hw/ppc/spapr_fadump.c b/hw/ppc/spapr_fadump.c > > index fa3aeac94c..883a60cdcf 100644 > > --- a/hw/ppc/spapr_fadump.c > > +++ b/hw/ppc/spapr_fadump.c > > @@ -234,6 +234,7 @@ static bool do_preserve_region(FadumpSection *region) > > qemu_log_mask(LOG_GUEST_ERROR, > > FWIW host heap exhaustion is not really a *guest* error, because the > guest can not control it. Hi, Philippe Thanks for the review. There are following log level defined in log.h .... #define CPU_LOG_TB_OUT_ASM (1u << 0) #define CPU_LOG_TB_IN_ASM (1u << 1) #define CPU_LOG_TB_OP (1u << 2) #define CPU_LOG_TB_OP_OPT (1u << 3) #define CPU_LOG_INT (1u << 4) #define CPU_LOG_EXEC (1u << 5) #define CPU_LOG_PCALL (1u << 6) #define CPU_LOG_TB_CPU (1u << 8) #define CPU_LOG_RESET (1u << 9) #define LOG_UNIMP (1u << 10) #define LOG_GUEST_ERROR (1u << 11) #define CPU_LOG_MMU (1u << 12) #define CPU_LOG_TB_NOCHAIN (1u << 13) #define CPU_LOG_PAGE (1u << 14) /* LOG_TRACE (1 << 15) is defined in log-for-trace.h */ #define CPU_LOG_TB_OP_IND (1u << 16) #define CPU_LOG_TB_FPU (1u << 17) #define CPU_LOG_PLUGIN (1u << 18) /* LOG_STRACE is used for user-mode strace logging. */ #define LOG_STRACE (1u << 19) #define LOG_PER_THREAD (1u << 20) #define CPU_LOG_TB_VPU (1u << 21) #define LOG_TB_OP_PLUGIN (1u << 22) #define LOG_INVALID_MEM (1u << 23) .... Which one do you recommend we use? or May we introduce a `LOG_HOST_ERROR`, if that's more appropriate. Thanks ~Shivang. > > > "FADump: Failed allocating memory (size: %zu) for copying" > > " reserved memory regions\n", FADUMP_CHUNK_SIZE); > > + return false; > > } > > num_chunks = ceil((src_len * 1.0f) / FADUMP_CHUNK_SIZE); > ^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [PATCH v2 1/2] hw/ppc: Fix missing return on allocation failure 2025-10-28 10:24 ` Shivang Upadhyay @ 2025-10-30 8:05 ` Harsh Prateek Bora 2025-10-30 8:39 ` Shivang Upadhyay 2025-10-30 11:09 ` BALATON Zoltan 0 siblings, 2 replies; 13+ messages in thread From: Harsh Prateek Bora @ 2025-10-30 8:05 UTC (permalink / raw) To: Shivang Upadhyay, Philippe Mathieu-Daudé Cc: peter.maydell, adityag, qemu-devel, sourabhjain On 10/28/25 15:54, Shivang Upadhyay wrote: > On Tue, Oct 28, 2025 at 09:35:40AM +0100, Philippe Mathieu-Daudé wrote: >> On 28/10/25 09:05, Shivang Upadhyay wrote: >>> Fixes coverity (CID 1642026) >>> >>> Cc: Aditya Gupta <adityag@linux.ibm.com> >>> Cc: Harsh Prateek Bora <harshpb@linux.ibm.com> >>> Link: https://lore.kernel.org/qemu-devel/CAFEAcA-SPmsnU1wzsWxBcFC=ZM_DDhPEg1N4iX9Q4bL1xOnwBg@mail.gmail.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/spapr_fadump.c | 1 + >>> 1 file changed, 1 insertion(+) >>> >>> diff --git a/hw/ppc/spapr_fadump.c b/hw/ppc/spapr_fadump.c >>> index fa3aeac94c..883a60cdcf 100644 >>> --- a/hw/ppc/spapr_fadump.c >>> +++ b/hw/ppc/spapr_fadump.c >>> @@ -234,6 +234,7 @@ static bool do_preserve_region(FadumpSection *region) >>> qemu_log_mask(LOG_GUEST_ERROR, >> >> FWIW host heap exhaustion is not really a *guest* error, because the >> guest can not control it. > Hi, Philippe > > > Thanks for the review. There are following log level defined in log.h > > .... > > #define CPU_LOG_TB_OUT_ASM (1u << 0) > #define CPU_LOG_TB_IN_ASM (1u << 1) > #define CPU_LOG_TB_OP (1u << 2) > #define CPU_LOG_TB_OP_OPT (1u << 3) > #define CPU_LOG_INT (1u << 4) > #define CPU_LOG_EXEC (1u << 5) > #define CPU_LOG_PCALL (1u << 6) > #define CPU_LOG_TB_CPU (1u << 8) > #define CPU_LOG_RESET (1u << 9) > #define LOG_UNIMP (1u << 10) > #define LOG_GUEST_ERROR (1u << 11) > #define CPU_LOG_MMU (1u << 12) > #define CPU_LOG_TB_NOCHAIN (1u << 13) > #define CPU_LOG_PAGE (1u << 14) > /* LOG_TRACE (1 << 15) is defined in log-for-trace.h */ > #define CPU_LOG_TB_OP_IND (1u << 16) > #define CPU_LOG_TB_FPU (1u << 17) > #define CPU_LOG_PLUGIN (1u << 18) > /* LOG_STRACE is used for user-mode strace logging. */ > #define LOG_STRACE (1u << 19) > #define LOG_PER_THREAD (1u << 20) > #define CPU_LOG_TB_VPU (1u << 21) > #define LOG_TB_OP_PLUGIN (1u << 22) > #define LOG_INVALID_MEM (1u << 23) > > .... > > Which one do you recommend we use? or May we introduce a `LOG_HOST_ERROR`, > if that's more appropriate. I think it would be better to have LOG_INSUFF_MEM for this case, but let's hear from Philippe and others for suggestions. Since it's unlreated to the coverity fix and can be taken separately, so: Reviewed-by: Harsh Prateek Bora <harshpb@linux.ibm.com> > > Thanks > ~Shivang. >> >>> "FADump: Failed allocating memory (size: %zu) for copying" >>> " reserved memory regions\n", FADUMP_CHUNK_SIZE); >>> + return false; >>> } >>> num_chunks = ceil((src_len * 1.0f) / FADUMP_CHUNK_SIZE); >> ^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [PATCH v2 1/2] hw/ppc: Fix missing return on allocation failure 2025-10-30 8:05 ` Harsh Prateek Bora @ 2025-10-30 8:39 ` Shivang Upadhyay 2025-10-30 11:09 ` BALATON Zoltan 1 sibling, 0 replies; 13+ messages in thread From: Shivang Upadhyay @ 2025-10-30 8:39 UTC (permalink / raw) To: Harsh Prateek Bora Cc: Philippe Mathieu-Daudé, peter.maydell, adityag, qemu-devel, sourabhjain On Thu, Oct 30, 2025 at 01:35:11PM +0530, Harsh Prateek Bora wrote: > > > On 10/28/25 15:54, Shivang Upadhyay wrote: > > On Tue, Oct 28, 2025 at 09:35:40AM +0100, Philippe Mathieu-Daudé wrote: > > > On 28/10/25 09:05, Shivang Upadhyay wrote: > > > > Fixes coverity (CID 1642026) > > > > > > > > Cc: Aditya Gupta <adityag@linux.ibm.com> > > > > Cc: Harsh Prateek Bora <harshpb@linux.ibm.com> > > > > Link: https://lore.kernel.org/qemu-devel/CAFEAcA-SPmsnU1wzsWxBcFC=ZM_DDhPEg1N4iX9Q4bL1xOnwBg@mail.gmail.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/spapr_fadump.c | 1 + > > > > 1 file changed, 1 insertion(+) > > > > > > > > diff --git a/hw/ppc/spapr_fadump.c b/hw/ppc/spapr_fadump.c > > > > index fa3aeac94c..883a60cdcf 100644 > > > > --- a/hw/ppc/spapr_fadump.c > > > > +++ b/hw/ppc/spapr_fadump.c > > > > @@ -234,6 +234,7 @@ static bool do_preserve_region(FadumpSection *region) > > > > qemu_log_mask(LOG_GUEST_ERROR, > > > > > > FWIW host heap exhaustion is not really a *guest* error, because the > > > guest can not control it. > > Hi, Philippe > > > > > > Thanks for the review. There are following log level defined in log.h > > > > .... > > > > #define CPU_LOG_TB_OUT_ASM (1u << 0) > > #define CPU_LOG_TB_IN_ASM (1u << 1) > > #define CPU_LOG_TB_OP (1u << 2) > > #define CPU_LOG_TB_OP_OPT (1u << 3) > > #define CPU_LOG_INT (1u << 4) > > #define CPU_LOG_EXEC (1u << 5) > > #define CPU_LOG_PCALL (1u << 6) > > #define CPU_LOG_TB_CPU (1u << 8) > > #define CPU_LOG_RESET (1u << 9) > > #define LOG_UNIMP (1u << 10) > > #define LOG_GUEST_ERROR (1u << 11) > > #define CPU_LOG_MMU (1u << 12) > > #define CPU_LOG_TB_NOCHAIN (1u << 13) > > #define CPU_LOG_PAGE (1u << 14) > > /* LOG_TRACE (1 << 15) is defined in log-for-trace.h */ > > #define CPU_LOG_TB_OP_IND (1u << 16) > > #define CPU_LOG_TB_FPU (1u << 17) > > #define CPU_LOG_PLUGIN (1u << 18) > > /* LOG_STRACE is used for user-mode strace logging. */ > > #define LOG_STRACE (1u << 19) > > #define LOG_PER_THREAD (1u << 20) > > #define CPU_LOG_TB_VPU (1u << 21) > > #define LOG_TB_OP_PLUGIN (1u << 22) > > #define LOG_INVALID_MEM (1u << 23) > > > > .... > > > > Which one do you recommend we use? or May we introduce a `LOG_HOST_ERROR`, > > if that's more appropriate. > > I think it would be better to have LOG_INSUFF_MEM for this case, but let's > hear from Philippe and others for suggestions. > > Since it's unlreated to the coverity fix and can be taken separately, so: > > Reviewed-by: Harsh Prateek Bora <harshpb@linux.ibm.com> Thanks Harsh. ~Shivang. ^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [PATCH v2 1/2] hw/ppc: Fix missing return on allocation failure 2025-10-30 8:05 ` Harsh Prateek Bora 2025-10-30 8:39 ` Shivang Upadhyay @ 2025-10-30 11:09 ` BALATON Zoltan 2025-10-30 14:22 ` Shivang Upadhyay 1 sibling, 1 reply; 13+ messages in thread From: BALATON Zoltan @ 2025-10-30 11:09 UTC (permalink / raw) To: Harsh Prateek Bora Cc: Shivang Upadhyay, Philippe Mathieu-Daudé, peter.maydell, adityag, qemu-devel, sourabhjain [-- Attachment #1: Type: text/plain, Size: 3123 bytes --] On Thu, 30 Oct 2025, Harsh Prateek Bora wrote: > On 10/28/25 15:54, Shivang Upadhyay wrote: >> On Tue, Oct 28, 2025 at 09:35:40AM +0100, Philippe Mathieu-Daudé wrote: >>> On 28/10/25 09:05, Shivang Upadhyay wrote: >>>> Fixes coverity (CID 1642026) >>>> >>>> Cc: Aditya Gupta <adityag@linux.ibm.com> >>>> Cc: Harsh Prateek Bora <harshpb@linux.ibm.com> >>>> Link: >>>> https://lore.kernel.org/qemu-devel/CAFEAcA-SPmsnU1wzsWxBcFC=ZM_DDhPEg1N4iX9Q4bL1xOnwBg@mail.gmail.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/spapr_fadump.c | 1 + >>>> 1 file changed, 1 insertion(+) >>>> >>>> diff --git a/hw/ppc/spapr_fadump.c b/hw/ppc/spapr_fadump.c >>>> index fa3aeac94c..883a60cdcf 100644 >>>> --- a/hw/ppc/spapr_fadump.c >>>> +++ b/hw/ppc/spapr_fadump.c >>>> @@ -234,6 +234,7 @@ static bool do_preserve_region(FadumpSection *region) >>>> qemu_log_mask(LOG_GUEST_ERROR, >>> >>> FWIW host heap exhaustion is not really a *guest* error, because the >>> guest can not control it. >> Hi, Philippe >> >> >> Thanks for the review. There are following log level defined in log.h >> >> .... >> >> #define CPU_LOG_TB_OUT_ASM (1u << 0) >> #define CPU_LOG_TB_IN_ASM (1u << 1) >> #define CPU_LOG_TB_OP (1u << 2) >> #define CPU_LOG_TB_OP_OPT (1u << 3) >> #define CPU_LOG_INT (1u << 4) >> #define CPU_LOG_EXEC (1u << 5) >> #define CPU_LOG_PCALL (1u << 6) >> #define CPU_LOG_TB_CPU (1u << 8) >> #define CPU_LOG_RESET (1u << 9) >> #define LOG_UNIMP (1u << 10) >> #define LOG_GUEST_ERROR (1u << 11) >> #define CPU_LOG_MMU (1u << 12) >> #define CPU_LOG_TB_NOCHAIN (1u << 13) >> #define CPU_LOG_PAGE (1u << 14) >> /* LOG_TRACE (1 << 15) is defined in log-for-trace.h */ >> #define CPU_LOG_TB_OP_IND (1u << 16) >> #define CPU_LOG_TB_FPU (1u << 17) >> #define CPU_LOG_PLUGIN (1u << 18) >> /* LOG_STRACE is used for user-mode strace logging. */ >> #define LOG_STRACE (1u << 19) >> #define LOG_PER_THREAD (1u << 20) >> #define CPU_LOG_TB_VPU (1u << 21) >> #define LOG_TB_OP_PLUGIN (1u << 22) >> #define LOG_INVALID_MEM (1u << 23) >> >> .... >> >> Which one do you recommend we use? or May we introduce a `LOG_HOST_ERROR`, >> if that's more appropriate. > > I think it would be better to have LOG_INSUFF_MEM for this case, but let's > hear from Philippe and others for suggestions. If it's not a guest error but an error in QEMU then maybe error_report (or warn_report if it's recoverable)? Regards, BALATON Zoltan > Since it's unlreated to the coverity fix and can be taken separately, so: > > Reviewed-by: Harsh Prateek Bora <harshpb@linux.ibm.com> > >> >> Thanks >> ~Shivang. >>> >>>> "FADump: Failed allocating memory (size: %zu) for copying" >>>> " reserved memory regions\n", FADUMP_CHUNK_SIZE); >>>> + return false; >>>> } >>>> num_chunks = ceil((src_len * 1.0f) / FADUMP_CHUNK_SIZE); >>> > > ^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [PATCH v2 1/2] hw/ppc: Fix missing return on allocation failure 2025-10-30 11:09 ` BALATON Zoltan @ 2025-10-30 14:22 ` Shivang Upadhyay 2025-10-30 14:45 ` Peter Maydell 0 siblings, 1 reply; 13+ messages in thread From: Shivang Upadhyay @ 2025-10-30 14:22 UTC (permalink / raw) To: BALATON Zoltan, Aditya Gupta Cc: Harsh Prateek Bora, Philippe Mathieu-Daudé, peter.maydell, adityag, qemu-devel, sourabhjain On Thu, Oct 30, 2025 at 12:09:44PM +0100, BALATON Zoltan wrote: > On Thu, 30 Oct 2025, Harsh Prateek Bora wrote: > > On 10/28/25 15:54, Shivang Upadhyay wrote: > > > On Tue, Oct 28, 2025 at 09:35:40AM +0100, Philippe Mathieu-Daudé wrote: > > > > On 28/10/25 09:05, Shivang Upadhyay wrote: > > > > > Fixes coverity (CID 1642026) > > > > > > > > > > Cc: Aditya Gupta <adityag@linux.ibm.com> > > > > > Cc: Harsh Prateek Bora <harshpb@linux.ibm.com> > > > > > Link: https://lore.kernel.org/qemu-devel/CAFEAcA-SPmsnU1wzsWxBcFC=ZM_DDhPEg1N4iX9Q4bL1xOnwBg@mail.gmail.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/spapr_fadump.c | 1 + > > > > > 1 file changed, 1 insertion(+) > > > > > > > > > > diff --git a/hw/ppc/spapr_fadump.c b/hw/ppc/spapr_fadump.c > > > > > index fa3aeac94c..883a60cdcf 100644 > > > > > --- a/hw/ppc/spapr_fadump.c > > > > > +++ b/hw/ppc/spapr_fadump.c > > > > > @@ -234,6 +234,7 @@ static bool do_preserve_region(FadumpSection *region) > > > > > qemu_log_mask(LOG_GUEST_ERROR, > > > > > > > > FWIW host heap exhaustion is not really a *guest* error, because the > > > > guest can not control it. > > > Hi, Philippe > > > > > > > > > Thanks for the review. There are following log level defined in log.h > > > > > > .... > > > > > > #define CPU_LOG_TB_OUT_ASM (1u << 0) > > > #define CPU_LOG_TB_IN_ASM (1u << 1) > > > #define CPU_LOG_TB_OP (1u << 2) > > > #define CPU_LOG_TB_OP_OPT (1u << 3) > > > #define CPU_LOG_INT (1u << 4) > > > #define CPU_LOG_EXEC (1u << 5) > > > #define CPU_LOG_PCALL (1u << 6) > > > #define CPU_LOG_TB_CPU (1u << 8) > > > #define CPU_LOG_RESET (1u << 9) > > > #define LOG_UNIMP (1u << 10) > > > #define LOG_GUEST_ERROR (1u << 11) > > > #define CPU_LOG_MMU (1u << 12) > > > #define CPU_LOG_TB_NOCHAIN (1u << 13) > > > #define CPU_LOG_PAGE (1u << 14) > > > /* LOG_TRACE (1 << 15) is defined in log-for-trace.h */ > > > #define CPU_LOG_TB_OP_IND (1u << 16) > > > #define CPU_LOG_TB_FPU (1u << 17) > > > #define CPU_LOG_PLUGIN (1u << 18) > > > /* LOG_STRACE is used for user-mode strace logging. */ > > > #define LOG_STRACE (1u << 19) > > > #define LOG_PER_THREAD (1u << 20) > > > #define CPU_LOG_TB_VPU (1u << 21) > > > #define LOG_TB_OP_PLUGIN (1u << 22) > > > #define LOG_INVALID_MEM (1u << 23) > > > > > > .... > > > > > > Which one do you recommend we use? or May we introduce a `LOG_HOST_ERROR`, > > > if that's more appropriate. > > > > I think it would be better to have LOG_INSUFF_MEM for this case, but > > let's hear from Philippe and others for suggestions. > > If it's not a guest error but an error in QEMU then maybe error_report (or > warn_report if it's recoverable)? > > Regards, > BALATON Zoltan Hi This allocation failure does not seem recoverable. Maybe Aditya can be more right about this. Also I noticed a pattern to use `g_malloc` for critical things instead of `g_try_malloc`. But it will kill the full application if failure happens. So maybe just `error_report` is fine here(?). ~Shivang. ^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [PATCH v2 1/2] hw/ppc: Fix missing return on allocation failure 2025-10-30 14:22 ` Shivang Upadhyay @ 2025-10-30 14:45 ` Peter Maydell 2025-10-30 15:00 ` Shivang Upadhyay 0 siblings, 1 reply; 13+ messages in thread From: Peter Maydell @ 2025-10-30 14:45 UTC (permalink / raw) To: Shivang Upadhyay Cc: BALATON Zoltan, Aditya Gupta, Harsh Prateek Bora, Philippe Mathieu-Daudé, qemu-devel, sourabhjain On Thu, 30 Oct 2025 at 14:23, Shivang Upadhyay <shivangu@linux.ibm.com> wrote: > Also I noticed a pattern to use `g_malloc` for critical things instead > of `g_try_malloc`. But it will kill the full application if failure happens. > So maybe just `error_report` is fine here(?). docs/devel/style.rst has some notes on malloc choices, including this: # Care should be taken to avoid introducing places where the guest could # trigger an exit by causing a large allocation. For small allocations, # of the order of 4k, a failure to allocate is likely indicative of an # overloaded host and allowing ``g_malloc`` to ``exit`` is a reasonable # approach. However for larger allocations where we could realistically # fall-back to a smaller one if need be we should use functions like # ``g_try_new`` and check the result. For example this is valid approach # for a time/space trade-off like ``tlb_mmu_resize_locked`` in the # SoftMMU TLB code. Since we're trying to allocate 32MB at once and this is during the guest run rather than at startup, this is probably a reasonable place to use g_try_malloc(). There are other places in this code that use LOG_GUEST_ERROR for things that aren't exactly guest errors, so my suggestion is that we take this patch as-is to fix the logic error. We can consider whether we want to try to improve the error reporting of this group of functions as a separate patch. thanks -- PMM ^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [PATCH v2 1/2] hw/ppc: Fix missing return on allocation failure 2025-10-30 14:45 ` Peter Maydell @ 2025-10-30 15:00 ` Shivang Upadhyay 0 siblings, 0 replies; 13+ messages in thread From: Shivang Upadhyay @ 2025-10-30 15:00 UTC (permalink / raw) To: Peter Maydell Cc: BALATON Zoltan, Aditya Gupta, Harsh Prateek Bora, Philippe Mathieu-Daudé, qemu-devel, sourabhjain On Thu, Oct 30, 2025 at 02:45:07PM +0000, Peter Maydell wrote: > docs/devel/style.rst has some notes on malloc choices, including this: > > # Care should be taken to avoid introducing places where the guest could > # trigger an exit by causing a large allocation. For small allocations, > # of the order of 4k, a failure to allocate is likely indicative of an > # overloaded host and allowing ``g_malloc`` to ``exit`` is a reasonable > # approach. However for larger allocations where we could realistically > # fall-back to a smaller one if need be we should use functions like > # ``g_try_new`` and check the result. For example this is valid approach > # for a time/space trade-off like ``tlb_mmu_resize_locked`` in the > # SoftMMU TLB code. Hi Peter, Thanks for clearing it up. > > Since we're trying to allocate 32MB at once and this is during > the guest run rather than at startup, this is probably a reasonable > place to use g_try_malloc(). > > There are other places in this code that use LOG_GUEST_ERROR > for things that aren't exactly guest errors, so my suggestion > is that we take this patch as-is to fix the logic error. > We can consider whether we want to try to improve the error > reporting of this group of functions as a separate patch. Sure. ~Shivang. ^ permalink raw reply [flat|nested] 13+ messages in thread
* [PATCH v2 2/2] hw/ppc: Fix memory leak in get_cpu_state_data() 2025-10-28 8:05 [PATCH v2 0/2] ppc: Fixes for fadump feature Shivang Upadhyay 2025-10-28 8:05 ` [PATCH v2 1/2] hw/ppc: Fix missing return on allocation failure Shivang Upadhyay @ 2025-10-28 8:05 ` Shivang Upadhyay 2025-10-28 8:33 ` Philippe Mathieu-Daudé 1 sibling, 1 reply; 13+ messages in thread From: Shivang Upadhyay @ 2025-10-28 8:05 UTC (permalink / raw) To: peter.maydell; +Cc: adityag, harshpb, qemu-devel, shivangu, sourabhjain, philmd Fixes coverity (CID 1642024) Cc: Aditya Gupta <adityag@linux.ibm.com> Cc: Harsh Prateek Bora <harshpb@linux.ibm.com> Link: https://lore.kernel.org/qemu-devel/CAFEAcA_Bm52bkPi9MH_uugXRR5fj48RtpbOnPNFQtbX=7Mz_yw@mail.gmail.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/spapr_fadump.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/hw/ppc/spapr_fadump.c b/hw/ppc/spapr_fadump.c index 883a60cdcf..13cab0cfe1 100644 --- a/hw/ppc/spapr_fadump.c +++ b/hw/ppc/spapr_fadump.c @@ -453,7 +453,7 @@ static FadumpRegEntry *populate_cpu_reg_entries(CPUState *cpu, static void *get_cpu_state_data(uint64_t *cpu_state_len) { FadumpRegSaveAreaHeader reg_save_hdr; - FadumpRegEntry *reg_entries; + g_autofree FadumpRegEntry *reg_entries = NULL; FadumpRegEntry *curr_reg_entry; CPUState *cpu; -- 2.51.0 ^ permalink raw reply related [flat|nested] 13+ messages in thread
* Re: [PATCH v2 2/2] hw/ppc: Fix memory leak in get_cpu_state_data() 2025-10-28 8:05 ` [PATCH v2 2/2] hw/ppc: Fix memory leak in get_cpu_state_data() Shivang Upadhyay @ 2025-10-28 8:33 ` Philippe Mathieu-Daudé 2025-10-28 10:26 ` Shivang Upadhyay 0 siblings, 1 reply; 13+ messages in thread From: Philippe Mathieu-Daudé @ 2025-10-28 8:33 UTC (permalink / raw) To: Shivang Upadhyay, peter.maydell; +Cc: adityag, harshpb, qemu-devel, sourabhjain On 28/10/25 09:05, Shivang Upadhyay wrote: > Fixes coverity (CID 1642024) > > Cc: Aditya Gupta <adityag@linux.ibm.com> > Cc: Harsh Prateek Bora <harshpb@linux.ibm.com> > Link: https://lore.kernel.org/qemu-devel/CAFEAcA_Bm52bkPi9MH_uugXRR5fj48RtpbOnPNFQtbX=7Mz_yw@mail.gmail.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/spapr_fadump.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org> ^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [PATCH v2 2/2] hw/ppc: Fix memory leak in get_cpu_state_data() 2025-10-28 8:33 ` Philippe Mathieu-Daudé @ 2025-10-28 10:26 ` Shivang Upadhyay 0 siblings, 0 replies; 13+ messages in thread From: Shivang Upadhyay @ 2025-10-28 10:26 UTC (permalink / raw) To: Philippe Mathieu-Daudé Cc: peter.maydell, adityag, harshpb, qemu-devel, sourabhjain On Tue, Oct 28, 2025 at 09:33:49AM +0100, Philippe Mathieu-Daudé wrote: > On 28/10/25 09:05, Shivang Upadhyay wrote: > > Fixes coverity (CID 1642024) > > > > Cc: Aditya Gupta <adityag@linux.ibm.com> > > Cc: Harsh Prateek Bora <harshpb@linux.ibm.com> > > Link: https://lore.kernel.org/qemu-devel/CAFEAcA_Bm52bkPi9MH_uugXRR5fj48RtpbOnPNFQtbX=7Mz_yw@mail.gmail.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/spapr_fadump.c | 2 +- > > 1 file changed, 1 insertion(+), 1 deletion(-) > > Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org> Thanks ~Shivang ^ permalink raw reply [flat|nested] 13+ messages in thread
end of thread, other threads:[~2025-10-30 15:02 UTC | newest] Thread overview: 13+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2025-10-28 8:05 [PATCH v2 0/2] ppc: Fixes for fadump feature Shivang Upadhyay 2025-10-28 8:05 ` [PATCH v2 1/2] hw/ppc: Fix missing return on allocation failure Shivang Upadhyay 2025-10-28 8:35 ` Philippe Mathieu-Daudé 2025-10-28 10:24 ` Shivang Upadhyay 2025-10-30 8:05 ` Harsh Prateek Bora 2025-10-30 8:39 ` Shivang Upadhyay 2025-10-30 11:09 ` BALATON Zoltan 2025-10-30 14:22 ` Shivang Upadhyay 2025-10-30 14:45 ` Peter Maydell 2025-10-30 15:00 ` Shivang Upadhyay 2025-10-28 8:05 ` [PATCH v2 2/2] hw/ppc: Fix memory leak in get_cpu_state_data() Shivang Upadhyay 2025-10-28 8:33 ` Philippe Mathieu-Daudé 2025-10-28 10:26 ` Shivang Upadhyay
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).