Skip to content

Why do we have this distinction of what causes a crashdump? #1280

Open

Description

@jsturtevant

Why do we have this distinction? We should be clear about exactly which exceptions result in dumps and which do not, and whether there is any relationship between that and which faults poison the sandbox.

Originally posted by @syntactically in #1264 (comment)

Activity

  1. jsturtevant commented on Mar 6, 2026

    @jsturtevant
    ContributorAuthor

    It is coming from here:

    match result {
    Ok(_) => Ok(()),
    Err(RunVmError::ExecutionCancelledByHost) => {
    // no need to crashdump this
    Err(RunVmError::ExecutionCancelledByHost)
    }
    Err(e) => {
    #[cfg(crashdump)]
    if self.rt_cfg.guest_core_dump {
    crashdump::generate_crashdump(self)
    .map_err(|e| RunVmError::CrashdumpGeneration(Box::new(e)))?;
    }

    and

    Ok(VmExit::Halt()) => {
    break Ok(());
    }
    Ok(VmExit::IoOut(port, data)) => {
    self.handle_io(mem_mgr, host_funcs, port, data)?;
    }
    Ok(VmExit::MmioRead(addr)) => {
    let all_regions = self.get_mapped_regions();
    match get_memory_access_violation(
    addr as usize,
    MemoryRegionFlags::WRITE,
    all_regions,
    ) {
    Some(MemoryAccess::AccessViolation(region_flags)) => {
    break Err(RunVmError::MemoryAccessViolation {
    addr,
    access_type: MemoryRegionFlags::READ,
    region_flags,
    });
    }
    None => {
    break Err(RunVmError::MmioReadUnmapped(addr));
    }
    }

    I can create an issue for this if we believe this is wrong

  2. added this to the Backlog milestone on Mar 11, 2026
  3. added
    questionFurther information is requested
    lifecycle/confirmedBug is verified or proposal seems reasonable
    and removed on Mar 11, 2026
  4. jsturtevant commented on Mar 11, 2026

    @jsturtevant
    ContributorAuthor

    two scenarios we should consider

    • hyperlight isn't working as expected
    • things that try and breach security

    This may have changed when we re-classified some of the errors. We should collect more feedback from end users.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    lifecycle/confirmedBug is verified or proposal seems reasonablequestionFurther information is requested

    Type

    No type

    Projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions