firecracker-microvm/firecracker · error

Unable to open or read from the mmds content file

Error message

Unable to open or read from the mmds content file

What it means

Error "Unable to open or read from the mmds content file" thrown in firecracker-microvm/firecracker.

Source

Thrown at src/firecracker/src/main.rs:395

        init_metrics(metrics_config).map_err(MainError::MetricsInitialization)?;
    }

    let mut seccomp_filters: BpfThreadMap = SeccompConfig::from_args(
        arguments.flag_present("no-seccomp"),
        arguments.single_value("seccomp-filter"),
    )
    .and_then(seccomp::get_filters)
    .map_err(MainError::SeccompFilter)?;

    let vmm_config_json = arguments
        .single_value("config-file")
        .map(fs::read_to_string)
        .map(|x| x.expect("Unable to open or read from the configuration file"));

    let metadata_json = arguments
        .single_value(MMDS_CONTENT_ARG)
        .map(fs::read_to_string)
        .map(|x| x.expect("Unable to open or read from the mmds content file"));

    let boot_timer_enabled = arguments.flag_present("boot-timer");
    let pci_enabled = arguments.flag_present("enable-pci");
    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()

View on GitHub (pinned to 0a745def42)

Solutions

  1. Verify the MMDS content file path exists and is readable.
  2. Check the file contents are valid JSON before passing it via --mmds-content-file.

When it happens

Trigger: Thrown at src/firecracker/src/main.rs:395 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/2b899b602f57c50b. Report an issue: GitHub.