mirror of https://github.com/xqemu/xqemu.git
virtio-console: Properly initialise class methods
The earlier code really was a hack: initialising class methods in an object init function as noted by Anthony. The motivation for that was to not have the virtio-serial-bus call into the callback functions if there was no chardev backend registered. However, that really wasn't a worthwhile optimisation, and definitely not one that was well-implemented. Get rid of it. Reported-by: Anthony Liguori <aliguori@us.ibm.com> Signed-off-by: Amit Shah <amit.shah@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
This commit is contained in:
parent
6640422c17
commit
05e7af694c
|
@ -120,9 +120,6 @@ static int virtconsole_initfn(VirtIOSerialPort *port)
|
|||
if (vcon->chr) {
|
||||
qemu_chr_add_handlers(vcon->chr, chr_can_read, chr_read, chr_event,
|
||||
vcon);
|
||||
info->have_data = flush_buf;
|
||||
info->guest_open = guest_open;
|
||||
info->guest_close = guest_close;
|
||||
}
|
||||
|
||||
return 0;
|
||||
|
@ -149,6 +146,9 @@ static VirtIOSerialPortInfo virtconsole_info = {
|
|||
.is_console = true,
|
||||
.init = virtconsole_initfn,
|
||||
.exit = virtconsole_exitfn,
|
||||
.have_data = flush_buf,
|
||||
.guest_open = guest_open,
|
||||
.guest_close = guest_close,
|
||||
.qdev.props = (Property[]) {
|
||||
DEFINE_PROP_CHR("chardev", VirtConsole, chr),
|
||||
DEFINE_PROP_END_OF_LIST(),
|
||||
|
@ -166,6 +166,9 @@ static VirtIOSerialPortInfo virtserialport_info = {
|
|||
.qdev.size = sizeof(VirtConsole),
|
||||
.init = virtconsole_initfn,
|
||||
.exit = virtconsole_exitfn,
|
||||
.have_data = flush_buf,
|
||||
.guest_open = guest_open,
|
||||
.guest_close = guest_close,
|
||||
.qdev.props = (Property[]) {
|
||||
DEFINE_PROP_CHR("chardev", VirtConsole, chr),
|
||||
DEFINE_PROP_END_OF_LIST(),
|
||||
|
|
Loading…
Reference in New Issue