Skip to content

lxc-exec --setup-hyperlight fails #525

Description

@Skyb0rg007

Relevant area(s)

Linux

Brief description of your issue

lxc-exec --setup-hyperlight fails

Steps to reproduce

$ lxc-exec --setup-hyperlight
pyhl:   pull ghcr.io/hyperlight-dev/hyperlight-unikraft/python-agent-driver-kernel:v0.9.0
pyhl:   pull ghcr.io/hyperlight-dev/hyperlight-unikraft/python-agent-driver-initrd:v0.9.0
hyperlight setup failed: hyperlight install: Internal Hyperlight VM error: Map region error: VM map memory error: Hypervisor error: KVM error: File exists (os error 17): Map region error: VM map memory error: Hypervisor error: KVM error: File exists (os error 17): VM map memory error: Hypervisor error: KVM error: File exists (os error 17): Hypervisor error: KVM error: File exists (os error 17)

Expected behavior

lxc-exec --setup-hyperlight shouldn't fail

Actual behavior

lxc-exec --setup-hyperlight fails

Additional details:

Running the code under strace shows the following:

...
openat(AT_FDCWD, "/dev/mshv", O_RDONLY|O_NONBLOCK|O_CLOEXEC) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/dev/kvm", O_RDWR|O_CLOEXEC) = 3
ioctl(3, KVM_GET_API_VERSION, 0)        = 12
ioctl(3, KVM_CHECK_EXTENSION, KVM_CAP_USER_MEMORY) = 1
close(3)                                = 0
openat(AT_FDCWD, "/dev/kvm", O_RDWR|O_CLOEXEC) = 3
ioctl(3, KVM_CREATE_VM, 0)              = 4
ioctl(3, KVM_GET_VCPU_MMAP_SIZE, 0)     = 12288
ioctl(4, KVM_CREATE_IRQCHIP, 0)         = 0
eventfd2(0, 0)                          = 5
ioctl(4, KVM_IRQFD, 0x7ffed67b0108)     = 0
ioctl(4, KVM_CREATE_VCPU, 0)            = 6
mmap(NULL, 12288, PROT_READ|PROT_WRITE, MAP_SHARED, 6, 0) = 0x7433f6cbd000
ioctl(3, KVM_GET_SUPPORTED_CPUID, {nent=58, entries=[...]}) = 0
ioctl(6, KVM_SET_CPUID2, {nent=58, entries=[...]}) = 0
ioctl(6, KVM_SET_SREGS, {cs={base=0, limit=0, selector=0, type=11, present=1, dpl=0, db=0, s=1, l=1, g=0, avl=0}, ...}) = 0
ioctl(4, KVM_SET_USER_MEMORY_REGION, {slot=0, flags=KVM_MEM_READONLY, guest_phys_addr=0x1000, memory_size=2692313088, userspace_addr=0x74316f482000}) = 0
ioctl(4, KVM_SET_USER_MEMORY_REGION, {slot=1, flags=0, guest_phys_addr=0xfd7af0000, memory_size=676397056, userspace_addr=0x7433c7aef000}) = 0
rt_sigaction(SIGRT_2, {sa_handler=0x64bdc7b2aef0, sa_mask=~[RTMIN RT_1], sa_flags=SA_RESTORER|SA_SIGINFO, sa_restorer=0x7433f6a42790}, NULL, 8) = 0
ioctl(4, KVM_SET_USER_MEMORY_REGION, {slot=2, flags=KVM_MEM_READONLY, guest_phys_addr=0xc0000000, memory_size=1123610624, userspace_addr=0x743384a00000}) = -1 EEXIST (File exists)

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions