qemu/chardev
Daniel P. Berrangé 9a23075cef chardev/char-socket: skip automatic zero-init of large array
The 'tcp_chr_read' method has a 4k byte array used for copying
data between the socket and device. Skip the automatic zero-init
of this array to eliminate the performance overhead in the I/O
hot path.

The 'buf' array will be fully initialized when reading data off
the network socket.

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
Message-id: 20250610123709.835102-7-berrange@redhat.com
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
2025-06-12 13:39:08 -04:00
..
baum.c qom: Have class_init() take a const data argument 2025-04-25 17:00:41 +02:00
char-console.c qom: Have class_init() take a const data argument 2025-04-25 17:00:41 +02:00
char-fd.c chardev/char-fd: skip automatic zero-init of large array 2025-06-12 13:39:08 -04:00
char-fe.c include: Rename sysemu/ -> system/ 2024-12-20 17:44:56 +01:00
char-file.c qom: Have class_init() take a const data argument 2025-04-25 17:00:41 +02:00
char-hmp-cmds.c qapi: Move include/qapi/qmp/ to include/qobject/ 2025-02-10 15:33:16 +01:00
char-hub.c qom: Have class_init() take a const data argument 2025-04-25 17:00:41 +02:00
char-io.c Revert "qemu-char: do not operate on sources from finalize callbacks" 2024-07-16 10:45:06 +02:00
char-mux.c qom: Have class_init() take a const data argument 2025-04-25 17:00:41 +02:00
char-null.c qom: Have class_init() take a const data argument 2025-04-25 17:00:41 +02:00
char-parallel.c qom: Have class_init() take a const data argument 2025-04-25 17:00:41 +02:00
char-pipe.c qom: Have class_init() take a const data argument 2025-04-25 17:00:41 +02:00
char-pty.c chardev/char-pty: skip automatic zero-init of large array 2025-06-12 13:39:08 -04:00
char-ringbuf.c qom: Have class_init() take a const data argument 2025-04-25 17:00:41 +02:00
char-serial.c qom: Have class_init() take a const data argument 2025-04-25 17:00:41 +02:00
char-socket.c chardev/char-socket: skip automatic zero-init of large array 2025-06-12 13:39:08 -04:00
char-stdio.c qom: Have class_init() take a const data argument 2025-04-25 17:00:41 +02:00
char-udp.c qom: Have class_init() take a const data argument 2025-04-25 17:00:41 +02:00
char-win-stdio.c qom: Have class_init() take a const data argument 2025-04-25 17:00:41 +02:00
char-win.c qom: Have class_init() take a const data argument 2025-04-25 17:00:41 +02:00
char.c qom: Have class_init() take a const data argument 2025-04-25 17:00:41 +02:00
chardev-internal.h chardev/char-hub: implement backend chardev aggregator 2025-02-03 13:57:08 +04:00
meson.build chardev/char-hub: implement backend chardev aggregator 2025-02-03 13:57:08 +04:00
msmouse.c qom: Have class_init() take a const data argument 2025-04-25 17:00:41 +02:00
spice.c qom: Have class_init() take a const data argument 2025-04-25 17:00:41 +02:00
testdev.c qom: Have class_init() take a const data argument 2025-04-25 17:00:41 +02:00
trace-events chardev: add tracing of socket error conditions 2024-07-24 10:39:10 +01:00
trace.h trace: switch position of headers to what Meson requires 2020-08-21 06:18:24 -04:00
wctablet.c qom: Have class_init() take a const data argument 2025-04-25 17:00:41 +02:00