firecracker-microvm/firecracker · error
'mmds-size-limit' parameter expected to be of 'usize' type.
Error message
'mmds-size-limit' parameter expected to be of 'usize' type.
What it means
Error "'mmds-size-limit' parameter expected to be of 'usize' type." thrown in firecracker-microvm/firecracker.
Source
Thrown at src/firecracker/src/main.rs:417
let api_enabled = !arguments.flag_present("no-api");
let api_payload_limit = arg_parser
.arguments()
.single_value("http-api-max-payload-size")
.map(|lim| {
lim.parse::<usize>()
.expect("'http-api-max-payload-size' parameter expected to be of 'usize' type.")
})
// Safe to unwrap as we provide a default value.
.unwrap();
// If the mmds size limit is not explicitly configured, default to using the
// `http-api-max-payload-size` value.
let mmds_size_limit = arg_parser
.arguments()
.single_value("mmds-size-limit")
.map(|lim| {
lim.parse::<usize>()
.expect("'mmds-size-limit' parameter expected to be of 'usize' type.")
})
.unwrap_or_else(|| api_payload_limit);
if api_enabled {
let bind_path = arguments
.single_value("api-sock")
.map(PathBuf::from)
.expect("Missing argument: api-sock");
let start_time_us = arguments.single_value("start-time-us").map(|s| {
s.parse::<u64>()
.expect("'start-time-us' parameter expected to be of 'u64' type.")
});
let start_time_cpu_us = arguments.single_value("start-time-cpu-us").map(|s| {
s.parse::<u64>()
.expect("'start-time-cpu-us' parameter expected to be of 'u64' type.")
});View on GitHub (pinned to 0a745def42)
Solutions
- Pass a non-negative integer for the mmds-size-limit metadata value.
- Check the config file JSON types; the value must be a number, not a string.
When it happens
Trigger: Thrown at src/firecracker/src/main.rs:417 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of firecracker-microvm/firecracker@0a745def42 (2026-08-19).
Data as JSON: /api/errors/41e16499be2f909b.
Report an issue: GitHub.