DeveloperNews

From QEMU

This page highlights some news bits from qemu-devel that all QEMU developers should be aware of. It is not a replacement for reading the mailing list nor a place to announce cool new features for users.

  • 2017-07-26: A new helper (via tcg_gen_lookup_and_goto_ptr) has been added to allow inter-page jumps without exiting the generated code.
  • 2016-05-20: The definition of CPU subclasses (e.g. struct X86CPU) is now in cpu.h, so that cpu-qom.h can be included from code compiled for all targets.
  • 2016-05-20: hw/hw.h does not include qemu/log.h and exec/ioport.h anymore
  • 2015-03-17: Markus killed qerror_report as well.
  • 2014-06-06: error_is_set is no more. Thanks to Markus Armbruster for finishing it off.
  • 2014-04-30: The QEMUMachine is being replaced with a QOM hierarchy by Marcel Apfelbaum, details on Features/QOM/Machine.
  • 2014-04-28: We have a new page ToDo/CodeTransitions to document API changes and transitions in the codebase which have been started but not yet finished.
  • 2013-07-07: Michael S. Tsirkin is about to move ACPI table generation code to qemu. Any patches that need ACPI support should integrate with that.
  • 2013-07-05: Paolo has extended MemoryRegions to reference an owner Object. Therefore new MemoryRegions should not carry the name of its containing device but its purpose within that device.
    Note that this pull touches on every memory_region_init(), memory_region_init_io() and memory_region_init_ram() in the tree (in patch 18/66) and is thus likely to conflict with any patch adding a new device.
  • 2013-07-05: The staging tree qom-next was revived by Andreas for QOM refactoring patches (type constants, cast macros, QOM realize). It should not be used as base for new feature or bugfix patches.
  • 2013-07-05: All new devices derived from SysBusDevice should use QOM realize (DeviceClass::realize) rather than SysBusDeviceClass::init. Work is under way to convert existing devices. It is permissable to implement neither realize nor init.
    QOM realize was first presented by Anthony on the 2012-01-31 KVM call and after much debate of scope minimally implemented for DeviceState by Andreas for v1.4. Some extensions by Paolo (recursive realization) are still pending device preparations.
  • 2013-07-05: It has been requested to mark PULL request patches [PULL n/m] (rather than [PATCH n/m]) to avoid prompting people in CC to start re-reviewing an in-flight PULL request.
  • 2013-07-05: v1.6 roadmap has been added by Anthony.
  • 2013-07-05: Page QOMConventions was created by Andreas to summarize some review comments and acceptance guidelines for patches that affect all devices.
  • 2013-07-05: An I2C libqos test framework was contributed by Andreas, so any new I2C host controllers should come with a libqos driver implementation and new I2C devices should be accompanied by a qtest test case.