qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH 0/3] Avoid retrying on serial_xmit with EPIPE
@ 2018-05-31  7:45 Sergio Lopez
  2018-05-31  7:45 ` [Qemu-devel] [PATCH 1/3] io: Implement QIO_CHANNEL_ERR_BROKEN Sergio Lopez
                   ` (2 more replies)
  0 siblings, 3 replies; 18+ messages in thread
From: Sergio Lopez @ 2018-05-31  7:45 UTC (permalink / raw)
  To: berrange, pbonzini, marcandre.lureau, mst; +Cc: qemu-devel, Sergio Lopez

EPIPE is not a recoverable error, so retrying on serial_xmit is a waste of CPU
cycles, and can potentially comprosie the Guest OS stability if both the vCPU
and the emulator thread are pinned to the same pCPU, with the first one
actively polling the serial device and barely giving time to the second to make
any actual progress.

Sergio Lopez (3):
  io: Implement QIO_CHANNEL_ERR_BROKEN
  chardev: On QIO_CHANNEL_ERR_BROKEN set errno to EPIPE
  hw/char/serial: Don't retry on serial_xmit if errno == EPIPE

 chardev/char-io.c    | 3 +++
 hw/char/serial.c     | 1 +
 include/io/channel.h | 1 +
 io/channel-file.c    | 3 +++
 4 files changed, 8 insertions(+)

-- 
1.8.3.1

^ permalink raw reply	[flat|nested] 18+ messages in thread

end of thread, other threads:[~2018-06-01 16:20 UTC | newest]

Thread overview: 18+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-05-31  7:45 [Qemu-devel] [PATCH 0/3] Avoid retrying on serial_xmit with EPIPE Sergio Lopez
2018-05-31  7:45 ` [Qemu-devel] [PATCH 1/3] io: Implement QIO_CHANNEL_ERR_BROKEN Sergio Lopez
2018-06-01 11:50   ` Daniel P. Berrangé
2018-05-31  7:46 ` [Qemu-devel] [PATCH 2/3] chardev: On QIO_CHANNEL_ERR_BROKEN set errno to EPIPE Sergio Lopez
2018-05-31  9:48   ` Marc-André Lureau
2018-05-31 11:03     ` Sergio Lopez
2018-06-01 11:51   ` Daniel P. Berrangé
2018-05-31  7:46 ` [Qemu-devel] [PATCH 3/3] hw/char/serial: Don't retry on serial_xmit if errno == EPIPE Sergio Lopez
2018-05-31  9:52   ` Marc-André Lureau
2018-05-31 11:03     ` Sergio Lopez
2018-05-31 11:07       ` Marc-André Lureau
2018-06-01 11:52     ` Daniel P. Berrangé
2018-06-01 12:05       ` Sergio Lopez
2018-06-01 12:16         ` Paolo Bonzini
2018-06-01 12:28           ` Sergio Lopez
2018-06-01 12:31             ` Paolo Bonzini
2018-06-01 12:43             ` Peter Maydell
2018-06-01 16:20               ` Sergio Lopez

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).