qemu-commits
[Top][All Lists]
Advanced

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

[Qemu-commits] [qemu/qemu] 284577: module: qom module support


From: Peter Maydell
Subject: [Qemu-commits] [qemu/qemu] 284577: module: qom module support
Date: Thu, 09 Jul 2020 12:15:29 -0700

  Branch: refs/heads/master
  Home:   https://github.com/qemu/qemu
  Commit: 28457744c345ca4ccb58c984c9552e9c5955a9de
      
https://github.com/qemu/qemu/commit/28457744c345ca4ccb58c984c9552e9c5955a9de
  Author: Gerd Hoffmann <kraxel@redhat.com>
  Date:   2020-07-07 (Tue, 07 Jul 2020)

  Changed paths:
    M include/qemu/module.h
    M util/module.c

  Log Message:
  -----------
  module: qom module support

Add support for qom types provided by modules.  For starters use a
manually maintained list which maps qom type to module and prefix.

Two load functions are added:  One to load the module for a specific
type, and one to load all modules (needed for object/device lists as
printed by -- for example -- qemu -device help).

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Message-id: 20200624131045.14512-2-kraxel@redhat.com


  Commit: 0f8198f1b2f3c33df2381c412ad8d8fd219b90b2
      
https://github.com/qemu/qemu/commit/0f8198f1b2f3c33df2381c412ad8d8fd219b90b2
  Author: Gerd Hoffmann <kraxel@redhat.com>
  Date:   2020-07-07 (Tue, 07 Jul 2020)

  Changed paths:
    M include/qom/object.h
    M qom/object.c

  Log Message:
  -----------
  object: qom module support

Little helper function to load modules on demand.  In most cases adding
module loading support for devices and other objects is just
s/object_class_by_name/module_object_class_by_name/ in the right spot.

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Message-id: 20200624131045.14512-3-kraxel@redhat.com


  Commit: 7ab6e7fcce9729d3a85e7e04737bc64a45a08772
      
https://github.com/qemu/qemu/commit/7ab6e7fcce9729d3a85e7e04737bc64a45a08772
  Author: Gerd Hoffmann <kraxel@redhat.com>
  Date:   2020-07-07 (Tue, 07 Jul 2020)

  Changed paths:
    M hw/core/qdev.c
    M qdev-monitor.c
    M qom/qom-qmp-cmds.c
    M softmmu/vl.c

  Log Message:
  -----------
  qdev: device module support

Hook module loading into the places where we
need it when building devices as modules.

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Message-id: 20200624131045.14512-4-kraxel@redhat.com


  Commit: c4ddab7ae5362669837d5d63ccc55f1ffa190eca
      
https://github.com/qemu/qemu/commit/c4ddab7ae5362669837d5d63ccc55f1ffa190eca
  Author: Gerd Hoffmann <kraxel@redhat.com>
  Date:   2020-07-07 (Tue, 07 Jul 2020)

  Changed paths:
    M Makefile.target

  Log Message:
  -----------
  build: fix device module builds

Slightly hackish workaround, works ok as long as we don't
have target-specific modules.  meson will obsolete this.

See comment in the patch for the --verbose description.

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Message-id: 20200624131045.14512-5-kraxel@redhat.com

[ kraxel: updated comment from discussions ]

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>


  Commit: 8887312b406f71aee18aeb7e5ac4b18f461f4a79
      
https://github.com/qemu/qemu/commit/8887312b406f71aee18aeb7e5ac4b18f461f4a79
  Author: Gerd Hoffmann <kraxel@redhat.com>
  Date:   2020-07-07 (Tue, 07 Jul 2020)

  Changed paths:
    M Makefile.objs
    M hw/Makefile.objs
    M hw/usb/Makefile.objs
    M util/module.c

  Log Message:
  -----------
  ccid: build smartcard as module

Drops libcacard.so dependency from core qemu.

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Message-id: 20200624131045.14512-6-kraxel@redhat.com


  Commit: aa9c8573be01fd7cdf56ff31df3af0307017a258
      
https://github.com/qemu/qemu/commit/aa9c8573be01fd7cdf56ff31df3af0307017a258
  Author: Gerd Hoffmann <kraxel@redhat.com>
  Date:   2020-07-07 (Tue, 07 Jul 2020)

  Changed paths:
    M hw/usb/Makefile.objs
    M util/module.c

  Log Message:
  -----------
  usb: build usb-redir as module

Drops libusbredirparser.so dependency from core qemu.

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Message-id: 20200624131045.14512-7-kraxel@redhat.com


  Commit: d39e93d4833a75a86cbb60ca5daf45b299b7c78c
      
