| Previous | Next |
| ERROR_AUTHIP_FAILURE | ERROR_NOT_GUI_PROCESS |
ERROR_NO_NVRAM_RESOURCES
Nonvolatile firmware storage is exhausted or temporarily unavailable.
ERROR_NO_NVRAM_RESOURCES is Win32 error 1470 (0x5BE). NVRAM stores platform data that must survive power cycles, commonly including UEFI variables and boot-related state. The error means the requested service could not obtain enough of that limited resource. It is not equivalent to low RAM or low disk space, and ordinary memory cleanup inside the process will not release firmware variable storage.
Conditions that lead to exhaustion
- firmware variable storage contains many stale or oversized entries
- an update workflow repeatedly creates variables without removing superseded state
- firmware garbage collection has not reclaimed deleted records until reboot
- a boot manager, security feature, or device firmware has consumed the available quota
- the operation attempts to write a variable larger than platform limits permit
Safe diagnostic evidence
Record the exact firmware-facing API or service, variable namespace GUID and name when non-sensitive, requested payload size, attributes, operation type, firmware and system model, BIOS/UEFI version, Secure Boot state, and whether the result persists after a cold restart. Never dump secrets stored in authenticated or security-sensitive variables into general application logs.
How to diagnose
Confirm that the platform booted in the mode expected by the API and that the caller has the required privilege. Distinguish capacity failure from access denial or unsupported firmware. If an application owns a variable namespace, inventory only that namespace and compare current entry sizes with the product’s documented lifecycle.
Check vendor firmware updates and operating-system event logs before attempting manual deletion. A reboot may trigger firmware garbage collection, but repeated recurrence indicates a leaking producer or firmware defect. On managed fleets, compare affected hardware models and firmware revisions to separate machine-specific capacity from a software rollout problem.
Recovery and prevention
Retry after an orderly reboot when the operation can be safely repeated. Remove only obsolete variables whose ownership and rollback behavior are known; deleting boot or security variables can make the machine unbootable or weaken platform protection. Developers should bound payload size, update existing variables instead of creating unbounded names, delete temporary state on success and failure, and make writes idempotent.
Difference from memory or quota failures
ERROR_NO_SYSTEM_RESOURCES, working-set quota errors, and disk-full conditions concern other resource pools. Error 1470 specifically identifies nonvolatile platform storage. Increasing the page file or freeing application heap cannot correct it.
Example
A firmware updater stores a progress variable with a new timestamped name on every attempt. After many interrupted runs, the platform returns 1470. A reboot temporarily helps, but the durable fix is to reuse one bounded variable and remove completed transaction records according to the updater’s recovery design.
References
- Microsoft: System Error Codes (1300–1699)
- Microsoft: GetFirmwareEnvironmentVariable
- Microsoft: SetFirmwareEnvironmentVariable
Looking for a different code? Search another status or error code.