weaveworks / ignite

Ignite a Firecracker microVM
https://ignite.readthedocs.org
Apache License 2.0
3.49k stars 223 forks source link

vm hang up at load kernel on AMD CPU #927

Closed Giles2000 closed 2 years ago

Giles2000 commented 2 years ago

it happend as the title at yesterday, but the interesting thing is it works well at inter cpu。 we are try to find what's wrong with it.

ignite run weaveworks/ignite-centos:latest    --kernel-image=weaveworks/ignite-kernel:5.10.51    --ssh
INFO[0000] Imported OCI image "weaveworks/ignite-kernel:5.10.51" (69.7 MB) to kernel image with UID "bb9cd1822d5d79f7" 
INFO[0002] Created VM with ID "9d0deadc43469de2" and name "misty-tree" 
INFO[0003] Networking is handled by "cni"               
INFO[0003] Started Firecracker VM "9d0deadc43469de2" in a container with ID "ignite-9d0deadc43469de2" 
INFO[0004] Waiting for the ssh daemon within the VM to start... 
INFO[0024] Waiting for the ssh daemon within the VM to start...
INFO[0043] Waiting for the ssh daemon within the VM to start... 
FATA[0063] Tried connecting to SSH but timed out dial tcp 10.61.0.3:22: i/o timeout
[    0.000000] Linux version 5.10.51 (root@356773a06338) (gcc (Ubuntu 7.5.0-3ubuntu1~18.04) 7.5.0, GNU ld (GNU Binutils for Ubuntu) 2.30) #1 SMP Mon Jul 19 19:08:01 UTC 2021
[    0.000000] Command line: console=ttyS0 reboot=k panic=1 pci=off ip=dhcp root=/dev/vda rw virtio_mmio.device=4K@0xd0000000:5 virtio_mmio.device=4K@0xd0001000:6
[    0.000000] [Firmware Bug]: TSC doesn't count with P0 frequency!
[    0.000000] x86/fpu: Supporting XSAVE feature 0x001: 'x87 floating point registers'
[    0.000000] x86/fpu: Supporting XSAVE feature 0x002: 'SSE registers'
[    0.000000] x86/fpu: Supporting XSAVE feature 0x004: 'AVX registers'
[    0.000000] x86/fpu: xstate_offset[2]:  576, xstate_sizes[2]:  256
[    0.000000] x86/fpu: Enabled xstate features 0x7, context size is 832 bytes, using 'standard' format.
[    0.000000] BIOS-provided physical RAM map:
[    0.000000] BIOS-e820: [mem 0x0000000000000000-0x000000000009fbff] usable
[    0.000000] BIOS-e820: [mem 0x0000000000100000-0x000000001fffffff] usable
[    0.000000] NX (Execute Disable) protection: active
[    0.000000] DMI not present or invalid.
[    0.000000] tsc: Fast TSC calibration using PIT
[    0.000000] tsc: Detected 1999.856 MHz processor
[    0.000109] last_pfn = 0x20000 max_arch_pfn = 0x400000000
[    0.000175] Disabled
[    0.000179] x86/PAT: MTRRs disabled, skipping PAT initialization too.
[    0.000193] CPU MTRRs all blank - virtualized system.
[    0.000200] x86/PAT: Configuration [0-7]: WB  WT  UC- UC  WB  WT  UC- UC  
[    0.000226] found SMP MP-table at [mem 0x0009fc00-0x0009fc0f]
[    0.000297] check: Scanning 1 areas for low memory corruption
[    0.000308] Using GB pages for direct mapping
[    0.000426] ACPI: Early table checksum verification disabled
[    0.000506] ACPI BIOS Error (bug): A valid RSDP was not found (20200925/tbxfroot-210)
[    0.000565] No NUMA configuration found
[    0.000566] Faking a node at [mem 0x0000000000000000-0x000000001fffffff]
[    0.000576] NODE_DATA(0) allocated [mem 0x1ffde000-0x1fffffff]
[    0.000765] Zone ranges:
[    0.000770]   DMA      [mem 0x0000000000001000-0x0000000000ffffff]
[    0.000772]   DMA32    [mem 0x0000000001000000-0x000000001fffffff]
[    0.000773]   Normal   empty
[    0.000775] Movable zone start for each node
[    0.000779] Early memory node ranges
[    0.000780]   node   0: [mem 0x0000000000001000-0x000000000009efff]
[    0.000782]   node   0: [mem 0x0000000000100000-0x000000001fffffff]
[    0.000784] Initmem setup node 0 [mem 0x0000000000001000-0x000000001fffffff]
[    0.002444]   DMA zone: 28770 pages in unavailable ranges
[    0.006556] Intel MultiProcessor Specification v1.4
[    0.006560] MPTABLE: OEM ID: FC      
[    0.006561] MPTABLE: Product ID: 000000000000
[    0.006562] MPTABLE: APIC at: 0xFEE00000
[    0.006591] Processor #0 (Bootup-CPU)
[    0.006619] IOAPIC[0]: apic_id 2, version 17, address 0xfec00000, GSI 0-23
[    0.006622] Processors: 1
[    0.006627] smpboot: Allowing 1 CPUs, 0 hotplug CPUs
[    0.006652] PM: hibernation: Registered nosave memory: [mem 0x00000000-0x00000fff]
[    0.006654] PM: hibernation: Registered nosave memory: [mem 0x0009f000-0x000fffff]
[    0.006656] [mem 0x20000000-0xffffffff] available for PCI devices
[    0.006658] Booting paravirtualized kernel on bare hardware
[    0.006667] clocksource: refined-jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 7645519600211568 ns
[    0.006675] setup_percpu: NR_CPUS:128 nr_cpumask_bits:128 nr_cpu_ids:1 nr_node_ids:1
[    0.008209] percpu: Embedded 44 pages/cpu s143360 r8192 d28672 u2097152
[    0.008250] Built 1 zonelists, mobility grouping on.  Total pages: 128905
[    0.008251] Policy zone: DMA32
[    0.008253] Kernel command line: console=ttyS0 reboot=k panic=1 pci=off ip=dhcp root=/dev/vda rw virtio_mmio.device=4K@0xd0000000:5 virtio_mmio.device=4K@0xd0001000:6
[    0.008860] Dentry cache hash table entries: 65536 (order: 7, 524288 bytes, linear)
[    0.009094] Inode-cache hash table entries: 32768 (order: 6, 262144 bytes, linear)
[    0.009136] mem auto-init: stack:off, heap alloc:off, heap free:off
[    0.010593] Memory: 485540K/523896K available (10243K kernel code, 7826K rwdata, 1968K rodata, 1432K init, 4968K bss, 38100K reserved, 0K cma-reserved)
[    0.010623] random: get_random_u64 called from __kmem_cache_create+0x29/0x480 with crng_init=0
[    0.010694] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
[    0.011053] rcu: Hierarchical RCU implementation.
[    0.011055] rcu:     RCU restricting CPUs from NR_CPUS=128 to nr_cpu_ids=1.
[    0.011057]  Tracing variant of Tasks RCU enabled.
[    0.011058] rcu: RCU calculated value of scheduler-enlistment delay is 25 jiffies.
[    0.011059] rcu: Adjusting geometry for rcu_fanout_leaf=16, nr_cpu_ids=1
[    0.011092] NR_IRQS: 4352, nr_irqs: 48, preallocated irqs: 16
[    0.012709] Console: colour dummy device 80x25
[    0.069839] printk: console [ttyS0] enabled
[    0.070454] APIC: Switch to symmetric I/O mode setup
[    0.071307] x2apic: IRQ remapping doesn't support X2APIC mode
[    0.073318] ..TIMER: vector=0x30 apic1=0 pin1=0 apic2=-1 pin2=-1
[    0.090466] clocksource: tsc-early: mask: 0xffffffffffffffff max_cycles: 0x39a74cbc40b, max_idle_ns: 881590685078 ns
[    0.091835] Calibrating delay loop (skipped), value calculated using timer frequency.. 3999.71 BogoMIPS (lpj=7999424)
[    0.093211] pid_max: default: 32768 minimum: 301
[    0.093862] LSM: Security Framework initializing
[    0.095859] SELinux:  Initializing.
[    0.096360] Mount-cache hash table entries: 1024 (order: 1, 8192 bytes, linear)
[    0.097318] Mountpoint-cache hash table entries: 1024 (order: 1, 8192 bytes, linear)
[    1.095833] random: fast init done
[   24.904020] random: crng init done

