Running QEMU with
qemu-system-ppc64 -M none -nographic -m 256
and executing
dump-guest-memory /dev/null 0 8192
results in segfault
Fix by checking if we have CPU, and exit with
error if there is no CPU:
(qemu) dump-guest-memory /dev/null
this feature or command is not currently supported
Signed-off-by: Laurent Vivier <lvivier@redhat.com>
---
target/ppc/arch_dump.c | 11 +++++++++--
1 file changed, 9 insertions(+), 2 deletions(-)
diff --git a/target/ppc/arch_dump.c b/target/ppc/arch_dump.c
index 8e9397aa58..95b9ab6f29 100644
--- a/target/ppc/arch_dump.c
+++ b/target/ppc/arch_dump.c
@@ -224,8 +224,15 @@ typedef struct NoteFuncDescStruct NoteFuncDesc;
int cpu_get_dump_info(ArchDumpInfo *info,
const struct GuestPhysBlockList *guest_phys_blocks)
{
- PowerPCCPU *cpu = POWERPC_CPU(first_cpu);
- PowerPCCPUClass *pcc = POWERPC_CPU_GET_CLASS(cpu);
+ PowerPCCPU *cpu;
+ PowerPCCPUClass *pcc;
+
+ if (first_cpu == NULL) {
+ return -1;
+ }
+
+ cpu = POWERPC_CPU(first_cpu);
+ pcc = POWERPC_CPU_GET_CLASS(cpu);
info->d_machine = PPC_ELF_MACHINE;
info->d_class = ELFCLASS;
--
2.13.5
On 12.09.2017 16:01, Laurent Vivier wrote:
> Running QEMU with
> qemu-system-ppc64 -M none -nographic -m 256
> and executing
> dump-guest-memory /dev/null 0 8192
> results in segfault
>
> Fix by checking if we have CPU, and exit with
> error if there is no CPU:
>
> (qemu) dump-guest-memory /dev/null
> this feature or command is not currently supported
>
> Signed-off-by: Laurent Vivier <lvivier@redhat.com>
> ---
> target/ppc/arch_dump.c | 11 +++++++++--
> 1 file changed, 9 insertions(+), 2 deletions(-)
>
> diff --git a/target/ppc/arch_dump.c b/target/ppc/arch_dump.c
> index 8e9397aa58..95b9ab6f29 100644
> --- a/target/ppc/arch_dump.c
> +++ b/target/ppc/arch_dump.c
> @@ -224,8 +224,15 @@ typedef struct NoteFuncDescStruct NoteFuncDesc;
> int cpu_get_dump_info(ArchDumpInfo *info,
> const struct GuestPhysBlockList *guest_phys_blocks)
> {
> - PowerPCCPU *cpu = POWERPC_CPU(first_cpu);
> - PowerPCCPUClass *pcc = POWERPC_CPU_GET_CLASS(cpu);
> + PowerPCCPU *cpu;
> + PowerPCCPUClass *pcc;
> +
> + if (first_cpu == NULL) {
> + return -1;
> + }
> +
> + cpu = POWERPC_CPU(first_cpu);
> + pcc = POWERPC_CPU_GET_CLASS(cpu);
>
> info->d_machine = PPC_ELF_MACHINE;
> info->d_class = ELFCLASS;
>
Reviewed-by: Thomas Huth <thuth@redhat.com>
On Tue, 12 Sep 2017 16:01:47 +0200
Laurent Vivier <lvivier@redhat.com> wrote:
> Running QEMU with
> qemu-system-ppc64 -M none -nographic -m 256
> and executing
> dump-guest-memory /dev/null 0 8192
> results in segfault
>
> Fix by checking if we have CPU, and exit with
> error if there is no CPU:
>
> (qemu) dump-guest-memory /dev/null
> this feature or command is not currently supported
>
> Signed-off-by: Laurent Vivier <lvivier@redhat.com>
> ---
Reviewed-by: Greg Kurz <groug@kaod.org>
> target/ppc/arch_dump.c | 11 +++++++++--
> 1 file changed, 9 insertions(+), 2 deletions(-)
>
> diff --git a/target/ppc/arch_dump.c b/target/ppc/arch_dump.c
> index 8e9397aa58..95b9ab6f29 100644
> --- a/target/ppc/arch_dump.c
> +++ b/target/ppc/arch_dump.c
> @@ -224,8 +224,15 @@ typedef struct NoteFuncDescStruct NoteFuncDesc;
> int cpu_get_dump_info(ArchDumpInfo *info,
> const struct GuestPhysBlockList *guest_phys_blocks)
> {
> - PowerPCCPU *cpu = POWERPC_CPU(first_cpu);
> - PowerPCCPUClass *pcc = POWERPC_CPU_GET_CLASS(cpu);
> + PowerPCCPU *cpu;
> + PowerPCCPUClass *pcc;
> +
> + if (first_cpu == NULL) {
> + return -1;
> + }
> +
> + cpu = POWERPC_CPU(first_cpu);
> + pcc = POWERPC_CPU_GET_CLASS(cpu);
>
> info->d_machine = PPC_ELF_MACHINE;
> info->d_class = ELFCLASS;
On Tue, Sep 12, 2017 at 04:01:47PM +0200, Laurent Vivier wrote:
> Running QEMU with
> qemu-system-ppc64 -M none -nographic -m 256
> and executing
> dump-guest-memory /dev/null 0 8192
> results in segfault
>
> Fix by checking if we have CPU, and exit with
> error if there is no CPU:
>
> (qemu) dump-guest-memory /dev/null
> this feature or command is not currently supported
>
> Signed-off-by: Laurent Vivier <lvivier@redhat.com>
Applied to ppc-for-2.11. I'm not really sure what to do with the rest
of the series though.
> ---
> target/ppc/arch_dump.c | 11 +++++++++--
> 1 file changed, 9 insertions(+), 2 deletions(-)
>
> diff --git a/target/ppc/arch_dump.c b/target/ppc/arch_dump.c
> index 8e9397aa58..95b9ab6f29 100644
> --- a/target/ppc/arch_dump.c
> +++ b/target/ppc/arch_dump.c
> @@ -224,8 +224,15 @@ typedef struct NoteFuncDescStruct NoteFuncDesc;
> int cpu_get_dump_info(ArchDumpInfo *info,
> const struct GuestPhysBlockList *guest_phys_blocks)
> {
> - PowerPCCPU *cpu = POWERPC_CPU(first_cpu);
> - PowerPCCPUClass *pcc = POWERPC_CPU_GET_CLASS(cpu);
> + PowerPCCPU *cpu;
> + PowerPCCPUClass *pcc;
> +
> + if (first_cpu == NULL) {
> + return -1;
> + }
> +
> + cpu = POWERPC_CPU(first_cpu);
> + pcc = POWERPC_CPU_GET_CLASS(cpu);
>
> info->d_machine = PPC_ELF_MACHINE;
> info->d_class = ELFCLASS;
--
David Gibson | I'll have my music baroque, and my code
david AT gibson.dropbear.id.au | minimalist, thank you. NOT _the_ _other_
| _way_ _around_!
http://www.ozlabs.org/~dgibson
* David Gibson (david@gibson.dropbear.id.au) wrote:
> On Tue, Sep 12, 2017 at 04:01:47PM +0200, Laurent Vivier wrote:
> > Running QEMU with
> > qemu-system-ppc64 -M none -nographic -m 256
> > and executing
> > dump-guest-memory /dev/null 0 8192
> > results in segfault
> >
> > Fix by checking if we have CPU, and exit with
> > error if there is no CPU:
> >
> > (qemu) dump-guest-memory /dev/null
> > this feature or command is not currently supported
> >
> > Signed-off-by: Laurent Vivier <lvivier@redhat.com>
>
> Applied to ppc-for-2.11. I'm not really sure what to do with the rest
> of the series though.
I can take the whole set through HMP.
Dave
> > ---
> > target/ppc/arch_dump.c | 11 +++++++++--
> > 1 file changed, 9 insertions(+), 2 deletions(-)
> >
> > diff --git a/target/ppc/arch_dump.c b/target/ppc/arch_dump.c
> > index 8e9397aa58..95b9ab6f29 100644
> > --- a/target/ppc/arch_dump.c
> > +++ b/target/ppc/arch_dump.c
> > @@ -224,8 +224,15 @@ typedef struct NoteFuncDescStruct NoteFuncDesc;
> > int cpu_get_dump_info(ArchDumpInfo *info,
> > const struct GuestPhysBlockList *guest_phys_blocks)
> > {
> > - PowerPCCPU *cpu = POWERPC_CPU(first_cpu);
> > - PowerPCCPUClass *pcc = POWERPC_CPU_GET_CLASS(cpu);
> > + PowerPCCPU *cpu;
> > + PowerPCCPUClass *pcc;
> > +
> > + if (first_cpu == NULL) {
> > + return -1;
> > + }
> > +
> > + cpu = POWERPC_CPU(first_cpu);
> > + pcc = POWERPC_CPU_GET_CLASS(cpu);
> >
> > info->d_machine = PPC_ELF_MACHINE;
> > info->d_class = ELFCLASS;
>
> --
> David Gibson | I'll have my music baroque, and my code
> david AT gibson.dropbear.id.au | minimalist, thank you. NOT _the_ _other_
> | _way_ _around_!
> http://www.ozlabs.org/~dgibson
--
Dr. David Alan Gilbert / dgilbert@redhat.com / Manchester, UK
On Wed, 13 Sep 2017 13:44:57 +0100 "Dr. David Alan Gilbert" <dgilbert@redhat.com> wrote: > * David Gibson (david@gibson.dropbear.id.au) wrote: > > On Tue, Sep 12, 2017 at 04:01:47PM +0200, Laurent Vivier wrote: > > > Running QEMU with > > > qemu-system-ppc64 -M none -nographic -m 256 > > > and executing > > > dump-guest-memory /dev/null 0 8192 > > > results in segfault > > > > > > Fix by checking if we have CPU, and exit with > > > error if there is no CPU: > > > > > > (qemu) dump-guest-memory /dev/null > > > this feature or command is not currently supported > > > > > > Signed-off-by: Laurent Vivier <lvivier@redhat.com> > > > > Applied to ppc-for-2.11. I'm not really sure what to do with the rest > > of the series though. > > I can take the whole set through HMP. If you do so, you should probably take "dump: do not dump non-existent guest memory" as well.
On 13/09/2017 14:44, Dr. David Alan Gilbert wrote:
> * David Gibson (david@gibson.dropbear.id.au) wrote:
>> On Tue, Sep 12, 2017 at 04:01:47PM +0200, Laurent Vivier wrote:
>>> Running QEMU with
>>> qemu-system-ppc64 -M none -nographic -m 256
>>> and executing
>>> dump-guest-memory /dev/null 0 8192
>>> results in segfault
>>>
>>> Fix by checking if we have CPU, and exit with
>>> error if there is no CPU:
>>>
>>> (qemu) dump-guest-memory /dev/null
>>> this feature or command is not currently supported
>>>
>>> Signed-off-by: Laurent Vivier <lvivier@redhat.com>
>>
>> Applied to ppc-for-2.11. I'm not really sure what to do with the rest
>> of the series though.
>
> I can take the whole set through HMP.
Could you update the comment in last patch as asked by Cornelia?
(PATCH v3 3/3] tests/hmp: test "none" machine with memory)
Thanks,
Laurent
>
> Dave
>
>>> ---
>>> target/ppc/arch_dump.c | 11 +++++++++--
>>> 1 file changed, 9 insertions(+), 2 deletions(-)
>>>
>>> diff --git a/target/ppc/arch_dump.c b/target/ppc/arch_dump.c
>>> index 8e9397aa58..95b9ab6f29 100644
>>> --- a/target/ppc/arch_dump.c
>>> +++ b/target/ppc/arch_dump.c
>>> @@ -224,8 +224,15 @@ typedef struct NoteFuncDescStruct NoteFuncDesc;
>>> int cpu_get_dump_info(ArchDumpInfo *info,
>>> const struct GuestPhysBlockList *guest_phys_blocks)
>>> {
>>> - PowerPCCPU *cpu = POWERPC_CPU(first_cpu);
>>> - PowerPCCPUClass *pcc = POWERPC_CPU_GET_CLASS(cpu);
>>> + PowerPCCPU *cpu;
>>> + PowerPCCPUClass *pcc;
>>> +
>>> + if (first_cpu == NULL) {
>>> + return -1;
>>> + }
>>> +
>>> + cpu = POWERPC_CPU(first_cpu);
>>> + pcc = POWERPC_CPU_GET_CLASS(cpu);
>>>
>>> info->d_machine = PPC_ELF_MACHINE;
>>> info->d_class = ELFCLASS;
>>
>> --
>> David Gibson | I'll have my music baroque, and my code
>> david AT gibson.dropbear.id.au | minimalist, thank you. NOT _the_ _other_
>> | _way_ _around_!
>> http://www.ozlabs.org/~dgibson
>
>
> --
> Dr. David Alan Gilbert / dgilbert@redhat.com / Manchester, UK
>
* Laurent Vivier (lvivier@redhat.com) wrote:
> On 13/09/2017 14:44, Dr. David Alan Gilbert wrote:
> > * David Gibson (david@gibson.dropbear.id.au) wrote:
> >> On Tue, Sep 12, 2017 at 04:01:47PM +0200, Laurent Vivier wrote:
> >>> Running QEMU with
> >>> qemu-system-ppc64 -M none -nographic -m 256
> >>> and executing
> >>> dump-guest-memory /dev/null 0 8192
> >>> results in segfault
> >>>
> >>> Fix by checking if we have CPU, and exit with
> >>> error if there is no CPU:
> >>>
> >>> (qemu) dump-guest-memory /dev/null
> >>> this feature or command is not currently supported
> >>>
> >>> Signed-off-by: Laurent Vivier <lvivier@redhat.com>
> >>
> >> Applied to ppc-for-2.11. I'm not really sure what to do with the rest
> >> of the series though.
> >
> > I can take the whole set through HMP.
>
> Could you update the comment in last patch as asked by Cornelia?
> (PATCH v3 3/3] tests/hmp: test "none" machine with memory)
Sure, do we understand what the error that patchew caught was?
Dave
> Thanks,
> Laurent
>
> >
> > Dave
> >
> >>> ---
> >>> target/ppc/arch_dump.c | 11 +++++++++--
> >>> 1 file changed, 9 insertions(+), 2 deletions(-)
> >>>
> >>> diff --git a/target/ppc/arch_dump.c b/target/ppc/arch_dump.c
> >>> index 8e9397aa58..95b9ab6f29 100644
> >>> --- a/target/ppc/arch_dump.c
> >>> +++ b/target/ppc/arch_dump.c
> >>> @@ -224,8 +224,15 @@ typedef struct NoteFuncDescStruct NoteFuncDesc;
> >>> int cpu_get_dump_info(ArchDumpInfo *info,
> >>> const struct GuestPhysBlockList *guest_phys_blocks)
> >>> {
> >>> - PowerPCCPU *cpu = POWERPC_CPU(first_cpu);
> >>> - PowerPCCPUClass *pcc = POWERPC_CPU_GET_CLASS(cpu);
> >>> + PowerPCCPU *cpu;
> >>> + PowerPCCPUClass *pcc;
> >>> +
> >>> + if (first_cpu == NULL) {
> >>> + return -1;
> >>> + }
> >>> +
> >>> + cpu = POWERPC_CPU(first_cpu);
> >>> + pcc = POWERPC_CPU_GET_CLASS(cpu);
> >>>
> >>> info->d_machine = PPC_ELF_MACHINE;
> >>> info->d_class = ELFCLASS;
> >>
> >> --
> >> David Gibson | I'll have my music baroque, and my code
> >> david AT gibson.dropbear.id.au | minimalist, thank you. NOT _the_ _other_
> >> | _way_ _around_!
> >> http://www.ozlabs.org/~dgibson
> >
> >
> > --
> > Dr. David Alan Gilbert / dgilbert@redhat.com / Manchester, UK
> >
>
--
Dr. David Alan Gilbert / dgilbert@redhat.com / Manchester, UK
On 13/09/2017 15:19, Dr. David Alan Gilbert wrote: > * Laurent Vivier (lvivier@redhat.com) wrote: >> On 13/09/2017 14:44, Dr. David Alan Gilbert wrote: >>> * David Gibson (david@gibson.dropbear.id.au) wrote: >>>> On Tue, Sep 12, 2017 at 04:01:47PM +0200, Laurent Vivier wrote: >>>>> Running QEMU with >>>>> qemu-system-ppc64 -M none -nographic -m 256 >>>>> and executing >>>>> dump-guest-memory /dev/null 0 8192 >>>>> results in segfault >>>>> >>>>> Fix by checking if we have CPU, and exit with >>>>> error if there is no CPU: >>>>> >>>>> (qemu) dump-guest-memory /dev/null >>>>> this feature or command is not currently supported >>>>> >>>>> Signed-off-by: Laurent Vivier <lvivier@redhat.com> >>>> >>>> Applied to ppc-for-2.11. I'm not really sure what to do with the rest >>>> of the series though. >>> >>> I can take the whole set through HMP. >> >> Could you update the comment in last patch as asked by Cornelia? >> (PATCH v3 3/3] tests/hmp: test "none" machine with memory) > > Sure, do we understand what the error that patchew caught was? We need the fix from Cornelia, otherwise the new test fails. Do you want I resend the series including the fix from Cornelia to be sure patchew works? Thanks, Laurent
* Laurent Vivier (lvivier@redhat.com) wrote: > On 13/09/2017 15:19, Dr. David Alan Gilbert wrote: > > * Laurent Vivier (lvivier@redhat.com) wrote: > >> On 13/09/2017 14:44, Dr. David Alan Gilbert wrote: > >>> * David Gibson (david@gibson.dropbear.id.au) wrote: > >>>> On Tue, Sep 12, 2017 at 04:01:47PM +0200, Laurent Vivier wrote: > >>>>> Running QEMU with > >>>>> qemu-system-ppc64 -M none -nographic -m 256 > >>>>> and executing > >>>>> dump-guest-memory /dev/null 0 8192 > >>>>> results in segfault > >>>>> > >>>>> Fix by checking if we have CPU, and exit with > >>>>> error if there is no CPU: > >>>>> > >>>>> (qemu) dump-guest-memory /dev/null > >>>>> this feature or command is not currently supported > >>>>> > >>>>> Signed-off-by: Laurent Vivier <lvivier@redhat.com> > >>>> > >>>> Applied to ppc-for-2.11. I'm not really sure what to do with the rest > >>>> of the series though. > >>> > >>> I can take the whole set through HMP. > >> > >> Could you update the comment in last patch as asked by Cornelia? > >> (PATCH v3 3/3] tests/hmp: test "none" machine with memory) > > > > Sure, do we understand what the error that patchew caught was? > > We need the fix from Cornelia, otherwise the new test fails. > > Do you want I resend the series including the fix from Cornelia to be > sure patchew works? Yes, that's best because I think you're saying we need to put Cornelia's fix in before your 3/3 to ensure it's bisectable. Dave > Thanks, > Laurent -- Dr. David Alan Gilbert / dgilbert@redhat.com / Manchester, UK
On Wed, Sep 13, 2017 at 01:44:57PM +0100, Dr. David Alan Gilbert wrote:
> * David Gibson (david@gibson.dropbear.id.au) wrote:
> > On Tue, Sep 12, 2017 at 04:01:47PM +0200, Laurent Vivier wrote:
> > > Running QEMU with
> > > qemu-system-ppc64 -M none -nographic -m 256
> > > and executing
> > > dump-guest-memory /dev/null 0 8192
> > > results in segfault
> > >
> > > Fix by checking if we have CPU, and exit with
> > > error if there is no CPU:
> > >
> > > (qemu) dump-guest-memory /dev/null
> > > this feature or command is not currently supported
> > >
> > > Signed-off-by: Laurent Vivier <lvivier@redhat.com>
> >
> > Applied to ppc-for-2.11. I'm not really sure what to do with the rest
> > of the series though.
>
> I can take the whole set through HMP.
Great, thanks.
>
> Dave
>
> > > ---
> > > target/ppc/arch_dump.c | 11 +++++++++--
> > > 1 file changed, 9 insertions(+), 2 deletions(-)
> > >
> > > diff --git a/target/ppc/arch_dump.c b/target/ppc/arch_dump.c
> > > index 8e9397aa58..95b9ab6f29 100644
> > > --- a/target/ppc/arch_dump.c
> > > +++ b/target/ppc/arch_dump.c
> > > @@ -224,8 +224,15 @@ typedef struct NoteFuncDescStruct NoteFuncDesc;
> > > int cpu_get_dump_info(ArchDumpInfo *info,
> > > const struct GuestPhysBlockList *guest_phys_blocks)
> > > {
> > > - PowerPCCPU *cpu = POWERPC_CPU(first_cpu);
> > > - PowerPCCPUClass *pcc = POWERPC_CPU_GET_CLASS(cpu);
> > > + PowerPCCPU *cpu;
> > > + PowerPCCPUClass *pcc;
> > > +
> > > + if (first_cpu == NULL) {
> > > + return -1;
> > > + }
> > > +
> > > + cpu = POWERPC_CPU(first_cpu);
> > > + pcc = POWERPC_CPU_GET_CLASS(cpu);
> > >
> > > info->d_machine = PPC_ELF_MACHINE;
> > > info->d_class = ELFCLASS;
> >
>
>
--
David Gibson | I'll have my music baroque, and my code
david AT gibson.dropbear.id.au | minimalist, thank you. NOT _the_ _other_
| _way_ _around_!
http://www.ozlabs.org/~dgibson
© 2016 - 2026 Red Hat, Inc.