Skip to content

[live-migration] wire cancel to the HcsCancelLiveMigration API - #2843

Open
rawahars wants to merge 1 commit into
mainfrom
harshrawat/wire-cancel-lm
Open

[live-migration] wire cancel to the HcsCancelLiveMigration API#2843
rawahars wants to merge 1 commit into
mainfrom
harshrawat/wire-cancel-lm

Conversation

@rawahars

Copy link
Copy Markdown
Contributor

CancelLiveMigration was a stub: it only checked the compute system was open and returned success, so a cancel never reached HCS and an in-flight migration kept running.

Bind the computecore.dll HcsCancelLiveMigration export and issue it from System.CancelLiveMigration, waiting on the async operation for the result (a pending status is expected, as with the sibling LM APIs). The call still takes no handle lock so it can interrupt an in-flight transfer that holds it, and it now surfaces a real error on failure instead of always succeeding.

Thread a MigrationCancelOptions through the cancel call chain (vmmanager, vm and migration controllers, service interface) so the request carries the originating side; the migration session stamps its own Origin (source or destination), matching the documented cancel sequence.

Regenerate the computecore syscall bindings and the vmController mocks.

CancelLiveMigration was a stub: it only checked the compute system was
open and returned success, so a cancel never reached HCS and an in-flight
migration kept running.

Bind the computecore.dll HcsCancelLiveMigration export and issue it from
System.CancelLiveMigration, waiting on the async operation for the result
(a pending status is expected, as with the sibling LM APIs). The call
still takes no handle lock so it can interrupt an in-flight transfer that
holds it, and it now surfaces a real error on failure instead of always
succeeding.

Thread a MigrationCancelOptions through the cancel call chain (vmmanager,
vm and migration controllers, service interface) so the request carries
the originating side; the migration session stamps its own Origin
(source or destination), matching the documented cancel sequence.

Regenerate the computecore syscall bindings and the vmController mocks.

Signed-off-by: Harsh Rawat <harshrawat@microsoft.com>
@rawahars
rawahars requested a review from a team as a code owner July 29, 2026 16:59
@rawahars
rawahars requested a review from Kavya-Bharadwaj July 29, 2026 17:00
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.

1 participant