Skip to content
Snippets Groups Projects
  1. Dec 11, 2020
  2. Oct 21, 2020
  3. Oct 15, 2020
  4. Sep 29, 2020
  5. Sep 23, 2020
  6. Sep 21, 2020
    • Philippe Mathieu-Daudé's avatar
      hw/input/tsc2xxx: Reduce MouseTransformInfo structure exposure · 38b01a99
      Philippe Mathieu-Daudé authored
      
      Commit a5d7eb65 ("Add TSC2301 touchscreen & keypad controller")
      added the MouseTransformInfo declaration in "ui/console.h",
      however it is only used in "hw/input/tsc2xxx.h".
      Reduce the structure exposure by moving it to the single include
      where it is used.
      
      This should fix a build failure on OpenBSD:
      
        In file included from hw/arm/nseries.c:30:
        In file included from include/hw/arm/omap.h:24:
        In file included from include/hw/input/tsc2xxx.h:14:
        include/ui/console.h:11:11: fatal error: 'epoxy/gl.h' file not found
        # include <epoxy/gl.h>
                  ^~~~~~~~~~~~
        1 error generated.
        gmake: *** [Makefile.ninja:1735:
        libqemu-aarch64-softmmu.fa.p/hw_arm_nseries.c.o] Error 1
      
      Reported-by: default avatarPeter Maydell <peter.maydell@linaro.org>
      Signed-off-by: default avatarPhilippe Mathieu-Daudé <f4bug@amsat.org>
      Message-id: 20200907010155.815131-1-f4bug@amsat.org
      Signed-off-by: default avatarGerd Hoffmann <kraxel@redhat.com>
      38b01a99
  7. Sep 18, 2020
  8. Sep 09, 2020
  9. Jul 13, 2020
  10. May 19, 2020
  11. Jan 14, 2020
    • Nikola Pavlica's avatar
      display/gtk: get proper refreshrate · c4c00922
      Nikola Pavlica authored
      
      Because some VMs in QEMU can get GPU virtualization (using technologies
      such as iGVT-g, as mentioned previously), they could produce a video
      output that had a higher display refresh rate than of what the GTK
      display was displaying. (fxp. Playing a video game inside of a Windows
      VM at 60 Hz, while the output stood locked at 33 Hz because of defaults
      set in include/ui/console.h)
      
      Since QEMU does indeed have internal systems for determining frame
      times as defined in ui/console.c.
      The code checks for a variable called update_interval that it later
      uses for time calculation. This variable, however, isn't defined
      anywhere in ui/gtk.c and instead ui/console.c just sets it to
      GUI_REFRESH_INTERVAL_DEFAULT which is 30
      
      update_interval represents the number of milliseconds per display
      refresh, and by doing some math we get that 1000/30 = 33.33... Hz
      
      This creates the mentioned problem and what this patch does is that it
      checks for the display refresh rate reported by GTK itself (we can take
      this as a safe value) and just converts it back to a number of
      milliseconds per display refresh.
      
      Signed-off-by: default avatarNikola Pavlica <pavlica.nikola@gmail.com>
      Reviewed-by: default avatarPhilippe Mathieu-Daudé <philmd@redhat.com>
      Message-id: 20200108121342.29597-1-pavlica.nikola@gmail.com
      
      [ kraxel: style tweak: add blank line between vars and code ]
      
      Signed-off-by: default avatarGerd Hoffmann <kraxel@redhat.com>
      c4c00922
    • Thomas Huth's avatar
      ui: Print available display backends with '-display help' · c388f408
      Thomas Huth authored
      
      We already print availabled devices with "-device help", or available
      backends with "-netdev help" or "-chardev help". Let's provide a way
      for the users to query the available display backends, too.
      
      Reviewed-by: default avatarPhilippe Mathieu-Daudé <philmd@redhat.com>
      Tested-by: default avatarPhilippe Mathieu-Daudé <philmd@redhat.com>
      Signed-off-by: default avatarThomas Huth <thuth@redhat.com>
      Message-id: 20200108144702.29969-1-thuth@redhat.com
      Signed-off-by: default avatarGerd Hoffmann <kraxel@redhat.com>
      c388f408
  12. Jan 02, 2020
  13. Sep 17, 2019
  14. Aug 16, 2019
    • Markus Armbruster's avatar
      Clean up inclusion of sysemu/sysemu.h · d5938f29
      Markus Armbruster authored
      
      In my "build everything" tree, changing sysemu/sysemu.h triggers a
      recompile of some 5400 out of 6600 objects (not counting tests and
      objects that don't depend on qemu/osdep.h).
      
      Almost a third of its inclusions are actually superfluous.  Delete
      them.  Downgrade two more to qapi/qapi-types-run-state.h, and move one
      from char/serial.h to char/serial.c.
      
      hw/semihosting/config.c, monitor/monitor.c, qdev-monitor.c, and
      stubs/semihost.c define variables declared in sysemu/sysemu.h without
      including it.  The compiler is cool with that, but include it anyway.
      
      This doesn't reduce actual use much, as it's still included into
      widely included headers.  The next commit will tackle that.
      
      Signed-off-by: default avatarMarkus Armbruster <armbru@redhat.com>
      Reviewed-by: default avatarAlistair Francis <alistair.francis@wdc.com>
      Message-Id: <20190812052359.30071-27-armbru@redhat.com>
      Reviewed-by: default avatarAlex Bennée <alex.bennee@linaro.org>
      d5938f29
    • Markus Armbruster's avatar
      Include generated QAPI headers less · 2ae16a6a
      Markus Armbruster authored
      
      Some of the generated qapi-types-MODULE.h are included all over the
      place.  Changing a QAPI type can trigger massive recompiling.  Top
      scorers recompile more than 1000 out of some 6600 objects (not
      counting tests and objects that don't depend on qemu/osdep.h):
      
          6300 qapi/qapi-builtin-types.h
          5700 qapi/qapi-types-run-state.h
          3900 qapi/qapi-types-common.h
          3300 qapi/qapi-types-sockets.h
          3000 qapi/qapi-types-misc.h
          3000 qapi/qapi-types-crypto.h
          3000 qapi/qapi-types-job.h
          3000 qapi/qapi-types-block-core.h
          2800 qapi/qapi-types-block.h
          1300 qapi/qapi-types-net.h
      
      Clean up headers to include generated QAPI headers only where needed.
      Impact is negligible except for hw/qdev-properties.h.
      
      This header includes qapi/qapi-types-block.h and
      qapi/qapi-types-misc.h.  They are used only in expansions of property
      definition macros such as DEFINE_PROP_BLOCKDEV_ON_ERROR() and
      DEFINE_PROP_OFF_AUTO().  Moving their inclusion from
      hw/qdev-properties.h to the users of these macros avoids pointless
      recompiles.  This is how other property definition macros, such as
      DEFINE_PROP_NETDEV(), already work.
      
      Improves things for some of the top scorers:
      
          3600 qapi/qapi-types-common.h
          2800 qapi/qapi-types-sockets.h
           900 qapi/qapi-types-misc.h
          2200 qapi/qapi-types-crypto.h
          2100 qapi/qapi-types-job.h
          2100 qapi/qapi-types-block-core.h
           270 qapi/qapi-types-block.h
      
      Signed-off-by: default avatarMarkus Armbruster <armbru@redhat.com>
      Reviewed-by: default avatarEric Blake <eblake@redhat.com>
      Reviewed-by: default avatarPhilippe Mathieu-Daudé <philmd@redhat.com>
      Tested-by: default avatarPhilippe Mathieu-Daudé <philmd@redhat.com>
      Message-Id: <20190812052359.30071-3-armbru@redhat.com>
      2ae16a6a
    • Markus Armbruster's avatar
      include: Make headers more self-contained · ec150c7e
      Markus Armbruster authored
      Back in 2016, we discussed[1] rules for headers, and these were
      generally liked:
      
      1. Have a carefully curated header that's included everywhere first.  We
         got that already thanks to Peter: osdep.h.
      
      2. Headers should normally include everything they need beyond osdep.h.
         If exceptions are needed for some reason, they must be documented in
         the header.  If all that's needed from a header is typedefs, put
         those into qemu/typedefs.h instead of including the header.
      
      3. Cyclic inclusion is forbidden.
      
      This patch gets include/ closer to obeying 2.
      
      It's actually extracted from my "[RFC] Baby steps towards saner
      headers" series[2], which demonstrates a possible path towards
      checking 2 automatically.  It passes the RFC test there.
      
      [1] Message-ID: <87h9g8j57d.fsf@blackfin.pond.sub.org>
          https://lists.nongnu.org/archive/html/qemu-devel/2016-03/msg03345.html
      [2] Message-Id: <20190711122827.18970-1-armbru@redhat.com>
          https://lists.nongnu.org/archive/html/qemu-devel/2019-07/msg02715.html
      
      
      
      Signed-off-by: default avatarMarkus Armbruster <armbru@redhat.com>
      Reviewed-by: default avatarAlistair Francis <alistair.francis@wdc.com>
      Message-Id: <20190812052359.30071-2-armbru@redhat.com>
      Tested-by: default avatarPhilippe Mathieu-Daudé <philmd@redhat.com>
      ec150c7e
  15. Jun 12, 2019
  16. Jun 07, 2019
  17. May 13, 2019
  18. Feb 21, 2019
  19. Feb 05, 2019
  20. Jan 22, 2019
Loading