mux: simplfy muxes_realize_done

mux_chr_event() already send events to all backends, rename it,
export it, and use it from muxes_realize_done. This should help abstract
away mux implementation.

Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Reviewed-by: Eric Blake <eblake@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
This commit is contained in:
Marc-André Lureau 2016-12-14 14:40:45 +03:00
parent 6361813527
commit bed3bb9b7e
3 changed files with 11 additions and 11 deletions

View file

@ -451,22 +451,17 @@ static void muxes_realize_done(Notifier *notifier, void *unused)
{
Chardev *chr;
muxes_realized = true;
QTAILQ_FOREACH(chr, &chardevs, next) {
if (CHARDEV_IS_MUX(chr)) {
MuxChardev *d = MUX_CHARDEV(chr);
int i;
/* send OPENED to all already-attached FEs */
for (i = 0; i < d->mux_cnt; i++) {
mux_chr_send_event(d, i, CHR_EVENT_OPENED);
}
mux_chr_send_all_event(CHARDEV(chr), CHR_EVENT_OPENED);
/* mark mux as OPENED so any new FEs will immediately receive
* OPENED event
*/
qemu_chr_be_event(chr, CHR_EVENT_OPENED);
}
}
muxes_realized = true;
}
static Notifier muxes_realize_notify = {