Comment 1 for bug 1964777

Revision history for this message
Christian Ehrhardt  (paelzer) wrote :

Looking at the code that warning is from here:
```
 static void qxl_send_events(PCIQXLDevice *d, uint32_t events)
 {
     uint32_t old_pending;
     uint32_t le_events = cpu_to_le32(events);

     trace_qxl_send_events(d->id, events);
     if (!qemu_spice_display_is_running(&d->ssd)) {
         /* spice-server tracks guest running state and should not do this */
         fprintf(stderr, "%s: spice-server bug: guest stopped, ignoring\n",
                 __func__);
         trace_qxl_send_events_vm_stopped(d->id, events);
         return;
     }
```

That explains a bit why it isn't fatal at first, all that happens is the
error message followed by stopping the trace again.
But it does an early return from qxl_send_events and thereby that will
never work. Here a list of later calls that I now wonder if they'd fail as well:
  1 qxl.c 129 qxl_send_events(qxl, QXL_INTERRUPT_ERROR);
  2 qxl.c 663 qxl_send_events(qxl, QXL_INTERRUPT_DISPLAY);
  3 qxl.c 725 qxl_send_events(d, QXL_INTERRUPT_DISPLAY);
  4 qxl.c 822 qxl_send_events(qxl, QXL_INTERRUPT_CURSOR);
  5 qxl.c 925 qxl_send_events(qxl, QXL_INTERRUPT_IO_CMD);
  6 qxl.c 1019 qxl_send_events(qxl, QXL_INTERRUPT_CLIENT);
  7 qxl.c 1123 qxl_send_events(qxl, QXL_INTERRUPT_CLIENT_MONITORS_CONFIG);
  8 qxl.c 1634 qxl_send_events(d, QXL_INTERRUPT_IO_CMD);
  9 qxl.c 1833 qxl_send_events(d, QXL_INTERRUPT_IO_CMD);

Checking related libs:

spice-protocol | 0.14.3-1 | jammy | source
spice | 0.15.0-2ubuntu3 | jammy | source
=> That doesn't seem too outdated.