From 3bb9651f3c420880d3f5e0447c708bc70330c313 Mon Sep 17 00:00:00 2001 From: Purna Pavan Chandra Date: Thu, 2 May 2024 08:33:51 +0000 Subject: [PATCH] docs: Update snapshot/restore documentation Add a section about restoring VM with new Net FDs explicitly passed to ch-remote via 'net_fds' parameter Signed-off-by: Purna Pavan Chandra --- docs/snapshot_restore.md | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/docs/snapshot_restore.md b/docs/snapshot_restore.md index 4e89c2dc87..a5879aa836 100644 --- a/docs/snapshot_restore.md +++ b/docs/snapshot_restore.md @@ -63,7 +63,7 @@ component in the state it was left before the snapshot occurred. ## Restore a Cloud Hypervisor VM Given that one has access to an existing snapshot in `/home/foo/snapshot`, -it is possible to create a new VM based on this snapshot with the following +it is possible to create a new VM based on this snapshot with the following command: ```bash @@ -93,6 +93,17 @@ start using it. At this point, the VM is fully restored and is identical to the VM which was snapshot earlier. +## Restore a VM with new Net FDs +For a VM created with FDs explicitly passed to NetConfig, the snapshot `config.json` will contain invalid fds, for example `"fds":[-1,-1,-1,-1]`. New net FDs have to be passed to restore the VM properly with the syntax `net_fds=[@[,,..],..]` +```bash +# First terminal +./cloud-hypervisor --api-socket /tmp/cloud-hypervisor.sock + +# Second terminal +./ch-remote --api-socket=/tmp/cloud-hypervisor.sock restore source_url=file:///home/foo/snapshot net_fds=[net1@[23,24],net2@[25,26]] +``` +In the above mentioned example, FDs 23, 24 will be associated to NetConfig with id 'net1' and FDS 25, 26 to NetConfig with id 'net2'. + ## Limitations VFIO devices and Intel SGX are out of scope.