mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-03 15:53:54 -06:00
chardev: do not use machine_init_done
machine_init_done is not the right flag to check when preconfig
is taken into account; for example "./qemu-system-x86_64 -serial
mon:stdio -preconfig" does not print the QEMU monitor header until after
exit_preconfig. Add back a custom bool for mux character devices. This
partially undoes commit c7278b4355
("chardev: introduce chr_machine_done
hook", 2018-03-12), but it keeps the cleaner logic using a function
pointer in ChardevClass.
Reviewed-by: Igor Mammedov <imammedo@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
This commit is contained in:
parent
f66dc8737c
commit
5a1ee6077b
9 changed files with 43 additions and 88 deletions
|
@ -270,8 +270,7 @@ struct ChardevClass {
|
|||
void (*chr_set_echo)(Chardev *chr, bool echo);
|
||||
void (*chr_set_fe_open)(Chardev *chr, int fe_open);
|
||||
void (*chr_be_event)(Chardev *s, QEMUChrEvent event);
|
||||
/* Return 0 if succeeded, 1 if failed */
|
||||
int (*chr_machine_done)(Chardev *chr);
|
||||
void (*chr_options_parsed)(Chardev *chr);
|
||||
};
|
||||
|
||||
Chardev *qemu_chardev_new(const char *id, const char *typename,
|
||||
|
@ -283,6 +282,9 @@ extern int term_escape_char;
|
|||
GSource *qemu_chr_timeout_add_ms(Chardev *chr, guint ms,
|
||||
GSourceFunc func, void *private);
|
||||
|
||||
void suspend_mux_open(void);
|
||||
void resume_mux_open(void);
|
||||
|
||||
/* console.c */
|
||||
void qemu_chr_parse_vc(QemuOpts *opts, ChardevBackend *backend, Error **errp);
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue