How to kexec into Qubes from Linux LiveCD

I want to kexec into Qubes from Debian LiveCD.
For testing I’ve installed Qubes in KVM on debian host.
Qubes boots normally in KVM.
Now I boot from debian LiveCD and try to kexec into Qubes.
First I’ve tried to run this command with arguments from my Qubes grub.cfg:

kexec -d -l xen.gz --command-line=“placeholder console=none dom0_mem=min:1024M dom0_mem=max:4096M ucode=scan smt=off gnttab_max_frames=2048 gnttab_max_maptrack_frames=4096 no-
real-mode” --module=“vmlinuz placeholder root=UUID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx ro plymouth.ignore-serial-consoles rd.driver.pre=btrfs rhgb quiet” --module=“initramfs.img”

Which gave me an error:

Cannot determine the file type of xen.gz

Then I’ve uncompressed xen.gz:

gunzp -k xen.gz

And tried to run it:

kexec -d -l xen --command-line=“placeholder console=none dom0_mem=min:1024M dom0_mem=max:4096M ucode=scan smt=off gnttab_max_frames=2048 gnttab_max_maptrack_frames=4096 no-real-mode” --module=“vmlinuz placeholder root=UUID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx ro plymouth.ignore-serial-consoles rd.driver.pre=btrfs rhgb quiet” --module=“initramfs.img”

Which worked fine:

Log

kernel: 0x7f74a5b3c010 kernel_size: 0x22dccc
MEMORY RANGES
0000000000000400-000000000009ffff (0)
0000000000100000-000000007ee77fff (0)
000000007ee78000-000000007ef79fff (1)
000000007ef7a000-000000007f8edfff (0)
000000007f8ee000-000000007f9edfff (1)
000000007f9ee000-000000007faedfff (1)
000000007faee000-000000007fb6dfff (1)
000000007fb6e000-000000007fb7dfff (2)
000000007fb7e000-000000007fbfdfff (3)
000000007fbfe000-000000007ff7bfff (0)
000000007ff7c000-000000007fffffff (1)
00000000b0000000-00000000bfffffff (1)
00000000ffc00000-00000000ffffffff (1)
0000000100000000-00000001ffffffff (0)
sym: sha256_starts info: 12 other: 00 shndx: 1 value: 1160 size: 48
sym: sha256_starts value: 2160 addr: 1002
R_X86_64_64
sym: sha256_update info: 12 other: 00 shndx: 1 value: 3cc0 size: 19
sym: sha256_update value: 4cc0 addr: 1013
R_X86_64_64
sym: sha256_regions info: 11 other: 00 shndx: 8 value: 40 size: 100
sym: sha256_regions value: 6040 addr: 101e
R_X86_64_64
sym: sha256_regions info: 11 other: 00 shndx: 8 value: 40 size: 100
sym: sha256_regions value: 6140 addr: 1048
R_X86_64_64
sym: sha256_digest info: 11 other: 00 shndx: 8 value: 20 size: 20
sym: sha256_digest value: 6020 addr: 1057
R_X86_64_64
sym: sha256_finish info: 12 other: 00 shndx: 1 value: 3ce0 size: 15c
sym: sha256_finish value: 4ce0 addr: 1069
R_X86_64_64
sym: memcmp info: 12 other: 00 shndx: 1 value: 5cd size: 21
sym: memcmp value: 15cd addr: 1080
R_X86_64_64
sym: .rodata.str1.1 info: 03 other: 00 shndx: 5 value: 0 size: 0
sym: .rodata.str1.1 value: 4f50 addr: 1094
R_X86_64_64
sym: printf info: 12 other: 00 shndx: 1 value: 4ee size: a0
sym: printf value: 14ee addr: 10a2
R_X86_64_64
sym: .rodata.str1.1 info: 03 other: 00 shndx: 5 value: 0 size: 0
sym: .rodata.str1.1 value: 4f80 addr: 10ac
R_X86_64_64
sym: .rodata.str1.1 info: 03 other: 00 shndx: 5 value: 0 size: 0
sym: .rodata.str1.1 value: 4f70 addr: 10ba
R_X86_64_64
sym: .rodata.str1.1 info: 03 other: 00 shndx: 5 value: 0 size: 0
sym: .rodata.str1.1 value: 4f86 addr: 10da
R_X86_64_64
sym: .rodata.str1.1 info: 03 other: 00 shndx: 5 value: 0 size: 0
sym: .rodata.str1.1 value: 4f88 addr: 10ef
R_X86_64_64
sym: .rodata.str1.1 info: 03 other: 00 shndx: 5 value: 0 size: 0
sym: .rodata.str1.1 value: 4f98 addr: 112c
R_X86_64_64
sym: printf info: 12 other: 00 shndx: 1 value: 4ee size: a0
sym: printf value: 14ee addr: 1138
R_X86_64_64
sym: setup_arch info: 12 other: 00 shndx: 1 value: 792 size: 56
sym: setup_arch value: 1792 addr: 1145
R_X86_64_64
sym: skip_checks info: 11 other: 00 shndx: 8 value: 0 size: 4
sym: skip_checks value: 6000 addr: 1151
R_X86_64_64
sym: verify_sha256_digest info: 12 other: 00 shndx: 1 value: 0 size: 12a
sym: verify_sha256_digest value: 1000 addr: 1160
R_X86_64_64
sym: post_verification_setup_arch info: 12 other: 00 shndx: 1 value: 820 size: 58
sym: post_verification_setup_arch value: 1820 addr: 1172
R_X86_64_64
sym: putchar info: 12 other: 00 shndx: 1 value: dbe size: 13b
sym: putchar value: 1dbe addr: 1185
R_X86_64_64
sym: putchar info: 12 other: 00 shndx: 1 value: dbe size: 13b
sym: putchar value: 1dbe addr: 11c8
R_X86_64_64
sym: .rodata.str1.1 info: 03 other: 00 shndx: 5 value: 0 size: 0
sym: .rodata.str1.1 value: 4faa addr: 1311
R_X86_64_64
sym: vsprintf info: 12 other: 00 shndx: 1 value: 17d size: 2db
sym: vsprintf value: 117d addr: 14d4
R_X86_64_64
sym: vsprintf info: 12 other: 00 shndx: 1 value: 17d size: 2db
sym: vsprintf value: 117d addr: 1574
R_X86_64_64
sym: entry32 info: 10 other: 00 shndx: 1 value: 5f0 size: 0
sym: entry32 value: 15ec addr: 15fd
R_X86_64_PC32
sym: entry32 info: 10 other: 00 shndx: 1 value: 5f0 size: 0
sym: entry32 value: 15ec addr: 1612
R_X86_64_PC32
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 615c addr: 162d
R_X86_64_PC32
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 613c addr: 1634
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4e64 addr: 163a
R_X86_64_PC32
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 61ac addr: 1640
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4e3c addr: 1646
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4ed1 addr: 1679
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4ee0 addr: 1680
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4eeb addr: 1687
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4ef6 addr: 168e
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4f01 addr: 1695
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4f0c addr: 169c
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4f17 addr: 16a3
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4f06 addr: 16aa
R_X86_64_PC32
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 6271 addr: 16b1
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4efc addr: 16c3
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4f2c addr: 16d9
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4e6c addr: 16ec
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4e74 addr: 16f3
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4e7c addr: 16fa
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4e84 addr: 1701
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4e8c addr: 1708
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4e94 addr: 170f
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4e9c addr: 1716
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4ea4 addr: 171d
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4eac addr: 1724
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4eb4 addr: 172b
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4ebc addr: 1732
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4ec4 addr: 1739
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4ecc addr: 1740
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4ed4 addr: 1747
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4edc addr: 174e
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4ee4 addr: 1755
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4eec addr: 175b
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4f2c addr: 1763
R_X86_64_PC32
sym: jump_back_entry info: 11 other: 00 shndx: 8 value: 2008 size: 8
sym: jump_back_entry value: 8004 addr: 177d
R_X86_64_PC32
sym: .bss info: 03 other: 00 shndx: a value: 0 size: 0
sym: .bss value: 9ffc addr: 1784
R_X86_64_PC32
sym: purgatory info: 12 other: 00 shndx: 1 value: 12a size: 53
sym: purgatory value: 1126 addr: 1789
R_X86_64_PLT32
sym: entry64 info: 10 other: 00 shndx: 1 value: 6c0 size: 0
sym: entry64 value: 16bc addr: 178e
R_X86_64_PLT32
sym: reset_vga info: 11 other: 00 shndx: 8 value: 2012 size: 1
sym: reset_vga value: 8012 addr: 1794
R_X86_64_64
sym: x86_reset_vga info: 12 other: 00 shndx: 1 value: ef9 size: 232
sym: x86_reset_vga value: 1ef9 addr: 17a3
R_X86_64_64
sym: legacy_pic info: 11 other: 00 shndx: 8 value: 2011 size: 1
sym: legacy_pic value: 8011 addr: 17b0
R_X86_64_64
sym: x86_setup_legacy_pic info: 12 other: 00 shndx: 1 value: 112b size: 35
sym: x86_setup_legacy_pic value: 212b addr: 17bf
R_X86_64_64
sym: legacy_pic info: 11 other: 00 shndx: 8 value: 2011 size: 1
sym: legacy_pic value: 8011 addr: 17ce
R_X86_64_64
sym: x86_setup_legacy_pic info: 12 other: 00 shndx: 1 value: 112b size: 35
sym: x86_setup_legacy_pic value: 212b addr: 17dd
R_X86_64_64
sym: cmdline_end info: 11 other: 00 shndx: 8 value: 2000 size: 8
sym: cmdline_end value: 8000 addr: 17ea
R_X86_64_64
sym: jump_back_entry info: 11 other: 00 shndx: 8 value: 2008 size: 8
sym: jump_back_entry value: 8008 addr: 17fc
R_X86_64_64
sym: .rodata.str1.1 info: 03 other: 00 shndx: 5 value: 0 size: 0
sym: .rodata.str1.1 value: 4fbb addr: 180b
R_X86_64_64
sym: sprintf info: 12 other: 00 shndx: 1 value: 458 size: 96
sym: sprintf value: 1458 addr: 1815
R_X86_64_64
sym: panic_kernel info: 11 other: 00 shndx: 8 value: 2010 size: 1
sym: panic_kernel value: 8010 addr: 1822
R_X86_64_64
sym: crashdump_backup_memory info: 12 other: 00 shndx: 1 value: ce3 size: 3e
sym: crashdump_backup_memory value: 1ce3 addr: 1831
R_X86_64_64
sym: jump_back_entry info: 11 other: 00 shndx: 8 value: 2008 size: 8
sym: jump_back_entry value: 8008 addr: 183e
R_X86_64_64
sym: x86_setup_jump_back_entry info: 12 other: 00 shndx: 1 value: 7e8 size: 38
sym: x86_setup_jump_back_entry value: 17e8 addr: 184e
R_X86_64_64
sym: jump_back_entry info: 11 other: 00 shndx: 8 value: 2008 size: 8
sym: jump_back_entry value: 8008 addr: 185d
R_X86_64_64
sym: x86_setup_jump_back_entry info: 12 other: 00 shndx: 1 value: 7e8 size: 38
sym: x86_setup_jump_back_entry value: 17e8 addr: 186d
R_X86_64_64
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 8047 addr: 1897
R_X86_64_PC32
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 804f addr: 189d
R_X86_64_PC32
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 8075 addr: 18bd
R_X86_64_PC32
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 807f addr: 18c3
R_X86_64_PC32
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 8089 addr: 18c9
R_X86_64_PC32
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 8093 addr: 18cf
R_X86_64_PC32
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 8076 addr: 18d6
R_X86_64_PC32
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 808d addr: 18dd
R_X86_64_PC32
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 806d addr: 19a7
R_X86_64_PC32
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 8075 addr: 19ad
R_X86_64_PC32
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 809b addr: 19cd
R_X86_64_PC32
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 80a5 addr: 19d3
R_X86_64_PC32
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 80af addr: 19d9
R_X86_64_PC32
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 80b9 addr: 19df
R_X86_64_PC32
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 80e2 addr: 1a22
R_X86_64_PC32
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 812b addr: 1a65
R_X86_64_PC32
sym: backup_src_size info: 11 other: 00 shndx: 8 value: 2070 size: 8
sym: backup_src_size value: 8070 addr: 1ce5
R_X86_64_64
sym: backup_start info: 11 other: 00 shndx: 8 value: 2080 size: 8
sym: backup_start value: 8080 addr: 1cf7
R_X86_64_64
sym: backup_src_start info: 11 other: 00 shndx: 8 value: 2078 size: 8
sym: backup_src_start value: 8078 addr: 1d09
R_X86_64_64
sym: memcpy info: 12 other: 00 shndx: 1 value: 5b5 size: 18
sym: memcpy value: 15b5 addr: 1d16
R_X86_64_64
sym: serial_base info: 11 other: 00 shndx: 8 value: 2090 size: 2
sym: serial_base value: 8090 addr: 1d23
R_X86_64_64
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 8088 addr: 1d33
R_X86_64_64
sym: serial_baud info: 11 other: 00 shndx: 8 value: 208c size: 4
sym: serial_baud value: 808c addr: 1d6a
R_X86_64_64
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 8088 addr: 1d98
R_X86_64_64
sym: console_vga info: 11 other: 00 shndx: 8 value: 2093 size: 1
sym: console_vga value: 8093 addr: 1dc0
R_X86_64_64
sym: console_serial info: 11 other: 00 shndx: 8 value: 2092 size: 1
sym: console_serial value: 8092 addr: 1dcc
R_X86_64_64
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 8098 addr: 1ddf
R_X86_64_64
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 8098 addr: 1e44
R_X86_64_64
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 8094 addr: 1e5a
R_X86_64_64
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 1d21 addr: 1e72
R_X86_64_64
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 8094 addr: 1e8b
R_X86_64_64
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 8094 addr: 1ec1
R_X86_64_64
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 1d21 addr: 1eeb
R_X86_64_64
sym: sha256_process info: 12 other: 00 shndx: 1 value: 11b0 size: 29f2
sym: sha256_process value: 21b0 addr: 4c01
R_X86_64_64
sym: memcpy info: 12 other: 00 shndx: 1 value: 5b5 size: 18
sym: memcpy value: 15b5 addr: 4c6c
R_X86_64_64
sym: sha256_process info: 12 other: 00 shndx: 1 value: 11b0 size: 29f2
sym: sha256_process value: 21b0 addr: 4c7e
R_X86_64_64
sym: memcpy info: 12 other: 00 shndx: 1 value: 5b5 size: 18
sym: memcpy value: 15b5 addr: 4cac
R_X86_64_64
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 4bb0 addr: 4cc7
R_X86_64_64
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 4bb0 addr: 4d28
R_X86_64_64
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 80a0 addr: 4d37
R_X86_64_64
sym: entry16 info: 10 other: 00 shndx: 1 value: 880 size: 0
sym: entry16 value: 1880 addr: 4e68
R_X86_64_64
sym: entry32 info: 10 other: 00 shndx: 1 value: 5f0 size: 0
sym: entry32 value: 15f0 addr: 4ef0
R_X86_64_64
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4f00 addr: 4f02
R_X86_64_64
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4f30 addr: 4f32
R_X86_64_64
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 1000 addr: 4ff8
R_X86_64_PC32
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 112a addr: 503c
R_X86_64_PC32
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 117d addr: 5070
R_X86_64_PC32
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 1458 addr: 50bc
R_X86_64_PC32
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 14ee addr: 50d8
R_X86_64_PC32
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 158e addr: 5110
R_X86_64_PC32
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 15a1 addr: 5124
R_X86_64_PC32
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 15b5 addr: 5138
R_X86_64_PC32
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 15cd addr: 514c
R_X86_64_PC32
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 1792 addr: 5178
R_X86_64_PC32
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 17e8 addr: 5198
R_X86_64_PC32
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 1820 addr: 51ac
R_X86_64_PC32
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 1ce3 addr: 51e8
R_X86_64_PC32
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 1d21 addr: 5218
R_X86_64_PC32
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 1dbe addr: 522c
R_X86_64_PC32
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 1ef9 addr: 5258
R_X86_64_PC32
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 212b addr: 5288
R_X86_64_PC32
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 2160 addr: 52b8
R_X86_64_PC32
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 21b0 addr: 52cc
R_X86_64_PC32
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 4bb0 addr: 5310
R_X86_64_PC32
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 4cc0 addr: 5374
R_X86_64_PC32
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 4ce0 addr: 5388
R_X86_64_PC32
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 6140 addr: 6142
R_X86_64_64
can’t get linerar framebuffer address
kexec_load: entry = 0x1760 flags = 0x3e0000
nr_segments = 5
segment[0].buf = 0x558ea82c00a0
segment[0].bufsz = 0x70e0
segment[0].mem = 0x1000
segment[0].memsz = 0x9000
segment[1].buf = 0x558ea82c7350
segment[1].bufsz = 0x32b
segment[1].mem = 0xa000
segment[1].memsz = 0x1000
segment[2].buf = 0x7f74a5b3c090
segment[2].bufsz = 0x22db90
segment[2].mem = 0x200000
segment[2].memsz = 0x3a9000
segment[3].buf = 0x7f74a51b9010
segment[3].bufsz = 0x982b60
segment[3].mem = 0x5a9000
segment[3].memsz = 0x983000
segment[4].buf = 0x7f74a36c5010
segment[4].bufsz = 0x1af3c15
segment[4].mem = 0xf2c000
segment[4].memsz = 0x1af4000

Then I’ve tried to start Qubes with:

kexec -e

But system just hangs.
Is it possible to start Qubes from Linux LiveCD?

Or do I need to build kexec with this patch:

For it to work?

I’ve build kexec-tools with this patch applied but it didn’t change anything as it still hangs.

All above was tested with Debian testing LiveCD and patched kexec-tools-2.0.25 now I’ve tried to test with Debian 11.6 LiveCD and patched kexec-tools-2.0.20.
Now after executing:

kexec -d -l xen --command-line=“placeholder console=none dom0_mem=min:1024M dom0_mem=max:4096M ucode=scan smt=off gnttab_max_frames=2048 gnttab_max_maptrack_frames=4096 no-real-mode” --module=“vmlinuz placeholder root=UUID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx ro plymouth.ignore-serial-consoles rd.driver.pre=btrfs rhgb quiet” --module=“initramfs.img”

Log

kernel: 0x7fe2374e7010 kernel_size: 0x22dccc
MEMORY RANGES
0000000000000100-000000000009ffff (0)
0000000000100000-000000007ee77fff (0)
000000007ee78000-000000007ef79fff (1)
000000007ef7a000-000000007f8edfff (0)
000000007f8ee000-000000007f9edfff (1)
000000007f9ee000-000000007faedfff (1)
000000007faee000-000000007fb6dfff (1)
000000007fb6e000-000000007fb7dfff (2)
000000007fb7e000-000000007fbfdfff (3)
000000007fbfe000-000000007ff7bfff (0)
000000007ff7c000-000000007fffffff (1)
00000000b0000000-00000000bfffffff (1)
00000000ffc00000-00000000ffffffff (1)
0000000100000000-00000001ffffffff (0)
sym: sha256_starts info: 12 other: 00 shndx: 1 value: 1130 size: 48
sym: sha256_starts value: 2130 addr: 1002
R_X86_64_64
sym: sha256_update info: 12 other: 00 shndx: 1 value: 3b40 size: 19
sym: sha256_update value: 4b40 addr: 100f
R_X86_64_64
sym: sha256_regions info: 11 other: 00 shndx: 8 value: 40 size: 100
sym: sha256_regions value: 6040 addr: 101a
R_X86_64_64
sym: sha256_regions info: 11 other: 00 shndx: 8 value: 40 size: 100
sym: sha256_regions value: 6140 addr: 1044
R_X86_64_64
sym: sha256_finish info: 12 other: 00 shndx: 1 value: 3b60 size: 15c
sym: sha256_finish value: 4b60 addr: 105b
R_X86_64_64
sym: sha256_digest info: 11 other: 00 shndx: 8 value: 20 size: 20
sym: sha256_digest value: 6020 addr: 106f
R_X86_64_64
sym: memcmp info: 12 other: 00 shndx: 1 value: 5a5 size: 25
sym: memcmp value: 15a5 addr: 1079
R_X86_64_64
sym: .rodata.str1.1 info: 03 other: 00 shndx: 5 value: 0 size: 0
sym: .rodata.str1.1 value: 4dd0 addr: 108d
R_X86_64_64
sym: printf info: 12 other: 00 shndx: 1 value: 4be size: a3
sym: printf value: 14be addr: 109b
R_X86_64_64
sym: .rodata.str1.1 info: 03 other: 00 shndx: 5 value: 0 size: 0
sym: .rodata.str1.1 value: 4e00 addr: 10a5
R_X86_64_64
sym: .rodata.str1.1 info: 03 other: 00 shndx: 5 value: 0 size: 0
sym: .rodata.str1.1 value: 4df0 addr: 10b3
R_X86_64_64
sym: .rodata.str1.1 info: 03 other: 00 shndx: 5 value: 0 size: 0
sym: .rodata.str1.1 value: 4e06 addr: 10d3
R_X86_64_64
sym: sha256_digest info: 11 other: 00 shndx: 8 value: 20 size: 20
sym: sha256_digest value: 6020 addr: 10e1
R_X86_64_64
sym: .rodata.str1.1 info: 03 other: 00 shndx: 5 value: 0 size: 0
sym: .rodata.str1.1 value: 4e08 addr: 10ef
R_X86_64_64
sym: .rodata.str1.1 info: 03 other: 00 shndx: 5 value: 0 size: 0
sym: .rodata.str1.1 value: 4e00 addr: 1105
R_X86_64_64
sym: .rodata.str1.1 info: 03 other: 00 shndx: 5 value: 0 size: 0
sym: .rodata.str1.1 value: 4e06 addr: 1117
R_X86_64_64
sym: .rodata.str1.1 info: 03 other: 00 shndx: 5 value: 0 size: 0
sym: .rodata.str1.1 value: 4e18 addr: 1136
R_X86_64_64
sym: printf info: 12 other: 00 shndx: 1 value: 4be size: a3
sym: printf value: 14be addr: 1142
R_X86_64_64
sym: setup_arch info: 12 other: 00 shndx: 1 value: 772 size: 56
sym: setup_arch value: 1772 addr: 114f
R_X86_64_64
sym: skip_checks info: 11 other: 00 shndx: 8 value: 0 size: 4
sym: skip_checks value: 6000 addr: 115b
R_X86_64_64
sym: verify_sha256_digest info: 12 other: 00 shndx: 1 value: 0 size: 134
sym: verify_sha256_digest value: 1000 addr: 116a
R_X86_64_64
sym: post_verification_setup_arch info: 12 other: 00 shndx: 1 value: 800 size: 58
sym: post_verification_setup_arch value: 1800 addr: 117c
R_X86_64_64
sym: putchar info: 12 other: 00 shndx: 1 value: d9e size: 11d
sym: putchar value: 1d9e addr: 118f
R_X86_64_64
sym: .rodata.str1.1 info: 03 other: 00 shndx: 5 value: 0 size: 0
sym: .rodata.str1.1 value: 4e2a addr: 12d1
R_X86_64_64
sym: vsprintf info: 12 other: 00 shndx: 1 value: 187 size: 2a1
sym: vsprintf value: 1187 addr: 14a4
R_X86_64_64
sym: vsprintf info: 12 other: 00 shndx: 1 value: 187 size: 2a1
sym: vsprintf value: 1187 addr: 153f
R_X86_64_64
sym: entry32 info: 10 other: 00 shndx: 1 value: 5d0 size: 0
sym: entry32 value: 15cc addr: 15dd
R_X86_64_PC32
sym: entry32 info: 10 other: 00 shndx: 1 value: 5d0 size: 0
sym: entry32 value: 15cc addr: 15f2
R_X86_64_PC32
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 615c addr: 160d
R_X86_64_PC32
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 613c addr: 1614
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4ce4 addr: 161a
R_X86_64_PC32
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 61ac addr: 1620
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4cbc addr: 1626
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4d51 addr: 1659
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4d60 addr: 1660
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4d6b addr: 1667
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4d76 addr: 166e
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4d81 addr: 1675
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4d8c addr: 167c
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4d97 addr: 1683
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4d86 addr: 168a
R_X86_64_PC32
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 6271 addr: 1691
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4d7c addr: 16a3
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4dac addr: 16b9
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4cec addr: 16cc
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4cf4 addr: 16d3
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4cfc addr: 16da
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4d04 addr: 16e1
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4d0c addr: 16e8
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4d14 addr: 16ef
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4d1c addr: 16f6
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4d24 addr: 16fd
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4d2c addr: 1704
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4d34 addr: 170b
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4d3c addr: 1712
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4d44 addr: 1719
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4d4c addr: 1720
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4d54 addr: 1727
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4d5c addr: 172e
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4d64 addr: 1735
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4d6c addr: 173b
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4dac addr: 1743
R_X86_64_PC32
sym: jump_back_entry info: 11 other: 00 shndx: 8 value: 2008 size: 8
sym: jump_back_entry value: 8004 addr: 175d
R_X86_64_PC32
sym: .bss info: 03 other: 00 shndx: a value: 0 size: 0
sym: .bss value: 9ffc addr: 1764
R_X86_64_PC32
sym: purgatory info: 12 other: 00 shndx: 1 value: 134 size: 53
sym: purgatory value: 1130 addr: 1769
R_X86_64_PLT32
sym: entry64 info: 10 other: 00 shndx: 1 value: 6a0 size: 0
sym: entry64 value: 169c addr: 176e
R_X86_64_PLT32
sym: reset_vga info: 11 other: 00 shndx: 8 value: 2012 size: 1
sym: reset_vga value: 8012 addr: 1774
R_X86_64_64
sym: x86_reset_vga info: 12 other: 00 shndx: 1 value: ebb size: 232
sym: x86_reset_vga value: 1ebb addr: 1783
R_X86_64_64
sym: legacy_pic info: 11 other: 00 shndx: 8 value: 2011 size: 1
sym: legacy_pic value: 8011 addr: 1790
R_X86_64_64
sym: x86_setup_legacy_pic info: 12 other: 00 shndx: 1 value: 10ed size: 35
sym: x86_setup_legacy_pic value: 20ed addr: 179f
R_X86_64_64
sym: legacy_pic info: 11 other: 00 shndx: 8 value: 2011 size: 1
sym: legacy_pic value: 8011 addr: 17ae
R_X86_64_64
sym: x86_setup_legacy_pic info: 12 other: 00 shndx: 1 value: 10ed size: 35
sym: x86_setup_legacy_pic value: 20ed addr: 17bd
R_X86_64_64
sym: cmdline_end info: 11 other: 00 shndx: 8 value: 2000 size: 8
sym: cmdline_end value: 8000 addr: 17ca
R_X86_64_64
sym: jump_back_entry info: 11 other: 00 shndx: 8 value: 2008 size: 8
sym: jump_back_entry value: 8008 addr: 17dc
R_X86_64_64
sym: .rodata.str1.1 info: 03 other: 00 shndx: 5 value: 0 size: 0
sym: .rodata.str1.1 value: 4e3b addr: 17eb
R_X86_64_64
sym: sprintf info: 12 other: 00 shndx: 1 value: 428 size: 96
sym: sprintf value: 1428 addr: 17f5
R_X86_64_64
sym: panic_kernel info: 11 other: 00 shndx: 8 value: 2010 size: 1
sym: panic_kernel value: 8010 addr: 1802
R_X86_64_64
sym: crashdump_backup_memory info: 12 other: 00 shndx: 1 value: cc3 size: 3e
sym: crashdump_backup_memory value: 1cc3 addr: 1811
R_X86_64_64
sym: jump_back_entry info: 11 other: 00 shndx: 8 value: 2008 size: 8
sym: jump_back_entry value: 8008 addr: 181e
R_X86_64_64
sym: x86_setup_jump_back_entry info: 12 other: 00 shndx: 1 value: 7c8 size: 38
sym: x86_setup_jump_back_entry value: 17c8 addr: 182e
R_X86_64_64
sym: jump_back_entry info: 11 other: 00 shndx: 8 value: 2008 size: 8
sym: jump_back_entry value: 8008 addr: 183d
R_X86_64_64
sym: x86_setup_jump_back_entry info: 12 other: 00 shndx: 1 value: 7c8 size: 38
sym: x86_setup_jump_back_entry value: 17c8 addr: 184d
R_X86_64_64
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 8047 addr: 1877
R_X86_64_PC32
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 804f addr: 187d
R_X86_64_PC32
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 8075 addr: 189d
R_X86_64_PC32
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 807f addr: 18a3
R_X86_64_PC32
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 8089 addr: 18a9
R_X86_64_PC32
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 8093 addr: 18af
R_X86_64_PC32
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 8076 addr: 18b6
R_X86_64_PC32
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 808d addr: 18bd
R_X86_64_PC32
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 806d addr: 1987
R_X86_64_PC32
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 8075 addr: 198d
R_X86_64_PC32
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 809b addr: 19ad
R_X86_64_PC32
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 80a5 addr: 19b3
R_X86_64_PC32
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 80af addr: 19b9
R_X86_64_PC32
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 80b9 addr: 19bf
R_X86_64_PC32
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 80e2 addr: 1a02
R_X86_64_PC32
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 812b addr: 1a45
R_X86_64_PC32
sym: backup_src_size info: 11 other: 00 shndx: 8 value: 2070 size: 8
sym: backup_src_size value: 8070 addr: 1cc5
R_X86_64_64
sym: backup_start info: 11 other: 00 shndx: 8 value: 2080 size: 8
sym: backup_start value: 8080 addr: 1cd7
R_X86_64_64
sym: backup_src_start info: 11 other: 00 shndx: 8 value: 2078 size: 8
sym: backup_src_start value: 8078 addr: 1ce9
R_X86_64_64
sym: memcpy info: 12 other: 00 shndx: 1 value: 58b size: 1a
sym: memcpy value: 158b addr: 1cf6
R_X86_64_64
sym: serial_base info: 11 other: 00 shndx: 8 value: 2090 size: 2
sym: serial_base value: 8090 addr: 1d03
R_X86_64_64
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 8088 addr: 1d13
R_X86_64_64
sym: serial_baud info: 11 other: 00 shndx: 8 value: 208c size: 4
sym: serial_baud value: 808c addr: 1d4a
R_X86_64_64
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 8088 addr: 1d78
R_X86_64_64
sym: console_vga info: 11 other: 00 shndx: 8 value: 2093 size: 1
sym: console_vga value: 8093 addr: 1da0
R_X86_64_64
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 8098 addr: 1db6
R_X86_64_64
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 8098 addr: 1e18
R_X86_64_64
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 8094 addr: 1e2e
R_X86_64_64
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 8094 addr: 1e48
R_X86_64_64
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 8094 addr: 1e78
R_X86_64_64
sym: console_serial info: 11 other: 00 shndx: 8 value: 2092 size: 1
sym: console_serial value: 8092 addr: 1e8c
R_X86_64_64
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 1d01 addr: 1ea0
R_X86_64_64
sym: sha256_process info: 12 other: 00 shndx: 1 value: 1180 size: 28a1
sym: sha256_process value: 2180 addr: 4a7f
R_X86_64_64
sym: memcpy info: 12 other: 00 shndx: 1 value: 58b size: 1a
sym: memcpy value: 158b addr: 4ae4
R_X86_64_64
sym: sha256_process info: 12 other: 00 shndx: 1 value: 1180 size: 28a1
sym: sha256_process value: 2180 addr: 4af6
R_X86_64_64
sym: memcpy info: 12 other: 00 shndx: 1 value: 58b size: 1a
sym: memcpy value: 158b addr: 4b24
R_X86_64_64
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 4a30 addr: 4b47
R_X86_64_64
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 4a30 addr: 4ba8
R_X86_64_64
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 80a0 addr: 4bb7
R_X86_64_64
sym: entry16 info: 10 other: 00 shndx: 1 value: 860 size: 0
sym: entry16 value: 1860 addr: 4ce8
R_X86_64_64
sym: entry32 info: 10 other: 00 shndx: 1 value: 5d0 size: 0
sym: entry32 value: 15d0 addr: 4d70
R_X86_64_64
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4d80 addr: 4d82
R_X86_64_64
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4db0 addr: 4db2
R_X86_64_64
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 1000 addr: 4e78
R_X86_64_PC32
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 1134 addr: 4eac
R_X86_64_PC32
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 1187 addr: 4ee0
R_X86_64_PC32
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 1428 addr: 4f2c
R_X86_64_PC32
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 14be addr: 4f48
R_X86_64_PC32
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 1561 addr: 4f80
R_X86_64_PC32
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 1574 addr: 4f94
R_X86_64_PC32
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 158b addr: 4fa8
R_X86_64_PC32
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 15a5 addr: 4fbc
R_X86_64_PC32
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 1772 addr: 4fe8
R_X86_64_PC32
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 17c8 addr: 5008
R_X86_64_PC32
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 1800 addr: 501c
R_X86_64_PC32
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 1cc3 addr: 5058
R_X86_64_PC32
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 1d01 addr: 5088
R_X86_64_PC32
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 1d9e addr: 509c
R_X86_64_PC32
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 1ebb addr: 50d0
R_X86_64_PC32
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 20ed addr: 5100
R_X86_64_PC32
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 2130 addr: 5130
R_X86_64_PC32
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 2180 addr: 5144
R_X86_64_PC32
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 4a30 addr: 5190
R_X86_64_PC32
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 4b40 addr: 51f4
R_X86_64_PC32
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 4b60 addr: 5208
R_X86_64_PC32
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 6140 addr: 6142
R_X86_64_64
hack ebda into segment 0!
kexec_load: entry = 0x1740 flags = 0x3e0000
nr_segments = 6
segment[0].buf = 0x5591111f5120
segment[0].bufsz = 0x1000
segment[0].mem = (nil)
segment[0].memsz = 0x1000
segment[1].buf = 0x5591111ed0c0
segment[1].bufsz = 0x70e0
segment[1].mem = 0x1000
segment[1].memsz = 0x9000
segment[2].buf = 0x5591111f4800
segment[2].bufsz = 0x1d3
segment[2].mem = 0xa000
segment[2].memsz = 0x1000
segment[3].buf = 0x7fe2374e7090
segment[3].bufsz = 0x22db90
segment[3].mem = 0x200000
segment[3].memsz = 0x3a9000
segment[4].buf = 0x7fe236b64010
segment[4].bufsz = 0x982b60
segment[4].mem = 0x5a9000
segment[4].memsz = 0x983000
segment[5].buf = 0x7fe235070010
segment[5].bufsz = 0x1af3c15
segment[5].mem = 0xf2c000
segment[5].memsz = 0x1af4000

And then:

kexec -e

System doesn’t hang but first I’m seeing graphical artifacts and then system reboots.

@Insurgo, sorry to bother you, but could you please give me some input on how it works in Heads and what am I missing in trying to kexec into Qubes from Debian LiveCD?

Funny you ask, I’m trying to figure the host kernel requirements to do things correctly under newer Heads kernels, which seems to have changed as opposed to linux 4.x.

What we know:

On xx20/xx30:

  • Heads uses 4.x kernel.
  • kexec patch reuses VGA if host kernel identifies vga as either VGA or inteldrmfb.
  • newer kernel changed the name of inteldrmfb to i915drmfb, but changing kexec patch to add i915drmfb is not enough to obtain same old behavior of 4.x kernel when version bumped to 5.x, something else changed.

What we know and is still valid when kexec’ing from newer kernel version:

  • Heads will not get working frame buffered console until the kexec’ed OS will reuse VGA and reinitialize the vga framebuffer (on load drm driver + i915 on xx20/xx30). Prior of that, host will stay at kexec prompt, looking like frozen but on kexec’ed system, most probably waiting for LUKS password and having either plymouth or something else loading i915 too late to have prompt on a working vga console, otherwise if i915 loaded, vga works.
  • Heads CONFIG_LINUX_COMMAND_LINE="intel_iommu=igfx_off" on first kernel load
  • When kexec’ing into OS kernel, it passes additional OS boot options through CONFIG_BOOT_KERNEL_ADD="intel_iommu=on intel_iommu=igfx_off" making sure IOMMU is setuped correctly, otherwise hanging at kexec call.
  • heads kexec-boot handler adds the following when xen mode is detected, parsing grub.cfg : kexeccmd="$kexeccmd --command-line \"$restval no-real-mode reboot=no vga=current\"". That is, taking grub.cfg boot line, adding CONFIG_BOOT_KERNEL_ADD options and then appending no-real-mode reboot=no vga=current to kexec -l call

Clear host kernel requirements for kexec to enter nicely into kexec’ed kernel are not clear.

Some hints as of now:

  • vgaarb is helpful permitting to change vga handler on boot, where fb console reclaim vga when loaded and active
  • on early kernel boot, if enabled, vga in dmesg logs can be seen to switch on vgaarb trace from vga 16 to to vga or simple fb if present when kexec’ing from 4.x to 5.x and even 6.x kernels

As a result, an x230-maximized board config boots Qubes 4.2 with the following kexec -l line on my testing machine (keeping installation parameters that are taken into consideration to craft grub.cfg config):

Trying to get the essentials, and keep the ball moving to understand once and for all what are host’s kernel requirements and options to be passed to kexec call (and maybe further kexec script magic) under Debugging kernel 5.x kexec issues add tools to ease kernel version bumping by tlaurion · Pull Request #1351 · osresearch/heads · GitHub

@disp6252 Any help welcome, but the kexec call above, if your host grub config replicates Heads behavior passing intel_iommu=igfx_off prior of booting live cd, and then replicating kexec -l above, should work. On kexec -l xen call, passing vga=current and reboot=no should work. Any input you get might help the situation forward as well.

Thank you for this description!

I don’t have xx20/xx30 to test this on so I want to first be able to kexec from Debian into Qubes in KVM so I can rule out the hardware-specific problems.
For a test I’ve created a VM with Q35 chipset, OVMF_CODE_4M.fd UEFI, Bochs video model and two SATA disks.
On first SATA disk I’ve installed Qubes 4.1.2 with default configuration.
On second SATA disk I’ve installed Debian 11 with old stock kernel 4.19.269-1 and 4.14.17-1 and kexec 2.0.22 built with your patch.
In Debian I’ve added intel_iommu=igfx_off to grub config:

root@debian:/home/user# cat /proc/cmdline
BOOT_IMAGE=/boot/vmlinuz-4.14.0-3-amd64 root=UUID=07ae1cf1-0262-42d0-908f-8a6464dc1b45 ro intel_iommu=igfx_off quiet

Then I’ve tried to kexec into Qubes from Debian with parameters from Qubes grub.cfg and xen.gz, vmlinuz and initramfs.img from Qubes /boot:

kexec -d -l xen.gz --command-line=“placeholder console=none dom0_mem=min:1024M dom0_mem=max:4096M ucode=scan smt=off gnttab_max_frames=2048 gnttab_max_maptrack_frames=4096 no-real-mode reboot=no vga=current” --module=“vmlinuz placeholder root=/dev/mapper/qubes_dom0-root ro rd.lvm.lv=qubes_dom0/root rd.lvm.lv=qubes_dom0/swap plymouth.ignore-serial-consoles rd.driver.pre=btrfs rhgb quiet intel_iommu=on intel_iommu=igfx_off” --module=“initramfs.img”

Log

Try gzip decompression.
kernel: 0x7fd5b465d010 kernel_size: 0x22dccc
MEMORY RANGES
0000000000000400-000000000009ffff (0)
0000000000100000-000000007ee77fff (0)
000000007ee78000-000000007ef79fff (1)
000000007ef7a000-000000007f8edfff (0)
000000007f8ee000-000000007f9edfff (1)
000000007f9ee000-000000007faedfff (1)
000000007faee000-000000007fb6dfff (1)
000000007fb6e000-000000007fb7dfff (2)
000000007fb7e000-000000007fbfdfff (3)
000000007fbfe000-000000007ff7bfff (0)
000000007ff7c000-000000007fffffff (1)
00000000b0000000-00000000bfffffff (1)
00000000ffc00000-00000000ffffffff (1)
0000000100000000-00000001ffffffff (0)
sym: sha256_starts info: 12 other: 00 shndx: 1 value: 1120 size: 48
sym: sha256_starts value: 2120 addr: 1002
R_X86_64_64
sym: sha256_update info: 12 other: 00 shndx: 1 value: 3cb0 size: 19
sym: sha256_update value: 4cb0 addr: 100f
R_X86_64_64
sym: sha256_regions info: 11 other: 00 shndx: 8 value: 40 size: 100
sym: sha256_regions value: 6040 addr: 101a
R_X86_64_64
sym: sha256_regions info: 11 other: 00 shndx: 8 value: 40 size: 100
sym: sha256_regions value: 6140 addr: 1044
R_X86_64_64
sym: sha256_finish info: 12 other: 00 shndx: 1 value: 3cd0 size: 15e
sym: sha256_finish value: 4cd0 addr: 105b
R_X86_64_64
sym: sha256_digest info: 11 other: 00 shndx: 8 value: 20 size: 20
sym: sha256_digest value: 6020 addr: 106f
R_X86_64_64
sym: memcmp info: 12 other: 00 shndx: 1 value: 599 size: 21
sym: memcmp value: 1599 addr: 1079
R_X86_64_64
sym: .rodata.str1.1 info: 03 other: 00 shndx: 5 value: 0 size: 0
sym: .rodata.str1.1 value: 4f40 addr: 108d
R_X86_64_64
sym: printf info: 12 other: 00 shndx: 1 value: 4ba size: a0
sym: printf value: 14ba addr: 109b
R_X86_64_64
sym: .rodata.str1.1 info: 03 other: 00 shndx: 5 value: 0 size: 0
sym: .rodata.str1.1 value: 4f70 addr: 10a5
R_X86_64_64
sym: .rodata.str1.1 info: 03 other: 00 shndx: 5 value: 0 size: 0
sym: .rodata.str1.1 value: 4f60 addr: 10b3
R_X86_64_64
sym: .rodata.str1.1 info: 03 other: 00 shndx: 5 value: 0 size: 0
sym: .rodata.str1.1 value: 4f76 addr: 10d3
R_X86_64_64
sym: sha256_digest info: 11 other: 00 shndx: 8 value: 20 size: 20
sym: sha256_digest value: 6020 addr: 10e1
R_X86_64_64
sym: .rodata.str1.1 info: 03 other: 00 shndx: 5 value: 0 size: 0
sym: .rodata.str1.1 value: 4f78 addr: 10ef
R_X86_64_64
sym: .rodata.str1.1 info: 03 other: 00 shndx: 5 value: 0 size: 0
sym: .rodata.str1.1 value: 4f70 addr: 1105
R_X86_64_64
sym: .rodata.str1.1 info: 03 other: 00 shndx: 5 value: 0 size: 0
sym: .rodata.str1.1 value: 4f76 addr: 1117
R_X86_64_64
sym: .rodata.str1.1 info: 03 other: 00 shndx: 5 value: 0 size: 0
sym: .rodata.str1.1 value: 4f88 addr: 1136
R_X86_64_64
sym: printf info: 12 other: 00 shndx: 1 value: 4ba size: a0
sym: printf value: 14ba addr: 1142
R_X86_64_64
sym: setup_arch info: 12 other: 00 shndx: 1 value: 762 size: 56
sym: setup_arch value: 1762 addr: 114f
R_X86_64_64
sym: skip_checks info: 11 other: 00 shndx: 8 value: 0 size: 4
sym: skip_checks value: 6000 addr: 115b
R_X86_64_64
sym: verify_sha256_digest info: 12 other: 00 shndx: 1 value: 0 size: 134
sym: verify_sha256_digest value: 1000 addr: 116a
R_X86_64_64
sym: post_verification_setup_arch info: 12 other: 00 shndx: 1 value: 7f0 size: 58
sym: post_verification_setup_arch value: 17f0 addr: 117c
R_X86_64_64
sym: putchar info: 12 other: 00 shndx: 1 value: d8e size: 124
sym: putchar value: 1d8e addr: 118f
R_X86_64_64
sym: .rodata.str1.1 info: 03 other: 00 shndx: 5 value: 0 size: 0
sym: .rodata.str1.1 value: 4f9a addr: 12d1
R_X86_64_64
sym: vsprintf info: 12 other: 00 shndx: 1 value: 187 size: 29d
sym: vsprintf value: 1187 addr: 14a0
R_X86_64_64
sym: vsprintf info: 12 other: 00 shndx: 1 value: 187 size: 29d
sym: vsprintf value: 1187 addr: 1540
R_X86_64_64
sym: entry32 info: 10 other: 00 shndx: 1 value: 5c0 size: 0
sym: entry32 value: 15bc addr: 15cd
R_X86_64_PC32
sym: entry32 info: 10 other: 00 shndx: 1 value: 5c0 size: 0
sym: entry32 value: 15bc addr: 15e2
R_X86_64_PC32
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 615c addr: 15fd
R_X86_64_PC32
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 613c addr: 1604
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4e54 addr: 160a
R_X86_64_PC32
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 61ac addr: 1610
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4e2c addr: 1616
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4ec1 addr: 1649
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4ed0 addr: 1650
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4edb addr: 1657
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4ee6 addr: 165e
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4ef1 addr: 1665
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4efc addr: 166c
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4f07 addr: 1673
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4ef6 addr: 167a
R_X86_64_PC32
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 6271 addr: 1681
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4eec addr: 1693
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4f1c addr: 16a9
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4e5c addr: 16bc
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4e64 addr: 16c3
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4e6c addr: 16ca
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4e74 addr: 16d1
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4e7c addr: 16d8
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4e84 addr: 16df
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4e8c addr: 16e6
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4e94 addr: 16ed
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4e9c addr: 16f4
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4ea4 addr: 16fb
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4eac addr: 1702
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4eb4 addr: 1709
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4ebc addr: 1710
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4ec4 addr: 1717
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4ecc addr: 171e
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4ed4 addr: 1725
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4edc addr: 172b
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4f1c addr: 1733
R_X86_64_PC32
sym: jump_back_entry info: 11 other: 00 shndx: 8 value: 2008 size: 8
sym: jump_back_entry value: 8004 addr: 174d
R_X86_64_PC32
sym: .bss info: 03 other: 00 shndx: a value: 0 size: 0
sym: .bss value: 9ffc addr: 1754
R_X86_64_PC32
sym: purgatory info: 12 other: 00 shndx: 1 value: 134 size: 53
sym: purgatory value: 1130 addr: 1759
R_X86_64_PLT32
sym: entry64 info: 10 other: 00 shndx: 1 value: 690 size: 0
sym: entry64 value: 168c addr: 175e
R_X86_64_PLT32
sym: reset_vga info: 11 other: 00 shndx: 8 value: 2012 size: 1
sym: reset_vga value: 8012 addr: 1764
R_X86_64_64
sym: x86_reset_vga info: 12 other: 00 shndx: 1 value: eb2 size: 232
sym: x86_reset_vga value: 1eb2 addr: 1773
R_X86_64_64
sym: legacy_pic info: 11 other: 00 shndx: 8 value: 2011 size: 1
sym: legacy_pic value: 8011 addr: 1780
R_X86_64_64
sym: x86_setup_legacy_pic info: 12 other: 00 shndx: 1 value: 10e4 size: 35
sym: x86_setup_legacy_pic value: 20e4 addr: 178f
R_X86_64_64
sym: legacy_pic info: 11 other: 00 shndx: 8 value: 2011 size: 1
sym: legacy_pic value: 8011 addr: 179e
R_X86_64_64
sym: x86_setup_legacy_pic info: 12 other: 00 shndx: 1 value: 10e4 size: 35
sym: x86_setup_legacy_pic value: 20e4 addr: 17ad
R_X86_64_64
sym: cmdline_end info: 11 other: 00 shndx: 8 value: 2000 size: 8
sym: cmdline_end value: 8000 addr: 17ba
R_X86_64_64
sym: jump_back_entry info: 11 other: 00 shndx: 8 value: 2008 size: 8
sym: jump_back_entry value: 8008 addr: 17cc
R_X86_64_64
sym: .rodata.str1.1 info: 03 other: 00 shndx: 5 value: 0 size: 0
sym: .rodata.str1.1 value: 4fab addr: 17db
R_X86_64_64
sym: sprintf info: 12 other: 00 shndx: 1 value: 424 size: 96
sym: sprintf value: 1424 addr: 17e5
R_X86_64_64
sym: panic_kernel info: 11 other: 00 shndx: 8 value: 2010 size: 1
sym: panic_kernel value: 8010 addr: 17f2
R_X86_64_64
sym: crashdump_backup_memory info: 12 other: 00 shndx: 1 value: cb3 size: 3e
sym: crashdump_backup_memory value: 1cb3 addr: 1801
R_X86_64_64
sym: jump_back_entry info: 11 other: 00 shndx: 8 value: 2008 size: 8
sym: jump_back_entry value: 8008 addr: 180e
R_X86_64_64
sym: x86_setup_jump_back_entry info: 12 other: 00 shndx: 1 value: 7b8 size: 38
sym: x86_setup_jump_back_entry value: 17b8 addr: 181e
R_X86_64_64
sym: jump_back_entry info: 11 other: 00 shndx: 8 value: 2008 size: 8
sym: jump_back_entry value: 8008 addr: 182d
R_X86_64_64
sym: x86_setup_jump_back_entry info: 12 other: 00 shndx: 1 value: 7b8 size: 38
sym: x86_setup_jump_back_entry value: 17b8 addr: 183d
R_X86_64_64
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 8047 addr: 1867
R_X86_64_PC32
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 804f addr: 186d
R_X86_64_PC32
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 8075 addr: 188d
R_X86_64_PC32
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 807f addr: 1893
R_X86_64_PC32
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 8089 addr: 1899
R_X86_64_PC32
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 8093 addr: 189f
R_X86_64_PC32
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 8076 addr: 18a6
R_X86_64_PC32
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 808d addr: 18ad
R_X86_64_PC32
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 806d addr: 1977
R_X86_64_PC32
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 8075 addr: 197d
R_X86_64_PC32
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 809b addr: 199d
R_X86_64_PC32
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 80a5 addr: 19a3
R_X86_64_PC32
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 80af addr: 19a9
R_X86_64_PC32
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 80b9 addr: 19af
R_X86_64_PC32
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 80e2 addr: 19f2
R_X86_64_PC32
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 812b addr: 1a35
R_X86_64_PC32
sym: backup_src_size info: 11 other: 00 shndx: 8 value: 2070 size: 8
sym: backup_src_size value: 8070 addr: 1cb5
R_X86_64_64
sym: backup_start info: 11 other: 00 shndx: 8 value: 2080 size: 8
sym: backup_start value: 8080 addr: 1cc7
R_X86_64_64
sym: backup_src_start info: 11 other: 00 shndx: 8 value: 2078 size: 8
sym: backup_src_start value: 8078 addr: 1cd9
R_X86_64_64
sym: memcpy info: 12 other: 00 shndx: 1 value: 581 size: 18
sym: memcpy value: 1581 addr: 1ce6
R_X86_64_64
sym: serial_base info: 11 other: 00 shndx: 8 value: 2090 size: 2
sym: serial_base value: 8090 addr: 1cf3
R_X86_64_64
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 8088 addr: 1d00
R_X86_64_64
sym: serial_baud info: 11 other: 00 shndx: 8 value: 208c size: 4
sym: serial_baud value: 808c addr: 1d3a
R_X86_64_64
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 8088 addr: 1d69
R_X86_64_64
sym: console_vga info: 11 other: 00 shndx: 8 value: 2093 size: 1
sym: console_vga value: 8093 addr: 1d90
R_X86_64_64
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 8098 addr: 1da4
R_X86_64_64
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 8098 addr: 1e09
R_X86_64_64
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 8094 addr: 1e1e
R_X86_64_64
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 8094 addr: 1e37
R_X86_64_64
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 8094 addr: 1e6d
R_X86_64_64
sym: console_serial info: 11 other: 00 shndx: 8 value: 2092 size: 1
sym: console_serial value: 8092 addr: 1e81
R_X86_64_64
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 1cf1 addr: 1e90
R_X86_64_64
sym: sha256_process info: 12 other: 00 shndx: 1 value: 1170 size: 2a25
sym: sha256_process value: 2170 addr: 4bef
R_X86_64_64
sym: memcpy info: 12 other: 00 shndx: 1 value: 581 size: 18
sym: memcpy value: 1581 addr: 4c53
R_X86_64_64
sym: sha256_process info: 12 other: 00 shndx: 1 value: 1170 size: 2a25
sym: sha256_process value: 2170 addr: 4c65
R_X86_64_64
sym: memcpy info: 12 other: 00 shndx: 1 value: 581 size: 18
sym: memcpy value: 1581 addr: 4c93
R_X86_64_64
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 4ba0 addr: 4cb7
R_X86_64_64
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 4ba0 addr: 4d1a
R_X86_64_64
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 80a0 addr: 4d27
R_X86_64_64
sym: entry16 info: 10 other: 00 shndx: 1 value: 850 size: 0
sym: entry16 value: 1850 addr: 4e58
R_X86_64_64
sym: entry32 info: 10 other: 00 shndx: 1 value: 5c0 size: 0
sym: entry32 value: 15c0 addr: 4ee0
R_X86_64_64
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4ef0 addr: 4ef2
R_X86_64_64
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4f20 addr: 4f22
R_X86_64_64
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 1000 addr: 4fe8
R_X86_64_PC32
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 1134 addr: 501c
R_X86_64_PC32
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 1187 addr: 5050
R_X86_64_PC32
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 1424 addr: 509c
R_X86_64_PC32
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 14ba addr: 50b8
R_X86_64_PC32
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 155a addr: 50f0
R_X86_64_PC32
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 156d addr: 5104
R_X86_64_PC32
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 1581 addr: 5118
R_X86_64_PC32
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 1599 addr: 512c
R_X86_64_PC32
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 1762 addr: 5158
R_X86_64_PC32
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 17b8 addr: 5178
R_X86_64_PC32
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 17f0 addr: 518c
R_X86_64_PC32
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 1cb3 addr: 51c8
R_X86_64_PC32
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 1cf1 addr: 51f8
R_X86_64_PC32
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 1d8e addr: 520c
R_X86_64_PC32
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 1eb2 addr: 5248
R_X86_64_PC32
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 20e4 addr: 5278
R_X86_64_PC32
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 2120 addr: 52a8
R_X86_64_PC32
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 2170 addr: 52bc
R_X86_64_PC32
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 4ba0 addr: 5308
R_X86_64_PC32
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 4cb0 addr: 536c
R_X86_64_PC32
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 4cd0 addr: 5380
R_X86_64_PC32
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 6140 addr: 6142
R_X86_64_64
Try gzip decompression.
Try gzip decompression.
hack ebda into segment 0!
kexec_load: entry = 0x1730 flags = 0x3e0000
nr_segments = 6
segment[0].buf = 0x564c9f446300
segment[0].bufsz = 0x1000
segment[0].mem = (nil)
segment[0].memsz = 0x1000
segment[1].buf = 0x564c9f43e1f0
segment[1].bufsz = 0x70e0
segment[1].mem = 0x1000
segment[1].memsz = 0x9000
segment[2].buf = 0x564c9f445950
segment[2].bufsz = 0x239
segment[2].mem = 0xa000
segment[2].memsz = 0x1000
segment[3].buf = 0x7fd5b465d090
segment[3].bufsz = 0x22db90
segment[3].mem = 0x200000
segment[3].memsz = 0x3a9000
segment[4].buf = 0x7fd5b3cda010
segment[4].bufsz = 0x982b60
segment[4].mem = 0x5a9000
segment[4].memsz = 0x983000
segment[5].buf = 0x7fd5b1f5e010
segment[5].bufsz = 0x1d7b5d6
segment[5].mem = 0xf2c000
segment[5].memsz = 0x1d7c000

kexec -e

kexec_core: Starting new kernel

And then debian hangs.

I’ve tried kernel 4.19.269-1 and 4.14.17-1 and also tried to add bochs_drmdrmfb in kexec patch but nothing changed.

Have you been able to kexec into Qubes from Linux in qemu?

Nope!

Welcome to the joys of kexec’ing!
Serial output should be investigated otherwise you will stay in the dark.

I’ve enabled console output to check what’s going on when I’m kexec’ing from debian to Qubes:

root@debian:/home/user# kexec -d -l xen.gz --command-line=“placeholder com1=115200,8n1 console=com1,vga loglvl=all guest_loglvl=all dom0_mem=min:1024M dom0_mem=max:4096M ucode=scan smt=off gnttab_max_frames=2048 gnttab_max_maptrack_frames=4096 no-real-mode reboot=no vga=current” --module=“vmlinuz placeholder console=hvc0 earlyprintk=xen root=/dev/mapper/qubes_dom0-root ro rd.lvm.lv=qubes_dom0/root rd.lvm.lv=qubes_dom0/swap plymouth.ignore-serial-consoles rd.driver.pre=btrfs rhgb quiet intel_iommu=on intel_iommu=igfx_off” --module=“initramfs.img”

kexec log

Try gzip decompression.
kernel: 0x7f2d68613010 kernel_size: 0x22dccc
MEMORY RANGES
0000000000000400-000000000009ffff (0)
0000000000100000-000000007ee77fff (0)
000000007ee78000-000000007ef79fff (1)
000000007ef7a000-000000007f8edfff (0)
000000007f8ee000-000000007f9edfff (1)
000000007f9ee000-000000007faedfff (1)
000000007faee000-000000007fb6dfff (1)
000000007fb6e000-000000007fb7dfff (2)
000000007fb7e000-000000007fbfdfff (3)
000000007fbfe000-000000007ff7bfff (0)
000000007ff7c000-000000007fffffff (1)
00000000b0000000-00000000bfffffff (1)
00000000ffc00000-00000000ffffffff (1)
0000000100000000-00000001ffffffff (0)
sym: sha256_starts info: 12 other: 00 shndx: 1 value: 1130 size: 48
sym: sha256_starts value: 2130 addr: 1002
R_X86_64_64
sym: sha256_update info: 12 other: 00 shndx: 1 value: 3b40 size: 19
sym: sha256_update value: 4b40 addr: 100f
R_X86_64_64
sym: sha256_regions info: 11 other: 00 shndx: 8 value: 40 size: 100
sym: sha256_regions value: 6040 addr: 101a
R_X86_64_64
sym: sha256_regions info: 11 other: 00 shndx: 8 value: 40 size: 100
sym: sha256_regions value: 6140 addr: 1044
R_X86_64_64
sym: sha256_finish info: 12 other: 00 shndx: 1 value: 3b60 size: 15c
sym: sha256_finish value: 4b60 addr: 105b
R_X86_64_64
sym: sha256_digest info: 11 other: 00 shndx: 8 value: 20 size: 20
sym: sha256_digest value: 6020 addr: 106f
R_X86_64_64
sym: memcmp info: 12 other: 00 shndx: 1 value: 5a5 size: 25
sym: memcmp value: 15a5 addr: 1079
R_X86_64_64
sym: .rodata.str1.1 info: 03 other: 00 shndx: 5 value: 0 size: 0
sym: .rodata.str1.1 value: 4dd0 addr: 108d
R_X86_64_64
sym: printf info: 12 other: 00 shndx: 1 value: 4be size: a3
sym: printf value: 14be addr: 109b
R_X86_64_64
sym: .rodata.str1.1 info: 03 other: 00 shndx: 5 value: 0 size: 0
sym: .rodata.str1.1 value: 4e00 addr: 10a5
R_X86_64_64
sym: .rodata.str1.1 info: 03 other: 00 shndx: 5 value: 0 size: 0
sym: .rodata.str1.1 value: 4df0 addr: 10b3
R_X86_64_64
sym: .rodata.str1.1 info: 03 other: 00 shndx: 5 value: 0 size: 0
sym: .rodata.str1.1 value: 4e06 addr: 10d3
R_X86_64_64
sym: sha256_digest info: 11 other: 00 shndx: 8 value: 20 size: 20
sym: sha256_digest value: 6020 addr: 10e1
R_X86_64_64
sym: .rodata.str1.1 info: 03 other: 00 shndx: 5 value: 0 size: 0
sym: .rodata.str1.1 value: 4e08 addr: 10ef
R_X86_64_64
sym: .rodata.str1.1 info: 03 other: 00 shndx: 5 value: 0 size: 0
sym: .rodata.str1.1 value: 4e00 addr: 1105
R_X86_64_64
sym: .rodata.str1.1 info: 03 other: 00 shndx: 5 value: 0 size: 0
sym: .rodata.str1.1 value: 4e06 addr: 1117
R_X86_64_64
sym: .rodata.str1.1 info: 03 other: 00 shndx: 5 value: 0 size: 0
sym: .rodata.str1.1 value: 4e18 addr: 1136
R_X86_64_64
sym: printf info: 12 other: 00 shndx: 1 value: 4be size: a3
sym: printf value: 14be addr: 1142
R_X86_64_64
sym: setup_arch info: 12 other: 00 shndx: 1 value: 772 size: 56
sym: setup_arch value: 1772 addr: 114f
R_X86_64_64
sym: skip_checks info: 11 other: 00 shndx: 8 value: 0 size: 4
sym: skip_checks value: 6000 addr: 115b
R_X86_64_64
sym: verify_sha256_digest info: 12 other: 00 shndx: 1 value: 0 size: 134
sym: verify_sha256_digest value: 1000 addr: 116a
R_X86_64_64
sym: post_verification_setup_arch info: 12 other: 00 shndx: 1 value: 800 size: 58
sym: post_verification_setup_arch value: 1800 addr: 117c
R_X86_64_64
sym: putchar info: 12 other: 00 shndx: 1 value: d9e size: 11d
sym: putchar value: 1d9e addr: 118f
R_X86_64_64
sym: .rodata.str1.1 info: 03 other: 00 shndx: 5 value: 0 size: 0
sym: .rodata.str1.1 value: 4e2a addr: 12d1
R_X86_64_64
sym: vsprintf info: 12 other: 00 shndx: 1 value: 187 size: 2a1
sym: vsprintf value: 1187 addr: 14a4
R_X86_64_64
sym: vsprintf info: 12 other: 00 shndx: 1 value: 187 size: 2a1
sym: vsprintf value: 1187 addr: 153f
R_X86_64_64
sym: entry32 info: 10 other: 00 shndx: 1 value: 5d0 size: 0
sym: entry32 value: 15cc addr: 15dd
R_X86_64_PC32
sym: entry32 info: 10 other: 00 shndx: 1 value: 5d0 size: 0
sym: entry32 value: 15cc addr: 15f2
R_X86_64_PC32
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 615c addr: 160d
R_X86_64_PC32
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 613c addr: 1614
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4ce4 addr: 161a
R_X86_64_PC32
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 61ac addr: 1620
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4cbc addr: 1626
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4d51 addr: 1659
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4d60 addr: 1660
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4d6b addr: 1667
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4d76 addr: 166e
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4d81 addr: 1675
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4d8c addr: 167c
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4d97 addr: 1683
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4d86 addr: 168a
R_X86_64_PC32
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 6271 addr: 1691
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4d7c addr: 16a3
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4dac addr: 16b9
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4cec addr: 16cc
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4cf4 addr: 16d3
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4cfc addr: 16da
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4d04 addr: 16e1
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4d0c addr: 16e8
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4d14 addr: 16ef
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4d1c addr: 16f6
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4d24 addr: 16fd
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4d2c addr: 1704
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4d34 addr: 170b
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4d3c addr: 1712
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4d44 addr: 1719
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4d4c addr: 1720
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4d54 addr: 1727
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4d5c addr: 172e
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4d64 addr: 1735
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4d6c addr: 173b
R_X86_64_PC32
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4dac addr: 1743
R_X86_64_PC32
sym: jump_back_entry info: 11 other: 00 shndx: 8 value: 2008 size: 8
sym: jump_back_entry value: 8004 addr: 175d
R_X86_64_PC32
sym: .bss info: 03 other: 00 shndx: a value: 0 size: 0
sym: .bss value: 9ffc addr: 1764
R_X86_64_PC32
sym: purgatory info: 12 other: 00 shndx: 1 value: 134 size: 53
sym: purgatory value: 1130 addr: 1769
R_X86_64_PLT32
sym: entry64 info: 10 other: 00 shndx: 1 value: 6a0 size: 0
sym: entry64 value: 169c addr: 176e
R_X86_64_PLT32
sym: reset_vga info: 11 other: 00 shndx: 8 value: 2012 size: 1
sym: reset_vga value: 8012 addr: 1774
R_X86_64_64
sym: x86_reset_vga info: 12 other: 00 shndx: 1 value: ebb size: 232
sym: x86_reset_vga value: 1ebb addr: 1783
R_X86_64_64
sym: legacy_pic info: 11 other: 00 shndx: 8 value: 2011 size: 1
sym: legacy_pic value: 8011 addr: 1790
R_X86_64_64
sym: x86_setup_legacy_pic info: 12 other: 00 shndx: 1 value: 10ed size: 35
sym: x86_setup_legacy_pic value: 20ed addr: 179f
R_X86_64_64
sym: legacy_pic info: 11 other: 00 shndx: 8 value: 2011 size: 1
sym: legacy_pic value: 8011 addr: 17ae
R_X86_64_64
sym: x86_setup_legacy_pic info: 12 other: 00 shndx: 1 value: 10ed size: 35
sym: x86_setup_legacy_pic value: 20ed addr: 17bd
R_X86_64_64
sym: cmdline_end info: 11 other: 00 shndx: 8 value: 2000 size: 8
sym: cmdline_end value: 8000 addr: 17ca
R_X86_64_64
sym: jump_back_entry info: 11 other: 00 shndx: 8 value: 2008 size: 8
sym: jump_back_entry value: 8008 addr: 17dc
R_X86_64_64
sym: .rodata.str1.1 info: 03 other: 00 shndx: 5 value: 0 size: 0
sym: .rodata.str1.1 value: 4e3b addr: 17eb
R_X86_64_64
sym: sprintf info: 12 other: 00 shndx: 1 value: 428 size: 96
sym: sprintf value: 1428 addr: 17f5
R_X86_64_64
sym: panic_kernel info: 11 other: 00 shndx: 8 value: 2010 size: 1
sym: panic_kernel value: 8010 addr: 1802
R_X86_64_64
sym: crashdump_backup_memory info: 12 other: 00 shndx: 1 value: cc3 size: 3e
sym: crashdump_backup_memory value: 1cc3 addr: 1811
R_X86_64_64
sym: jump_back_entry info: 11 other: 00 shndx: 8 value: 2008 size: 8
sym: jump_back_entry value: 8008 addr: 181e
R_X86_64_64
sym: x86_setup_jump_back_entry info: 12 other: 00 shndx: 1 value: 7c8 size: 38
sym: x86_setup_jump_back_entry value: 17c8 addr: 182e
R_X86_64_64
sym: jump_back_entry info: 11 other: 00 shndx: 8 value: 2008 size: 8
sym: jump_back_entry value: 8008 addr: 183d
R_X86_64_64
sym: x86_setup_jump_back_entry info: 12 other: 00 shndx: 1 value: 7c8 size: 38
sym: x86_setup_jump_back_entry value: 17c8 addr: 184d
R_X86_64_64
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 8047 addr: 1877
R_X86_64_PC32
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 804f addr: 187d
R_X86_64_PC32
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 8075 addr: 189d
R_X86_64_PC32
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 807f addr: 18a3
R_X86_64_PC32
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 8089 addr: 18a9
R_X86_64_PC32
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 8093 addr: 18af
R_X86_64_PC32
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 8076 addr: 18b6
R_X86_64_PC32
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 808d addr: 18bd
R_X86_64_PC32
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 806d addr: 1987
R_X86_64_PC32
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 8075 addr: 198d
R_X86_64_PC32
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 809b addr: 19ad
R_X86_64_PC32
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 80a5 addr: 19b3
R_X86_64_PC32
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 80af addr: 19b9
R_X86_64_PC32
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 80b9 addr: 19bf
R_X86_64_PC32
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 80e2 addr: 1a02
R_X86_64_PC32
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 812b addr: 1a45
R_X86_64_PC32
sym: backup_src_size info: 11 other: 00 shndx: 8 value: 2070 size: 8
sym: backup_src_size value: 8070 addr: 1cc5
R_X86_64_64
sym: backup_start info: 11 other: 00 shndx: 8 value: 2080 size: 8
sym: backup_start value: 8080 addr: 1cd7
R_X86_64_64
sym: backup_src_start info: 11 other: 00 shndx: 8 value: 2078 size: 8
sym: backup_src_start value: 8078 addr: 1ce9
R_X86_64_64
sym: memcpy info: 12 other: 00 shndx: 1 value: 58b size: 1a
sym: memcpy value: 158b addr: 1cf6
R_X86_64_64
sym: serial_base info: 11 other: 00 shndx: 8 value: 2090 size: 2
sym: serial_base value: 8090 addr: 1d03
R_X86_64_64
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 8088 addr: 1d13
R_X86_64_64
sym: serial_baud info: 11 other: 00 shndx: 8 value: 208c size: 4
sym: serial_baud value: 808c addr: 1d4a
R_X86_64_64
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 8088 addr: 1d78
R_X86_64_64
sym: console_vga info: 11 other: 00 shndx: 8 value: 2093 size: 1
sym: console_vga value: 8093 addr: 1da0
R_X86_64_64
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 8098 addr: 1db6
R_X86_64_64
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 8098 addr: 1e18
R_X86_64_64
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 8094 addr: 1e2e
R_X86_64_64
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 8094 addr: 1e48
R_X86_64_64
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 8094 addr: 1e78
R_X86_64_64
sym: console_serial info: 11 other: 00 shndx: 8 value: 2092 size: 1
sym: console_serial value: 8092 addr: 1e8c
R_X86_64_64
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 1d01 addr: 1ea0
R_X86_64_64
sym: sha256_process info: 12 other: 00 shndx: 1 value: 1180 size: 28a1
sym: sha256_process value: 2180 addr: 4a7f
R_X86_64_64
sym: memcpy info: 12 other: 00 shndx: 1 value: 58b size: 1a
sym: memcpy value: 158b addr: 4ae4
R_X86_64_64
sym: sha256_process info: 12 other: 00 shndx: 1 value: 1180 size: 28a1
sym: sha256_process value: 2180 addr: 4af6
R_X86_64_64
sym: memcpy info: 12 other: 00 shndx: 1 value: 58b size: 1a
sym: memcpy value: 158b addr: 4b24
R_X86_64_64
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 4a30 addr: 4b47
R_X86_64_64
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 4a30 addr: 4ba8
R_X86_64_64
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 80a0 addr: 4bb7
R_X86_64_64
sym: entry16 info: 10 other: 00 shndx: 1 value: 860 size: 0
sym: entry16 value: 1860 addr: 4ce8
R_X86_64_64
sym: entry32 info: 10 other: 00 shndx: 1 value: 5d0 size: 0
sym: entry32 value: 15d0 addr: 4d70
R_X86_64_64
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4d80 addr: 4d82
R_X86_64_64
sym: .rodata info: 03 other: 00 shndx: 3 value: 0 size: 0
sym: .rodata value: 4db0 addr: 4db2
R_X86_64_64
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 1000 addr: 4e78
R_X86_64_PC32
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 1134 addr: 4eac
R_X86_64_PC32
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 1187 addr: 4ee0
R_X86_64_PC32
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 1428 addr: 4f2c
R_X86_64_PC32
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 14be addr: 4f48
R_X86_64_PC32
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 1561 addr: 4f80
R_X86_64_PC32
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 1574 addr: 4f94
R_X86_64_PC32
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 158b addr: 4fa8
R_X86_64_PC32
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 15a5 addr: 4fbc
R_X86_64_PC32
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 1772 addr: 4fe8
R_X86_64_PC32
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 17c8 addr: 5008
R_X86_64_PC32
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 1800 addr: 501c
R_X86_64_PC32
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 1cc3 addr: 5058
R_X86_64_PC32
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 1d01 addr: 5088
R_X86_64_PC32
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 1d9e addr: 509c
R_X86_64_PC32
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 1ebb addr: 50d0
R_X86_64_PC32
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 20ed addr: 5100
R_X86_64_PC32
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 2130 addr: 5130
R_X86_64_PC32
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 2180 addr: 5144
R_X86_64_PC32
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 4a30 addr: 5190
R_X86_64_PC32
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 4b40 addr: 51f4
R_X86_64_PC32
sym: .text info: 03 other: 00 shndx: 1 value: 0 size: 0
sym: .text value: 4b60 addr: 5208
R_X86_64_PC32
sym: .data info: 03 other: 00 shndx: 8 value: 0 size: 0
sym: .data value: 6140 addr: 6142
R_X86_64_64
Try gzip decompression.
Try gzip decompression.
hack ebda into segment 0!
kexec_load: entry = 0x1740 flags = 0x3e0000
nr_segments = 6
segment[0].buf = 0x558bbc2132e0
segment[0].bufsz = 0x1000
segment[0].mem = (nil)
segment[0].memsz = 0x1000
segment[1].buf = 0x558bbc20a150
segment[1].bufsz = 0x70e0
segment[1].mem = 0x1000
segment[1].memsz = 0x9000
segment[2].buf = 0x558bbc2118e0
segment[2].bufsz = 0x286
segment[2].mem = 0xa000
segment[2].memsz = 0x1000
segment[3].buf = 0x7f2d68613090
segment[3].bufsz = 0x22db90
segment[3].mem = 0x200000
segment[3].memsz = 0x3a9000
segment[4].buf = 0x7f2d67c90010
segment[4].bufsz = 0x982b60
segment[4].mem = 0x5a9000
segment[4].memsz = 0x983000
segment[5].buf = 0x7f2d65f14010
segment[5].bufsz = 0x1d7b5d6
segment[5].mem = 0xf2c000
segment[5].memsz = 0x1d7c000

root@debian:/home/user# kexec -e

Xen log kexec boot

[ 18.883842] kexec_core: Starting new kernel
Xen 4.14.5
(XEN) Xen version 4.14.5 (mockbuild@[unknown]) (gcc (GCC) 10.3.1 20210422 (Red Hat 10.3.1-1)) debug=n Tue Mar 7 00:00:00 UTC 2023
(XEN) Latest ChangeSet:
(XEN) build-id: 8824b99b2b86afb66a2a27524343aa90b4eab976
(XEN) Bootloader: kexec 2.0.22
(XEN) Command line: placeholder com1=115200,8n1 console=com1,vga loglvl=all guest_loglvl=all dom0_mem=min:1024M dom0_mem=max:4096M ucode=scan smt=off gnttab_max_frames=2048 gnttab_max_maptrack_frames=4096 no-real-mode reboot=no vga=current
(XEN) Xen image load base address: 0
(XEN) Video information:
(XEN) VGA is text mode 80x25, font 8x16
(XEN) Disc information:
(XEN) Found 0 MBR signatures
(XEN) Found 0 EDD information structures
(XEN) CPU Vendor: Intel, Family 6 (0x6), Model 60 (0x3c), Stepping 3 (raw 000306c3)
(XEN) Multiboot-e820 RAM map:
(XEN) [0000000000000400, 000000000009ffff] (usable)
(XEN) [0000000000100000, 000000007ee77fff] (usable)
(XEN) [000000007ee78000, 000000007ef79fff] (reserved)
(XEN) [000000007ef7a000, 000000007f8edfff] (usable)
(XEN) [000000007f8ee000, 000000007fb6dfff] (reserved)
(XEN) [000000007fb6e000, 000000007fb7dfff] (ACPI data)
(XEN) [000000007fb7e000, 000000007fbfdfff] (ACPI NVS)
(XEN) [000000007fbfe000, 000000007ff7bfff] (usable)
(XEN) [000000007ff7c000, 000000007fffffff] (reserved)
(XEN) [00000000b0000000, 00000000bfffffff] (reserved)
(XEN) [00000000ffc00000, 00000000ffffffff] (reserved)
(XEN) [0000000100000000, 00000001ffffffff] (usable)
(XEN) New Xen image base address: 0x7f200000
(XEN) ACPI Error (tbxfroot-0217): A valid RSDP was not found [20070126]
(XEN) System RAM: 6139MB (6286372kB)
(XEN) No NUMA configuration found
(XEN) Faking a node at 0000000000000000-0000000200000000
(XEN) Domain heap initialised
(XEN) DMI not present.
(XEN) x2APIC mode is already enabled by BIOS.
(XEN) Using APIC driver x2apic_cluster
(XEN) SMP: Allowing 1 CPUs (1 hotplug CPUs)
(XEN) Xen BUG at x86_64/mm.c:668
(XEN) ----[ Xen-4.14.5 x86_64 debug=n Not tainted ]----
(XEN) CPU: 0
(XEN) RIP: e008:[] zap_low_mappings+0x60/0x70
(XEN) RFLAGS: 0000000000010097 CONTEXT: hypervisor
(XEN) rax: 0000000000000000 rbx: 000000000017fb09 rcx: 0000000000000000
(XEN) rdx: ffff82d0403cffff rsi: 0000000000000000 rdi: ffff82d04041f720
(XEN) rbp: 000000004fffffff rsp: ffff82d0403cfda8 r8: 0000000000000000
(XEN) r9: 0000000000000000 r10: ffff82d04041f720 r11: ffff82d04034ac20
(XEN) r12: ffff82d040348000 r13: ffff82d04037e000 r14: 00000001f9651000
(XEN) r15: ffff82d040403330 cr0: 0000000080050033 cr4: 00000000000000a0
(XEN) cr3: 000000007f62a000 cr2: 00007f2d68fe4e64
(XEN) fsb: 0000000000000000 gsb: 0000000000000000 gss: 0000000000000000
(XEN) ds: 0000 es: 0000 fs: 0000 gs: 0000 ss: 0000 cs: e008
(XEN) Xen code around (zap_low_mappings+0x60/0x70):
(XEN) e9 d3 b2 f4 ff 0f 1f 00 <0f> 0b 66 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 00
(XEN) Xen stack trace from rsp=ffff82d0403cfda8:
(XEN) ffff82d0403b84bf ffff83000009dfb0 ffff8301f9640000 ffffff0000000000
(XEN) ffff83000009dc40 0000000000000000 00000000042b0000 000000000000000f
(XEN) 0000000000200000 ffff83000009dea0 ffff82d0404031f0 ffff82d0403cfef8
(XEN) 0000000000000001 0000000000000001 0000000000000001 0000000000000001
(XEN) 0000000000000002 0000000000000002 0000000000000002 000000000009dea0
(XEN) ffff830000000002 00000000000001ff 00000000000001ff 00000000001f9651
(XEN) 0000000000000002 0000000800000000 000000010000006e 0000000000000003
(XEN) 00000000000002f8 0037ec4d0037ebfd 0000000b0037e748 0037ebfc0037ec5c
(XEN) 0037ec5c632c0000 0037f3ba0009df9c 0037e92200000000 0000000000000000
(XEN) 0000000000000000 0000000000000000 0000000000000000 0000000000000000
(XEN) 0000000000000000 ffff82d040200134 0000000000000000 0000000000000000
(XEN) 0000000000000000 0000000000000000 0000000000000000 0000000000000000
(XEN) 0000000000000000 0000000000000000 0000000000000000 0000000000000000
(XEN) 0000000000000000 0000000000000000 0000000000000000 0000000000000000
(XEN) 0000000000000000 0000000000000000 0000000000000000 0000000000000000
(XEN) 0000000000000000 0000000000000000 0000000000000000 0000000000000000
(XEN) 0000000000000000 0000000000000000 0000000000000000 0000e01000000000
(XEN) 0000000000000000 0000000000000000 00000000000000a0 0000000000000000
(XEN) 0000000000000000 0000000000000000 0000000000000000
(XEN) Xen call trace:
(XEN) [] R zap_low_mappings+0x60/0x70
(XEN) [] S __start_xen+0x197f/0x27c8
(XEN) [] S __high_start+0x94/0xa0
(XEN)
(XEN)
(XEN) ****************************************
(XEN) Panic on CPU 0:
(XEN) Xen BUG at x86_64/mm.c:668
(XEN) ****************************************
(XEN)
(XEN) Manual reset required (‘noreboot’ specified)

For comparison, this is log from normal Qubes boot:

/var/log/xen/console/hypervisor.log

Xen log normal boot

[2023-04-01 06:03:56] Logfile Opened
[2023-04-01 06:03:56] (XEN) Built-in command line: ept=exec-sp spec-ctrl=unpriv-mmio
[2023-04-01 06:03:56] (XEN) parameter “no-real-mode” unknown!
[2023-04-01 06:03:56] Xen 4.14.5
[2023-04-01 06:03:56] (XEN) Xen version 4.14.5 (mockbuild@[unknown]) (gcc (GCC) 10.3.1 20210422 (Red Hat 10.3.1-1)) debug=n Tue Mar 7 00:00:00 UTC 2023
[2023-04-01 06:03:56] (XEN) Latest ChangeSet:
[2023-04-01 06:03:56] (XEN) build-id: 8824b99b2b86afb66a2a27524343aa90b4eab976
[2023-04-01 06:03:56] (XEN) Bootloader: GRUB 2.04
[2023-04-01 06:03:56] (XEN) Command line: placeholder com1=115200,8n1 console=com1,vga loglvl=all guest_loglvl=all dom0_mem=min:1024M dom0_mem=max:4096M ucode=scan smt=off gnttab_max_frames=2048 gnttab_max_maptrack_frames=4096 no-real-mode edd=off
[2023-04-01 06:03:56] (XEN) Xen image load base address: 0x7ce00000
[2023-04-01 06:03:56] (XEN) Video information:
[2023-04-01 06:03:56] (XEN) VGA is graphics mode 2048x2048, 32 bpp
[2023-04-01 06:03:56] (XEN) Disc information:
[2023-04-01 06:03:56] (XEN) Found 0 MBR signatures
[2023-04-01 06:03:56] (XEN) Found 2 EDD information structures
[2023-04-01 06:03:56] (XEN) CPU Vendor: Intel, Family 6 (0x6), Model 60 (0x3c), Stepping 3 (raw 000306c3)
[2023-04-01 06:03:56] (XEN) EFI RAM map:
[2023-04-01 06:03:56] (XEN) [0000000000000000, 000000000009ffff] (usable)
[2023-04-01 06:03:56] (XEN) [0000000000100000, 000000007ee77fff] (usable)
[2023-04-01 06:03:56] (XEN) [000000007ee78000, 000000007ef79fff] (reserved)
[2023-04-01 06:03:56] (XEN) [000000007ef7a000, 000000007f8edfff] (usable)
[2023-04-01 06:03:56] (XEN) [000000007f8ee000, 000000007fb6dfff] (reserved)
[2023-04-01 06:03:56] (XEN) [000000007fb6e000, 000000007fb7dfff] (ACPI data)
[2023-04-01 06:03:56] (XEN) [000000007fb7e000, 000000007fbfdfff] (ACPI NVS)
[2023-04-01 06:03:56] (XEN) [000000007fbfe000, 000000007ff7bfff] (usable)
[2023-04-01 06:03:56] (XEN) [000000007ff7c000, 000000007fffffff] (reserved)
[2023-04-01 06:03:56] (XEN) [00000000b0000000, 00000000bfffffff] (reserved)
[2023-04-01 06:03:56] (XEN) [00000000ffc00000, 00000000ffffffff] (reserved)
[2023-04-01 06:03:56] (XEN) [0000000100000000, 00000001ffffffff] (usable)
[2023-04-01 06:03:56] (XEN) ACPI: RSDP 7FB7D014, 0024 (r2 BOCHS )
[2023-04-01 06:03:56] (XEN) ACPI: XSDT 7FB7C0E8, 004C (r1 BOCHS BXPC 1 1000013)
[2023-04-01 06:03:56] (XEN) ACPI: FACP 7FB78000, 00F4 (r3 BOCHS BXPC 1 BXPC 1)
[2023-04-01 06:03:56] (XEN) ACPI: DSDT 7FB79000, 2A20 (r1 BOCHS BXPC 1 BXPC 1)
[2023-04-01 06:03:56] (XEN) ACPI: FACS 7FBDC000, 0040
[2023-04-01 06:03:56] (XEN) ACPI: APIC 7FB77000, 00B0 (r1 BOCHS BXPC 1 BXPC 1)
[2023-04-01 06:03:56] (XEN) ACPI: MCFG 7FB76000, 003C (r1 BOCHS BXPC 1 BXPC 1)
[2023-04-01 06:03:56] (XEN) ACPI: WAET 7FB75000, 0028 (r1 BOCHS BXPC 1 BXPC 1)
[2023-04-01 06:03:56] (XEN) ACPI: BGRT 7FB74000, 0038 (r1 INTEL EDK2 2 1000013)

I’ve noticed that in this log there’s a message:

(XEN) parameter “no-real-mode” unknown!

That is not present when I’m kexec’ing. Do you have any idea of why?

I’ve noticed that in this log there’s a message:
(XEN) parameter “no-real-mode” unknown!
That is not present when I’m kexec’ing. Do you have any idea of why?

I’ve found out that this message can be ignored as it doesn’t cause any troubles:

x86/setup: Ignore early boot parameters like no-real-mode

There are parameters in xen/arch/x86/boot/cmdline.c that
are only used early in the boot process, so handlers are
necessary to avoid an “Unknown command line option” in
dmesg.

x86/setup: Ignore early boot parameters like no-real-mode · xen-project/xen@e44d986 · GitHub
x86/boot: properly "ignore" early evaluated "no-real-mode" · xen-project/xen@e5046fc · GitHub

I’ll try to look into ACPI problem.

From quick check on options passed, Qubes (and Heads) adds edd=off and no-real-mode.
As you have found, no-real-mode is deprecated. edd is also not being turned off.

Two intuitions here:

  • pass edd=off to kexec -e xen command options to make probing of kexec’ed kernel ok with confusion Preboot Execution Environment - ArchWiki
  • not linked to the bug, nor Xen, but this is where I’m still trying to understand, on a different note, what’s up with graphic buffer passed without even having Xen involved, which is already confusing. We would expect to either be able to reset vga through kexec (removing iommu problems first by not attemtping to configure it through first kernel to be able to reinit it on second one) or reuse the iommu and configured video frame buffer, which is not so straightforward.

On my qemu setup here (heads qemu-coreboot-whiptail-tpm1 board config), virtio gpu is used by Heads first kernel. Heads patches some kernel sutuff here: host’s kernel ACPI, tampoline, nmi. Then kexec is patched so Xen EDBA is not overwritten by kexec call (you see trace in your kexec patched binary telling you that codepath is different “hack ebda into segment 0!”). Xen is then instructed to reuse VGA (vga=current), which as said earlier, worked from 4.x Heads kernel since kexec found, from patch, inteldrmfb string in fix.id. But with bosch, you are attemtping to use a generic framebuffer from kernel.

At the end of the day, if kexec’ed initrd/kernel can initialize vga from second booted kernel (without iommu getting in the way), the kernel will reinitialize vga at that point, at the cost of not having early printk nor vga console output prior of the final kernel/initrd having taken over the vga. This is problematic to install OSes who do not offer proper drn+gpu drivers in their installer, and this is why, without knowing why as of now, 4.x Heads kernel is able to kexec into other OSes not having i915 in initrd/kernel today, where Heads using 5.x+ kernel will show vga output only when final OS takes over the vga with proper driver, otherwise staying at the kexec call, since no vga is initialized by second kernel and where normal deployment do not offer serial output to see what is happening. But on qemu, we see that vga is not reinitialized properly. vgaarb points to some or other vga console (16, simplfe fb or other) but it seems that that buffer is not the right one, and nothing is outputted on that vga, leaving the vga output to kexec call from the host, last good, vga console.

Why is still not known, otherwise I could point you to newer patches and probably create bugs upstream to have upstream fix the issues. But I still do not know as of today.

Once your Xen issue is fixed (insight is around edd=off missing as a start), next issue you will encounter will most probably be around vga. And I do not think the solution is patching kexec to reuse vga. Insight is that something is not documented properly, and my stumbles under Debugging kernel 5.x kexec issues add tools to ease kernel version bumping by tlaurion · Pull Request #1351 · linuxboot/heads · GitHub, specifically Debugging kernel 5.x kexec issues add tools to ease kernel version bumping by tlaurion · Pull Request #1351 · linuxboot/heads · GitHub shows my slow progress trying to understand better the issues at play.

But keep in mind that my tests are different then yours. I’m using qemu under a pvh qube to test heads. Qubes doesn’t offer nested virt, so qemu is my only path here, where you are trying to kexec from a live host system to Qubes. The only point of comparison we have here is you trying to kexec with qemu+bosch driver, and both of us trying to get away of vga issues.

I was told by linuxboot people that work happening through qemu hardly ever translates into things working onto real hardware. That they use 32 bit entry point under u-root kexec tools made in go, instead of using kexec-tools to deal with the matter. So real-mode, Xen, edd (smp) and vga are in the way for those things to work out of the box on all hardware is my current understanding, but only a hunch, not a causal-effect deduction. Things are just not working where they are “supposed” to. Once the solution is found, most probably all the above will be invalid. Problem might be more simple or more complex. Only digging will tell!

On Q4.1 kexec’ed from x230 4.x kernel.

On your Xen traces:

On normal boot from x230 from Heads (which doesn’t add edd=off, btw), mine looks like:

[user@dom0 ~]$ xl dmesg
(XEN) Built-in command line: ept=exec-sp spec-ctrl=unpriv-mmio
(XEN) parameter "no-real-mode" unknown!
 Xen 4.14.5
(XEN) Xen version 4.14.5 (mockbuild@[unknown]) (gcc (GCC) 10.3.1 20210422 (Red Hat 10.3.1-1)) debug=n  Tue Mar 21 00:00:00 UTC 2023
(XEN) Latest ChangeSet: 
(XEN) Bootloader: kexec 2.0.22
(XEN) Command line: placeholder console=none dom0_mem=min:1024M dom0_mem=max:4096M ucode=scan smt=off gnttab_max_frames=2048 gnttab_max_maptrack_frames=4096 no-real-mode reboot=no vga=current
(XEN) Xen image load base address: 0
(XEN) Video information:
(XEN)  VGA is text mode 80x25, font 8x16
(XEN) Disc information:
(XEN)  Found 0 MBR signatures
(XEN)  Found 0 EDD information structures
(XEN) Multiboot-e820 RAM map:
(XEN)  [0000000000001000, 000000000009ffff] (usable)
(XEN)  [00000000000a0000, 00000000000fffff] (reserved)
(XEN)  [0000000000100000, 00000000bfed4fff] (usable)
(XEN)  [00000000c0000000, 00000000c29fffff] (reserved)
(XEN)  [00000000f0000000, 00000000f3ffffff] (reserved)
(XEN)  [00000000fed40000, 00000000fed44fff] (reserved)
(XEN)  [00000000fed90000, 00000000fed91fff] (reserved)
(XEN)  [0000000100000000, 000000043d5fffff] (usable)
(XEN) New Xen image base address: 0xbf800000
(XEN) ACPI: RSDP 000F0000, 0024 (r2 COREv4)
(XEN) ACPI: XSDT BFEE70E0, 005C (r1 COREv4 COREBOOT        0 CORE 20200717)
(XEN) ACPI: FACP BFEEABB0, 0114 (r6 COREv4 COREBOOT        0 CORE 20200717)
(XEN) ACPI: DSDT BFEE7280, 3927 (r2 COREv4 COREBOOT 20110725 INTL 20200717)
(XEN) ACPI: FACS BFEE7240, 0040
(XEN) ACPI: SSDT BFEEACD0, 19D5 (r2 COREv4 COREBOOT       2A CORE 20200717)
(XEN) ACPI: MCFG BFEEC6B0, 003C (r1 COREv4 COREBOOT        0 CORE 20200717)
(XEN) ACPI: TCPA BFEEC6F0, 0032 (r2 COREv4 COREBOOT        0 CORE 20200717)
(XEN) ACPI: APIC BFEEC730, 006C (r3 COREv4 COREBOOT        0 CORE 20200717)
(XEN) ACPI: DMAR BFEEC7A0, 00C0 (r1 COREv4 COREBOOT        0 CORE 20200717)
(XEN) ACPI: HPET BFEEC860, 0038 (r1 COREv4 COREBOOT        0 CORE 20200717)
(XEN) System RAM: 16340MB (16732624kB)
(XEN) Domain heap initialised
(XEN) IOAPIC[0]: apic_id 2, version 32, address 0xfec00000, GSI 0-23
(XEN) Enabling APIC mode:  Flat.  Using 1 I/O APICs
(XEN) Switched to APIC driver x2apic_cluster
(XEN) CPU0: 1200 ... 2900 MHz
(XEN) xstate: size: 0x340 and states: 0x7
(XEN) CPU0 CMCI LVT vector (0xf9) already installed
(XEN) Speculative mitigation facilities:
(XEN)   Hardware hints:
(XEN)   Hardware features: IBPB IBRS STIBP SSBD L1D_FLUSH MD_CLEAR
(XEN)   Compiled-in support: INDIRECT_THUNK
(XEN)   Xen settings: BTI-Thunk RETPOLINE, SPEC_CTRL: IBRS- STIBP- SSBD-, Other: IBPB-ctxt L1D_FLUSH VERW BRANCH_HARDEN
(XEN)   L1TF: believed vulnerable, maxphysaddr L1D 46, CPUID 36, Safe address 1000000000
(XEN)   Support for HVM VMs: MSR_SPEC_CTRL RSB EAGER_FPU MD_CLEAR
(XEN)   Support for PV VMs: MSR_SPEC_CTRL EAGER_FPU MD_CLEAR
(XEN)   XPTI (64-bit PV only): Dom0 enabled, DomU enabled (without PCID)
(XEN)   PV L1TF shadowing: Dom0 disabled, DomU enabled
(XEN) Using scheduler: SMP Credit Scheduler rev2 (credit2)
(XEN) Initializing Credit2 scheduler
(XEN) Platform timer is 14.318MHz HPET
(XEN) Detected 2893.426 MHz processor.
(XEN) Intel VT-d iommu 0 supported page sizes: 4kB
(XEN) Intel VT-d iommu 1 supported page sizes: 4kB
(XEN) Intel VT-d Snoop Control not enabled.
(XEN) Intel VT-d Dom0 DMA Passthrough not enabled.
(XEN) Intel VT-d Queued Invalidation enabled.
(XEN) Intel VT-d Interrupt Remapping enabled.
(XEN) Intel VT-d Posted Interrupt not enabled.
(XEN) Intel VT-d Shared EPT tables not enabled.
(XEN) I/O virtualisation enabled
(XEN)  - Dom0 mode: Relaxed
(XEN) Interrupt remapping enabled
(XEN) Enabled directed EOI with ioapic_ack_old on!
(XEN) ENABLING IO-APIC IRQs
(XEN)  -> Using old ACK method
(XEN) Allocated console ring of 16 KiB.
(XEN) VMX: Supported advanced features:
(XEN)  - APIC MMIO access virtualisation
(XEN)  - APIC TPR shadow
(XEN)  - Extended Page Tables (EPT)
(XEN)  - Virtual-Processor Identifiers (VPID)
(XEN)  - Virtual NMI
(XEN)  - MSR direct-access bitmap
(XEN)  - Unrestricted Guest
(XEN) HVM: ASIDs enabled.
(XEN) HVM: VMX enabled
(XEN) HVM: Hardware Assisted Paging (HAP) detected
(XEN) HVM: HAP page sizes: 4kB, 2MB
(XEN) Brought up 2 CPUs
(XEN) Scheduling granularity: cpu, 1 CPU per sched-resource
(XEN) Dom0 has maximum 440 PIRQs
(XEN)  Xen  kernel: 64-bit, lsb, compat32
(XEN)  Dom0 kernel: 64-bit, PAE, lsb, paddr 0x1000000 -> 0x4000000
(XEN) PHYSICAL MEMORY ARRANGEMENT:
(XEN)  Dom0 alloc.:   0000000420000000->0000000428000000 (1007451 pages to be allocated)
(XEN)  Init. ramdisk: 000000043b55b000->000000043d5ff064
(XEN) VIRTUAL MEMORY ARRANGEMENT:
(XEN)  Loaded kernel: ffffffff81000000->ffffffff84000000
(XEN)  Init. ramdisk: 0000000000000000->0000000000000000
(XEN)  Phys-Mach map: 0000008000000000->0000008000800000
(XEN)  Start info:    ffffffff84000000->ffffffff840004b8
(XEN)  Xenstore ring: 0000000000000000->0000000000000000
(XEN)  Console ring:  0000000000000000->0000000000000000
(XEN)  Page tables:   ffffffff84001000->ffffffff84026000
(XEN)  Boot stack:    ffffffff84026000->ffffffff84027000
(XEN)  TOTAL:         ffffffff80000000->ffffffff84400000
(XEN)  ENTRY ADDRESS: ffffffff830fe1c0
(XEN) Dom0 has maximum 2 VCPUs
(XEN) Bogus DMIBAR 0xfed18001 on 0000:00:00.0
(XEN) Initial low memory virq threshold set at 0x4000 pages.
(XEN) Scrubbing Free RAM in background
(XEN) Std. Loglevel: Errors and warnings
(XEN) Guest Loglevel: Nothing (Rate-limited: Errors and warnings)
(XEN) *** Serial input to DOM0 (type 'CTRL-a' three times to switch input)
(XEN) Freed 600kB init memory
(XEN) Bogus DMIBAR 0xfed18001 on 0000:00:00.0
(XEN) Disabling non-boot CPUs ...
(XEN) Broke affinity for IRQ16, new: f
(XEN) Entering ACPI S3 state.
(XEN) CPU0 CMCI LVT vector (0xf9) already installed
(XEN) Thermal LVT vector (0xfa) already installed
(XEN) Finishing wakeup from ACPI S3 state.
(XEN) Enabling non-boot CPUs  ...
(XEN) Disabling non-boot CPUs ...
(XEN) Broke affinity for IRQ1, new: f
(XEN) Broke affinity for IRQ9, new: f
(XEN) Broke affinity for IRQ12, new: f
(XEN) Broke affinity for IRQ17, new: f
(XEN) Broke affinity for IRQ19, new: f
(XEN) Broke affinity for IRQ29, new: f
(XEN) Broke affinity for IRQ30, new: f
(XEN) Entering ACPI S3 state.
(XEN) CPU0 CMCI LVT vector (0xf9) already installed
(XEN) Thermal LVT vector (0xfa) already installed
(XEN) Finishing wakeup from ACPI S3 state.
(XEN) Enabling non-boot CPUs  ...

