[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[qemu-xen staging] qxl: fix modular builds with dtrace



commit d97df4b84bc42613cf9a03619de453ebd0be30b7
Author:     Gerd Hoffmann <kraxel@xxxxxxxxxx>
AuthorDate: Mon Jul 20 12:03:50 2020 +0200
Commit:     Gerd Hoffmann <kraxel@xxxxxxxxxx>
CommitDate: Tue Jul 21 10:56:47 2020 +0200

    qxl: fix modular builds with dtrace
    
    Checking the enable/disable state of tracepoints via
    trace_event_get_state_backends() does not work for modules.
    
    qxl checks the state for a small optimization (avoid g_strndup
    call in case log_buf will not be used anyway), so we can just
    drop that check for modular builds.
    
    Signed-off-by: Gerd Hoffmann <kraxel@xxxxxxxxxx>
    Message-Id: <20200720100352.2477-2-kraxel@xxxxxxxxxx>
---
 hw/display/qxl.c | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/hw/display/qxl.c b/hw/display/qxl.c
index d5627119ec..11871340e7 100644
--- a/hw/display/qxl.c
+++ b/hw/display/qxl.c
@@ -1762,7 +1762,16 @@ async_common:
         qxl_set_mode(d, val, 0);
         break;
     case QXL_IO_LOG:
+#ifdef CONFIG_MODULES
+        /*
+         * FIXME
+         * trace_event_get_state_backends() does not work for modules,
+         * it leads to "undefined symbol: qemu_qxl_io_log_semaphore"
+         */
+        if (true) {
+#else
         if (trace_event_get_state_backends(TRACE_QXL_IO_LOG) || d->guestdebug) 
{
+#endif
             /* We cannot trust the guest to NUL terminate d->ram->log_buf */
             char *log_buf = g_strndup((const char *)d->ram->log_buf,
                                       sizeof(d->ram->log_buf));
--
generated by git-patchbot for /home/xen/git/qemu-xen.git#staging



 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.