Skip to content

gardenlinux: add PoC for pre-copy auto-converge#11

Closed
phip1611 wants to merge 7 commits into
gardenlinuxfrom
gardenlinux-next
Closed

gardenlinux: add PoC for pre-copy auto-converge#11
phip1611 wants to merge 7 commits into
gardenlinuxfrom
gardenlinux-next

Conversation

@phip1611

Copy link
Copy Markdown
Member

This includes the cherry-picked branches from the upstream PR 7033 and my PoC.

Jinrong Liang and others added 7 commits August 12, 2025 14:13
Add handling of migration timeout failures to provide more flexible
live migration options. Implement downtime limiting logic to minimize
service disruptions. Support for setting downtime thresholds and
migration timeouts.

Signed-off-by: Jinrong Liang <cloudliang@tencent.com>
Updated live migration documentation to include migration timeout
controls and downtime limits.

Signed-off-by: Jinrong Liang <cloudliang@tencent.com>
Signed-off-by: Jinrong Liang <cloudliang@tencent.com>
Live migration generates a large number of logs with GPA and size
information for memory regions. Adjusting the level to debug avoids
excessive logging while retaining the information needed for debugging.

Signed-off-by: Jinrong Liang <cloudliang@tencent.com>
This patch fixes an issue that the loop didn't exit in time when
threshold wasn't set.

Signed-off-by: Songqian Li <sionli@tencent.com>
Add handling of migration timeout failures to provide more flexible
live migration options. Implement downtime limiting logic to minimize
service disruptions. Support for setting downtime thresholds and
migration timeouts.

Signed-off-by: Jinrong Liang <cloudliang@tencent.com>
auto-converge (vCPU throttling) is a crucial technique to migrate
VMs with a high dirty rate (high working set with intense usage).
It is an alternative to postcopy migration, which is not yet
implemented in Cloud Hypervisor.

vCPU throttling was implemented with a different thread and a
manager for that thread. It is possible to abort vCPU throttling
in case one aborts a live-migration, for example.

The rather complex thread state management is covered in a unit
test ensuring liveliness throughout all possible scenarios.

The throttling itself is implemented by utilizing the CpuManager
and its pause() and resume() functions.

Signed-off-by: Philipp Schuster <philipp.schuster@cyberus-technology.de>
On-behalf-of: SAP philipp.schuster@sap.com
@phip1611 phip1611 changed the base branch from main to gardenlinux August 12, 2025 12:19
@tpressure

Copy link
Copy Markdown

@phip1611 can you have a look at the pipeline erros? They look genuine.

@phip1611 phip1611 closed this Aug 15, 2025
@tpressure tpressure deleted the gardenlinux-next branch August 18, 2025 14:51
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants