This is with QEMU v8.1.0-391-gc152379422a2.
I use the command line from (scroll to the bottom):
https://github.com/tianocore/edk2/commit/49f06b664018
(with "-full-screen" removed).
The crash is as follows:
Unexpected error in object_property_find_err() at
../../src/upstream/qemu/qom/object.c:1314:
qemu: Property 'qemu-fixed-text-console.device' not found
Aborted (core dumped)
(Full backtrace attached.)
If I replace the "-device virtio-gpu-pci" option with "-nographic", then
there is no crash; QEMU launches fine and the guest starts booting fine.
I think this is a board-related problem; the riscv virt board code
likely does not set up the console properly.
Furthermore, I reckon this could be regression. When Sunil's above patch
was committed to edk2 (2023-06-23), the graphical guest window must have
worked still.
Laszlo
#0 0x00007ffff4ea154c in __pthread_kill_implementation () at /lib64/libc.so.6
#1 0x00007ffff4e54d46 in raise () at /lib64/libc.so.6
#2 0x00007ffff4e287f3 in abort () at /lib64/libc.so.6
#3 0x0000555555fc4a75 in error_handle (errp=0x5555567897b8 <error_abort>,
err=0x555557aee860) at ../../src/upstream/qemu/util/error.c:41
#4 0x0000555555fc4bf8 in error_setv (errp=0x5555567897b8 <error_abort>,
src=0x555556205068 "../../src/upstream/qemu/qom/object.c", line=1314,
func=0x5555562058a0 <__func__.20> "object_property_find_err",
err_class=ERROR_CLASS_GENERIC_ERROR, fmt=0x555556205451 "Property '%s.%s' not
found", ap=0x7fffffffce20, suffix=0x0) at
../../src/upstream/qemu/util/error.c:82
err = 0x555557aee860
saved_errno = 2
__PRETTY_FUNCTION__ = "error_setv"
#5 0x0000555555fc4dcb in error_setg_internal (errp=0x5555567897b8
<error_abort>, src=0x555556205068 "../../src/upstream/qemu/qom/object.c",
line=1314, func=0x5555562058a0 <__func__.20> "object_property_find_err",
fmt=0x555556205451 "Property '%s.%s' not found") at
../../src/upstream/qemu/util/error.c:105
ap = {{gp_offset = 48, fp_offset = 48, overflow_arg_area =
0x7fffffffcf08, reg_save_area = 0x7fffffffce40}}
#6 0x0000555555dbd0ae in object_property_find_err (obj=0x5555569672a0,
name=0x55555608117d "device", errp=0x5555567897b8 <error_abort>) at
../../src/upstream/qemu/qom/object.c:1314
prop = 0x0
__func__ = "object_property_find_err"
#7 0x0000555555dbd361 in object_property_get (obj=0x5555569672a0,
name=0x55555608117d "device", v=0x555556ad05d0, errp=0x5555567897b8
<error_abort>) at ../../src/upstream/qemu/qom/object.c:1389
err = 0x0
prop = 0x7ffff7ffd000 <_rtld_local>
__func__ = "object_property_get"
#8 0x0000555555dc1a44 in object_property_get_qobject (obj=0x5555569672a0,
name=0x55555608117d "device", errp=0x5555567897b8 <error_abort>) at
../../src/upstream/qemu/qom/qom-qobject.c:40
ret = 0x0
v = 0x555556ad05d0
#9 0x0000555555dbd635 in object_property_get_str (obj=0x5555569672a0,
name=0x55555608117d "device", errp=0x5555567897b8 <error_abort>) at
../../src/upstream/qemu/qom/object.c:1437
ret = 0x7fffffffd080
qstring = 0x555555dbdf5d <object_property_get_uint+252>
retval = 0x555557b253b0 "\305'\373\002PU"
__func__ = "object_property_get_str"
#10 0x0000555555dbd7c0 in object_property_get_link (obj=0x5555569672a0,
name=0x55555608117d "device", errp=0x5555567897b8 <error_abort>) at
../../src/upstream/qemu/qom/object.c:1470
str = 0xf036ed7667bd9500 <error: Cannot access memory at address
0xf036ed7667bd9500>
target = 0x555557b253b0
__func__ = "object_property_get_link"
#11 0x00005555558892c1 in qemu_console_is_multihead (dev=0x555557173090) at
../../src/upstream/qemu/ui/console.c:2376
con = 0x5555569672a0
obj = 0x555557173090
f = 0
h = 0
#12 0x00005555558893a9 in qemu_console_get_label (con=0x555556bf7c00) at
../../src/upstream/qemu/ui/console.c:2402
dev = 0x555557173090
multihead = false
c = 0x555556bf7c00
#13 0x0000555555ba5fdf in gd_vc_gfx_init (s=0x555557a45450, vc=0x555557a454f0,
con=0x555556bf7c00, idx=0, group=0x0, view_menu=0x555557cea580) at
../../src/upstream/qemu/ui/gtk.c:2130
zoom_to_fit = false
i = 21845
#14 0x0000555555ba6828 in gd_create_menu_view (s=0x555557a45450,
opts=0x55555675f560 <dpy>) at ../../src/upstream/qemu/ui/gtk.c:2296
group = 0x0
view_menu = 0x555557cea580
separator = 0x555557cee6f0
con = 0x555556bf7c00
vc = 0
#15 0x0000555555ba6a95 in gd_create_menus (s=0x555557a45450,
opts=0x55555675f560 <dpy>) at ../../src/upstream/qemu/ui/gtk.c:2336
settings = 0x7fffffffd270
#16 0x0000555555ba6ee4 in gtk_display_init (ds=0x55555687c390,
opts=0x55555675f560 <dpy>) at ../../src/upstream/qemu/ui/gtk.c:2414
vc = 0x555557a43ea0
s = 0x555557a45450
window_display = 0x555556a93120
theme = 0x555556ae71b0
dir = 0x555557b33290 ""
__PRETTY_FUNCTION__ = "gtk_display_init"
#17 0x0000555555889f4a in qemu_display_init (ds=0x55555687c390,
opts=0x55555675f560 <dpy>) at ../../src/upstream/qemu/ui/console.c:2686
__PRETTY_FUNCTION__ = "qemu_display_init"
#18 0x0000555555b109f0 in qemu_init_displays () at
../../src/upstream/qemu/softmmu/vl.c:2521
ds = 0x55555687c390
#19 0x0000555555b13673 in qemu_init (argc=25, argv=0x7fffffffd568) at
../../src/upstream/qemu/softmmu/vl.c:3644
opts = 0x55555687dcd0
icount_opts = 0x0
accel_opts = 0x0
olist = 0x55555682cc78
optind = 25
optarg = 0x7fffffffdc26 "virtio-net-pci,netdev=net0"
machine_class = 0x555556a58a30
userconfig = true
vmstate_dump_file = 0x0
__func__ = "qemu_init"
__PRETTY_FUNCTION__ = "qemu_init"
#20 0x0000555555873933 in main (argc=25, argv=0x7fffffffd568) at
../../src/upstream/qemu/softmmu/main.c:47