[PATCH 22/43] audio/jack: replace custom logging with report & trace

marcandre.lureau@redhat.com posted 43 patches 1 week, 6 days ago
Maintainers: Gerd Hoffmann <kraxel@redhat.com>, Christian Schoenebeck <qemu_oss@crudebyte.com>, "Marc-André Lureau" <marcandre.lureau@redhat.com>, "Philippe Mathieu-Daudé" <philmd@linaro.org>, Akihiko Odaki <odaki@rsg.ci.i.u-tokyo.ac.jp>, Thomas Huth <huth@tuxfamily.org>, Alexandre Ratchov <alex@caoua.org>, Laurent Vivier <laurent@vivier.eu>, Manos Pitsidianakis <manos.pitsidianakis@linaro.org>, "Michael S. Tsirkin" <mst@redhat.com>, Alistair Francis <alistair@alistair23.me>, "Edgar E. Iglesias" <edgar.iglesias@gmail.com>, Peter Maydell <peter.maydell@linaro.org>
[PATCH 22/43] audio/jack: replace custom logging with report & trace
Posted by marcandre.lureau@redhat.com 1 week, 6 days ago
From: Marc-André Lureau <marcandre.lureau@redhat.com>

Replace the custom audio logging infrastructure with standard QEMU
error reporting and tracing.

Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
---
 audio/jackaudio.c  | 29 +++++++++++++----------------
 audio/trace-events |  9 +++++++++
 2 files changed, 22 insertions(+), 16 deletions(-)

diff --git a/audio/jackaudio.c b/audio/jackaudio.c
index 681eb17df55..547672f6d36 100644
--- a/audio/jackaudio.c
+++ b/audio/jackaudio.c
@@ -26,11 +26,11 @@
 #include "qemu/module.h"
 #include "qemu/atomic.h"
 #include "qemu/main-loop.h"
+#include "qemu/error-report.h"
 #include "qemu/audio.h"
 #include "qom/object.h"
-
-#define AUDIO_CAP "jack"
 #include "audio_int.h"
+#include "trace.h"
 
 #include <jack/jack.h>
 #include <jack/thread.h>
@@ -343,7 +343,7 @@ static void qjack_client_recover(QJackClient *c)
 
         /* if enabled then attempt to recover */
         if (c->enabled) {
-            dolog("attempting to reconnect to server\n");
+            trace_jack_client_recover();
             qjack_client_init(c);
         }
     }
@@ -399,10 +399,10 @@ static void qjack_client_connect_ports(QJackClient *c)
         }
 
         if (c->out) {
-            dolog("connect %s -> %s\n", p, ports[i]);
+            trace_jack_connect(p, ports[i]);
             jack_connect(c->client, p, ports[i]);
         } else {
-            dolog("connect %s -> %s\n", ports[i], p);
+            trace_jack_connect(ports[i], p);
             jack_connect(c->client, ports[i], p);
         }
     }
@@ -441,9 +441,9 @@ static int qjack_client_init(QJackClient *c)
       c->opt->server_name);
 
     if (c->client == NULL) {
-        dolog("jack_client_open failed: status = 0x%2.0x\n", status);
+        error_report("jack: jack_client_open failed: status = 0x%2.0x", status);
         if (status & JackServerFailed) {
-            dolog("unable to connect to JACK server\n");
+            error_report("jack: unable to connect to JACK server");
         }
         return -1;
     }
@@ -451,12 +451,11 @@ static int qjack_client_init(QJackClient *c)
     c->freq = jack_get_sample_rate(c->client);
 
     if (status & JackServerStarted) {
-        dolog("JACK server started\n");
+        trace_jack_server_started();
     }
 
     if (status & JackNameNotUnique) {
-        dolog("JACK unique name assigned %s\n",
-          jack_get_client_name(c->client));
+        trace_jack_unique_name(jack_get_client_name(c->client));
     }
 
     /* Allocate working buffer for process callback */
@@ -536,8 +535,7 @@ static int qjack_init_out(HWVoiceOut *hw, struct audsettings *as)
     };
     audio_pcm_init_info(&hw->info, &os);
 
-    dolog("JACK output configured for %dHz (%d samples)\n",
-        jo->c.freq, jo->c.buffersize);
+    trace_jack_out_init(jo->c.freq, jo->c.buffersize);
 
     return 0;
 }
@@ -572,8 +570,7 @@ static int qjack_init_in(HWVoiceIn *hw, struct audsettings *as)
     };
     audio_pcm_init_info(&hw->info, &is);
 
-    dolog("JACK input configured for %dHz (%d samples)\n",
-        ji->c.freq, ji->c.buffersize);
+    trace_jack_in_init(ji->c.freq, ji->c.buffersize);
 
     return 0;
 }
@@ -654,12 +651,12 @@ static int qjack_thread_creator(jack_native_thread_t *thread,
 
 static void qjack_error(const char *msg)
 {
-    dolog("E: %s\n", msg);
+    error_report("jack: %s", msg);
 }
 
 static void qjack_info(const char *msg)
 {
-    dolog("I: %s\n", msg);
+    trace_jack_info(msg);
 }
 
 static void audio_jack_class_init(ObjectClass *klass, const void *data)
diff --git a/audio/trace-events b/audio/trace-events
index b2f29666700..79744456cec 100644
--- a/audio/trace-events
+++ b/audio/trace-events
@@ -28,6 +28,15 @@ dsound_clear_sample(void *p1, uint32_t blen1, uint32_t len1, void *p2, uint32_t
 dsound_wave_format(uint16_t wFormatTag, uint16_t nChannels, uint32_t nSamplesPerSec, uint32_t nAvgBytesPerSec, uint16_t nBlockAlign, uint16_t wBitsPerSample, uint16_t cbSize) "wFormatTag=%u, nChannels=%u, nSamplesPerSec=%u, nAvgBytesPerSec=%u, nBlockAlign=%u, wBitsPerSample=%u, cbSize=%u"
 dsound_buffer_bytes(uint32_t caps_bytes, uint32_t desc_bytes) "caps_bytes=%u, desc_bytes=%u"
 
+# jackaudio.c
+jack_client_recover(void) "attempting to reconnect to server"
+jack_connect(const char *src, const char *dst) "connect %s -> %s"
+jack_server_started(void) "server started"
+jack_unique_name(const char *name) "unique name assigned %s"
+jack_out_init(uint32_t freq, int buffersize) "output configured for %uHz (%d samples)"
+jack_in_init(uint32_t freq, int buffersize) "input configured for %uHz (%d samples)"
+jack_info(const char *msg) "%s"
+
 # pwaudio.c
 pw_state_changed(int nodeid, const char *s) "node id: %d stream state: %s"
 pw_read(int32_t avail, uint32_t index, size_t len) "avail=%d index=%u len=%zu"
-- 
2.52.0