Add pmem for resume-on-reboot
Use pmem to implement the resume-on-reboot feature for cuttlefish. This
automatically creates a file-backed section that simulates RAM
persisting during a cold reboot using crosvm's rw-pmem-file option.
This requires a kernel with CONFIG_VIRTIO_PMEM which was submitted in
I1d18938076f7b615b6b67d9c546fd1fad78dd744. Since this adds another
virtio device as virtio1, the network and GPU devices have changed
virtio device numbers and this change also updates genfs_contexts to
reflect that.
Test: atest VtsHalRebootEscrowTargetTest
Test: find /sys/devices -name mtu -exec ls -lZ {} \;
Test: launch_cvd --gpu_mode=drm_virgl --start_webrtc
Bug: 146400078
Change-Id: Ia5c6c08b3763cf508131bd75b76925637a7e063e
diff --git a/host/commands/assemble_cvd/flags.cc b/host/commands/assemble_cvd/flags.cc
index 39db389..e307ffc 100644
--- a/host/commands/assemble_cvd/flags.cc
+++ b/host/commands/assemble_cvd/flags.cc
@@ -712,6 +712,11 @@
CreateBlankImage(FLAGS_metadata_image, FLAGS_blank_metadata_image_mb, "none");
}
+ if (!cvd::FileExists(config->ForDefaultInstance().access_kregistry_path())) {
+ CreateBlankImage(config->ForDefaultInstance().access_kregistry_path(), 1,
+ "none", "64K");
+ }
+
if (SuperImageNeedsRebuilding(fetcher_config, *config)) {
if (!RebuildSuperImage(fetcher_config, *config, FLAGS_super_image)) {
LOG(ERROR) << "Super image rebuilding requested but could not be completed.";