On (Tue) Jan 11 2011 [17:13:15], Blue Swirl wrote: > > +static QemuChrHandlers gdb_handlers = { > > + .fd_can_read = gdb_chr_can_receive, > > + .fd_read = gdb_chr_receive, > > + .fd_event = gdb_chr_event, > > +}; > > These structures should be const.
Hm, I had that but looks like it got lost in some rebase. Added again. > > @@ -190,15 +190,19 @@ void qemu_chr_send_event(CharDriverState *s, int > > event) > > s->chr_send_event(s, event); > > } > > > > +static QemuChrHandlers null_handlers = { > > + /* All handlers are initialised to NULL */ > > +}; > > + > > void qemu_chr_add_handlers(CharDriverState *s, > > - IOCanReadHandler *fd_can_read, > > - IOReadHandler *fd_read, > > - IOEventHandler *fd_event, > > - void *opaque) > > -{ > > - s->chr_can_read = fd_can_read; > > - s->chr_read = fd_read; > > - s->chr_event = fd_event; > > + QemuChrHandlers *handlers, void *opaque) > > +{ > > Here we could also check if (!s) and return if so. This would simplify > the callers a bit. Simplified in what way? Amit