DeveloperNews: Difference between revisions
(instance_finalize can now be called outside the "big QEMU lock") |
No edit summary |
||
(5 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
This page highlights some news bits from [https://lists.nongnu.org/mailman/listinfo/qemu-devel qemu-devel] that all QEMU developers should be aware of. | This page highlights some news bits from [https://lists.nongnu.org/mailman/listinfo/qemu-devel 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 [[Contribute | It is not a replacement for reading the mailing list nor a place to announce cool new [[Contribute#Features|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-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 [[User:Marcel|Marcel Apfelbaum]], details on [[Features/QOM/Machine]]. | * '''2014-04-30''': The QEMUMachine is being replaced with a QOM hierarchy by [[User:Marcel|Marcel Apfelbaum]], details on [[Features/QOM/Machine]]. | ||
* '''2014-04-28''': We have a new page [[CodeTransitions]] to document API changes and transitions in the codebase which have been started but not yet finished. | * '''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''': [[User:MichaelTsirkin|Michael S. Tsirkin]] is [http://www.mail-archive.com/kvm@vger.kernel.org/msg92073.html about to move] '''ACPI''' table generation code to qemu. Any patches that need ACPI support should integrate with that. | * '''2013-07-07''': [[User:MichaelTsirkin|Michael S. Tsirkin]] is [http://www.mail-archive.com/kvm@vger.kernel.org/msg92073.html about to move] '''ACPI''' table generation code to qemu. Any patches that need ACPI support should integrate with that. | ||
* '''2013-07-05''': [[User:Paolo Bonzini|Paolo]] has [http://lists.gnu.org/archive/html/qemu-devel/2013-07/msg00798.html extended] '''MemoryRegion'''s to reference an '''owner''' Object. Therefore new MemoryRegions should not carry the name of its containing device but its purpose within that device.<br/> Note that this pull touches on ''every'' <code>memory_region_init()</code>, <code>memory_region_init_io()</code> and <code>memory_region_init_ram()</code> in the tree (in patch 18/66) and is thus likely to conflict with any patch adding a new device. | * '''2013-07-05''': [[User:Paolo Bonzini|Paolo]] has [http://lists.gnu.org/archive/html/qemu-devel/2013-07/msg00798.html extended] '''MemoryRegion'''s to reference an '''owner''' Object. Therefore new MemoryRegions should not carry the name of its containing device but its purpose within that device.<br/> Note that this pull touches on ''every'' <code>memory_region_init()</code>, <code>memory_region_init_io()</code> and <code>memory_region_init_ram()</code> in the tree (in patch 18/66) and is thus likely to conflict with any patch adding a new device. | ||
Line 12: | Line 15: | ||
* '''2013-07-05''': It has been requested to mark PULL request patches <code>[PULL n/m]</code> (rather than <code>[PATCH n/m]</code>) to avoid prompting people in CC to start re-reviewing an in-flight PULL request. | * '''2013-07-05''': It has been requested to mark PULL request patches <code>[PULL n/m]</code> (rather than <code>[PATCH n/m]</code>) to avoid prompting people in CC to start re-reviewing an in-flight PULL request. | ||
* '''2013-07-05''': [[Planning/1.6|v'''1.6''' roadmap]] has been added by [[User:AnthonyLiguori|Anthony]]. | * '''2013-07-05''': [[Planning/1.6|v'''1.6''' roadmap]] has been added by [[User:AnthonyLiguori|Anthony]]. | ||
* '''2013-07-05''': Page [[QOMConventions|'''QOM'''Conventions]] was created by [[User:AF|Andreas]] to summarize some review comments and acceptance guidelines for patches that affect '''all devices'''. | * '''2013-07-05''': Page [[Documentation/QOMConventions|'''QOM'''Conventions]] was created by [[User:AF|Andreas]] to summarize some review comments and acceptance guidelines for patches that affect '''all devices'''. | ||
* '''2013-07-05''': An '''I2C''' libqos test framework was [http://git.qemu.org/?p=qemu.git;a=commit;h=2bf7b4572b39a494403190636b4e7d44967504c0 contributed] by [[User:AF|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. | * '''2013-07-05''': An '''I2C''' libqos test framework was [http://git.qemu.org/?p=qemu.git;a=commit;h=2bf7b4572b39a494403190636b4e7d44967504c0 contributed] by [[User:AF|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. |
Latest revision as of 13:40, 26 July 2017
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 everymemory_region_init()
,memory_region_init_io()
andmemory_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.