Kernel traces:

[user@dom0 ~]$ sudo dmesg | grep -e vga -e fb -e drm -e i915
[    0.000000] Linux version 5.15.94-1.qubes.fc32.x86_64 (mockbuild@789905c09e0c4394afa45853cebe9fb2) (gcc (GCC) 10.3.1 20210422 (Red Hat 10.3.1-1), GNU ld version 2.34-6.fc32) #1 SMP Sun Feb 19 07:18:46 CET 2023
[    0.000000] Command line: placeholder root=/dev/mapper/qubes_dom0-root ro rd.luks.uuid=luks-a4ba89e4-65a3-48f9-a045-d128c2a422cc rd.lvm.lv=qubes_dom0/root rd.lvm.lv=qubes_dom0/swap plymouth.ignore-serial-consoles i915.alpha_support=1 intel_iommu=igfx_off fromiso=/dev/disk/by-uuid/f5e8d325-a8dd-4c52-9610-604cb329463f/Qubes-R4.1.0-x86_64.iso img_dev=/dev/disk/by-uuid/f5e8d325-a8dd-4c52-9610-604cb329463f iso-scan/filename=/Qubes-R4.1.0-x86_64.iso img_loop=Qubes-R4.1.0-x86_64.iso rd.driver.pre=btrfs rhgb  rd.qubes.hide_all_usb intel_iommu=on intel_iommu=igfx_off 
[    1.993908] Kernel command line: placeholder root=/dev/mapper/qubes_dom0-root ro rd.luks.uuid=luks-a4ba89e4-65a3-48f9-a045-d128c2a422cc rd.lvm.lv=qubes_dom0/root rd.lvm.lv=qubes_dom0/swap plymouth.ignore-serial-consoles i915.alpha_support=1 intel_iommu=igfx_off fromiso=/dev/disk/by-uuid/f5e8d325-a8dd-4c52-9610-604cb329463f/Qubes-R4.1.0-x86_64.iso img_dev=/dev/disk/by-uuid/f5e8d325-a8dd-4c52-9610-604cb329463f iso-scan/filename=/Qubes-R4.1.0-x86_64.iso img_loop=Qubes-R4.1.0-x86_64.iso rd.driver.pre=btrfs rhgb  rd.qubes.hide_all_usb intel_iommu=on intel_iommu=igfx_off 
[    2.500140] clocksource: xen: mask: 0xffffffffffffffff max_cycles: 0x1cd42e4dffb, max_idle_ns: 881590591483 ns
[    2.763415] fbcon: Taking over console
[    2.787940] pci 0000:00:02.0: vgaarb: setting as boot VGA device
[    2.787940] pci 0000:00:02.0: vgaarb: VGA device added: decodes=io+mem,owns=io+mem,locks=none
[    2.787940] pci 0000:00:02.0: vgaarb: bridge control possible
[    2.788221] vgaarb: loaded
[    5.817847] i915: unknown parameter 'alpha_support' ignored
[    5.829447] i915 0000:00:02.0: [drm] VT-d active for gfx access
[    5.829488] i915 0000:00:02.0: vgaarb: deactivate vga console
[    6.091506] i915 0000:00:02.0: [drm] DMAR active, disabling use of stolen memory
[    6.175491] [drm] Initialized i915 1.6.0 20201103 for 0000:00:02.0 on minor 0
[    6.369373] fbcon: i915drmfb (fb0) is primary device
[    7.262491] i915 0000:00:02.0: [drm] fb0: i915drmfb frame buffer device
[   16.524421] systemd[1]: Condition check resulted in Load Kernel Module drm being skipped.
[   24.645845] snd_hda_intel 0000:00:1b.0: bound 0000:00:02.0 (ops i915_audio_component_bind_ops [i915])

fbcon->vgaarb->drm+i915


Post edited with more notes.
For those interested into kexec’ing into Xen, Xen kept a trace of requirements, including some qemu notes that might need to be investigated: Xen VGA Passthrough Tested Adapters - Xen

1 Like

heads kernel under qemu from PR, enabling way too much legacy fb for testing or kexec reusal:

~ # dmesg | grep -e drm -e vga -e fb 
[    0.886760] pci 0000:00:01.0: vgaarb: setting as boot VGA device
[    0.889656] pci 0000:00:01.0: vgaarb: VGA device added: decodes=io+mem,owns=io+mem,locks=none
[    0.889887] pci 0000:00:01.0: vgaarb: bridge control possible
[    0.893825] vgaarb: loaded
[    3.418665] vga16fb: initializing
[    3.423667] vga16fb: mapped to 0x(____ptrval____)
[    3.817574] fb0: VGA16 VGA frame buffer device
[    4.136262] [drm] pci: virtio-vga detected at 0000:00:01.0
[    4.245306] fb0: switching to virtiodrmfb from VGA16 VGA
[    4.355757] virtio-pci 0000:00:01.0: vgaarb: deactivate vga console
[    4.361288] [drm] features: -virgl +edid
[    4.372602] [drm] number of scanouts: 1
[    4.375322] [drm] number of cap sets: 0
[    4.395411] [drm] Initialized virtio_gpu 0.1.0 0 for virtio0 on minor 0
[    4.565255] virtio_gpu virtio0: [drm] fb0: virtio_gpudrmfb frame buffer device

we see same here.
vgaarb ->fb ->drm+gpu driver
vgaarb ->vga16 → virtio_gpu

Debian-11-xfce installer:

~ # dmesg | grep -e drm -e fb -e vga
[    1.657938] pci 0000:00:01.0: vgaarb: setting as boot VGA device
[    1.657938] pci 0000:00:01.0: vgaarb: VGA device added: decodes=io+mem,owns=io+mem,locks=none
[    1.657938] pci 0000:00:01.0: vgaarb: bridge control possible
[    1.657938] vgaarb: loaded
[    8.980907] [drm] pci: virtio-vga detected at 0000:00:01.0
[    8.981755] virtio-pci 0000:00:01.0: vgaarb: deactivate vga console
[    8.988245] [drm] features: -virgl +edid
[    9.011529] [drm] number of scanouts: 1
[    9.011873] [drm] number of cap sets: 0
[    9.121478] [drm] Initialized virtio_gpu 0.1.0 0 for virtio0 on minor 0
[    9.635967] virtio_gpu virtio0: [drm] fb0: virtio_gpudrmfb frame buffer device

vgaarb → nothing on vga until virtio_gpu takes over.

1 Like

I was referencing that the message:

(XEN) parameter “no-real-mode” unknown!
Doesn’t mean that the no-real-mode parameter is not being used so this message can be ignored.

It’s not deprecated, these parameters are used in early boot process

Code

static bool skip_realmode(const char *cmdline)
{
return find_opt(cmdline, “no-real-mode”, false) || find_opt(cmdline, “tboot=”, true);
}

ebo->skip_realmode = skip_realmode(cmdline);

xen/xen/arch/x86/boot/cmdline.c at master · xen-project/xen · GitHub

    /*
     * Disable real mode and other legacy stuff which should not
     * be run on EFI platforms.
     */
    incb    skip_realmode(%rip)
    jmp     .Lefi_mb2_next_tag
    /*
     * Disable real mode and other legacy stuff which should not
     * be run on EFI platforms.
     */
    incb    skip_realmode(%rip)
    jmp     .Lefi_mb2_next_tag

github
/xen-project/xen/blob/master/xen/arch/x86/boot/head.S

When early boot process is finished, these parameters are no longer needed and they are ignored later:

Code

/*

  • x86 early command line parsing in xen/arch/x86/boot/cmdline.c
  • has options that are only used during the very initial boot process,
  • so they can be ignored now.
    */
    ignore_param(“real-mode”);
    ignore_param(“edd”);
    ignore_param(“edid”);

xen/xen/arch/x86/setup.c at master · xen-project/xen · GitHub

I’ve tried to kexec with edd=off but it didn’t change anything.

I want to test this on real hardware as well, but right now I don’t have the necessary hardware to get a serial output to debug Xen. I hope I’ll get my hands on it soon to check what’s going on on real hardware. For now I’ll have to tinker with qemu to try and understand what’s happening during Xen boot.

1 Like

Oh! Thanks, I thought it was not used anymore. Xen output is misleading to say the least.

Some new info.
I’ve tested kexec’ing from Linux into Qubes on my 12th gen Intel laptop and it hangs on kexec.
I borrowed a laptop with 4th gen Intel from a friend to test kexec’ing and it works!
I’ve tested this with Debian testing with latest updates, kexec-tools with patch and default Qubes installation with kernel-latest 6.1.12.
I’ve tried kexec’ing from Debian with kernel 4.14.17, 4.14.311 and 6.1.20 - all of them are working fine.

cat /var/log/xen/console/hypervisor.log

Xen log

