Message ID | 20230705133139.54419-5-philmd@linaro.org |
---|---|
State | Superseded |
Headers | show |
Series | chardev/char-fe: Document FEWatchFunc and use G_SOURCE_CONTINUE/REMOVE | expand |
On Wed, Jul 5, 2023 at 5:33 PM Philippe Mathieu-Daudé <philmd@linaro.org> wrote: > GLib recommend to use G_SOURCE_REMOVE / G_SOURCE_CONTINUE > for GSourceFunc callbacks. Our FEWatchFunc is a GSourceFunc > returning such value. Use such definitions which are > "more memorable" [*]. > > [*] https://docs.gtk.org/glib/callback.SourceFunc.html#return-value > > Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org> > Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com> > --- > hw/char/cadence_uart.c | 8 ++++---- > hw/char/cmsdk-apb-uart.c | 6 +++--- > hw/char/ibex_uart.c | 8 ++++---- > hw/char/nrf51_uart.c | 4 ++-- > hw/char/serial.c | 2 +- > hw/char/virtio-console.c | 2 +- > hw/usb/redirect.c | 2 +- > monitor/monitor.c | 2 +- > net/vhost-user.c | 2 +- > 9 files changed, 18 insertions(+), 18 deletions(-) > > diff --git a/hw/char/cadence_uart.c b/hw/char/cadence_uart.c > index 807e398541..eff0304a18 100644 > --- a/hw/char/cadence_uart.c > +++ b/hw/char/cadence_uart.c > @@ -307,11 +307,11 @@ static gboolean cadence_uart_xmit(void *do_not_use, > GIOCondition cond, > /* instant drain the fifo when there's no back-end */ > if (!qemu_chr_fe_backend_connected(&s->chr)) { > s->tx_count = 0; > - return FALSE; > + return G_SOURCE_REMOVE; > } > > if (!s->tx_count) { > - return FALSE; > + return G_SOURCE_REMOVE; > } > > ret = qemu_chr_fe_write(&s->chr, s->tx_fifo, s->tx_count); > @@ -326,12 +326,12 @@ static gboolean cadence_uart_xmit(void *do_not_use, > GIOCondition cond, > cadence_uart_xmit, s); > if (!r) { > s->tx_count = 0; > - return FALSE; > + return G_SOURCE_REMOVE; > } > } > > uart_update_status(s); > - return FALSE; > + return G_SOURCE_REMOVE; > } > > static void uart_write_tx_fifo(CadenceUARTState *s, const uint8_t *buf, > diff --git a/hw/char/cmsdk-apb-uart.c b/hw/char/cmsdk-apb-uart.c > index f8dc89ee3d..d466cd93de 100644 > --- a/hw/char/cmsdk-apb-uart.c > +++ b/hw/char/cmsdk-apb-uart.c > @@ -199,7 +199,7 @@ static gboolean uart_transmit(void *do_not_use, > GIOCondition cond, void *opaque) > s->watch_tag = 0; > > if (!(s->ctrl & R_CTRL_TX_EN_MASK) || !(s->state & > R_STATE_TXFULL_MASK)) { > - return FALSE; > + return G_SOURCE_REMOVE; > } > > ret = qemu_chr_fe_write(&s->chr, &s->txbuf, 1); > @@ -215,7 +215,7 @@ static gboolean uart_transmit(void *do_not_use, > GIOCondition cond, void *opaque) > } > /* Transmit pending */ > trace_cmsdk_apb_uart_tx_pending(); > - return FALSE; > + return G_SOURCE_REMOVE; > } > > buffer_drained: > @@ -227,7 +227,7 @@ buffer_drained: > s->intstatus |= R_INTSTATUS_TX_MASK; > } > cmsdk_apb_uart_update(s); > - return FALSE; > + return G_SOURCE_REMOVE; > } > > static void uart_cancel_transmit(CMSDKAPBUART *s) > diff --git a/hw/char/ibex_uart.c b/hw/char/ibex_uart.c > index f70adb5308..51708c0836 100644 > --- a/hw/char/ibex_uart.c > +++ b/hw/char/ibex_uart.c > @@ -147,7 +147,7 @@ static gboolean ibex_uart_xmit(void *do_not_use, > GIOCondition cond, > /* instant drain the fifo when there's no back-end */ > if (!qemu_chr_fe_backend_connected(&s->chr)) { > s->tx_level = 0; > - return FALSE; > + return G_SOURCE_REMOVE; > } > > if (!s->tx_level) { > @@ -156,7 +156,7 @@ static gboolean ibex_uart_xmit(void *do_not_use, > GIOCondition cond, > s->uart_intr_state |= R_INTR_STATE_TX_EMPTY_MASK; > s->uart_intr_state &= ~R_INTR_STATE_TX_WATERMARK_MASK; > ibex_uart_update_irqs(s); > - return FALSE; > + return G_SOURCE_REMOVE; > } > > ret = qemu_chr_fe_write(&s->chr, s->tx_fifo, s->tx_level); > @@ -171,7 +171,7 @@ static gboolean ibex_uart_xmit(void *do_not_use, > GIOCondition cond, > ibex_uart_xmit, s); > if (!r) { > s->tx_level = 0; > - return FALSE; > + return G_SOURCE_REMOVE; > } > } > > @@ -192,7 +192,7 @@ static gboolean ibex_uart_xmit(void *do_not_use, > GIOCondition cond, > } > > ibex_uart_update_irqs(s); > - return FALSE; > + return G_SOURCE_REMOVE; > } > > static void uart_write_tx_fifo(IbexUartState *s, const uint8_t *buf, > diff --git a/hw/char/nrf51_uart.c b/hw/char/nrf51_uart.c > index 3c6f982de9..dfe2276d71 100644 > --- a/hw/char/nrf51_uart.c > +++ b/hw/char/nrf51_uart.c > @@ -93,13 +93,13 @@ static gboolean uart_transmit(void *do_not_use, > GIOCondition cond, void *opaque) > */ > goto buffer_drained; > } > - return FALSE; > + return G_SOURCE_REMOVE; > } > > buffer_drained: > s->reg[R_UART_TXDRDY] = 1; > s->pending_tx_byte = false; > - return FALSE; > + return G_SOURCE_REMOVE; > } > > static void uart_cancel_transmit(NRF51UARTState *s) > diff --git a/hw/char/serial.c b/hw/char/serial.c > index 270e1b1094..f3094f860f 100644 > --- a/hw/char/serial.c > +++ b/hw/char/serial.c > @@ -226,7 +226,7 @@ static gboolean serial_watch_cb(void *do_not_use, > GIOCondition cond, > SerialState *s = opaque; > s->watch_tag = 0; > serial_xmit(s); > - return FALSE; > + return G_SOURCE_REMOVE; > } > > static void serial_xmit(SerialState *s) > diff --git a/hw/char/virtio-console.c b/hw/char/virtio-console.c > index dd5a02e339..dbe0b28e60 100644 > --- a/hw/char/virtio-console.c > +++ b/hw/char/virtio-console.c > @@ -45,7 +45,7 @@ static gboolean chr_write_unblocked(void *do_not_use, > GIOCondition cond, > > vcon->watch = 0; > virtio_serial_throttle_port(VIRTIO_SERIAL_PORT(vcon), false); > - return FALSE; > + return G_SOURCE_REMOVE; > } > > /* Callback function that's called when the guest sends us data */ > diff --git a/hw/usb/redirect.c b/hw/usb/redirect.c > index 39fbaaab16..4bbf8afb33 100644 > --- a/hw/usb/redirect.c > +++ b/hw/usb/redirect.c > @@ -278,7 +278,7 @@ static gboolean usbredir_write_unblocked(void > *do_not_use, GIOCondition cond, > dev->watch = 0; > usbredirparser_do_write(dev->parser); > > - return FALSE; > + return G_SOURCE_REMOVE; > } > > static int usbredir_write(void *priv, uint8_t *data, int count) > diff --git a/monitor/monitor.c b/monitor/monitor.c > index dc352f9e9d..941f87815a 100644 > --- a/monitor/monitor.c > +++ b/monitor/monitor.c > @@ -144,7 +144,7 @@ static gboolean monitor_unblocked(void *do_not_use, > GIOCondition cond, > QEMU_LOCK_GUARD(&mon->mon_lock); > mon->out_watch = 0; > monitor_flush_locked(mon); > - return FALSE; > + return G_SOURCE_REMOVE; > } > > /* Caller must hold mon->mon_lock */ > diff --git a/net/vhost-user.c b/net/vhost-user.c > index 5993e4afca..12555518e8 100644 > --- a/net/vhost-user.c > +++ b/net/vhost-user.c > @@ -239,7 +239,7 @@ static gboolean net_vhost_user_watch(void *do_not_use, > GIOCondition cond, > > qemu_chr_fe_disconnect(&s->chr); > > - return TRUE; > + return G_SOURCE_CONTINUE; > } > > static void net_vhost_user_event(void *opaque, QEMUChrEvent event); > -- > 2.38.1 > > >
diff --git a/hw/char/cadence_uart.c b/hw/char/cadence_uart.c index 807e398541..eff0304a18 100644 --- a/hw/char/cadence_uart.c +++ b/hw/char/cadence_uart.c @@ -307,11 +307,11 @@ static gboolean cadence_uart_xmit(void *do_not_use, GIOCondition cond, /* instant drain the fifo when there's no back-end */ if (!qemu_chr_fe_backend_connected(&s->chr)) { s->tx_count = 0; - return FALSE; + return G_SOURCE_REMOVE; } if (!s->tx_count) { - return FALSE; + return G_SOURCE_REMOVE; } ret = qemu_chr_fe_write(&s->chr, s->tx_fifo, s->tx_count); @@ -326,12 +326,12 @@ static gboolean cadence_uart_xmit(void *do_not_use, GIOCondition cond, cadence_uart_xmit, s); if (!r) { s->tx_count = 0; - return FALSE; + return G_SOURCE_REMOVE; } } uart_update_status(s); - return FALSE; + return G_SOURCE_REMOVE; } static void uart_write_tx_fifo(CadenceUARTState *s, const uint8_t *buf, diff --git a/hw/char/cmsdk-apb-uart.c b/hw/char/cmsdk-apb-uart.c index f8dc89ee3d..d466cd93de 100644 --- a/hw/char/cmsdk-apb-uart.c +++ b/hw/char/cmsdk-apb-uart.c @@ -199,7 +199,7 @@ static gboolean uart_transmit(void *do_not_use, GIOCondition cond, void *opaque) s->watch_tag = 0; if (!(s->ctrl & R_CTRL_TX_EN_MASK) || !(s->state & R_STATE_TXFULL_MASK)) { - return FALSE; + return G_SOURCE_REMOVE; } ret = qemu_chr_fe_write(&s->chr, &s->txbuf, 1); @@ -215,7 +215,7 @@ static gboolean uart_transmit(void *do_not_use, GIOCondition cond, void *opaque) } /* Transmit pending */ trace_cmsdk_apb_uart_tx_pending(); - return FALSE; + return G_SOURCE_REMOVE; } buffer_drained: @@ -227,7 +227,7 @@ buffer_drained: s->intstatus |= R_INTSTATUS_TX_MASK; } cmsdk_apb_uart_update(s); - return FALSE; + return G_SOURCE_REMOVE; } static void uart_cancel_transmit(CMSDKAPBUART *s) diff --git a/hw/char/ibex_uart.c b/hw/char/ibex_uart.c index f70adb5308..51708c0836 100644 --- a/hw/char/ibex_uart.c +++ b/hw/char/ibex_uart.c @@ -147,7 +147,7 @@ static gboolean ibex_uart_xmit(void *do_not_use, GIOCondition cond, /* instant drain the fifo when there's no back-end */ if (!qemu_chr_fe_backend_connected(&s->chr)) { s->tx_level = 0; - return FALSE; + return G_SOURCE_REMOVE; } if (!s->tx_level) { @@ -156,7 +156,7 @@ static gboolean ibex_uart_xmit(void *do_not_use, GIOCondition cond, s->uart_intr_state |= R_INTR_STATE_TX_EMPTY_MASK; s->uart_intr_state &= ~R_INTR_STATE_TX_WATERMARK_MASK; ibex_uart_update_irqs(s); - return FALSE; + return G_SOURCE_REMOVE; } ret = qemu_chr_fe_write(&s->chr, s->tx_fifo, s->tx_level); @@ -171,7 +171,7 @@ static gboolean ibex_uart_xmit(void *do_not_use, GIOCondition cond, ibex_uart_xmit, s); if (!r) { s->tx_level = 0; - return FALSE; + return G_SOURCE_REMOVE; } } @@ -192,7 +192,7 @@ static gboolean ibex_uart_xmit(void *do_not_use, GIOCondition cond, } ibex_uart_update_irqs(s); - return FALSE; + return G_SOURCE_REMOVE; } static void uart_write_tx_fifo(IbexUartState *s, const uint8_t *buf, diff --git a/hw/char/nrf51_uart.c b/hw/char/nrf51_uart.c index 3c6f982de9..dfe2276d71 100644 --- a/hw/char/nrf51_uart.c +++ b/hw/char/nrf51_uart.c @@ -93,13 +93,13 @@ static gboolean uart_transmit(void *do_not_use, GIOCondition cond, void *opaque) */ goto buffer_drained; } - return FALSE; + return G_SOURCE_REMOVE; } buffer_drained: s->reg[R_UART_TXDRDY] = 1; s->pending_tx_byte = false; - return FALSE; + return G_SOURCE_REMOVE; } static void uart_cancel_transmit(NRF51UARTState *s) diff --git a/hw/char/serial.c b/hw/char/serial.c index 270e1b1094..f3094f860f 100644 --- a/hw/char/serial.c +++ b/hw/char/serial.c @@ -226,7 +226,7 @@ static gboolean serial_watch_cb(void *do_not_use, GIOCondition cond, SerialState *s = opaque; s->watch_tag = 0; serial_xmit(s); - return FALSE; + return G_SOURCE_REMOVE; } static void serial_xmit(SerialState *s) diff --git a/hw/char/virtio-console.c b/hw/char/virtio-console.c index dd5a02e339..dbe0b28e60 100644 --- a/hw/char/virtio-console.c +++ b/hw/char/virtio-console.c @@ -45,7 +45,7 @@ static gboolean chr_write_unblocked(void *do_not_use, GIOCondition cond, vcon->watch = 0; virtio_serial_throttle_port(VIRTIO_SERIAL_PORT(vcon), false); - return FALSE; + return G_SOURCE_REMOVE; } /* Callback function that's called when the guest sends us data */ diff --git a/hw/usb/redirect.c b/hw/usb/redirect.c index 39fbaaab16..4bbf8afb33 100644 --- a/hw/usb/redirect.c +++ b/hw/usb/redirect.c @@ -278,7 +278,7 @@ static gboolean usbredir_write_unblocked(void *do_not_use, GIOCondition cond, dev->watch = 0; usbredirparser_do_write(dev->parser); - return FALSE; + return G_SOURCE_REMOVE; } static int usbredir_write(void *priv, uint8_t *data, int count) diff --git a/monitor/monitor.c b/monitor/monitor.c index dc352f9e9d..941f87815a 100644 --- a/monitor/monitor.c +++ b/monitor/monitor.c @@ -144,7 +144,7 @@ static gboolean monitor_unblocked(void *do_not_use, GIOCondition cond, QEMU_LOCK_GUARD(&mon->mon_lock); mon->out_watch = 0; monitor_flush_locked(mon); - return FALSE; + return G_SOURCE_REMOVE; } /* Caller must hold mon->mon_lock */ diff --git a/net/vhost-user.c b/net/vhost-user.c index 5993e4afca..12555518e8 100644 --- a/net/vhost-user.c +++ b/net/vhost-user.c @@ -239,7 +239,7 @@ static gboolean net_vhost_user_watch(void *do_not_use, GIOCondition cond, qemu_chr_fe_disconnect(&s->chr); - return TRUE; + return G_SOURCE_CONTINUE; } static void net_vhost_user_event(void *opaque, QEMUChrEvent event);
GLib recommend to use G_SOURCE_REMOVE / G_SOURCE_CONTINUE for GSourceFunc callbacks. Our FEWatchFunc is a GSourceFunc returning such value. Use such definitions which are "more memorable" [*]. [*] https://docs.gtk.org/glib/callback.SourceFunc.html#return-value Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org> --- hw/char/cadence_uart.c | 8 ++++---- hw/char/cmsdk-apb-uart.c | 6 +++--- hw/char/ibex_uart.c | 8 ++++---- hw/char/nrf51_uart.c | 4 ++-- hw/char/serial.c | 2 +- hw/char/virtio-console.c | 2 +- hw/usb/redirect.c | 2 +- monitor/monitor.c | 2 +- net/vhost-user.c | 2 +- 9 files changed, 18 insertions(+), 18 deletions(-)