Virtual machine suddenly stops while transfering file

Hello, I have an issue with LXD. When I transfer large files to the virtual machine, at some moment VM suddenly stops. I tried to transfer in that case Windows 11 ISO file through SSH with the same result as using lxc file push Win11_Polish_x64.iso local:archlinux-vm/home/doskanoness/Win11_Polish_x64.iso. That issue doesn’t occur always when I try to copy the file between the host and VM, only sometimes. I have ZFS on root.

Message that I get Error: read vsock host(2):2570118703->vm(17):8443: connection reset by peer

I get that message also when I executed sudo distrobuilder repack-windows Win10_2004_Polish_x64.iso Win10_2004_Polish_x64-distrobuilder.iso. CPU has been 100% loaded.

Any ideas what’s the cause of this strange LXD behavior? Thanks :slight_smile:

A situation example:

[doskanoness@archlinux-vm ~]$ sudo distrobuilder repack-windows Win10_2004_Polish_x64.iso Win10_2004_Polish_x64-distrobuilder.iso 
[sudo] password for doskanoness: 
INFO    Mounting Windows ISO
INFO    Downloading drivers ISO
INFO    Mounting driver ISO
INFO    Modifying WIM file      {"file": "boot.wim", "index": 2}
INFO    Modifying WIM file      {"file": "install.wim", "index": 1}
INFO    Modifying WIM file      {"file": "install.wim", "index": 2}
INFO    Modifying WIM file      {"file": "install.wim", "index": 3}
INFO    Modifying WIM file      {"file": "install.wim", "index": 4}
INFO    Modifying WIM file      {"file": "install.wim", "index": 5}
INFO    Modifying WIM file      {"file": "install.wim", "index": 6}
INFO    Modifying WIM file      {"file": "install.wim", "index": 7}
INFO    Modifying WIM file      {"file": "install.wim", "index": 8}
INFO    Modifying WIM file      {"file": "install.wim", "index": 9}
INFO    Modifying WIM file      {"file": "install.wim", "index": 10}
INFO    Generating new ISO
Error: read vsock host(2):2570118761->vm(17):8443: connection reset by peer

Maybe this information will be useful:

┌─[doskanoness@gentoo] - [~/Operating systems/Windows 10] - [2021-11-11 02:17:43]
└─[1] <> lxc config show archlinux-vm                                                                                                                                         ⚡[▶▶▶▶▶▶▶▶▶▷]
architecture: x86_64
config:
  image.architecture: amd64
  image.description: Archlinux current amd64 (20211110_04:18)
  image.os: Archlinux
  image.release: current
  image.serial: "20211110_04:18"
  image.type: disk-kvm.img
  image.variant: default
  limits.cpu: "12"
  limits.memory: 32GB
  volatile.base_image: d4d80ce03f878a7bb967e6c05606a8f5c294f227f870c309c3c281299412f8ad
  volatile.eth0.host_name: tap7cc4b6ff
  volatile.eth0.hwaddr: 00:16:3e:22:6c:ff
  volatile.last_state.power: RUNNING
  volatile.uuid: 51c56c37-e086-42d8-a02c-96d3d920e34b
  volatile.vsock_id: "17"
devices:
  root:
    path: /
    pool: lxd
    size: 40GB
    type: disk