[2023-04-04 18:59:52] Logfile Opened
[2023-04-04 18:59:52] (XEN) Built-in command line: ept=exec-sp spec-ctrl=unpriv-mmio
[2023-04-04 18:59:52] (XEN) parameter “no-real-mode” unknown!
[2023-04-04 18:59:52] (XEN) parameter “sched_debug” unknown!
[2023-04-04 18:59:52] (XEN) [0000002c358c0ecc] ERROR: 16550-compatible serial UART not present
[2023-04-04 18:59:52] (XEN) [0000002c358c2484] Bad console= option ‘com1’
[2023-04-04 18:59:52] Xen 4.14.5
[2023-04-04 18:59:52] (XEN) [0000002c35980ef8] Xen version 4.14.5 (mockbuild@[unknown]) (gcc (GCC) 10.3.1 20210422 (Red Hat 10.3.1-1)) debug=n Tue Mar 7 00:00:00 UTC 2023
[2023-04-04 18:59:52] (XEN) [0000002c3598f7c8] Latest ChangeSet:
[2023-04-04 18:59:52] (XEN) [0000002c35994a40] build-id: 8824b99b2b86afb66a2a27524343aa90b4eab976
[2023-04-04 18:59:52] (XEN) [0000002c3599be8c] Console output is synchronous.
[2023-04-04 18:59:52] (XEN) [0000002c359a1c26] Bootloader: kexec 2.0.22
[2023-04-04 18:59:52] (XEN) [0000002c359a72e6] Command line: placeholder com1=115200,8n1 console=com1,vga loglvl=all guest_loglvl=all dom0_mem=min:1024M dom0_mem=max:4096M ucode=scan smt=off gnttab_max_frames=2048 gnttab_max_maptrack_frames=4096 no-real-mode reboot=no vga=current edd=off sync_console=true sched_debug iommu=verbose apic_verbosity=debug console_timestamps
[2023-04-04 18:59:52] (XEN) [0000002c359c8b4e] Xen image load base address: 0
[2023-04-04 18:59:52] (XEN) [0000002c359cdff6] Video information:
[2023-04-04 18:59:52] (XEN) [0000002c359d2852] VGA is text mode 80x25, font 8x16
[2023-04-04 18:59:52] (XEN) [0000002c359d8700] Disc information:
[2023-04-04 18:59:52] (XEN) [0000002c359dcc56] Found 0 MBR signatures
[2023-04-04 18:59:52] (XEN) [0000002c359e1920] Found 0 EDD information structures
[2023-04-04 18:59:52] (XEN) [0000002c359e9012] CPU Vendor: Intel, Family 6 (0x6), Model 60 (0x3c), Stepping 3 (raw 000306c3)
[2023-04-04 18:59:52] (XEN) [0000002c35a00ba2] Multiboot-e820 RAM map:
[2023-04-04 18:59:52] (XEN) [0000002c35a062f4] [0000000000000400, 0000000000057fff] (usable)
[2023-04-04 18:59:52] (XEN) [0000002c35a0d7c8] [0000000000058000, 0000000000058fff] (reserved)
[2023-04-04 18:59:52] (XEN) [0000002c35a14e34] [0000000000059000, 000000000009efff] (usable)
[2023-04-04 18:59:52] (XEN) [0000002c35a1c55c] [000000000009f000, 000000000009ffff] (reserved)
[2023-04-04 18:59:52] (XEN) [0000002c35ad5a1c] [0000000000100000, 00000000ad6dcfff] (usable)
[2023-04-04 18:59:52] (XEN) [0000002c35b8e8ea] [00000000ad6dd000, 00000000ad6e3fff] (ACPI NVS)
[2023-04-04 18:59:52] (XEN) [0000002c35c47606] [00000000ad6e4000, 00000000adf4efff] (usable)
[2023-04-04 18:59:52] (XEN) [0000002c35d00264] [00000000adf4f000, 00000000ae1dafff] (reserved)
[2023-04-04 18:59:52] (XEN) [0000002c35db9652] [00000000ae1db000, 00000000bd8defff] (usable)
[2023-04-04 18:59:52] (XEN) [0000002c35e7224c] [00000000bd8df000, 00000000bdaf5fff] (reserved)
[2023-04-04 18:59:52] (XEN) [0000002c35f2b6f6] [00000000bdaf6000, 00000000bde1afff] (usable)
[2023-04-04 18:59:52] (XEN) [0000002c35fe42c6] [00000000bde1b000, 00000000beb1dfff] (ACPI NVS)
[2023-04-04 18:59:52] (XEN) [0000002c3609d58c] [00000000beb1e000, 00000000beffefff] (reserved)
[2023-04-04 18:59:52] (XEN) [0000002c36156164] [00000000befff000, 00000000beffffff] (usable)
[2023-04-04 18:59:52] (XEN) [0000002c3620ed98] [00000000bfc00000, 00000000cfdfffff] (reserved)
[2023-04-04 18:59:52] (XEN) [0000002c362c77f4] [00000000f8000000, 00000000fbffffff] (reserved)
[2023-04-04 18:59:52] (XEN) [0000002c36380b1a] [00000000fec00000, 00000000fec00fff] (reserved)
[2023-04-04 18:59:52] (XEN) [0000002c36439d60] [00000000fed00000, 00000000fed03fff] (reserved)
[2023-04-04 18:59:52] (XEN) [0000002c364f301a] [00000000fed1c000, 00000000fed1ffff] (reserved)
[2023-04-04 18:59:52] (XEN) [0000002c365abb44] [00000000fee00000, 00000000fee00fff] (reserved)
[2023-04-04 18:59:52] (XEN) [0000002c36664600] [00000000ff000000, 00000000ffffffff] (reserved)
[2023-04-04 18:59:52] (XEN) [0000002c3671db6a] [0000000100000000, 000000042f1fffff] (usable)
[2023-04-04 18:59:52] (XEN) [0000002c3ab7ee20] New Xen image base address: 0xbd200000
[2023-04-04 18:59:52] (XEN) [0000002c3acb0d92] ACPI: RSDP 000F0000, 0024 (r2 ASUS)
[2023-04-04 18:59:52] (XEN) [0000002c3ad69266] ACPI: XSDT BDEA3088, 009C (r1 ASUS Notebook 1072009 AMI 10013)
[2023-04-04 18:59:52] (XEN) [0000002c3aed2042] ACPI: FACP BDEB6E58, 010C (r5 ASUS Notebook 1072009 AMI 10013)
[2023-04-04 18:59:52] (XEN) [0000002c3b03bc86] ACPI: DSDT BDEA3240, 13C16 (r2 ASUS Notebook 12 INTL 20120711)
[2023-04-04 18:59:52] (XEN) [0000002c3b1a45c4] ACPI: FACS BEB1CF80, 0040
[2023-04-04 18:59:52] (XEN) [0000002c3b2598b4] ACPI: APIC BDEB6F68, 0092 (r3 ASUS Notebook 1072009 AMI 10013)
[2023-04-04 18:59:52] (XEN) [0000002c3b3c2a96] ACPI: FPDT BDEB7000, 0044 (r1 ASUS Notebook 1072009 AMI 10013)
[2023-04-04 18:59:52] (XEN) [0000002c3b52ac10] ACPI: ECDT BDEB7048, 00C1 (r1 ASUS Notebook 1072009 AMI. 5)
[2023-04-04 18:59:52] (XEN) [0000002c3b693efc] ACPI: SSDT BDEB7110, 019D (r1 Intel zpodd 1000 INTL 20120711)
[2023-04-04 18:59:52] (XEN) [0000002c3b7fd380] ACPI: SSDT BDEB72B0, 0539 (r1 PmRef Cpu0Ist 3000 INTL 20120711)
[2023-04-04 18:59:52] (XEN) [0000002c3b96661e] ACPI: SSDT BDEB77F0, 0AD8 (r1 PmRef CpuPm 3000 INTL 20120711)
[2023-04-04 18:59:52] (XEN) [0000002c3bacf78e] ACPI: MCFG BDEB82C8, 003C (r1 ASUS Notebook 1072009 MSFT 97)
[2023-04-04 18:59:52] (XEN) [0000002c3bc379ba] ACPI: HPET BDEB8308, 0038 (r1 ASUS Notebook 1072009 AMI. 5)
[2023-04-04 18:59:52] (XEN) [0000002c3bda097a] ACPI: SSDT BDEB8340, 0298 (r1 SataRe SataTabl 1000 INTL 20120711)
[2023-04-04 18:59:52] (XEN) [0000002c3bf09a66] ACPI: SSDT BDEB85D8, 44FA (r1 SaSsdt SaSsdt 3000 INTL 20091112)
[2023-04-04 18:59:52] (XEN) [0000002c3c071f18] ACPI: SSDT BDEBCAD8, 17D1 (r1 SgRef SgPeg 1000 INTL 20120711)
[2023-04-04 18:59:52] (XEN) [0000002c3c1da328] ACPI: DMAR BDEBE2B0, 00B8 (r1 INTEL HSW 1 INTL 1)
[2023-04-04 18:59:52] (XEN) [0000002c3c34240c] ACPI: SSDT BDEBE368, 13ED (r1 OptRef OptTabl 1000 INTL 20120711)
[2023-04-04 18:59:52] (XEN) [0000002c3c4aa68c] ACPI: MSDM BDAF3E18, 0055 (r3 ASUS Notebook 0 ASUS 1)
[2023-04-04 18:59:52] (XEN) [0000002c3c642cf4] System RAM: 16075MB (16460860kB)
[2023-04-04 18:59:52] (XEN) [0000002c3d8f1084] No NUMA configuration found
[2023-04-04 18:59:52] (XEN) [0000002c3d9a67b4] Faking a node at 0000000000000000-000000042f200000
[2023-04-04 18:59:52] (XEN) [0000002c6a65eb0a] Domain heap initialised
[2023-04-04 18:59:52] (XEN) [0000002c6bac8770] found SMP MP-table at 000fd8a0
[2023-04-04 18:59:52] (XEN) [0000002c6bb86158] DMI 2.7 present.
[2023-04-04 18:59:52] (XEN) [0000002c6bc3fcfa] APIC boot state is ‘x2apic’
[2023-04-04 18:59:52] (XEN) [0000002c6bcf4a24] x2APIC mode is already enabled by BIOS.
[2023-04-04 18:59:52] (XEN) [0000002c6bdac7d6] Using APIC driver x2apic_cluster
[2023-04-04 18:59:52] (XEN) [0000002c6be71e1c] ACPI: PM-Timer IO Port: 0x1808 (24 bits)
[2023-04-04 18:59:52] (XEN) [0000002c6bf2a276] ACPI: v5 SLEEP INFO: control[0:0], status[0:0]
[2023-04-04 18:59:52] (XEN) [0000002c6bfe3f7e] ACPI: SLEEP INFO: pm1x_cnt[1:1804,1:0], pm1x_evt[1:1800,1:0]
[2023-04-04 18:59:52] (XEN) [0000002c6c14b2ce] ACPI: 32/64X FACS address mismatch in FADT - beb1cf80/0000000000000000, using 32
[2023-04-04 18:59:52] (XEN) [0000002c6c2b54ce] ACPI: wakeup_vec[beb1cf8c], vec_size[20]
[2023-04-04 18:59:52] (XEN) [0000002c6c375e8a] ACPI: Local APIC address 0xfee00000
[2023-04-04 18:59:52] (XEN) [0000002c6c43bfba] ACPI: LAPIC (acpi_id[0x01] lapic_id[0x00] enabled)
[2023-04-04 18:59:52] (XEN) [0000002c6c4f6666] ACPI: LAPIC (acpi_id[0x02] lapic_id[0x02] enabled)
[2023-04-04 18:59:52] (XEN) [0000002c6c5b0886] ACPI: LAPIC (acpi_id[0x03] lapic_id[0x04] enabled)
[2023-04-04 18:59:52] (XEN) [0000002c6c66a72a] ACPI: LAPIC (acpi_id[0x04] lapic_id[0x06] enabled)
[2023-04-04 18:59:52] (XEN) [0000002c6c724a82] ACPI: LAPIC (acpi_id[0x05] lapic_id[0x01] enabled)
[2023-04-04 18:59:52] (XEN) [0000002c6c7ded02] ACPI: LAPIC (acpi_id[0x06] lapic_id[0x03] enabled)
[2023-04-04 18:59:52] (XEN) [0000002c6c8986ac] ACPI: LAPIC (acpi_id[0x07] lapic_id[0x05] enabled)
[2023-04-04 18:59:52] (XEN) [0000002c6c952216] ACPI: LAPIC (acpi_id[0x08] lapic_id[0x07] enabled)
[2023-04-04 18:59:52] (XEN) [0000002c6ca1c7b4] ACPI: LAPIC_NMI (acpi_id[0xff] high edge lint[0x1])
[2023-04-04 18:59:52] (XEN) [0000002c6cae6c3a] ACPI: IOAPIC (id[0x08] address[0xfec00000] gsi_base[0])
[2023-04-04 18:59:52] (XEN) [0000002c6cba3eb4] IOAPIC[0]: apic_id 8, version 32, address 0xfec00000, GSI 0-23
[2023-04-04 18:59:52] (XEN) [0000002c6cd12ce4] ACPI: INT_SRC_OVR (bus 0 bus_irq 0 global_irq 2 dfl dfl)
[2023-04-04 18:59:52] (XEN) [0000002c6ce79938] ACPI: INT_SRC_OVR (bus 0 bus_irq 9 global_irq 9 high level)
[2023-04-04 18:59:52] (XEN) [0000002c6cfdf890] ACPI: IRQ0 used by override.
[2023-04-04 18:59:52] (XEN) [0000002c6d094796] ACPI: IRQ2 used by override.
[2023-04-04 18:59:52] (XEN) [0000002c6d14972c] ACPI: IRQ9 used by override.
[2023-04-04 18:59:52] (XEN) [0000002c6d20a1c6] ACPI: HPET id: 0x8086a701 base: 0xfed00000
[2023-04-04 18:59:52] (XEN) [0000002c6d2c7fd8] PCI: MCFG configuration 0: base f8000000 segment 0000 buses 00 - 3f
[2023-04-04 18:59:52] (XEN) [0000002c6d4305a2] PCI: MCFG area at f8000000 reserved in E820
[2023-04-04 18:59:52] (XEN) [0000002c6d4ea404] PCI: Using MCFG for segment 0000 bus 00-3f
[2023-04-04 18:59:52] (XEN) [0000002c6d5b494e] [VT-D]Host address width 39
[2023-04-04 18:59:52] (XEN) [0000002c6d6697b4] [VT-D]found ACPI_DMAR_DRHD:
[2023-04-04 18:59:52] (XEN) [0000002c6d71f166] [VT-D] dmaru->address = fed90000
[2023-04-04 18:59:52] (XEN) [0000002c6d7d672c] [VT-D]drhd->address = fed90000 iommu->reg = ffff82c00021d000
[2023-04-04 18:59:52] (XEN) [0000002c6d93c8a6] [VT-D]cap = c0000020660462 ecap = f0101a
[2023-04-04 18:59:52] (XEN) [0000002c6d9f55d4] [VT-D] endpoint: 0000:00:02.0
[2023-04-04 18:59:52] (XEN) [0000002c6daaba6e] [VT-D]found ACPI_DMAR_DRHD:
[2023-04-04 18:59:52] (XEN) [0000002c6db60c2e] [VT-D] dmaru->address = fed91000
[2023-04-04 18:59:52] (XEN) [0000002c6dc17a5a] [VT-D]drhd->address = fed91000 iommu->reg = ffff82c00021f000
[2023-04-04 18:59:52] (XEN) [0000002c6dd7dbe0] [VT-D]cap = d2008020660462 ecap = f010da
[2023-04-04 18:59:52] (XEN) [0000002c6de360e6] [VT-D] IOAPIC: 0000:f0:1f.0
[2023-04-04 18:59:52] (XEN) [0000002c6deeb59e] [VT-D] MSI HPET: 0000:f0:0f.0
[2023-04-04 18:59:52] (XEN) [0000002c6dfa122e] [VT-D] flags: INCLUDE_ALL
[2023-04-04 18:59:52] (XEN) [0000002c6e056382] [VT-D]found ACPI_DMAR_RMRR:
[2023-04-04 18:59:52] (XEN) [0000002c6e10c040] [VT-D] endpoint: 0000:00:1d.0
[2023-04-04 18:59:52] (XEN) [0000002c6e1c17cc] [VT-D] endpoint: 0000:00:1a.0
[2023-04-04 18:59:52] (XEN) [0000002c6e276dde] [VT-D] endpoint: 0000:00:14.0
[2023-04-04 18:59:52] (XEN) [0000002c6e32d7fc] [VT-D]found ACPI_DMAR_RMRR:
[2023-04-04 18:59:52] (XEN) [0000002c6e3e36fc] [VT-D] endpoint: 0000:00:02.0
[2023-04-04 18:59:52] (XEN) [0000002c6e4a64a2] Using ACPI (MADT) for SMP configuration information
[2023-04-04 18:59:52] (XEN) [0000002c6e560388] SMP: Allowing 8 CPUs (0 hotplug CPUs)
[2023-04-04 18:59:52] (XEN) [0000002c6e61a06a] mapped IOAPIC to ffff82cffffea000 (fec00000)
[2023-04-04 18:59:52] (XEN) [0000002c6e6d5370] IRQ limits: 24 GSI, 1640 MSI/MSI-X
[2023-04-04 18:59:52] (XEN) [0000002c6f565dea] CPU0: 800 … 2500 MHz
[2023-04-04 18:59:52] (XEN) [0000002c6f61ad2a] xstate: size: 0x340 and states: 0x7
[2023-04-04 18:59:52] (XEN) [0000002c6f6d510c] CPU0 CMCI LVT vector (0xf9) already installed
[2023-04-04 18:59:52] (XEN) [0000002c6f78daec] Thermal LVT vector (0xfa) already installed
[2023-04-04 18:59:52] (XEN) [0000002c6f84624e] CPU0: Intel machine check reporting enabled
[2023-04-04 18:59:52] (XEN) [0000002c6f901888] Speculative mitigation facilities:
[2023-04-04 18:59:52] (XEN) [0000002c6f9b835e] Hardware hints:
[2023-04-04 18:59:52] (XEN) [0000002c6fa6bafe] Hardware features:
[2023-04-04 18:59:52] (XEN) [0000002c6fb1fa64] Compiled-in support: INDIRECT_THUNK
[2023-04-04 18:59:52] (XEN) [0000002c6fbd70c8] Xen settings: BTI-Thunk RETPOLINE, SPEC_CTRL: No, Other: BRANCH_HARDEN
[2023-04-04 18:59:52] (XEN) [0000002c6fd3f562] L1TF: believed vulnerable, maxphysaddr L1D 46, CPUID 39, Safe address 8000000000
[2023-04-04 18:59:52] (XEN) [0000002c6feaa568] Support for HVM VMs: RSB EAGER_FPU
[2023-04-04 18:59:52] (XEN) [0000002c6ff6121c] Support for PV VMs: EAGER_FPU
[2023-04-04 18:59:52] (XEN) [0000002c70017434] XPTI (64-bit PV only): Dom0 enabled, DomU enabled (with PCID)
[2023-04-04 18:59:52] (XEN) [0000002c7017dabe] PV L1TF shadowing: Dom0 disabled, DomU enabled
[2023-04-04 18:59:52] (XEN) [0000002c70237382] Using scheduler: SMP Credit Scheduler rev2 (credit2)
[2023-04-04 18:59:52] (XEN) [0000002c702f0b38] Initializing Credit2 scheduler
[2023-04-04 18:59:52] (XEN) [0000002c703a66c2] load_precision_shift: 18
[2023-04-04 18:59:52] (XEN) [0000002c7045b35a] load_window_shift: 30
[2023-04-04 18:59:52] (XEN) [0000002c7050f6b2] underload_balance_tolerance: 0
[2023-04-04 18:59:52] (XEN) [0000002c705c538a] overload_balance_tolerance: -3
[2023-04-04 18:59:52] (XEN) [0000002c7067afbe] runqueues arrangement: socket
[2023-04-04 18:59:52] (XEN) [0000002c70730806] cap enforcement granularity: 10ms
[2023-04-04 18:59:52] (XEN) [0000002c707e70f8] load tracking window length 1073741824 ns
[2023-04-04 18:59:52] (XEN) [0000002c77fa1684] Platform timer is 14.318MHz HPET
[2023-04-04 18:59:52] (XEN) [ 0.447313] Detected 2494.225 MHz processor.
[2023-04-04 18:59:52] (XEN) [ 0.450219] alt table ffff82d0404092f0 → ffff82d040413276
[2023-04-04 18:59:52] (XEN) [ 0.458793] Intel VT-d iommu 0 supported page sizes: 4kB
[2023-04-04 18:59:52] (XEN) [ 0.459096] Intel VT-d iommu 1 supported page sizes: 4kB
[2023-04-04 18:59:52] (XEN) [ 0.459399] Intel VT-d Snoop Control not enabled.
[2023-04-04 18:59:52] (XEN) [ 0.459697] Intel VT-d Dom0 DMA Passthrough not enabled.
[2023-04-04 18:59:52] (XEN) [ 0.459998] Intel VT-d Queued Invalidation enabled.
[2023-04-04 18:59:52] (XEN) [ 0.460297] Intel VT-d Interrupt Remapping enabled.
[2023-04-04 18:59:52] (XEN) [ 0.460596] Intel VT-d Posted Interrupt not enabled.
[2023-04-04 18:59:52] (XEN) [ 0.460895] Intel VT-d Shared EPT tables not enabled.
[2023-04-04 18:59:52] (XEN) [ 0.461604] I/O virtualisation enabled
[2023-04-04 18:59:52] (XEN) [ 0.461900] - Dom0 mode: Relaxed
[2023-04-04 18:59:52] (XEN) [ 0.462195] Interrupt remapping enabled
[2023-04-04 18:59:52] (XEN) [ 0.462493] nr_sockets: 1
[2023-04-04 18:59:52] (XEN) [ 0.462788] Getting VERSION: 1060015
[2023-04-04 18:59:52] (XEN) [ 0.463083] Getting VERSION: 1060015
[2023-04-04 18:59:52] (XEN) [ 0.463378] Enabled directed EOI with ioapic_ack_old on!
[2023-04-04 18:59:52] (XEN) [ 0.463679] Getting ID: 0
[2023-04-04 18:59:52] (XEN) [ 0.463972] Getting LVT0: 700
[2023-04-04 18:59:52] (XEN) [ 0.464265] Getting LVT1: 400
[2023-04-04 18:59:52] (XEN) [ 0.464560] Suppressing EOI broadcast
[2023-04-04 18:59:52] (XEN) [ 0.464855] enabled ExtINT on CPU#0
[2023-04-04 18:59:52] (XEN) [ 0.465814] ENABLING IO-APIC IRQs
[2023-04-04 18:59:52] (XEN) [ 0.466108] → Using old ACK method
[2023-04-04 18:59:52] (XEN) [ 0.466403] init IO_APIC IRQs
[2023-04-04 18:59:52] (XEN) [ 0.466696] IO-APIC (apicid-pin) 8-0, 8-16, 8-17, 8-18, 8-19, 8-20, 8-21, 8-22, 8-23 not connected.
[2023-04-04 18:59:52] (XEN) [ 0.467612] …TIMER: vector=0xF0 apic1=0 pin1=2 apic2=-1 pin2=-1
[2023-04-04 18:59:52] (XEN) [ 0.567918] number of MP IRQ sources: 15.
[2023-04-04 18:59:52] (XEN) [ 0.568214] number of IO-APIC #8 registers: 24.
[2023-04-04 18:59:52] (XEN) [ 0.568512] testing the IO APIC…
[2023-04-04 18:59:52] (XEN) [ 0.568817] IO APIC #8
[2023-04-04 18:59:52] (XEN) [ 0.569109] … register #00: 08000000
[2023-04-04 18:59:52] (XEN) [ 0.569405] … : physical APIC id: 08
[2023-04-04 18:59:52] (XEN) [ 0.569702] … : Delivery Type: 0
[2023-04-04 18:59:52] (XEN) [ 0.569998] … : LTS : 0
[2023-04-04 18:59:52] (XEN) [ 0.570295] … register #01: 00170020
[2023-04-04 18:59:52] (XEN) [ 0.570590] … : max redirection entries: 0017
[2023-04-04 18:59:52] (XEN) [ 0.570890] … : PRQ implemented: 0
[2023-04-04 18:59:52] (XEN) [ 0.571187] … : IO APIC version: 0020
[2023-04-04 18:59:52] (XEN) [ 0.571485] … IRQ redirection table:
[2023-04-04 18:59:52] (XEN) [ 0.571781] NR DestID Msk Trg IRR Pol Stat DstM DelM Vec
[2023-04-04 18:59:52] (XEN) [ 0.572087] 00 00000000 1 0 0 0 0 0 0 00
[2023-04-04 18:59:52] (XEN) [ 0.572394] 01 00000001 0 0 0 0 0 1 1 40
[2023-04-04 18:59:52] (XEN) [ 0.572702] 02 00000001 0 0 0 0 0 1 1 F0
[2023-04-04 18:59:52] (XEN) [ 0.573009] 03 00000001 0 0 0 0 0 1 1 48
[2023-04-04 18:59:52] (XEN) [ 0.573317] 04 00000001 0 0 0 0 0 1 1 50
[2023-04-04 18:59:52] (XEN) [ 0.573624] 05 00000001 0 0 0 0 0 1 1 58
[2023-04-04 18:59:52] (XEN) [ 0.573930] 06 00000001 0 0 0 0 0 1 1 60
[2023-04-04 18:59:52] (XEN) [ 0.574237] 07 00000001 0 0 0 0 0 1 1 68
[2023-04-04 18:59:52] (XEN) [ 0.574544] 08 00000001 0 0 0 0 0 1 1 70
[2023-04-04 18:59:52] (XEN) [ 0.574851] 09 00000001 1 1 0 0 0 1 1 78
[2023-04-04 18:59:52] (XEN) [ 0.575158] 0a 00000001 0 0 0 0 0 1 1 88
[2023-04-04 18:59:52] (XEN) [ 0.575465] 0b 00000001 0 0 0 0 0 1 1 90
[2023-04-04 18:59:52] (XEN) [ 0.575771] 0c 00000001 0 0 0 0 0 1 1 98
[2023-04-04 18:59:52] (XEN) [ 0.576079] 0d 00000001 0 0 0 0 0 1 1 A0
[2023-04-04 18:59:52] (XEN) [ 0.576386] 0e 00000001 0 0 0 0 0 1 1 A8
[2023-04-04 18:59:52] (XEN) [ 0.576693] 0f 00000001 0 0 0 0 0 1 1 B0
[2023-04-04 18:59:52] (XEN) [ 0.576999] 10 00000000 1 0 0 0 0 0 0 00
[2023-04-04 18:59:52] (XEN) [ 0.577307] 11 00000000 1 0 0 0 0 0 0 00
[2023-04-04 18:59:52] (XEN) [ 0.577614] 12 00000000 1 0 0 0 0 0 0 00
[2023-04-04 18:59:52] (XEN) [ 0.577922] 13 00000000 1 0 0 0 0 0 0 00
[2023-04-04 18:59:52] (XEN) [ 0.578229] 14 00000000 1 0 0 0 0 0 0 00
[2023-04-04 18:59:52] (XEN) [ 0.578537] 15 00000000 1 0 0 0 0 0 0 00
[2023-04-04 18:59:52] (XEN) [ 0.578844] 16 00000000 1 0 0 0 0 0 0 00
[2023-04-04 18:59:52] (XEN) [ 0.579151] 17 00000000 1 0 0 0 0 0 0 00
[2023-04-04 18:59:52] (XEN) [ 0.579453] Using vector-based indexing
[2023-04-04 18:59:52] (XEN) [ 0.579748] IRQ to pin mappings:
[2023-04-04 18:59:52] (XEN) [ 0.580041] IRQ240 → 0:2
[2023-04-04 18:59:52] (XEN) [ 0.580334] IRQ64 → 0:1
[2023-04-04 18:59:52] (XEN) [ 0.580625] IRQ72 → 0:3
[2023-04-04 18:59:52] (XEN) [ 0.580917] IRQ80 → 0:4
[2023-04-04 18:59:52] (XEN) [ 0.581208] IRQ88 → 0:5
[2023-04-04 18:59:52] (XEN) [ 0.581500] IRQ96 → 0:6
[2023-04-04 18:59:52] (XEN) [ 0.581791] IRQ104 → 0:7
[2023-04-04 18:59:52] (XEN) [ 0.582083] IRQ112 → 0:8
[2023-04-04 18:59:52] (XEN) [ 0.582375] IRQ120 → 0:9
[2023-04-04 18:59:52] (XEN) [ 0.582667] IRQ136 → 0:10
[2023-04-04 18:59:52] (XEN) [ 0.582959] IRQ144 → 0:11
[2023-04-04 18:59:52] (XEN) [ 0.583251] IRQ152 → 0:12
[2023-04-04 18:59:52] (XEN) [ 0.583543] IRQ160 → 0:13
[2023-04-04 18:59:52] (XEN) [ 0.583835] IRQ168 → 0:14
[2023-04-04 18:59:52] (XEN) [ 0.584127] IRQ176 → 0:15
[2023-04-04 18:59:52] (XEN) [ 0.584419] … done.
[2023-04-04 18:59:52] (XEN) [ 0.584719] Using local APIC timer interrupts.
[2023-04-04 18:59:52] (XEN) [ 0.585018] TSC_DEADLINE disabled due to Errata; please update microcode to version 0x22 (or later)
[2023-04-04 18:59:52] (XEN) [ 0.585614] calibrating APIC timer …
[2023-04-04 18:59:52] (XEN) [ 0.687010] … CPU clock speed is 2494.3172 MHz.
[2023-04-04 18:59:52] (XEN) [ 0.687310] … host bus clock speed is 99.7726 MHz.
[2023-04-04 18:59:52] (XEN) [ 0.687610] … bus_scale = 0x662a
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:11] Allocated console ring of 64 KiB.
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:11] HWP disabled: cpuid_level d < 0x16 lacks CPU freq info
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:11] mwait-idle: MWAIT substates: 0x42120
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:11] mwait-idle: v0.4.1 model 0x3c
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:11] mwait-idle: lapic_timer_reliable_states 0xffffffff
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:11] VMX: Supported advanced features:
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:11] - APIC MMIO access virtualisation
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:11] - APIC TPR shadow
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:11] - Extended Page Tables (EPT)
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:11] - Virtual-Processor Identifiers (VPID)
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:11] - Virtual NMI
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:11] - MSR direct-access bitmap
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:11] - Unrestricted Guest
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:11] - VM Functions
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:11] HVM: ASIDs enabled.
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:11] HVM: VMX enabled
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:11] HVM: Hardware Assisted Paging (HAP) detected
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:11] HVM: HAP page sizes: 4kB, 2MB, 1GB
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:11] alt table ffff82d0404092f0 → ffff82d040413276
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:12] Brought up 4 CPUs
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:12] Parked 4 CPUs
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:12] Scheduling granularity: cpu, 1 CPU per sched-resource
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:12] Adding cpu 0 to runqueue 0
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:12] First cpu on runqueue, activating
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:12] Adding cpu 2 to runqueue 0
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:12] Adding cpu 4 to runqueue 1
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:12] First cpu on runqueue, activating
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:12] Adding cpu 6 to runqueue 1
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:12] mcheck_poll: Machine check polling timer started.
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:12] NX (Execute Disable) protection active
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:12] Dom0 has maximum 856 PIRQs
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:12] *** Building a PV Dom0 ***
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:13] Xen kernel: 64-bit, lsb, compat32
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:13] Dom0 kernel: 64-bit, PAE, lsb, paddr 0x1000000 → 0x4400000
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:13] PHYSICAL MEMORY ARRANGEMENT:
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:13] Dom0 alloc.: 0000000410000000->0000000418000000 (1006561 pages to be allocated)
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:13] Init. ramdisk: 000000042cde1000->000000042f1ffabb
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:13] VIRTUAL MEMORY ARRANGEMENT:
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:13] Loaded kernel: ffffffff81000000->ffffffff84400000
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:13] Init. ramdisk: 0000000000000000->0000000000000000
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:13] Phys-Mach map: 0000008000000000->0000008000800000
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:13] Start info: ffffffff84400000->ffffffff844004b8
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:13] Xenstore ring: 0000000000000000->0000000000000000
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:13] Console ring: 0000000000000000->0000000000000000
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:13] Page tables: ffffffff84401000->ffffffff84428000
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:13] Boot stack: ffffffff84428000->ffffffff84429000
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:13] TOTAL: ffffffff80000000->ffffffff84800000
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:13] ENTRY ADDRESS: ffffffff8353b1c0
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:13] Dom0 has maximum 4 VCPUs
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:13] Bogus DMIBAR 0xfed18001 on 0000:00:00.0
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:14] [VT-D]iommu_enable_translation: iommu->reg = ffff82c00021d000
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:14] [VT-D]iommu_enable_translation: iommu->reg = ffff82c00021f000
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:14] Initial low memory virq threshold set at 0x4000 pages.
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:14] Scrubbing Free RAM in background
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:14] Std. Loglevel: All
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:14] Guest Loglevel: All
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:14] ***************************************************
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:14] WARNING: CONSOLE OUTPUT IS SYNCHRONOUS
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:14] This option is intended to aid debugging of Xen by ensuring
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:14] that all output is synchronously delivered on the serial line.
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:14] However it can introduce SIGNIFICANT latencies and affect
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:14] timekeeping. It is NOT recommended for production use!
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:14] ***************************************************
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:14] 3… 2… 1…
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:17] Xen is relinquishing VGA console.
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:17] *** Serial input to DOM0 (type ‘CTRL-a’ three times to switch input)
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:17] Freed 600kB init memory
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:19] IOAPIC[0]: Set PCI routing entry (8-9 → 0x78 → IRQ 9 Mode:1 Active:0)
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:19] Bogus DMIBAR 0xfed18001 on 0000:00:00.0
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:19] PCI add device 0000:00:00.0
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:19] PCI add device 0000:00:01.0
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:19] PCI add device 0000:00:02.0
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:19] PCI add device 0000:00:03.0
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:19] PCI add device 0000:00:14.0
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:19] PCI add device 0000:00:16.0
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:19] PCI add device 0000:00:1a.0
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:19] PCI add device 0000:00:1b.0
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:19] PCI add device 0000:00:1c.0
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:19] PCI add device 0000:00:1c.1
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:19] PCI add device 0000:00:1c.2
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:19] PCI add device 0000:00:1c.3
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:19] PCI add device 0000:00:1d.0
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:19] PCI add device 0000:00:1f.0
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:19] PCI add device 0000:00:1f.2
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:19] PCI add device 0000:00:1f.3
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:19] PCI add device 0000:01:00.0
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:19] PCI add device 0000:01:00.1
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:19] PCI add device 0000:04:00.0
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:19] PCI add device 0000:05:00.0
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:19] IOAPIC[0]: Set PCI routing entry (8-13 → 0xa0 → IRQ 13 Mode:0 Active:0)
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:19] IOAPIC[0]: Set PCI routing entry (8-8 → 0x70 → IRQ 8 Mode:0 Active:0)
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:19] IOAPIC[0]: Set PCI routing entry (8-12 → 0x98 → IRQ 12 Mode:0 Active:0)
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:19] IOAPIC[0]: Set PCI routing entry (8-1 → 0x40 → IRQ 1 Mode:0 Active:0)
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:19] IOAPIC[0]: Set PCI routing entry (8-16 → 0xc0 → IRQ 16 Mode:1 Active:1)
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:19] IOAPIC[0]: Set PCI routing entry (8-23 → 0xc8 → IRQ 23 Mode:1 Active:1)
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:20] IOAPIC[0]: Set PCI routing entry (8-17 → 0xe0 → IRQ 17 Mode:1 Active:1)
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:20] IOAPIC[0]: Set PCI routing entry (8-18 → 0x31 → IRQ 18 Mode:1 Active:1)
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:20] IOAPIC[0]: Set PCI routing entry (8-19 → 0x41 → IRQ 19 Mode:1 Active:1)
[2023-04-04 18:59:52] (XEN) [2023-04-04 18:59:42] IOAPIC[0]: Set PCI routing entry (8-22 → 0x99 → IRQ 22 Mode:1 Active:1)

