Skip to content

New iohandler API

Amit Shah qemu-devel 1 version In review

Get series with b4
b4 am [email protected]

Versions newest first

  1. v1 Latest7 patches 14 repliesIn review

Patches in v1 No applies recorded yet

#Subject and filesSizeRepliesApplied
1/7iohandlers: Mark current implementation as 'old'vl.c+7 -75 replies
2/7iohandlers: Introduce a new APIiohandler.h vl.c+172 -09 replies
3/7char: tcp: Use new iohandler apiqemu-char.c+36 -120 replies
4/7char: udp: Use new iohandler apiqemu-char.c+19 -30 replies
5/7char: fd: Use new iohandler apiqemu-char.c+20 -40 replies
6/7char: stdio: Use new iohandler apiqemu-char.c+19 -30 replies
7/7char: pty: Use new iohandler apiqemu-char.c+20 -40 replies

Reviews trailers per patch

No Reviewed-by, Acked-by or Tested-by trailers for v1 yet.

Read the v1 thread

Cover letter [Qemu-devel] [PATCH 0/7] New iohandler API

Hello,

This is a new iohandler API implementation. It gets rid of the multiple callbacks and switches to just one callback with an event mask that triggered the callback.

qemu-char.c has been trivially updated to replace all usage of qemu_set_fd_handler* functions to the new api.

Future work includes removing the qemu_set_fd_handler* functions and getting rid of #include "qemu-char.h" from all the src files that don't need it (most of them).

The users of the char api can then be also converted over to a new api in similar fashion, deprecating the usage of can_read callbacks altogether.

I tested this series in two scenarios: monitor on stdio and by running the virtio-serial testsuite, which uses unix sockets and does open/close/read/write/poll calls on the sockets. It all works fine.

Please review and apply.

Amit Shah (7):
iohandlers: Mark current implementation as 'old'
iohandlers: Introduce a new API
char: tcp: Use new iohandler api
char: udp: Use new iohandler api
char: fd: Use new iohandler api
char: stdio: Use new iohandler api
char: pty: Use new iohandler api

 iohandler.h |   28 +++++++++++
 qemu-char.c |  140 +++++++++++++++++++++++++++++++++++++++++++----------
 vl.c        |  154 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++--
 3 files changed, 291 insertions(+), 31 deletions(-)
 create mode 100644 iohandler.h
Signature · 1 line
1.7.4