41 lines
1.3 KiB
Diff
41 lines
1.3 KiB
Diff
From bb71d9fe1419f44529c91d1b09464718d157e647 Mon Sep 17 00:00:00 2001
|
|
From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berrange@redhat.com>
|
|
Date: Tue, 10 Jun 2025 13:36:51 +0100
|
|
Subject: [PATCH] hw/audio/via-ac97: skip automatic zero-init of large array
|
|
MIME-Version: 1.0
|
|
Content-Type: text/plain; charset=UTF-8
|
|
Content-Transfer-Encoding: 8bit
|
|
|
|
The 'out_cb' method has a 4k byte array used for copying data
|
|
between the audio backend and device. Skip the automatic zero-init
|
|
of this array to eliminate the performance overhead in the I/O hot
|
|
path.
|
|
|
|
The 'tmpbuf' array will be fully initialized when reading data from
|
|
device memory.
|
|
|
|
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
|
|
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
|
|
Message-id: 20250610123709.835102-14-berrange@redhat.com
|
|
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
|
|
---
|
|
hw/audio/via-ac97.c | 2 +-
|
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
|
|
|
diff --git a/hw/audio/via-ac97.c b/hw/audio/via-ac97.c
|
|
index 1e0a5c7398..d5231e1cf2 100644
|
|
--- a/hw/audio/via-ac97.c
|
|
+++ b/hw/audio/via-ac97.c
|
|
@@ -175,7 +175,7 @@ static void out_cb(void *opaque, int avail)
|
|
ViaAC97SGDChannel *c = &s->aur;
|
|
int temp, to_copy, copied;
|
|
bool stop = false;
|
|
- uint8_t tmpbuf[4096];
|
|
+ QEMU_UNINITIALIZED uint8_t tmpbuf[4096];
|
|
|
|
if (c->stat & STAT_PAUSED) {
|
|
return;
|
|
--
|
|
2.47.3
|
|
|