https://github.com/qemu/qemu/commit/d39e93d4833a75a86cbb60ca5daf45b299b7c78c
  Author: Gerd Hoffmann <kraxel@redhat.com>
  Date:   2020-07-07 (Tue, 07 Jul 2020)

  Changed paths:
    M hw/Makefile.objs
    M hw/display/Makefile.objs
    M util/module.c

  Log Message:
  -----------
  vga: build qxl as module

First step in making spice support modular.

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Message-id: 20200624131045.14512-8-kraxel@redhat.com


  Commit: 9ad7ecf6a69f80c29734da24b285cf6d3d7448af
      
https://github.com/qemu/qemu/commit/9ad7ecf6a69f80c29734da24b285cf6d3d7448af
  Author: Gerd Hoffmann <kraxel@redhat.com>
  Date:   2020-07-07 (Tue, 07 Jul 2020)

  Changed paths:
    M hw/display/Makefile.objs

  Log Message:
  -----------
  vga: build virtio-gpu only once

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Tested-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Message-id: 20200624131045.14512-9-kraxel@redhat.com


  Commit: 8d5a24c83dba90b08ef163bbf166d6dfbad9019b
      
https://github.com/qemu/qemu/commit/8d5a24c83dba90b08ef163bbf166d6dfbad9019b
  Author: Gerd Hoffmann <kraxel@redhat.com>
  Date:   2020-07-07 (Tue, 07 Jul 2020)

  Changed paths:
    M hw/display/Makefile.objs
    M util/module.c

  Log Message:
  -----------
  vga: build virtio-gpu as module

Drops libvirglrenderer.so dependency from core qemu.

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Message-id: 20200624131045.14512-10-kraxel@redhat.com


  Commit: ef138c77249771081d8c2d09b8e729f7e92cdf28
      
https://github.com/qemu/qemu/commit/ef138c77249771081d8c2d09b8e729f7e92cdf28
  Author: Gerd Hoffmann <kraxel@redhat.com>
  Date:   2020-07-07 (Tue, 07 Jul 2020)

  Changed paths:
    M Makefile.objs
    M chardev/Makefile.objs
    M chardev/char.c
    M util/module.c

  Log Message:
  -----------
  chardev: enable modules, use for braille

Removes brlapi library dependency from core qemu.

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Message-id: 20200624131045.14512-11-kraxel@redhat.com


  Commit: aff2caf6b3fbab1062e117a47b66d27f7fd2f272
      
https://github.com/qemu/qemu/commit/aff2caf6b3fbab1062e117a47b66d27f7fd2f272
  Author: Peter Maydell <peter.maydell@linaro.org>
  Date:   2020-07-09 (Thu, 09 Jul 2020)

  Changed paths:
    M Makefile.objs
    M Makefile.target
    M chardev/Makefile.objs
    M chardev/char.c
    M hw/Makefile.objs
    M hw/core/qdev.c
    M hw/display/Makefile.objs
    M hw/usb/Makefile.objs
    M include/qemu/module.h
    M include/qom/object.h
    M qdev-monitor.c
    M qom/object.c
    M qom/qom-qmp-cmds.c
    M softmmu/vl.c
    M util/module.c

  Log Message:
  -----------
  Merge remote-tracking branch 
'remotes/kraxel/tags/modules-20200707-pull-request' into staging

qom: add support for qom objects in modules.
build some devices (qxl, virtio-gpu, ccid, usb-redir) as modules.
build braille chardev as module.

v2: more verbose comment for "build: fix device module builds" patch.

note: qemu doesn't rebuild objects on cflags changes (specifically
      -fPIC being added when code is switched from builtin to module).
      Workaround for resulting build errors: "make clean", rebuild.

# gpg: Signature made Tue 07 Jul 2020 14:42:16 BST
# gpg:                using RSA key 4CB6D8EED3E87138
# gpg: Good signature from "Gerd Hoffmann (work) <kraxel@redhat.com>" [full]
# gpg:                 aka "Gerd Hoffmann <gerd@kraxel.org>" [full]
# gpg:                 aka "Gerd Hoffmann (private) <kraxel@gmail.com>" [full]
# Primary key fingerprint: A032 8CFF B93A 17A7 9901  FE7D 4CB6 D8EE D3E8 7138

* remotes/kraxel/tags/modules-20200707-pull-request:
  chardev: enable modules, use for braille
  vga: build virtio-gpu as module
  vga: build virtio-gpu only once
  vga: build qxl as module
  usb: build usb-redir as module
  ccid: build smartcard as module
  build: fix device module builds
  qdev: device module support
  object: qom module support
  module: qom module support

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>


Compare: https://github.com/qemu/qemu/compare/3d7cad3c2388...aff2caf6b3fb



reply via email to

[Prev in Thread] Current Thread [Next in Thread]