and works properly vm at inter cpu log is :

...
[    0.039652] pid_max: default: 32768 minimum: 301
[    0.039958] LSM: Security Framework initializing
[    0.040244] SELinux:  Initializing.
[    0.040477] Mount-cache hash table entries: 1024 (order: 1, 8192 bytes, linear)
[    0.040924] Mountpoint-cache hash table entries: 1024 (order: 1, 8192 bytes, linear)
[    0.041659] x86/cpu: User Mode Instruction Prevention (UMIP) activated
[    0.042051] Last level iTLB entries: 4KB 64, 2MB 8, 4MB 8
[    0.042370] Last level dTLB entries: 4KB 64, 2MB 0, 4MB 0, 1GB 4
[    0.042741] Spectre V1 : Mitigation: usercopy/swapgs barriers and __user pointer sanitization
[    0.043160] Spectre V2 : Mitigation: Enhanced IBRS
[    0.043160] Spectre V2 : Spectre v2 / SpectreRSB mitigation: Filling RSB on context switch
[    0.043160] Spectre V2 : mitigation: Enabling conditional Indirect Branch Prediction Barrier
[    0.043160] Speculative Store Bypass: Mitigation: Speculative Store Bypass disabled via prctl and seccomp
[    0.043160] Freeing SMP alternatives memory: 32K
...

and [ 0.041659] x86/cpu: User Mode Instruction Prevention (UMIP) activated is a questionable message