dmesg | grep -e vga -e fb -e drm -e i915

Debian kernel 6.1.20 log

[ 0.000000] BIOS-e820: [mem 0x00000000f8000000-0x00000000fbffffff] reserved
[ 0.008352] ACPI: Reserving FACS table memory at [mem 0xbeb1cf80-0xbeb1cfbf]
[ 0.015119] PM: hibernation: Registered nosave memory: [mem 0xbf000000-0xbfbfffff]
[ 0.015121] PM: hibernation: Registered nosave memory: [mem 0xf8000000-0xfbffffff]
[ 0.228946] PCI: MMCONFIG for domain 0000 [bus 00-3f] at [mem 0xf8000000-0xfbffffff] (base 0xf8000000)
[ 0.228946] PCI: MMCONFIG at [mem 0xf8000000-0xfbffffff] reserved in E820
[ 0.264680] pci 0000:00:02.0: BAR 2: assigned to efifb
[ 0.269518] pci 0000:00:02.0: vgaarb: setting as boot VGA device
[ 0.269518] pci 0000:00:02.0: vgaarb: bridge control possible
[ 0.269518] pci 0000:00:02.0: vgaarb: VGA device added: decodes=io+mem,owns=io+mem,locks=none
[ 0.269518] vgaarb: loaded
[ 0.275269] system 00:08: [mem 0xf8000000-0xfbffffff] has been reserved
[ 0.659815] efifb: probing for efifb
[ 0.659827] efifb: framebuffer at 0xd0000000, using 3072k, total 3072k
[ 0.659828] efifb: mode is 1024x768x32, linelength=4096, pages=1
[ 0.659829] efifb: scrolling: redraw
[ 0.659830] efifb: Truecolor: size=8:8:8:8, shift=24:16:8:0
[ 0.660601] fb0: EFI VGA frame buffer device
[ 1.009416] ACPI: bus type drm_connector registered
[ 1.410722] nouveau 0000:01:00.0: fb: 4096 MiB DDR3
[ 1.540469] i915 0000:00:02.0: vgaarb: deactivate vga console
[ 1.541640] i915 0000:00:02.0: vgaarb: changed VGA decodes: olddecodes=io+mem,decodes=io+mem:owns=io+mem
[ 1.612551] [drm] Initialized i915 1.6.0 20201103 for 0000:00:02.0 on minor 1
[ 1.624073] fbcon: i915drmfb (fb0) is primary device
[ 2.719970] vga_switcheroo: enabled
[ 2.721271] [drm] Initialized nouveau 1.3.1 20120801 for 0000:01:00.0 on minor 0
[ 3.021365] i915 0000:00:02.0: [drm] fb0: i915drmfb frame buffer device
[ 12.608528] systemd[1]: Starting modprobe@drm.service - Load Kernel Module drm…
[ 12.641999] systemd[1]: modprobe@drm.service: Deactivated successfully.
[ 12.642115] systemd[1]: Finished modprobe@drm.service - Load Kernel Module drm.
[ 15.966803] snd_hda_intel 0000:00:03.0: bound 0000:00:02.0 (ops i915_audio_component_bind_ops [i915])

1 Like

I’ve tested some more things:
I’ve tried kernel 5.10.158 and it works as well.
I’ve also tried patched kexec-tools 2.0.25 built from debian sources package with patch instead of kexec-tools 2.0.22 built with patch and it works as well.
I’ve noticed that there was no hack ebda into segment 0! message so I’ve tried debian kexec-tools 2.0.25 package without patch and it works as well!

1 Like

I guess I’ve stumbled on this problem:

Previously, Xen used information from the BDA to detect the amount of
available low memory. This does not work on some scenarios such as
Coreboot, or when booting from Kexec on a UEFI system without CSM.

https://markmail.org/message/njdbzyhzthw7zz4o

I’m trying to kexec on new Dell laptop and it doesn’t have CSM because Dell dropped it:

Note: Some newer computers will only support “UEFI.” It will not include an option for Legacy at all even with the latest BIOS version installed. This is normal, and it is working as expected.

https://www.dell.com/support/kbdoc/en-us/000125414/newer-dell-systems-unable-to-boot-to-internal-boot-device-in-legacy-boot-mode

I was able to kexec into Qubes using kexec-tools with patch from Heads and this Xen patch:

vmm_xen_acpi_addr_uefi_wo_csm.patch
From 5e8be706eb4429a474a16850fe7a2591565cc5b1 Mon Sep 17 00:00:00 2001
From: Your Name <you@example.com>
Date: Fri, 21 Apr 2023 04:28:31 +0000
Subject: [PATCH] get ACPI table address on UEFI without CSM from command line
 option

---
 0299-acpi_addr_uefi_wo_csm.patch | 70 ++++++++++++++++++++++++++++++++
 xen.spec.in                      |  1 +
 2 files changed, 71 insertions(+)
 create mode 100644 0299-acpi_addr_uefi_wo_csm.patch

diff --git a/0299-acpi_addr_uefi_wo_csm.patch b/0299-acpi_addr_uefi_wo_csm.patch
new file mode 100644
index 0000000..9b1b99e
--- /dev/null
+++ b/0299-acpi_addr_uefi_wo_csm.patch
@@ -0,0 +1,70 @@
+From 5f628e2f36d7840054ee4590db3038a0dbcec02e Mon Sep 17 00:00:00 2001
+From: Your Name <you@example.com>
+Date: Fri, 21 Apr 2023 04:25:47 +0000
+Subject: [PATCH] get ACPI table address on UEFI without CSM from command line
+ option
+
+---
+ xen/arch/x86/guest/xen/pvh-boot.c | 2 +-
+ xen/drivers/acpi/osl.c            | 8 +++++---
+ xen/include/xen/acpi.h            | 2 +-
+ 3 files changed, 7 insertions(+), 5 deletions(-)
+
+diff --git a/xen/arch/x86/guest/xen/pvh-boot.c b/xen/arch/x86/guest/xen/pvh-boot.c
+index 9cbe87b61b..b022708b69 100644
+--- a/xen/arch/x86/guest/xen/pvh-boot.c
++++ b/xen/arch/x86/guest/xen/pvh-boot.c
+@@ -67,7 +67,7 @@ static void __init convert_pvh_info(multiboot_info_t **mbi,
+         pvh_mbi_mods[i].string    = entry[i].cmdline_paddr;
+     }
+ 
+-    rsdp_hint = pvh_info->rsdp_paddr;
++    acpi_rsdp = pvh_info->rsdp_paddr;
+ 
+     *mbi = &pvh_mbi;
+     *mod = pvh_mbi_mods;
+diff --git a/xen/drivers/acpi/osl.c b/xen/drivers/acpi/osl.c
+index 389505f786..516793fe4a 100644
+--- a/xen/drivers/acpi/osl.c
++++ b/xen/drivers/acpi/osl.c
+@@ -37,6 +37,7 @@
+ #include <xen/domain_page.h>
+ #include <xen/efi.h>
+ #include <xen/vmap.h>
++#include <xen/param.h>
+ 
+ #define _COMPONENT		ACPI_OS_SERVICES
+ ACPI_MODULE_NAME("osl")
+@@ -62,12 +63,13 @@ void __init acpi_os_vprintf(const char *fmt, va_list args)
+ 	printk("%s", buffer);
+ }
+ 
+-acpi_physical_address __initdata rsdp_hint;
++acpi_physical_address __initdata acpi_rsdp;
++integer_param("acpi_rsdp", acpi_rsdp);
+ 
+ acpi_physical_address __init acpi_os_get_root_pointer(void)
+ {
+-	if (rsdp_hint)
+-		return rsdp_hint;
++	if (acpi_rsdp)
++		return acpi_rsdp;
+ 
+ 	if (efi_enabled(EFI_BOOT)) {
+ 		if (efi.acpi20 != EFI_INVALID_TABLE_ADDR)
+diff --git a/xen/include/xen/acpi.h b/xen/include/xen/acpi.h
+index 352f27f6a7..11a1bca08b 100644
+--- a/xen/include/xen/acpi.h
++++ b/xen/include/xen/acpi.h
+@@ -54,7 +54,7 @@
+ 
+ #ifdef CONFIG_ACPI
+ 
+-extern acpi_physical_address rsdp_hint;
++extern acpi_physical_address acpi_rsdp;
+ 
+ extern bool opt_acpi_verbose;
+ 
+-- 
+2.40.0
+
diff --git a/xen.spec.in b/xen.spec.in
index 920b1d5..1cb5965 100644
--- a/xen.spec.in
+++ b/xen.spec.in
@@ -92,6 +92,7 @@ Patch0201: 0201-EFI-early-Add-noexit-to-inhibit-calling-ExitBootServ.patch
 Patch0202: 0202-efi-Ensure-incorrectly-typed-runtime-services-get-ma.patch
 Patch0203: 0203-Add-xen.cfg-options-for-mapbs-and-noexitboot.patch
 Patch0204: 0204-xen.efi.build.patch
+Patch0299: 0299-acpi_addr_uefi_wo_csm.patch
 
 # Backports
 Patch0300: 0300-Relocate-the-ESRT-when-booting-via-multiboot2.patch
-- 
2.40.0

I forgot to mention that the address of the ACPI table should to be passed in Xen command line option acpi_rsdp:
sudo sh -c 'echo acpi_rsdp=$(grep -m1 ^ACPI /sys/firmware/efi/systab | cut -f2- -d=)'
Kexec - ArchWiki

1 Like