Thomas Huth
a2a5a7b5e2
hw/sparc/sun4m: Fix problems with device introspection
Several devices of the sun4m machines are using &error_fatal in
their instance_init function and thus can cause QEMU to abort
unexpectedly:
$ echo "{'execute':'qmp_capabilities'}"\
"{'execute':'device-list-properties',"\
" 'arguments':{'typename':'openprom'}}" \
| sparc-softmmu/qemu-system-sparc -M SS-10 -S -qmp stdio
{"QMP": {"version": {"qemu": {"micro": 91, "minor": 11, "major": 2},
"package": "build-all"}, "capabilities": []}}
{"return": {}}
RAMBlock "sun4m.prom" already registered, abort!
Aborted (core dumped)
$ echo "{'execute':'qmp_capabilities'}"\
"{'execute':'device-list-properties',"\
" 'arguments':{'typename':'macio_idreg'}}" \
| sparc-softmmu/qemu-system-sparc -M SS-10 -S -qmp stdio
{"QMP": {"version": {"qemu": {"micro": 91, "minor": 11, "major": 2},
"package": "build-all"}, "capabilities": []}}
{"return": {}}
RAMBlock "sun4m.idreg" already registered, abort!
Aborted (core dumped)
$ echo "{'execute':'qmp_capabilities'}"\
"{'execute':'device-list-properties',"\
" 'arguments':{'typename':'tcx_afx'}}" \
| sparc-softmmu/qemu-system-sparc -M SS-5 -S -qmp stdio
{"QMP": {"version": {"qemu": {"micro": 91, "minor": 11, "major": 2},
"package": "build-all"}, "capabilities": []}}
{"return": {}}
RAMBlock "sun4m.afx" already registered, abort!
Aborted (core dumped)
Fix the issues by converting the instance_init functions into realize()
functions instead, which are allowed to fail (and not called during
device introspection).
Signed-off-by: Thomas Huth <thuth@redhat.com>
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
2018-06-17 11:12:53 +01:00
..
2018-06-07 12:17:22 +02:00
2018-06-11 22:19:57 +03:00
2018-02-09 13:50:17 +01:00
2018-06-15 15:23:34 +01:00
2018-06-15 15:23:34 +01:00
2018-06-01 15:14:31 +02:00
2018-06-15 16:30:27 +01:00
2018-01-22 09:51:00 +01:00
2018-06-15 15:23:34 +01:00
2018-06-15 15:23:34 +01:00
2017-12-18 17:07:02 +03:00
2018-06-01 14:15:10 +02:00
2018-06-12 12:07:30 +02:00
2018-06-15 15:23:34 +01:00
2018-06-01 15:14:31 +02:00
2018-06-04 10:15:16 +01:00
2018-06-12 10:44:36 +10:00
2018-06-15 15:23:34 +01:00
2018-06-15 14:49:44 +02:00
2018-06-15 15:23:34 +01:00
2018-06-15 15:23:34 +01:00
2017-10-15 05:54:43 +03:00
2018-06-12 12:07:30 +02:00
2018-06-01 15:13:46 +02:00
2018-06-01 14:15:10 +02:00
2018-06-15 15:23:34 +01:00
2018-05-23 17:02:03 +03:00
2018-06-01 14:15:10 +02:00
2018-06-08 13:15:33 +01:00
2018-06-15 15:23:34 +01:00
2018-04-26 13:57:00 +01:00
2018-06-15 10:39:53 +08:00
2018-04-26 13:57:00 +01:00
2018-06-01 18:24:16 +01:00
2018-04-26 13:57:00 +01:00
2018-03-20 15:48:34 +00:00
2018-02-13 16:33:31 +00:00
2018-06-12 09:33:52 +10:00
2016-01-29 15:07:25 +00:00
2018-06-15 15:23:34 +01:00
2018-05-03 20:52:29 +03:00
2018-06-01 14:15:10 +02:00
2018-06-15 15:23:34 +01:00
2018-06-15 14:49:44 +02:00
2018-06-08 13:15:34 +01:00
2018-06-15 15:23:34 +01:00
2018-02-09 13:52:16 +01:00
2018-06-17 11:12:53 +01:00
2018-06-17 11:12:41 +01:00
2018-06-12 12:07:30 +02:00
2018-06-08 13:15:33 +01:00
2018-05-24 12:07:04 -04:00
2018-03-12 16:12:46 +01:00
2018-03-12 16:12:48 +01:00
2018-06-15 14:49:44 +02:00
2018-06-15 15:23:34 +01:00
2018-06-15 15:23:34 +01:00
2018-06-15 15:23:34 +01:00
2018-06-01 18:24:16 +01:00
2018-02-06 18:29:46 +01:00
2018-06-01 14:15:10 +02:00
2018-06-01 15:14:31 +02:00