Troubleshooting Arm VMs Stay organized with collections Save and categorize content based on your preferences.
This document lists errors that you might encounter when creating or updatingArm VMs.
Errors when creating VMs
If you can't create an Arm virtual machine (VM) instance, it might be due to oneof the common issues that are described inTroubleshooting creating and updating VMs,such as:
- Insufficient quota
not readyerror when creating multiple resources simultaneously- Resource availability issues
- Zone availability issues
- Insufficient permissions
- Resource names
- Constraint violated
- Required CPU platform
Arm VM instance doesn't boot
You are trying to create an Arm VM, but it doesn't enter the Started state.The most common issues are using an incompatible machine type or OS image foryour Arm VM.
Another possible cause is creating an Arm VM using a boot disk from an x86 VM.The architecture of the boot disk must match that of the VM.Compute Engine checks that the boot disk architecture matches the VMarchitecture, but the validations might not work with custom images.
Error message:
Using a boot disk with an x86 architecture with an Arm VM results in a failurevery early in the boot process, with the main symptom being that youcan't access the VM usingssh. Because the VM is not functional, the only wayto verify the problem is through serial console logs, which should look similarto the following, repeating infinitely:
BdsDxe: failed to load Boot0001 "UEFI nvme_card-pd" from PciRoot(0x0)/Pci(0x2,0x0)/NVMe(0x1,00-00-00-00-00-00-00-00): Not FoundEMU Variable FVB StartedEMU Variable invalid PCD sizesFound PL031 RTC @ 0x9010000InitializeRealTimeClock: using default timezone/daylight settings[2J[01;01H[=3h[2J[01;01HUEFI: Failed to load image.Description: UEFI nvme_card-pdFilePath: PciRoot(0x0)/Pci(0x2,0x0)/NVMe(0x1,00-00-00-00-00-00-00-00)OptionNumber: 1.Status: Not Found.
Resolution:
Check that your VM is running on an Arm compatible machine type andOS image. Don't use a boot disk from an x86 VM to create the VM.Recreate the Arm VM.
For information about the available Arm images, seeOperating system details.
Instance boot looping
Your VM is looping during the boot stage. Common causes of this issue are:
- Your Arm VM uses a boot disk with an x86 operating system.
- You have anorganization policythat requires all new Compute Engine VMs to use Shielded disk imageswith secure boot, or you created your VM with the
--shielded-secure-bootoption.
Resolution:
If you created a boot disk for your VM with the wrong operating system image,recreate the Arm VM with an Arm OS image. For information about the availableArm OS images, seeOperating system details.
If the VM is using an Arm OS image, it might be that the OS image doesn'tsupport Secure boot. If you run into this issue with your Arm VM, then modifyyour VM to set the--no-shielded-secure-boot option. To see how to setthis option, seeModifying a shielded VM.
Errors when updating VMs
If you can't update a VM, it might be due to the following issue.
Error when changing the machine type
The following errors might occur when you try to change the machine type ofa VM:
ERROR: (gcloud.compute.instances.set-machine-type) Could not fetch resource: - Invalid resource usage: 'Requested boot disk architecture (X86_64) is not compatible with machine type architecture (ARM64).'
Resolution:
Make sure that your VM supports the processor of the new machine type. An x86VM must have an x86-compatible CPU, just as an Arm VM must have an Arm-compatibleCPU. For more information about the processors supported by different machinetypes, see theMachine family comparisonpage.
Try tochange the machine typeby using the Google Cloud CLI.
x86 to Arm storage type error
If you switch from an x86 machine type to an Arm C4A or T2A machine type, youmight receive an `INVALID_RESOURCE_USAGE' error indicating that your disk typeisn't compatible with an Arm machine type.
If the error is on the boot disk, then create a new C4A or T2A VM using acompatible Arm OS and disk type.
If you receive this error for Persistent Disk that was attached to your x86 VM,you can create a snapshot of the disk and use that snapshot to create aHyperdisk Balanced disk. You can then attach the Hyperdisk Balanced to the C4A VM.
To learn more about how to snapshot Persistent Disk boot and disk data, seeMove your workload to a new compute instance.
Example
Editing VM instance "t2a-vm" failed. Error: [pd-balanced, c4a-standard-1]features are not compatible for creating instance.
In this example, you can't change the machine type of at2a-standard-1 Arm VMto ac4a-standard-1 Arm VM because C4A only supports Hyperdisk Balanced for the bootdisk but T2A uses only Persistent Disk disks. You can'tchange the machine type of the T2A VM. To resolve this error, follow the steps inMigrating to an Arm VM.
What's next?
- To learn more about migrating to an Arm VM, seeArm VMs on Compute.
- To learn about the C4A machine series, seeC4A machine series.
- To learn about the T2A machine series, seeTau T2A machine series.
For troubleshooting NVMe issues, seeTroubleshooting NVMe disks.
Except as otherwise noted, the content of this page is licensed under theCreative Commons Attribution 4.0 License, and code samples are licensed under theApache 2.0 License. For details, see theGoogle Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2025-12-15 UTC.