qemu/docs/devel
Zhao Liu db46654af8 rust/hpet: Support migration
Based on commit 1433e38cc8 ("hpet: do not overwrite properties on
post_load"), add the basic migration support to Rust HPET.

The current migration implementation introduces multiple unsafe
callbacks. Before the vmstate builder, one possible cleanup approach is
to wrap callbacks in the vmstate binding using a method similar to the
vmstate_exist_fn macro.

However, this approach would also create a lot of repetitive code (since
vmstate has so many callbacks: pre_load, post_load, pre_save, post_save,
needed and dev_unplug_pending). Although it would be cleaner, it would
somewhat deviate from the path of the vmstate builder.

Therefore, firstly focus on completing the functionality of HPET, and
those current unsafe callbacks can at least clearly indicate the needed
functionality of vmstate. The next step is to consider refactoring
vmstate to move towards the vmstate builder direction.

Additionally, update rust.rst about Rust HPET can support migration.

Signed-off-by: Zhao Liu <zhao1.liu@intel.com>
Link: https://lore.kernel.org/r/20250414144943.1112885-9-zhao1.liu@intel.com
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2025-05-02 17:37:46 +02:00
..
migration vfio/migration: Add x-migration-multifd-transfer VFIO property 2025-03-06 06:47:34 +01:00
testing Remove the remainders of the Avocado tests 2025-04-23 07:51:25 +02:00
atomics.rst docs: use consistent markup for footnotes 2024-10-11 13:48:42 +02:00
bitops.rst docs: Create bitops.rst as example of kernel-docs 2019-12-17 19:36:57 +01:00
block-coroutine-wrapper.rst block-coroutine-wrapper.py: introduce co_wrapper 2022-12-15 16:07:43 +01:00
build-environment.rst docs/devel: add information on how to setup build environments 2025-01-17 10:45:44 +00:00
build-system.rst Remove the remainders of the Avocado tests 2025-04-23 07:51:25 +02:00
clocks.rst hw/clock: Expose 'qtest-clock-period' QOM property for QTests 2024-10-15 11:29:45 +01:00
code-of-conduct.rst docs/devel: add a maintainers section to development process 2022-11-22 09:49:07 +00:00
codebase.rst Remove the remainders of the Avocado tests 2025-04-23 07:51:25 +02:00
conflict-resolution.rst docs: Add a QEMU Code of Conduct and Conflict Resolution Policy document 2021-04-01 13:21:02 +02:00
control-flow-integrity.rst docs: add a glossary 2025-01-17 10:45:54 +00:00
crypto.rst docs/devel: Add introduction to LUKS volume with detached header 2024-07-24 10:39:10 +01:00
decodetree.rst docs/devel: add a codebase section 2025-01-17 10:45:49 +00:00
docs.rst docs: correct typos 2024-02-20 22:20:48 +03:00
ebpf_rss.rst docs/devel: add a codebase section 2025-01-17 10:45:49 +00:00
index-api.rst docs/devel/lockcnt: Convert to rST format 2024-10-15 15:16:17 +01:00
index-build.rst docs: add qapi-domain syntax documentation 2025-03-11 10:26:52 +01:00
index-internals.rst docs: add uefi variable service documentation 2025-03-04 12:07:05 +01:00
index-process.rst rust: add docs 2025-02-07 15:50:59 +01:00
index-tcg.rst docs/devel: add some front matter to the devel index 2023-07-03 12:52:08 +01:00
index.rst docs/devel: add a codebase section 2025-01-17 10:45:49 +00:00
kconfig.rst docs: Rename default-configs to configs 2025-03-12 18:14:50 +01:00
loads-stores.rst docs: use consistent markup for footnotes 2024-10-11 13:48:42 +02:00
lockcnt.rst docs/devel/lockcnt: Include kernel-doc API documentation 2024-10-15 15:16:17 +01:00
luks-detached-header.rst docs/devel: Add introduction to LUKS volume with detached header 2024-07-24 10:39:10 +01:00
maintainers.rst docs: use consistent markup for footnotes 2024-10-11 13:48:42 +02:00
memory.rst include/system: Move exec/memory.h to system/memory.h 2025-04-23 14:08:21 -07:00
modules.rst docs: Spell QEMU all caps 2021-11-19 10:16:58 +01:00
multi-process.rst docs: Don't mention "-mem-path" in multi-process.rst 2023-09-19 10:23:21 +02:00
multi-thread-tcg.rst tcg: Convert TARGET_SUPPORTS_MTTCG to TCGCPUOps::mttcg_supported field 2025-04-23 15:07:32 -07:00
multiple-iothreads.rst docs/devel/multiple-iothreads: Convert to rST format 2024-10-15 15:16:17 +01:00
pci.rst hw/pci: modify pci_setup_iommu() to set PCIIOMMUOps 2023-11-03 09:20:31 +01:00
qapi-code-gen.rst docs/sphinx/qmp_lexer: Generalize elision syntax 2025-04-08 09:04:34 +02:00
qapi-domain.rst docs: Fix some typos (found by codespell and typos) 2025-04-13 13:45:04 +03:00
qdev-api.rst docs/devel: split qom-api reference into new file 2023-07-03 12:52:22 +01:00
qom-api.rst docs/devel: split qom-api reference into new file 2023-07-03 12:52:22 +01:00
qom.rst qom: Have class_init() take a const data argument 2025-04-25 17:00:41 +02:00
rcu.rst docs/devel/rcu: Convert to rST format 2024-10-15 15:16:17 +01:00
replay.rst docs/devel: Mention post_load hook restrictions where we document the hook 2024-10-04 18:54:55 +03:00
reset.rst qom: Have class_init() take a const data argument 2025-04-25 17:00:41 +02:00
rust.rst rust/hpet: Support migration 2025-05-02 17:37:46 +02:00
s390-cpu-topology.rst docs/s390: Fix wrong command example in s390-cpu-topology.rst 2023-11-28 14:27:18 +01:00
s390-dasd-ipl.rst docs: rstfy s390 dasd ipl documentation 2020-02-26 18:57:07 +01:00
secure-coding-practices.rst docs/secure-coding-practices: Describe how to use 'null-co' block driver 2021-06-02 14:29:14 +02:00
stable-process.rst docs: Fix botched rST conversion of 'submitting-a-patch.rst' 2021-11-22 15:02:38 +01:00
style.rst docs/devel/style: add a section about bitfield, and disallow them for packed structures 2025-01-17 10:45:27 +00:00
submitting-a-patch.rst docs/devel: add b4 for patch retrieval 2025-01-17 10:45:41 +00:00
submitting-a-pull-request.rst docs/devel: add a maintainers section to development process 2022-11-22 09:49:07 +00:00
tcg-icount.rst accel/tcg: Remove CF_LAST_IO 2023-11-14 10:40:54 -08:00
tcg-ops.rst tcg: Remove INDEX_op_qemu_st8_* 2025-04-28 13:40:17 -07:00
tcg-plugins.rst docs/devel: update tcg-plugins page 2024-08-16 14:13:07 +01:00
tcg.rst docs/devel: add some front matter to the devel index 2023-07-03 12:52:08 +01:00
tracing.rst tracetool: remove redundant --target-type / --target-name args 2024-03-12 14:52:07 -04:00
trivial-patches.rst docs: Fix botched rST conversion of 'submitting-a-patch.rst' 2021-11-22 15:02:38 +01:00
uefi-vars.rst docs: add uefi variable service documentation 2025-03-04 12:07:05 +01:00
ui.rst docs: Spell QEMU all caps 2021-11-19 10:16:58 +01:00
vfio-iommufd.rst docs/devel: Add VFIO iommufd backend documentation 2023-12-19 19:03:38 +01:00
virtio-backends.rst qom: Have class_init() take a const data argument 2025-04-25 17:00:41 +02:00
writing-monitor-commands.rst docs/devel/writing-monitor-commands: Minor improvements 2024-03-04 07:12:40 +01:00
zoned-storage.rst docs/zoned-storage:add zoned emulation use case 2023-05-15 08:19:04 -04:00