ephemeral: false
profiles:
- default
stateful: false
description: ""
┌─[doskanoness@gentoo] - [~/Operating systems/Windows 10] - [2021-11-11 02:17:52]
└─[0] <> lxc info                                                                                                                                                             ⚡[▶▶▶▶▶▶▶▶▶▷]
config: {}
api_extensions:
- storage_zfs_remove_snapshots
- container_host_shutdown_timeout
- container_stop_priority
- container_syscall_filtering
- auth_pki
- container_last_used_at
- etag
- patch
- usb_devices
- https_allowed_credentials
- image_compression_algorithm
- directory_manipulation
- container_cpu_time
- storage_zfs_use_refquota
- storage_lvm_mount_options
- network
- profile_usedby
- container_push
- container_exec_recording
- certificate_update
- container_exec_signal_handling
- gpu_devices
- container_image_properties
- migration_progress
- id_map
- network_firewall_filtering
- network_routes
- storage
- file_delete
- file_append
- network_dhcp_expiry
- storage_lvm_vg_rename
- storage_lvm_thinpool_rename
- network_vlan
- image_create_aliases
- container_stateless_copy
- container_only_migration
- storage_zfs_clone_copy
- unix_device_rename
- storage_lvm_use_thinpool
- storage_rsync_bwlimit
- network_vxlan_interface
- storage_btrfs_mount_options
- entity_description
- image_force_refresh
- storage_lvm_lv_resizing
- id_map_base
- file_symlinks
- container_push_target
- network_vlan_physical
- storage_images_delete
- container_edit_metadata
- container_snapshot_stateful_migration
- storage_driver_ceph
- storage_ceph_user_name
- resource_limits
- storage_volatile_initial_source
- storage_ceph_force_osd_reuse
- storage_block_filesystem_btrfs
- resources
- kernel_limits
- storage_api_volume_rename
- macaroon_authentication
- network_sriov
- console
- restrict_devlxd
- migration_pre_copy
- infiniband
- maas_network
- devlxd_events
- proxy
- network_dhcp_gateway
- file_get_symlink
- network_leases
- unix_device_hotplug
- storage_api_local_volume_handling
- operation_description
- clustering
- event_lifecycle
- storage_api_remote_volume_handling
- nvidia_runtime
- container_mount_propagation
- container_backup
- devlxd_images
- container_local_cross_pool_handling
- proxy_unix
- proxy_udp
- clustering_join
- proxy_tcp_udp_multi_port_handling
- network_state
- proxy_unix_dac_properties
- container_protection_delete
- unix_priv_drop
- pprof_http
- proxy_haproxy_protocol
- network_hwaddr
- proxy_nat
- network_nat_order
- container_full
- candid_authentication
- backup_compression
- candid_config
- nvidia_runtime_config
- storage_api_volume_snapshots
- storage_unmapped
- projects
- candid_config_key
- network_vxlan_ttl
- container_incremental_copy
- usb_optional_vendorid
- snapshot_scheduling
- snapshot_schedule_aliases
- container_copy_project
- clustering_server_address
- clustering_image_replication
- container_protection_shift
- snapshot_expiry
- container_backup_override_pool
- snapshot_expiry_creation
- network_leases_location
- resources_cpu_socket
- resources_gpu
- resources_numa
- kernel_features
- id_map_current
- event_location
- storage_api_remote_volume_snapshots
- network_nat_address
- container_nic_routes
- rbac
- cluster_internal_copy
- seccomp_notify
- lxc_features
- container_nic_ipvlan
- network_vlan_sriov
- storage_cephfs
- container_nic_ipfilter
- resources_v2
- container_exec_user_group_cwd
- container_syscall_intercept
- container_disk_shift
- storage_shifted
- resources_infiniband
- daemon_storage
- instances
- image_types
- resources_disk_sata
- clustering_roles
- images_expiry
- resources_network_firmware
- backup_compression_algorithm
- ceph_data_pool_name
- container_syscall_intercept_mount
- compression_squashfs
- container_raw_mount
- container_nic_routed
- container_syscall_intercept_mount_fuse
- container_disk_ceph
- virtual-machines
- image_profiles
- clustering_architecture
- resources_disk_id
- storage_lvm_stripes
- vm_boot_priority
- unix_hotplug_devices
- api_filtering
- instance_nic_network
- clustering_sizing
- firewall_driver
- projects_limits
- container_syscall_intercept_hugetlbfs
- limits_hugepages
- container_nic_routed_gateway
- projects_restrictions
- custom_volume_snapshot_expiry
- volume_snapshot_scheduling
- trust_ca_certificates
- snapshot_disk_usage
- clustering_edit_roles
- container_nic_routed_host_address
- container_nic_ipvlan_gateway
- resources_usb_pci
- resources_cpu_threads_numa
- resources_cpu_core_die
- api_os
- resources_system
- usedby_consistency
- resources_gpu_mdev
- console_vga_type
- projects_limits_disk
- storage_rsync_compression
- gpu_mdev
- resources_pci_iommu
- resources_network_usb
- resources_disk_address
- network_state_vlan
- gpu_sriov
- migration_stateful
- disk_state_quota
- storage_ceph_features
- gpu_mig
- clustering_join_token
- clustering_description
- server_trusted_proxy
- clustering_update_cert
- storage_api_project
- server_instance_driver_operational
- server_supported_storage_drivers
- event_lifecycle_requestor_address
api_status: stable
api_version: "1.0"
auth: trusted
public: false
auth_methods:
- tls
environment:
  addresses: []
  architectures:
  - x86_64
  - i686
  certificate: |
    -----BEGIN CERTIFICATE-----
    MIICBDCCAYqgAwIBAgIRALH3xkFHipu36ZL25W49HugwCgYIKoZIzj0EAwMwNDEc
    MBoGA1UEChMTbGludXhjb250YWluZXJzLm9yZzEUMBIGA1UEAwwLcm9vdEBnZW50
    b28wHhcNMjExMTA2MDExNTA2WhcNMzExMTA0MDExNTA2WjA0MRwwGgYDVQQKExNs
    aW51eGNvbnRhaW5lcnMub3JnMRQwEgYDVQQDDAtyb290QGdlbnRvbzB2MBAGByqG
    SM49AgEGBSuBBAAiA2IABOBtBXNHor0ndl/5pkELh4OWx4GXRNPUIT5oEzWt49rV
    Q0AFPtdhcQBNjG2dhSyb3C3ZxdGUqj3Nb+mT+L/o75R6LAeCy/6CE9wLarzMmCsy
    4kvXdUWLloS8wEZxeHvAA6NgMF4wDgYDVR0PAQH/BAQDAgWgMBMGA1UdJQQMMAoG
    CCsGAQUFBwMBMAwGA1UdEwEB/wQCMAAwKQYDVR0RBCIwIIIGZ2VudG9vhwR/AAAB
    hxAAAAAAAAAAAAAAAAAAAAABMAoGCCqGSM49BAMDA2gAMGUCMQCQg3mGu2arKzf0
    Q4uOfatby1ZsCl7xS2c7pQYUchYWx1XNiozSaAR0HTI3bRKb+bQCMFnB/VW3WZzw
    MNzeyp1jpAVk8eVawerj/WS0Lx7sylDUMp1hTWhL70rITE47EIxXpQ==
    -----END CERTIFICATE-----
  certificate_fingerprint: 109cf096616ba9c831d1cb55ab8f8d6d7add7ec4a5dd7f0c3d19dfb43924fe51
  driver: lxc | qemu
  driver_version: 4.0.10 | 6.1.0
  firewall: xtables
  kernel: Linux
  kernel_architecture: x86_64
  kernel_features:
    netnsid_getifaddrs: "true"
    seccomp_listener: "true"
    seccomp_listener_continue: "true"
    shiftfs: "true"
    uevent_injection: "true"
    unpriv_fscaps: "true"
  kernel_version: 5.10.76-gentoo-r1-desktop
  lxc_features:
    cgroup2: "true"
    devpts_fd: "true"
    idmapped_mounts_v2: "true"
    mount_injection_file: "true"
    network_gateway_device_route: "true"
    network_ipvlan: "true"
    network_l2proxy: "true"
    network_phys_macvlan_mtu: "true"
    network_veth_router: "true"
    pidfd: "true"
    seccomp_allow_deny_syntax: "true"
    seccomp_notify: "true"
    seccomp_proxy_send_notify_fd: "true"
  os_name: Gentoo
  os_version: ""
  project: default
  server: lxd
  server_clustered: false
  server_name: gentoo
  server_pid: 9986
  server_version: 4.0.7
  storage: zfs
  storage_version: 2.0.6-r0-gentoo
  storage_supported_drivers:
  - name: lvm
    version: 2.02.188(2) (2021-05-07) / 1.02.172 (2021-05-07) / 4.43.0
    remote: false
  - name: zfs
    version: 2.0.6-r0-gentoo
    remote: false
  - name: btrfs
    version: 5.10.1
    remote: false
  - name: dir
    version: "1"
    remote: false

Did the VM actually stop or you just got disconnected from the agent?

If the latter, can you run dmesg to see if something caused the agent to die?

Oh, I viewed /var/log/syslog and I see the OOM killer killed the qemu process. Thread can be closed.