Message ID | 1504511031-26834-1-git-send-email-s1seetee@linux.vnet.ibm.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On 09/04/2017 04:43 AM, Seeteena Thoufeek wrote: > ---Steps to Reproduce--- > > When passed a negative number to 'maxcpus' parameter, Qemu aborts > with a core dump. > > Run the following command with maxcpus argument as negative number > > ppc64-softmmu/qemu-system-ppc64 --nographic -vga none -machine > pseries,accel=kvm,kvm-type=HV -m size=200g -device virtio-blk-pci, > drive=rootdisk -drive file=/home/images/pegas-1.0-ppc64le.qcow2, > if=none,cache=none,id=rootdisk,format=qcow2 -monitor telnet > :127.0.0.1:1234,server,nowait -net nic,model=virtio -net > user -redir tcp:2000::22 -device nec-usb-xhci -smp 8,cores=1, > threads=1,maxcpus=-12 > > (process:12149): GLib-ERROR **: gmem.c:130: failed to allocate > 18446744073709550568 bytes > > Trace/breakpoint trap > > Reported-by: R.Nageswara Sastry <rnsastry@linux.vnet.ibm.com> > Signed-off-by: Seeteena Thoufeek <s1seetee@linux.vnet.ibm.com> Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org> > --- > v1 -> v2: > - Fix the error check in vl.c to make it generic. > v2 -> v3: > - Fix coding style pointed out by patchew. > - Fix check for "<= 0" instead of just "< 0". > v3 -> v4: > - Fix subject line. > - Removed space before ":" from vl.c:1248 > - Removed Reviewed-by: flag > v4-> v5: > - Code rework to declare max_cpus as unsigned int in sysemu.h > - Remove the error check in vl.c referred in v2. > - declare max_cpus as unsigned int in vl.c > --- > include/sysemu/sysemu.h | 2 +- > vl.c | 6 +++--- > 2 files changed, 4 insertions(+), 4 deletions(-) > > diff --git a/include/sysemu/sysemu.h b/include/sysemu/sysemu.h > index b213696..c083869 100644 > --- a/include/sysemu/sysemu.h > +++ b/include/sysemu/sysemu.h > @@ -113,7 +113,7 @@ extern int win2k_install_hack; > extern int alt_grab; > extern int ctrl_grab; > extern int smp_cpus; > -extern int max_cpus; > +extern unsigned int max_cpus; > extern int cursor_hide; > extern int graphic_rotate; > extern int no_quit; > diff --git a/vl.c b/vl.c > index 8e247cc..1470c21 100644 > --- a/vl.c > +++ b/vl.c > @@ -164,7 +164,7 @@ Chardev *sclp_hds[MAX_SCLP_CONSOLES]; > int win2k_install_hack = 0; > int singlestep = 0; > int smp_cpus = 1; > -int max_cpus = 1; > +unsigned int max_cpus = 1; > int smp_cores = 1; > int smp_threads = 1; > int acpi_enabled = 1; > @@ -4233,8 +4233,8 @@ int main(int argc, char **argv, char **envp) > > machine_class->max_cpus = machine_class->max_cpus ?: 1; /* Default to UP */ > if (max_cpus > machine_class->max_cpus) { > - error_report("Number of SMP CPUs requested (%d) exceeds max CPUs " > - "supported by machine '%s' (%d)", max_cpus, > + error_report("Invalid SMP CPUs %d. The max CPUs " > + "supported by machine '%s' is %d", max_cpus, > machine_class->name, machine_class->max_cpus); > exit(1); > } >
Hi Philippe, I have not seen patch went upstream.. On 09/04/2017 09:12 PM, Philippe Mathieu-Daudé wrote: > On 09/04/2017 04:43 AM, Seeteena Thoufeek wrote: >> ---Steps to Reproduce--- >> >> When passed a negative number to 'maxcpus' parameter, Qemu aborts >> with a core dump. >> >> Run the following command with maxcpus argument as negative number >> >> ppc64-softmmu/qemu-system-ppc64 --nographic -vga none -machine >> pseries,accel=kvm,kvm-type=HV -m size=200g -device virtio-blk-pci, >> drive=rootdisk -drive file=/home/images/pegas-1.0-ppc64le.qcow2, >> if=none,cache=none,id=rootdisk,format=qcow2 -monitor telnet >> :127.0.0.1:1234,server,nowait -net nic,model=virtio -net >> user -redir tcp:2000::22 -device nec-usb-xhci -smp 8,cores=1, >> threads=1,maxcpus=-12 >> >> (process:12149): GLib-ERROR **: gmem.c:130: failed to allocate >> 18446744073709550568 bytes >> >> Trace/breakpoint trap >> >> Reported-by: R.Nageswara Sastry <rnsastry@linux.vnet.ibm.com> >> Signed-off-by: Seeteena Thoufeek <s1seetee@linux.vnet.ibm.com> > > Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org> > >> --- >> v1 -> v2: >> - Fix the error check in vl.c to make it generic. >> v2 -> v3: >> - Fix coding style pointed out by patchew. >> - Fix check for "<= 0" instead of just "< 0". >> v3 -> v4: >> - Fix subject line. >> - Removed space before ":" from vl.c:1248 >> - Removed Reviewed-by: flag >> v4-> v5: >> - Code rework to declare max_cpus as unsigned int in sysemu.h >> - Remove the error check in vl.c referred in v2. >> - declare max_cpus as unsigned int in vl.c >> --- >> include/sysemu/sysemu.h | 2 +- >> vl.c | 6 +++--- >> 2 files changed, 4 insertions(+), 4 deletions(-) >> >> diff --git a/include/sysemu/sysemu.h b/include/sysemu/sysemu.h >> index b213696..c083869 100644 >> --- a/include/sysemu/sysemu.h >> +++ b/include/sysemu/sysemu.h >> @@ -113,7 +113,7 @@ extern int win2k_install_hack; >> extern int alt_grab; >> extern int ctrl_grab; >> extern int smp_cpus; >> -extern int max_cpus; >> +extern unsigned int max_cpus; >> extern int cursor_hide; >> extern int graphic_rotate; >> extern int no_quit; >> diff --git a/vl.c b/vl.c >> index 8e247cc..1470c21 100644 >> --- a/vl.c >> +++ b/vl.c >> @@ -164,7 +164,7 @@ Chardev *sclp_hds[MAX_SCLP_CONSOLES]; >> int win2k_install_hack = 0; >> int singlestep = 0; >> int smp_cpus = 1; >> -int max_cpus = 1; >> +unsigned int max_cpus = 1; >> int smp_cores = 1; >> int smp_threads = 1; >> int acpi_enabled = 1; >> @@ -4233,8 +4233,8 @@ int main(int argc, char **argv, char **envp) >> machine_class->max_cpus = machine_class->max_cpus ?: 1; /* >> Default to UP */ >> if (max_cpus > machine_class->max_cpus) { >> - error_report("Number of SMP CPUs requested (%d) exceeds max >> CPUs " >> - "supported by machine '%s' (%d)", max_cpus, >> + error_report("Invalid SMP CPUs %d. The max CPUs " >> + "supported by machine '%s' is %d", max_cpus, >> machine_class->name, machine_class->max_cpus); >> exit(1); >> } >> >
On 25.09.2017 10:43, seeteena wrote: > Hi Philippe, > > I have not seen patch went upstream.. You need to get the attention of a maintainer who could pick up the patch, e.g. by putting them on CC:. See the MAINTAINERS file for who is responsible for the various parts of QEMU. I've put Eduardo (Numa) and Paolo (vl.c) on CC: now, I hope one of them can pick up the patch. Thomas > On 09/04/2017 09:12 PM, Philippe Mathieu-Daudé wrote: >> On 09/04/2017 04:43 AM, Seeteena Thoufeek wrote: >>> ---Steps to Reproduce--- >>> >>> When passed a negative number to 'maxcpus' parameter, Qemu aborts >>> with a core dump. >>> >>> Run the following command with maxcpus argument as negative number >>> >>> ppc64-softmmu/qemu-system-ppc64 --nographic -vga none -machine >>> pseries,accel=kvm,kvm-type=HV -m size=200g -device virtio-blk-pci, >>> drive=rootdisk -drive file=/home/images/pegas-1.0-ppc64le.qcow2, >>> if=none,cache=none,id=rootdisk,format=qcow2 -monitor telnet >>> :127.0.0.1:1234,server,nowait -net nic,model=virtio -net >>> user -redir tcp:2000::22 -device nec-usb-xhci -smp 8,cores=1, >>> threads=1,maxcpus=-12 >>> >>> (process:12149): GLib-ERROR **: gmem.c:130: failed to allocate >>> 18446744073709550568 bytes >>> >>> Trace/breakpoint trap >>> >>> Reported-by: R.Nageswara Sastry <rnsastry@linux.vnet.ibm.com> >>> Signed-off-by: Seeteena Thoufeek <s1seetee@linux.vnet.ibm.com> >> >> Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org> >> >>> --- >>> v1 -> v2: >>> - Fix the error check in vl.c to make it generic. >>> v2 -> v3: >>> - Fix coding style pointed out by patchew. >>> - Fix check for "<= 0" instead of just "< 0". >>> v3 -> v4: >>> - Fix subject line. >>> - Removed space before ":" from vl.c:1248 >>> - Removed Reviewed-by: flag >>> v4-> v5: >>> - Code rework to declare max_cpus as unsigned int in sysemu.h >>> - Remove the error check in vl.c referred in v2. >>> - declare max_cpus as unsigned int in vl.c >>> --- >>> include/sysemu/sysemu.h | 2 +- >>> vl.c | 6 +++--- >>> 2 files changed, 4 insertions(+), 4 deletions(-) >>> >>> diff --git a/include/sysemu/sysemu.h b/include/sysemu/sysemu.h >>> index b213696..c083869 100644 >>> --- a/include/sysemu/sysemu.h >>> +++ b/include/sysemu/sysemu.h >>> @@ -113,7 +113,7 @@ extern int win2k_install_hack; >>> extern int alt_grab; >>> extern int ctrl_grab; >>> extern int smp_cpus; >>> -extern int max_cpus; >>> +extern unsigned int max_cpus; >>> extern int cursor_hide; >>> extern int graphic_rotate; >>> extern int no_quit; >>> diff --git a/vl.c b/vl.c >>> index 8e247cc..1470c21 100644 >>> --- a/vl.c >>> +++ b/vl.c >>> @@ -164,7 +164,7 @@ Chardev *sclp_hds[MAX_SCLP_CONSOLES]; >>> int win2k_install_hack = 0; >>> int singlestep = 0; >>> int smp_cpus = 1; >>> -int max_cpus = 1; >>> +unsigned int max_cpus = 1; >>> int smp_cores = 1; >>> int smp_threads = 1; >>> int acpi_enabled = 1; >>> @@ -4233,8 +4233,8 @@ int main(int argc, char **argv, char **envp) >>> machine_class->max_cpus = machine_class->max_cpus ?: 1; /* >>> Default to UP */ >>> if (max_cpus > machine_class->max_cpus) { >>> - error_report("Number of SMP CPUs requested (%d) exceeds max >>> CPUs " >>> - "supported by machine '%s' (%d)", max_cpus, >>> + error_report("Invalid SMP CPUs %d. The max CPUs " >>> + "supported by machine '%s' is %d", max_cpus, >>> machine_class->name, machine_class->max_cpus); >>> exit(1); >>> } >>> >> > >
Thanks Thomas. Since you already put them on cc. I will wait for the response. On 09/25/2017 02:21 PM, Thomas Huth wrote: > On 25.09.2017 10:43, seeteena wrote: >> Hi Philippe, >> >> I have not seen patch went upstream.. > You need to get the attention of a maintainer who could pick up the > patch, e.g. by putting them on CC:. See the MAINTAINERS file for who is > responsible for the various parts of QEMU. I've put Eduardo (Numa) and > Paolo (vl.c) on CC: now, I hope one of them can pick up the patch. > > Thomas > > >> On 09/04/2017 09:12 PM, Philippe Mathieu-Daudé wrote: >>> On 09/04/2017 04:43 AM, Seeteena Thoufeek wrote: >>>> ---Steps to Reproduce--- >>>> >>>> When passed a negative number to 'maxcpus' parameter, Qemu aborts >>>> with a core dump. >>>> >>>> Run the following command with maxcpus argument as negative number >>>> >>>> ppc64-softmmu/qemu-system-ppc64 --nographic -vga none -machine >>>> pseries,accel=kvm,kvm-type=HV -m size=200g -device virtio-blk-pci, >>>> drive=rootdisk -drive file=/home/images/pegas-1.0-ppc64le.qcow2, >>>> if=none,cache=none,id=rootdisk,format=qcow2 -monitor telnet >>>> :127.0.0.1:1234,server,nowait -net nic,model=virtio -net >>>> user -redir tcp:2000::22 -device nec-usb-xhci -smp 8,cores=1, >>>> threads=1,maxcpus=-12 >>>> >>>> (process:12149): GLib-ERROR **: gmem.c:130: failed to allocate >>>> 18446744073709550568 bytes >>>> >>>> Trace/breakpoint trap >>>> >>>> Reported-by: R.Nageswara Sastry <rnsastry@linux.vnet.ibm.com> >>>> Signed-off-by: Seeteena Thoufeek <s1seetee@linux.vnet.ibm.com> >>> Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org> >>> >>>> --- >>>> v1 -> v2: >>>> - Fix the error check in vl.c to make it generic. >>>> v2 -> v3: >>>> - Fix coding style pointed out by patchew. >>>> - Fix check for "<= 0" instead of just "< 0". >>>> v3 -> v4: >>>> - Fix subject line. >>>> - Removed space before ":" from vl.c:1248 >>>> - Removed Reviewed-by: flag >>>> v4-> v5: >>>> - Code rework to declare max_cpus as unsigned int in sysemu.h >>>> - Remove the error check in vl.c referred in v2. >>>> - declare max_cpus as unsigned int in vl.c >>>> --- >>>> include/sysemu/sysemu.h | 2 +- >>>> vl.c | 6 +++--- >>>> 2 files changed, 4 insertions(+), 4 deletions(-) >>>> >>>> diff --git a/include/sysemu/sysemu.h b/include/sysemu/sysemu.h >>>> index b213696..c083869 100644 >>>> --- a/include/sysemu/sysemu.h >>>> +++ b/include/sysemu/sysemu.h >>>> @@ -113,7 +113,7 @@ extern int win2k_install_hack; >>>> extern int alt_grab; >>>> extern int ctrl_grab; >>>> extern int smp_cpus; >>>> -extern int max_cpus; >>>> +extern unsigned int max_cpus; >>>> extern int cursor_hide; >>>> extern int graphic_rotate; >>>> extern int no_quit; >>>> diff --git a/vl.c b/vl.c >>>> index 8e247cc..1470c21 100644 >>>> --- a/vl.c >>>> +++ b/vl.c >>>> @@ -164,7 +164,7 @@ Chardev *sclp_hds[MAX_SCLP_CONSOLES]; >>>> int win2k_install_hack = 0; >>>> int singlestep = 0; >>>> int smp_cpus = 1; >>>> -int max_cpus = 1; >>>> +unsigned int max_cpus = 1; >>>> int smp_cores = 1; >>>> int smp_threads = 1; >>>> int acpi_enabled = 1; >>>> @@ -4233,8 +4233,8 @@ int main(int argc, char **argv, char **envp) >>>> machine_class->max_cpus = machine_class->max_cpus ?: 1; /* >>>> Default to UP */ >>>> if (max_cpus > machine_class->max_cpus) { >>>> - error_report("Number of SMP CPUs requested (%d) exceeds max >>>> CPUs " >>>> - "supported by machine '%s' (%d)", max_cpus, >>>> + error_report("Invalid SMP CPUs %d. The max CPUs " >>>> + "supported by machine '%s' is %d", max_cpus, >>>> machine_class->name, machine_class->max_cpus); >>>> exit(1); >>>> } >>>> >>
On Thu, Sep 28, 2017 at 06:38:55PM +0530, seeteena wrote: > > Thanks Thomas. Since you already put them on cc. I will wait for the > response. At this point, I think your patch has been lost in the noise, I'm afraid. I suggest reposting, CCing those suggested people from the start. I'd also suggest CCing qemu-trivial@nongnu.org, I think this patch meets the guidelines for a trivial patch. > > > On 09/25/2017 02:21 PM, Thomas Huth wrote: > > On 25.09.2017 10:43, seeteena wrote: > > > Hi Philippe, > > > > > > I have not seen patch went upstream.. > > You need to get the attention of a maintainer who could pick up the > > patch, e.g. by putting them on CC:. See the MAINTAINERS file for who is > > responsible for the various parts of QEMU. I've put Eduardo (Numa) and > > Paolo (vl.c) on CC: now, I hope one of them can pick up the patch. > > > > Thomas > > > > > > > On 09/04/2017 09:12 PM, Philippe Mathieu-Daudé wrote: > > > > On 09/04/2017 04:43 AM, Seeteena Thoufeek wrote: > > > > > ---Steps to Reproduce--- > > > > > > > > > > When passed a negative number to 'maxcpus' parameter, Qemu aborts > > > > > with a core dump. > > > > > > > > > > Run the following command with maxcpus argument as negative number > > > > > > > > > > ppc64-softmmu/qemu-system-ppc64 --nographic -vga none -machine > > > > > pseries,accel=kvm,kvm-type=HV -m size=200g -device virtio-blk-pci, > > > > > drive=rootdisk -drive file=/home/images/pegas-1.0-ppc64le.qcow2, > > > > > if=none,cache=none,id=rootdisk,format=qcow2 -monitor telnet > > > > > :127.0.0.1:1234,server,nowait -net nic,model=virtio -net > > > > > user -redir tcp:2000::22 -device nec-usb-xhci -smp 8,cores=1, > > > > > threads=1,maxcpus=-12 > > > > > > > > > > (process:12149): GLib-ERROR **: gmem.c:130: failed to allocate > > > > > 18446744073709550568 bytes > > > > > > > > > > Trace/breakpoint trap > > > > > > > > > > Reported-by: R.Nageswara Sastry <rnsastry@linux.vnet.ibm.com> > > > > > Signed-off-by: Seeteena Thoufeek <s1seetee@linux.vnet.ibm.com> > > > > Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org> > > > > > > > > > --- > > > > > v1 -> v2: > > > > > - Fix the error check in vl.c to make it generic. > > > > > v2 -> v3: > > > > > - Fix coding style pointed out by patchew. > > > > > - Fix check for "<= 0" instead of just "< 0". > > > > > v3 -> v4: > > > > > - Fix subject line. > > > > > - Removed space before ":" from vl.c:1248 > > > > > - Removed Reviewed-by: flag > > > > > v4-> v5: > > > > > - Code rework to declare max_cpus as unsigned int in sysemu.h > > > > > - Remove the error check in vl.c referred in v2. > > > > > - declare max_cpus as unsigned int in vl.c > > > > > --- > > > > > include/sysemu/sysemu.h | 2 +- > > > > > vl.c | 6 +++--- > > > > > 2 files changed, 4 insertions(+), 4 deletions(-) > > > > > > > > > > diff --git a/include/sysemu/sysemu.h b/include/sysemu/sysemu.h > > > > > index b213696..c083869 100644 > > > > > --- a/include/sysemu/sysemu.h > > > > > +++ b/include/sysemu/sysemu.h > > > > > @@ -113,7 +113,7 @@ extern int win2k_install_hack; > > > > > extern int alt_grab; > > > > > extern int ctrl_grab; > > > > > extern int smp_cpus; > > > > > -extern int max_cpus; > > > > > +extern unsigned int max_cpus; > > > > > extern int cursor_hide; > > > > > extern int graphic_rotate; > > > > > extern int no_quit; > > > > > diff --git a/vl.c b/vl.c > > > > > index 8e247cc..1470c21 100644 > > > > > --- a/vl.c > > > > > +++ b/vl.c > > > > > @@ -164,7 +164,7 @@ Chardev *sclp_hds[MAX_SCLP_CONSOLES]; > > > > > int win2k_install_hack = 0; > > > > > int singlestep = 0; > > > > > int smp_cpus = 1; > > > > > -int max_cpus = 1; > > > > > +unsigned int max_cpus = 1; > > > > > int smp_cores = 1; > > > > > int smp_threads = 1; > > > > > int acpi_enabled = 1; > > > > > @@ -4233,8 +4233,8 @@ int main(int argc, char **argv, char **envp) > > > > > machine_class->max_cpus = machine_class->max_cpus ?: 1; /* > > > > > Default to UP */ > > > > > if (max_cpus > machine_class->max_cpus) { > > > > > - error_report("Number of SMP CPUs requested (%d) exceeds max > > > > > CPUs " > > > > > - "supported by machine '%s' (%d)", max_cpus, > > > > > + error_report("Invalid SMP CPUs %d. The max CPUs " > > > > > + "supported by machine '%s' is %d", max_cpus, > > > > > machine_class->name, machine_class->max_cpus); > > > > > exit(1); > > > > > } > > > > > > > > > >
On Fri, Oct 06, 2017 at 03:15:44PM +1100, David Gibson wrote: > On Thu, Sep 28, 2017 at 06:38:55PM +0530, seeteena wrote: > > > > Thanks Thomas. Since you already put them on cc. I will wait for the > > response. > > At this point, I think your patch has been lost in the noise, I'm > afraid. I suggest reposting, CCing those suggested people from the > start. I'd also suggest CCing qemu-trivial@nongnu.org, I think this > patch meets the guidelines for a trivial patch. I'm queueing on machine-next, sorry for letting it fall through. > > > > > > > On 09/25/2017 02:21 PM, Thomas Huth wrote: > > > On 25.09.2017 10:43, seeteena wrote: > > > > Hi Philippe, > > > > > > > > I have not seen patch went upstream.. > > > You need to get the attention of a maintainer who could pick up the > > > patch, e.g. by putting them on CC:. See the MAINTAINERS file for who is > > > responsible for the various parts of QEMU. I've put Eduardo (Numa) and > > > Paolo (vl.c) on CC: now, I hope one of them can pick up the patch. > > > > > > Thomas > > > > > > > > > > On 09/04/2017 09:12 PM, Philippe Mathieu-Daudé wrote: > > > > > On 09/04/2017 04:43 AM, Seeteena Thoufeek wrote: > > > > > > ---Steps to Reproduce--- > > > > > > > > > > > > When passed a negative number to 'maxcpus' parameter, Qemu aborts > > > > > > with a core dump. > > > > > > > > > > > > Run the following command with maxcpus argument as negative number > > > > > > > > > > > > ppc64-softmmu/qemu-system-ppc64 --nographic -vga none -machine > > > > > > pseries,accel=kvm,kvm-type=HV -m size=200g -device virtio-blk-pci, > > > > > > drive=rootdisk -drive file=/home/images/pegas-1.0-ppc64le.qcow2, > > > > > > if=none,cache=none,id=rootdisk,format=qcow2 -monitor telnet > > > > > > :127.0.0.1:1234,server,nowait -net nic,model=virtio -net > > > > > > user -redir tcp:2000::22 -device nec-usb-xhci -smp 8,cores=1, > > > > > > threads=1,maxcpus=-12 > > > > > > > > > > > > (process:12149): GLib-ERROR **: gmem.c:130: failed to allocate > > > > > > 18446744073709550568 bytes > > > > > > > > > > > > Trace/breakpoint trap > > > > > > > > > > > > Reported-by: R.Nageswara Sastry <rnsastry@linux.vnet.ibm.com> > > > > > > Signed-off-by: Seeteena Thoufeek <s1seetee@linux.vnet.ibm.com> > > > > > Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org> > > > > > > > > > > > --- > > > > > > v1 -> v2: > > > > > > - Fix the error check in vl.c to make it generic. > > > > > > v2 -> v3: > > > > > > - Fix coding style pointed out by patchew. > > > > > > - Fix check for "<= 0" instead of just "< 0". > > > > > > v3 -> v4: > > > > > > - Fix subject line. > > > > > > - Removed space before ":" from vl.c:1248 > > > > > > - Removed Reviewed-by: flag > > > > > > v4-> v5: > > > > > > - Code rework to declare max_cpus as unsigned int in sysemu.h > > > > > > - Remove the error check in vl.c referred in v2. > > > > > > - declare max_cpus as unsigned int in vl.c > > > > > > --- > > > > > > include/sysemu/sysemu.h | 2 +- > > > > > > vl.c | 6 +++--- > > > > > > 2 files changed, 4 insertions(+), 4 deletions(-) > > > > > > > > > > > > diff --git a/include/sysemu/sysemu.h b/include/sysemu/sysemu.h > > > > > > index b213696..c083869 100644 > > > > > > --- a/include/sysemu/sysemu.h > > > > > > +++ b/include/sysemu/sysemu.h > > > > > > @@ -113,7 +113,7 @@ extern int win2k_install_hack; > > > > > > extern int alt_grab; > > > > > > extern int ctrl_grab; > > > > > > extern int smp_cpus; > > > > > > -extern int max_cpus; > > > > > > +extern unsigned int max_cpus; > > > > > > extern int cursor_hide; > > > > > > extern int graphic_rotate; > > > > > > extern int no_quit; > > > > > > diff --git a/vl.c b/vl.c > > > > > > index 8e247cc..1470c21 100644 > > > > > > --- a/vl.c > > > > > > +++ b/vl.c > > > > > > @@ -164,7 +164,7 @@ Chardev *sclp_hds[MAX_SCLP_CONSOLES]; > > > > > > int win2k_install_hack = 0; > > > > > > int singlestep = 0; > > > > > > int smp_cpus = 1; > > > > > > -int max_cpus = 1; > > > > > > +unsigned int max_cpus = 1; > > > > > > int smp_cores = 1; > > > > > > int smp_threads = 1; > > > > > > int acpi_enabled = 1; > > > > > > @@ -4233,8 +4233,8 @@ int main(int argc, char **argv, char **envp) > > > > > > machine_class->max_cpus = machine_class->max_cpus ?: 1; /* > > > > > > Default to UP */ > > > > > > if (max_cpus > machine_class->max_cpus) { > > > > > > - error_report("Number of SMP CPUs requested (%d) exceeds max > > > > > > CPUs " > > > > > > - "supported by machine '%s' (%d)", max_cpus, > > > > > > + error_report("Invalid SMP CPUs %d. The max CPUs " > > > > > > + "supported by machine '%s' is %d", max_cpus, > > > > > > machine_class->name, machine_class->max_cpus); > > > > > > exit(1); > > > > > > } > > > > > > > > > > > > > > > > -- > 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
Thanks. Eduardo Habkost On 10/06/2017 05:22 PM, Eduardo Habkost wrote: > On Fri, Oct 06, 2017 at 03:15:44PM +1100, David Gibson wrote: >> On Thu, Sep 28, 2017 at 06:38:55PM +0530, seeteena wrote: >>> Thanks Thomas. Since you already put them on cc. I will wait for the >>> response. >> At this point, I think your patch has been lost in the noise, I'm >> afraid. I suggest reposting, CCing those suggested people from the >> start. I'd also suggest CCing qemu-trivial@nongnu.org, I think this >> patch meets the guidelines for a trivial patch. > I'm queueing on machine-next, sorry for letting it fall through. > >>> >>> On 09/25/2017 02:21 PM, Thomas Huth wrote: >>>> On 25.09.2017 10:43, seeteena wrote: >>>>> Hi Philippe, >>>>> >>>>> I have not seen patch went upstream.. >>>> You need to get the attention of a maintainer who could pick up the >>>> patch, e.g. by putting them on CC:. See the MAINTAINERS file for who is >>>> responsible for the various parts of QEMU. I've put Eduardo (Numa) and >>>> Paolo (vl.c) on CC: now, I hope one of them can pick up the patch. >>>> >>>> Thomas >>>> >>>> >>>>> On 09/04/2017 09:12 PM, Philippe Mathieu-Daudé wrote: >>>>>> On 09/04/2017 04:43 AM, Seeteena Thoufeek wrote: >>>>>>> ---Steps to Reproduce--- >>>>>>> >>>>>>> When passed a negative number to 'maxcpus' parameter, Qemu aborts >>>>>>> with a core dump. >>>>>>> >>>>>>> Run the following command with maxcpus argument as negative number >>>>>>> >>>>>>> ppc64-softmmu/qemu-system-ppc64 --nographic -vga none -machine >>>>>>> pseries,accel=kvm,kvm-type=HV -m size=200g -device virtio-blk-pci, >>>>>>> drive=rootdisk -drive file=/home/images/pegas-1.0-ppc64le.qcow2, >>>>>>> if=none,cache=none,id=rootdisk,format=qcow2 -monitor telnet >>>>>>> :127.0.0.1:1234,server,nowait -net nic,model=virtio -net >>>>>>> user -redir tcp:2000::22 -device nec-usb-xhci -smp 8,cores=1, >>>>>>> threads=1,maxcpus=-12 >>>>>>> >>>>>>> (process:12149): GLib-ERROR **: gmem.c:130: failed to allocate >>>>>>> 18446744073709550568 bytes >>>>>>> >>>>>>> Trace/breakpoint trap >>>>>>> >>>>>>> Reported-by: R.Nageswara Sastry <rnsastry@linux.vnet.ibm.com> >>>>>>> Signed-off-by: Seeteena Thoufeek <s1seetee@linux.vnet.ibm.com> >>>>>> Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org> >>>>>> >>>>>>> --- >>>>>>> v1 -> v2: >>>>>>> - Fix the error check in vl.c to make it generic. >>>>>>> v2 -> v3: >>>>>>> - Fix coding style pointed out by patchew. >>>>>>> - Fix check for "<= 0" instead of just "< 0". >>>>>>> v3 -> v4: >>>>>>> - Fix subject line. >>>>>>> - Removed space before ":" from vl.c:1248 >>>>>>> - Removed Reviewed-by: flag >>>>>>> v4-> v5: >>>>>>> - Code rework to declare max_cpus as unsigned int in sysemu.h >>>>>>> - Remove the error check in vl.c referred in v2. >>>>>>> - declare max_cpus as unsigned int in vl.c >>>>>>> --- >>>>>>> include/sysemu/sysemu.h | 2 +- >>>>>>> vl.c | 6 +++--- >>>>>>> 2 files changed, 4 insertions(+), 4 deletions(-) >>>>>>> >>>>>>> diff --git a/include/sysemu/sysemu.h b/include/sysemu/sysemu.h >>>>>>> index b213696..c083869 100644 >>>>>>> --- a/include/sysemu/sysemu.h >>>>>>> +++ b/include/sysemu/sysemu.h >>>>>>> @@ -113,7 +113,7 @@ extern int win2k_install_hack; >>>>>>> extern int alt_grab; >>>>>>> extern int ctrl_grab; >>>>>>> extern int smp_cpus; >>>>>>> -extern int max_cpus; >>>>>>> +extern unsigned int max_cpus; >>>>>>> extern int cursor_hide; >>>>>>> extern int graphic_rotate; >>>>>>> extern int no_quit; >>>>>>> diff --git a/vl.c b/vl.c >>>>>>> index 8e247cc..1470c21 100644 >>>>>>> --- a/vl.c >>>>>>> +++ b/vl.c >>>>>>> @@ -164,7 +164,7 @@ Chardev *sclp_hds[MAX_SCLP_CONSOLES]; >>>>>>> int win2k_install_hack = 0; >>>>>>> int singlestep = 0; >>>>>>> int smp_cpus = 1; >>>>>>> -int max_cpus = 1; >>>>>>> +unsigned int max_cpus = 1; >>>>>>> int smp_cores = 1; >>>>>>> int smp_threads = 1; >>>>>>> int acpi_enabled = 1; >>>>>>> @@ -4233,8 +4233,8 @@ int main(int argc, char **argv, char **envp) >>>>>>> machine_class->max_cpus = machine_class->max_cpus ?: 1; /* >>>>>>> Default to UP */ >>>>>>> if (max_cpus > machine_class->max_cpus) { >>>>>>> - error_report("Number of SMP CPUs requested (%d) exceeds max >>>>>>> CPUs " >>>>>>> - "supported by machine '%s' (%d)", max_cpus, >>>>>>> + error_report("Invalid SMP CPUs %d. The max CPUs " >>>>>>> + "supported by machine '%s' is %d", max_cpus, >>>>>>> machine_class->name, machine_class->max_cpus); >>>>>>> exit(1); >>>>>>> } >>>>>>> >>> >> -- >> 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 > >
diff --git a/include/sysemu/sysemu.h b/include/sysemu/sysemu.h index b213696..c083869 100644 --- a/include/sysemu/sysemu.h +++ b/include/sysemu/sysemu.h @@ -113,7 +113,7 @@ extern int win2k_install_hack; extern int alt_grab; extern int ctrl_grab; extern int smp_cpus; -extern int max_cpus; +extern unsigned int max_cpus; extern int cursor_hide; extern int graphic_rotate; extern int no_quit; diff --git a/vl.c b/vl.c index 8e247cc..1470c21 100644 --- a/vl.c +++ b/vl.c @@ -164,7 +164,7 @@ Chardev *sclp_hds[MAX_SCLP_CONSOLES]; int win2k_install_hack = 0; int singlestep = 0; int smp_cpus = 1; -int max_cpus = 1; +unsigned int max_cpus = 1; int smp_cores = 1; int smp_threads = 1; int acpi_enabled = 1; @@ -4233,8 +4233,8 @@ int main(int argc, char **argv, char **envp) machine_class->max_cpus = machine_class->max_cpus ?: 1; /* Default to UP */ if (max_cpus > machine_class->max_cpus) { - error_report("Number of SMP CPUs requested (%d) exceeds max CPUs " - "supported by machine '%s' (%d)", max_cpus, + error_report("Invalid SMP CPUs %d. The max CPUs " + "supported by machine '%s' is %d", max_cpus, machine_class->name, machine_class->max_cpus); exit(1); }
---Steps to Reproduce--- When passed a negative number to 'maxcpus' parameter, Qemu aborts with a core dump. Run the following command with maxcpus argument as negative number ppc64-softmmu/qemu-system-ppc64 --nographic -vga none -machine pseries,accel=kvm,kvm-type=HV -m size=200g -device virtio-blk-pci, drive=rootdisk -drive file=/home/images/pegas-1.0-ppc64le.qcow2, if=none,cache=none,id=rootdisk,format=qcow2 -monitor telnet :127.0.0.1:1234,server,nowait -net nic,model=virtio -net user -redir tcp:2000::22 -device nec-usb-xhci -smp 8,cores=1, threads=1,maxcpus=-12 (process:12149): GLib-ERROR **: gmem.c:130: failed to allocate 18446744073709550568 bytes Trace/breakpoint trap Reported-by: R.Nageswara Sastry <rnsastry@linux.vnet.ibm.com> Signed-off-by: Seeteena Thoufeek <s1seetee@linux.vnet.ibm.com> --- v1 -> v2: - Fix the error check in vl.c to make it generic. v2 -> v3: - Fix coding style pointed out by patchew. - Fix check for "<= 0" instead of just "< 0". v3 -> v4: - Fix subject line. - Removed space before ":" from vl.c:1248 - Removed Reviewed-by: flag v4-> v5: - Code rework to declare max_cpus as unsigned int in sysemu.h - Remove the error check in vl.c referred in v2. - declare max_cpus as unsigned int in vl.c --- include/sysemu/sysemu.h | 2 +- vl.c | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-)