Fix the following crash:
$ qemu-system-x86_64 -cpu ''
qemu-system-x86_64: qom/cpu.c:291: cpu_class_by_name: \
Assertion `cpu_model && cc->class_by_name' failed.
Regression test script included.
Fixes: 99193d8f2e
("cpu: drop unnecessary NULL check and cpu_common_class_by_name()")
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
Message-Id: <20190418034501.5038-1-ehabkost@redhat.com>
Reviewed-by: Stefano Garzarella <sgarzare@redhat.com>
Tested-by: Stefano Garzarella <sgarzare@redhat.com>
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
20 lines
754 B
Python
20 lines
754 B
Python
# Check for crash when using empty -cpu option
|
|
#
|
|
# Copyright (c) 2019 Red Hat, Inc.
|
|
#
|
|
# Author:
|
|
# Eduardo Habkost <ehabkost@redhat.com>
|
|
#
|
|
# This work is licensed under the terms of the GNU GPL, version 2 or
|
|
# later. See the COPYING file in the top-level directory.
|
|
import subprocess
|
|
from avocado_qemu import Test
|
|
|
|
class EmptyCPUModel(Test):
|
|
def test(self):
|
|
cmd = [self.qemu_bin, '-S', '-display', 'none', '-machine', 'none', '-cpu', '']
|
|
r = subprocess.run(cmd, stderr=subprocess.PIPE, stdout=subprocess.PIPE)
|
|
self.assertEquals(r.returncode, 1, "QEMU exit code should be 1")
|
|
self.assertEquals(r.stdout, b'', "QEMU stdout should be empty")
|
|
self.assertNotEquals(r.stderr, b'', "QEMU stderr shouldn't be empty")
|