My Haiku RISC-V port progress

runtime_loader is loading modules, but libroot.so is currently crash because of NULL deference.

arch_thread_init_kthread_stack(0x000000008129b400(launch_daemon), 0x0000000080b2c000, 0x0000000080b30fb0, <kernel_riscv64> _ZL19common_thread_entryPv + 0, 0x0000000080b30fb0)
cache_prefetch_vnode(0x0, 0x1c000)
cache_prefetch_vnode(0x1b000, 0x2000)
arch_thread_init_tls(0x000000008129b400(launch_daemon))
arch_thread_enter_uspace(0x000000008129b400(launch_daemon), 0xfffffff214c56ea0, 0xffffffed13a66200, 0xffffffe99170e000)
runtime_loader entry point
(1)
rld: load /boot/system/servers/launch_daemon
malloc(1720) -> 0xffffffc50dacb008
PT_LOAD: 0x0, 0x30195
image->regions[0]: 0x0, 0x30195
PT_LOAD: 0x31198, 0x34818
image->regions[1]: 0x31198, 0x34760
image->dynamic_ptr: 0x0000000000032fa8
image->regions[0]: 0x0, 0x30195
image->regions[1]: 0x31198, 0x34760
_user_map_file(0x0)
cache_prefetch_vnode(0x0, 0x31000)
"/boot/system/servers/launch_daemon" at 0xffffffe8d0ee9000, 0x31000 bytes (read-only)
malloc(56) -> 0xffffffc50dacb6c8
_user_map_file(0x30000)
cache_prefetch_vnode(0x30000, 0x4000)
"/boot/system/servers/launch_daemon" at 0xffffffe8d0f1a000, 0x4000 bytes (rw)
cleared 0xffffffe8d0f1d760 and the following 0x8a0 bytes
malloc(96) -> 0xffffffc50dacb708
malloc(48) -> 0xffffffc50dacb770
runtime_loader: search_container_in_path_list() libbe.so in %A/lib:/boot/system/non-packaged/lib:/boot/system/lib
runtime_loader: try_open_container(): /boot/system/servers/lib/libbe.so
runtime_loader: try_open_container(): /boot/system/non-packaged/lib/libbe.so
runtime_loader: try_open_container(): /boot/system/lib/libbe.so
runtime_loader: open_executable(libbe.so): found at /boot/system/lib/libbe.so
malloc(1720) -> 0xffffffc50dacb7a8
PT_LOAD: 0x0, 0x2b7171
image->regions[0]: 0x0, 0x2b7171
PT_LOAD: 0x2b8178, 0x2e5570
image->regions[1]: 0x2b8178, 0x2e5038
image->dynamic_ptr: 0x00000000002cb630
image->regions[0]: 0x0, 0x2b7171
image->regions[1]: 0x2b8178, 0x2e5038
_user_map_file(0x0)
cache_prefetch_vnode(0x0, 0x2b8000)
"/boot/system/lib/libbe.so" at 0xffffffe36c42f000, 0x2b8000 bytes (read-only)
_user_map_file(0x2b7000)
cache_prefetch_vnode(0x2b7000, 0x2e000)
"/boot/system/lib/libbe.so" at 0xffffffe36c6e7000, 0x2e000 bytes (rw)
cleared 0xffffffe36c714038 and the following 0xfc8 bytes
malloc(216) -> 0xffffffc50dacbe68
runtime_loader: search_container_in_path_list() libnetwork.so in %A/lib:/boot/system/non-packaged/lib:/boot/system/lib
runtime_loader: try_open_container(): /boot/system/servers/lib/libnetwork.so
runtime_loader: try_open_container(): /boot/system/non-packaged/lib/libnetwork.so
runtime_loader: try_open_container(): /boot/system/lib/libnetwork.so
runtime_loader: open_executable(libnetwork.so): found at /boot/system/lib/libnetwork.so
malloc(1792) -> 0xffffffc50dacbf48
PT_LOAD: 0x0, 0x30837
image->regions[0]: 0x0, 0x30837
PT_LOAD: 0x31000, 0x38f00
image->regions[1]: 0x31000, 0x331b0
image->regions[2]: 0x31000, 0x36d50
image->dynamic_ptr: 0x0000000000032100
image->regions[0]: 0x0, 0x30837
image->regions[1]: 0x31000, 0x331b0
_user_map_file(0x0)
cache_prefetch_vnode(0x0, 0x31000)
"/boot/system/lib/libnetwork.so" at 0xffffffd2dc863000, 0x31000 bytes (read-only)
_user_map_file(0x31000)
cache_prefetch_vnode(0x31000, 0x3000)
"/boot/system/lib/libnetwork.so" at 0xffffffd2dc894000, 0x3000 bytes (rw)
cleared 0xffffffd2dc8961b0 and the following 0xe50 bytes
malloc(168) -> 0xffffffc50dacc650
runtime_loader: search_container_in_path_list() libbnetapi.so in %A/lib:/boot/system/non-packaged/lib:/boot/system/lib
runtime_loader: try_open_container(): /boot/system/servers/lib/libbnetapi.so
runtime_loader: try_open_container(): /boot/system/non-packaged/lib/libbnetapi.so
runtime_loader: try_open_container(): /boot/system/lib/libbnetapi.so
runtime_loader: open_executable(libbnetapi.so): found at /boot/system/lib/libbnetapi.so
malloc(1720) -> 0xffffffc50dacc700
PT_LOAD: 0x0, 0x5a59d
image->regions[0]: 0x0, 0x5a59d
PT_LOAD: 0x5b5a0, 0x5fae0
image->regions[1]: 0x5b5a0, 0x5fa18
image->dynamic_ptr: 0x000000000005d7a8
image->regions[0]: 0x0, 0x5a59d
image->regions[1]: 0x5b5a0, 0x5fa18
_user_map_file(0x0)
cache_prefetch_vnode(0x0, 0x5b000)
"/boot/system/lib/libbnetapi.so" at 0xfffffffc2dc42000, 0x5b000 bytes (read-only)
_user_map_file(0x5a000)
cache_prefetch_vnode(0x5a000, 0x5000)
"/boot/system/lib/libbnetapi.so" at 0xfffffffc2dc9d000, 0x5000 bytes (rw)
cleared 0xfffffffc2dca1a18 and the following 0x5e8 bytes
malloc(168) -> 0xffffffc50daccdc0
runtime_loader: search_container_in_path_list() libstdc++.so.6 in %A/lib:/boot/system/non-packaged/lib:/boot/system/lib
runtime_loader: try_open_container(): /boot/system/servers/lib/libstdc++.so.6
runtime_loader: try_open_container(): /boot/system/non-packaged/lib/libstdc++.so.6
runtime_loader: try_open_container(): /boot/system/lib/libstdc++.so.6
runtime_loader: open_executable(libstdc++.so.6): found at /boot/system/lib/libstdc++.so.6.0.25
malloc(1792) -> 0xffffffc50dacce70
PT_LOAD: 0x0, 0x15f650
image->regions[0]: 0x0, 0x15f650
PT_LOAD: 0x160650, 0x174730
image->regions[1]: 0x160650, 0x16ca08
image->regions[2]: 0x160650, 0x168378
malloc(128) -> 0xffffffc50dacd578
image->dynamic_ptr: 0x00000000001690c8
image->regions[0]: 0x0, 0x15f650
image->regions[1]: 0x160650, 0x16ca08
_user_map_file(0x0)
cache_prefetch_vnode(0x0, 0x160000)
"/boot/system/lib/libstdc++.so.6.0.25" at 0xffffffe358e3f000, 0x160000 bytes (read-only)
_user_map_file(0x15f000)
cache_prefetch_vnode(0x15f000, 0xd000)
"/boot/system/lib/libstdc++.so.6.0.25" at 0xffffffe358f9f000, 0xd000 bytes (rw)
cleared 0xffffffe358faba08 and the following 0x5f8 bytes
malloc(96) -> 0xffffffc50dacd600
runtime_loader: search_container_in_path_list() libroot.so in %A/lib:/boot/system/non-packaged/lib:/boot/system/lib
runtime_loader: try_open_container(): /boot/system/servers/lib/libroot.so
runtime_loader: try_open_container(): /boot/system/non-packaged/lib/libroot.so
runtime_loader: try_open_container(): /boot/system/lib/libroot.so
runtime_loader: open_executable(libroot.so): found at /boot/system/lib/libroot.so
malloc(1792) -> 0xffffffc50dacd668
PT_LOAD: 0x0, 0xd3868
image->regions[0]: 0x0, 0xd3868
PT_LOAD: 0xd4000, 0x125948
image->regions[1]: 0xd4000, 0xe14c8
image->regions[2]: 0xd4000, 0x118480
image->dynamic_ptr: 0x00000000000d8cf0
image->regions[0]: 0x0, 0xd3868
image->regions[1]: 0xd4000, 0xe14c8
_user_map_file(0x0)
cache_prefetch_vnode(0x0, 0xd4000)
"/boot/system/lib/libroot.so" at 0xffffffd35541b000, 0xd4000 bytes (read-only)
_user_map_file(0xd4000)
cache_prefetch_vnode(0xd4000, 0xe000)
"/boot/system/lib/libroot.so" at 0xffffffd3554ef000, 0xe000 bytes (rw)
cleared 0xffffffd3554fc4c8 and the following 0xb38 bytes
malloc(312) -> 0xffffffc50dacdd70
runtime_loader: search_container_in_path_list() libgcc_s.so.1 in %A/lib:/boot/system/non-packaged/lib:/boot/system/lib
runtime_loader: try_open_container(): /boot/system/servers/lib/libgcc_s.so.1
runtime_loader: try_open_container(): /boot/system/non-packaged/lib/libgcc_s.so.1
runtime_loader: try_open_container(): /boot/system/lib/libgcc_s.so.1
runtime_loader: open_executable(libgcc_s.so.1): found at /boot/system/lib/libgcc_s.so.1
malloc(1720) -> 0xffffffc50dacdeb0
PT_LOAD: 0x0, 0xfe04
image->regions[0]: 0x0, 0xfe04
PT_LOAD: 0x10000, 0x10490
image->regions[1]: 0x10000, 0x103e0
image->dynamic_ptr: 0x0000000000010020
image->regions[0]: 0x0, 0xfe04
image->regions[1]: 0x10000, 0x103e0
_user_map_file(0x0)
cache_prefetch_vnode(0x0, 0x10000)
"/boot/system/lib/libgcc_s.so.1" at 0xffffffec5bb9f000, 0x10000 bytes (read-only)
_user_map_file(0x10000)
cache_prefetch_vnode(0x10000, 0x1000)
"/boot/system/lib/libgcc_s.so.1" at 0xffffffec5bbaf000, 0x1000 bytes (rw)
cleared 0xffffffec5bbaf3e0 and the following 0xc20 bytes
malloc(360) -> 0xffffffc50dace570
malloc(72) -> 0xffffffc50dace6e0
runtime_loader: search_container_in_path_list() libicudata.so.57 in %A/lib:/boot/system/non-packaged/lib:/boot/system/lib
runtime_loader: try_open_container(): /boot/system/servers/lib/libicudata.so.57
runtime_loader: try_open_container(): /boot/system/non-packaged/lib/libicudata.so.57
runtime_loader: try_open_container(): /boot/system/lib/libicudata.so.57
runtime_loader: open_executable(libicudata.so.57): found at /boot/system/lib/libicudata.so.57.2
malloc(1720) -> 0xffffffc50dace730
PT_LOAD: 0x0, 0x187f7b4
image->regions[0]: 0x0, 0x187f7b4
PT_LOAD: 0x18807b8, 0x1880968
image->regions[1]: 0x18807b8, 0x1880928
image->dynamic_ptr: 0x00000000018807d8
image->regions[0]: 0x0, 0x187f7b4
image->regions[1]: 0x18807b8, 0x1880928
_user_map_file(0x0)
cache_prefetch_vnode(0x0, 0xa00000)
"/boot/system/lib/libicudata.so.57.2" at 0xffffffd26beda000, 0x1880000 bytes (read-only)
_user_map_file(0x187f000)
cache_prefetch_vnode(0x187f000, 0x1000)
"/boot/system/lib/libicudata.so.57.2" at 0xffffffd26d75a000, 0x1000 bytes (rw)
cleared 0xffffffd26d75a928 and the following 0x6d8 bytes
runtime_loader: search_container_in_path_list() libicui18n.so.57 in %A/lib:/boot/system/non-packaged/lib:/boot/system/lib
runtime_loader: try_open_container(): /boot/system/servers/lib/libicui18n.so.57
runtime_loader: try_open_container(): /boot/system/non-packaged/lib/libicui18n.so.57
runtime_loader: try_open_container(): /boot/system/lib/libicui18n.so.57
runtime_loader: open_executable(libicui18n.so.57): found at /boot/system/lib/libicui18n.so.57.2
malloc(1720) -> 0xffffffc50dacedf0
PT_LOAD: 0x0, 0x218441
image->regions[0]: 0x0, 0x218441
PT_LOAD: 0x219448, 0x22ddf0
image->regions[1]: 0x219448, 0x22d708
image->dynamic_ptr: 0x0000000000225a70
image->regions[0]: 0x0, 0x218441
image->regions[1]: 0x219448, 0x22d708
_user_map_file(0x0)
cache_prefetch_vnode(0x0, 0x219000)
"/boot/system/lib/libicui18n.so.57.2" at 0xffffffc4c9b6b000, 0x219000 bytes (read-only)
_user_map_file(0x218000)
cache_prefetch_vnode(0x218000, 0x15000)
"/boot/system/lib/libicui18n.so.57.2" at 0xffffffc4c9d84000, 0x15000 bytes (rw)
cleared 0xffffffc4c9d98708 and the following 0x8f8 bytes
runtime_loader: search_container_in_path_list() libicuio.so.57 in %A/lib:/boot/system/non-packaged/lib:/boot/system/lib
runtime_loader: try_open_container(): /boot/system/servers/lib/libicuio.so.57
runtime_loader: try_open_container(): /boot/system/non-packaged/lib/libicuio.so.57
runtime_loader: try_open_container(): /boot/system/lib/libicuio.so.57
runtime_loader: open_executable(libicuio.so.57): found at /boot/system/lib/libicuio.so.57.2
malloc(1720) -> 0xffffffc50dacf4b0
PT_LOAD: 0x0, 0xd00d
image->regions[0]: 0x0, 0xd00d
PT_LOAD: 0xe010, 0xf468
image->regions[1]: 0xe010, 0xf380
image->dynamic_ptr: 0x000000000000edd0
image->regions[0]: 0x0, 0xd00d
image->regions[1]: 0xe010, 0xf380
_user_map_file(0x0)
cache_prefetch_vnode(0x0, 0xe000)
"/boot/system/lib/libicuio.so.57.2" at 0xffffffffcd7e8000, 0xe000 bytes (read-only)
_user_map_file(0xd000)
cache_prefetch_vnode(0xd000, 0x2000)
"/boot/system/lib/libicuio.so.57.2" at 0xffffffffcd7f6000, 0x2000 bytes (rw)
cleared 0xffffffffcd7f7380 and the following 0xc80 bytes
runtime_loader: search_container_in_path_list() libicutu.so.57 in %A/lib:/boot/system/non-packaged/lib:/boot/system/lib
runtime_loader: try_open_container(): /boot/system/servers/lib/libicutu.so.57
runtime_loader: try_open_container(): /boot/system/non-packaged/lib/libicutu.so.57
runtime_loader: try_open_container(): /boot/system/lib/libicutu.so.57
runtime_loader: open_executable(libicutu.so.57): found at /boot/system/lib/libicutu.so.57.2
malloc(1792) -> 0xffffffc50dacfb70
PT_LOAD: 0x0, 0x2b936
image->regions[0]: 0x0, 0x2b936
PT_LOAD: 0x2c000, 0x5f920
image->regions[1]: 0x2c000, 0x2db08
image->regions[2]: 0x2c000, 0x5de18
image->dynamic_ptr: 0x000000000002cda8
image->regions[0]: 0x0, 0x2b936
image->regions[1]: 0x2c000, 0x2db08
_user_map_file(0x0)
cache_prefetch_vnode(0x0, 0x2c000)
"/boot/system/lib/libicutu.so.57.2" at 0xfffffff2088df000, 0x2c000 bytes (read-only)
_user_map_file(0x2c000)
cache_prefetch_vnode(0x2c000, 0x2000)
"/boot/system/lib/libicutu.so.57.2" at 0xfffffff20890b000, 0x2000 bytes (rw)
cleared 0xfffffff20890cb08 and the following 0x4f8 bytes
malloc(72) -> 0xffffffc50dad0278
runtime_loader: search_container_in_path_list() libicuuc.so.57 in %A/lib:/boot/system/non-packaged/lib:/boot/system/lib
runtime_loader: try_open_container(): /boot/system/servers/lib/libicuuc.so.57
runtime_loader: try_open_container(): /boot/system/non-packaged/lib/libicuuc.so.57
runtime_loader: try_open_container(): /boot/system/lib/libicuuc.so.57
runtime_loader: open_executable(libicuuc.so.57): found at /boot/system/lib/libicuuc.so.57.2
malloc(1720) -> 0xffffffc50dad02c8
PT_LOAD: 0x0, 0x15f573
image->regions[0]: 0x0, 0x15f573
PT_LOAD: 0x160578, 0x1746c8
image->regions[1]: 0x160578, 0x174088
image->dynamic_ptr: 0x00000000001709c0
image->regions[0]: 0x0, 0x15f573
image->regions[1]: 0x160578, 0x174088
_user_map_file(0x0)
cache_prefetch_vnode(0x0, 0x160000)
"/boot/system/lib/libicuuc.so.57.2" at 0xffffffcd876fa000, 0x160000 bytes (read-only)
_user_map_file(0x15f000)
cache_prefetch_vnode(0x15f000, 0x15000)
"/boot/system/lib/libicuuc.so.57.2" at 0xffffffcd8785a000, 0x15000 bytes (rw)
cleared 0xffffffcd8786e088 and the following 0xf78 bytes
malloc(72) -> 0xffffffc50dad0988
runtime_loader: search_container_in_path_list() libz.so.1 in %A/lib:/boot/system/non-packaged/lib:/boot/system/lib
runtime_loader: try_open_container(): /boot/system/servers/lib/libz.so.1
runtime_loader: try_open_container(): /boot/system/non-packaged/lib/libz.so.1
runtime_loader: try_open_container(): /boot/system/lib/libz.so.1
runtime_loader: open_executable(libz.so.1): found at /boot/system/lib/libz.so.1.2.11
malloc(1720) -> 0xffffffc50dad09d8
PT_LOAD: 0x0, 0x1af5c
image->regions[0]: 0x0, 0x1af5c
PT_LOAD: 0x1b000, 0x1b4e0
image->regions[1]: 0x1b000, 0x1b4a0
image->dynamic_ptr: 0x000000000001b170
image->regions[0]: 0x0, 0x1af5c
image->regions[1]: 0x1b000, 0x1b4a0
_user_map_file(0x0)
cache_prefetch_vnode(0x0, 0x1b000)
"/boot/system/lib/libz.so.1.2.11" at 0xffffffd710904000, 0x1b000 bytes (read-only)
_user_map_file(0x1b000)
cache_prefetch_vnode(0x1b000, 0x1000)
"/boot/system/lib/libz.so.1.2.11" at 0xffffffd71091f000, 0x1000 bytes (rw)
cleared 0xffffffd71091f4a0 and the following 0xb60 bytes
malloc(360) -> 0xffffffc50dad1098
malloc(32) -> 0xffffffc50dad1208
runtime_loader: search_container_in_path_list() libbsd.so in %A/lib:/boot/system/non-packaged/lib:/boot/system/lib
runtime_loader: try_open_container(): /boot/system/servers/lib/libbsd.so
runtime_loader: try_open_container(): /boot/system/non-packaged/lib/libbsd.so
runtime_loader: try_open_container(): /boot/system/lib/libbsd.so
runtime_loader: open_executable(libbsd.so): found at /boot/system/lib/libbsd.so
malloc(1720) -> 0xffffffc50dad1230
PT_LOAD: 0x0, 0x4f90
image->regions[0]: 0x0, 0x4f90
PT_LOAD: 0x5000, 0x5550
image->regions[1]: 0x5000, 0x5468
image->dynamic_ptr: 0x0000000000005038
image->regions[0]: 0x0, 0x4f90
image->regions[1]: 0x5000, 0x5468
_user_map_file(0x0)
cache_prefetch_vnode(0x0, 0x5000)
"/boot/system/lib/libbsd.so" at 0xffffffd25b2cf000, 0x5000 bytes (read-only)
_user_map_file(0x5000)
cache_prefetch_vnode(0x5000, 0x1000)
"/boot/system/lib/libbsd.so" at 0xffffffd25b2d4000, 0x1000 bytes (rw)
cleared 0xffffffd25b2d4468 and the following 0xb98 bytes
malloc(96) -> 0xffffffc50dad18f0
malloc(80) -> 0xffffffc50dad1958
malloc(24) -> 0xffffffc50dad19b0
malloc(24) -> 0xffffffc50dad19d0
malloc(24) -> 0xffffffc50dad19f0
malloc(32) -> 0xffffffc50dad1a10
malloc(40) -> 0xffffffc50dad1a38
malloc(40) -> 0xffffffc50dad1a68
malloc(24) -> 0xffffffc50dad1a98
malloc(24) -> 0xffffffc50dad1ab8
malloc(24) -> 0xffffffc50dad1ad8
malloc(112) -> 0xffffffc50dad1af8
malloc(1512) -> 0xffffffc50dad1b70
malloc(1512) -> 0xffffffc50dad2160
malloc(24) -> 0xffffffc50dad2750
free(0xffffffc50dad2750)
free(0xffffffc50dad1b70)
free(0xffffffc50dad2160)
malloc(21632) -> 0xffffffc50dad1b70
malloc(21632) -> 0xffffffd3c06ef008
malloc(344) -> 0xffffffd3c06f4490
free(0xffffffd3c06f4490)
free(0xffffffc50dad1b70)
free(0xffffffd3c06ef008)
malloc(48000) -> 0xffffffd629f63008
malloc(48000) -> 0xffffffd66cbab008
malloc(752) -> 0xffffffd629f6eb90
free(0xffffffd629f6eb90)
free(0xffffffd629f63008)
free(0xffffffd66cbab008)
malloc(64) -> 0xffffffd3c06ef008
malloc(64) -> 0xffffffd3c06ef050
malloc(24) -> 0xffffffd3c06ef098
free(0xffffffd3c06ef098)
free(0xffffffd3c06ef008)
free(0xffffffd3c06ef050)
malloc(26816) -> 0xffffffd3c06ef008
malloc(26816) -> 0xffffffc50dad1b70
malloc(424) -> 0xffffffd3c06f58d0
free(0xffffffd3c06f58d0)
free(0xffffffd3c06ef008)
free(0xffffffc50dad1b70)
malloc(61616) -> 0xffffffd629f63008
malloc(61616) -> 0xffffffd66cbab008
malloc(968) -> 0xffffffd629f720c0
free(0xffffffd629f720c0)
free(0xffffffd629f63008)
free(0xffffffd66cbab008)
malloc(1272) -> 0xffffffd3c06ef008
malloc(1272) -> 0xffffffd3c06ef508
malloc(24) -> 0xffffffd3c06efa08
free(0xffffffd3c06efa08)
free(0xffffffd3c06ef008)
free(0xffffffd3c06ef508)
malloc(4360) -> 0xffffffd3c06ef008
malloc(4360) -> 0xffffffd3c06f0118
malloc(72) -> 0xffffffd3c06f1228
free(0xffffffd3c06f1228)
free(0xffffffd3c06ef008)
free(0xffffffd3c06f0118)
malloc(944) -> 0xffffffd3c06ef008
malloc(944) -> 0xffffffd3c06ef3c0
malloc(24) -> 0xffffffd3c06ef778
free(0xffffffd3c06ef778)
free(0xffffffd3c06ef008)
free(0xffffffd3c06ef3c0)
malloc(97464) -> 0xffffffd6e35d9008
malloc(97464) -> 0xffffffd703247008
malloc(1528) -> 0xffffffd3c06ef008
free(0xffffffd3c06ef008)
free(0xffffffd6e35d9008)
free(0xffffffd703247008)
malloc(1056) -> 0xffffffd3c06ef008
malloc(1056) -> 0xffffffd3c06ef430
malloc(24) -> 0xffffffd3c06ef858
free(0xffffffd3c06ef858)
free(0xffffffd3c06ef008)
free(0xffffffd3c06ef430)
malloc(5040) -> 0xffffffd3c06ef008
malloc(5040) -> 0xffffffd3c06f03c0
malloc(80) -> 0xffffffd3c06f1778
free(0xffffffd3c06f1778)
free(0xffffffd3c06ef008)
free(0xffffffd3c06f03c0)
malloc(14800) -> 0xffffffd3c06ef008
malloc(14800) -> 0xffffffd3c06f29e0
malloc(232) -> 0xffffffd3c06f63b8
free(0xffffffd3c06f63b8)
free(0xffffffd3c06ef008)
free(0xffffffd3c06f29e0)
malloc(8872) -> 0xffffffd3c06ef008
malloc(8872) -> 0xffffffd3c06f12b8
malloc(144) -> 0xffffffd3c06f3568
free(0xffffffd3c06f3568)
free(0xffffffd3c06ef008)
free(0xffffffd3c06f12b8)
free(0xffffffc50dad1af8)
malloc(112) -> 0xffffffd3c06ef008
146: init dependencies
146:  init: libgcc_s.so.1
146:  init: libroot.so
vm_soft_fault: va 0x0 not covered by area in address space
vm_page_fault: vm_soft_fault returned error 'Bad address' on fault at 0x0, ip 0xffffffd3554513ba, write 0, user 1, thread 0x92
PANIC: user_debug_exception_occurred(2, 11)
Welcome to Kernel Debugging Land...
Thread 146 "launch_daemon" running on CPU 0
Stack:
FP: 0x80b305d0, PC: <kernel_riscv64> _ZL20kernel_debugger_loopPKcS0_Pvi + 243
FP: 0x80b30640, PC: <kernel_riscv64> _ZL24kernel_debugger_internalPKcS0_Pvi + 131
FP: 0x80b30680, PC: <kernel_riscv64> panic + 93
FP: 0x80b30720, PC: <kernel_riscv64> user_debug_exception_occurred + 31
FP: 0x80b30810, PC: <kernel_riscv64> vm_page_fault + 405
FP: 0x80b308f0, PC: <kernel_riscv64> STrap + 537
FP: 0x80b309f0, PC: <kernel_riscv64> SVecU + 111
FP: 0xffffffed13a65f60, PC: <libroot.so_seg0ro> 0x363b9
FP: 0xffffffed13a65fc0, PC: <runtime_loader_seg0ro> 0xb751
FP: 0xffffffed13a66000, PC: <runtime_loader_seg0ro> 0x11f73
FP: 0x0, PC: <kernel_riscv64> _ZL15enter_userspacePN7BKernel6ThreadEP24UserThreadEntryArguments + 67
kdebug> 
11 Likes

I already expect full blown desktop screenshot everytime i open this topic :slight_smile: you made a big progress, keep up the good job!

13 Likes

This port seems to be already most progressing non-x86 platform port for now. I started to implement libroot.so architecture-specific parts that a still stubs for all architectures except x86.

15 Likes

libroot.so initialization passes, but it currently crash in initialization of libstdc++.so.6.0.25. Crash is at following position (argument 8 seems to be NULL and it is dereferenced). 3rd party libraries are annoying. Also it is compiled with -fomit-frame-pointer that breaks stack trace.

<libstdc++.so.6.0.25> _ZNK10__cxxabiv121__vmi_class_type_info12__do_dyncastElNS_17__class_type_info10__sub_kindEPKS1_PKvS4_S6_RNS1_16__dyncast_resultE

Log:

arch_thread_init_kthread_stack(0x000000008129b400(launch_daemon), 0x0000000080b2d000, 0x0000000080b31fb0, <kernel_riscv64> _ZL19common_thread_entryPv + 0, 0x0000000080b31fb0)
arch_thread_init_tls(0x000000008129b400(launch_daemon))
  thread->user_local_storage: 0xffffffed13a66000)
arch_thread_enter_uspace(0x000000008129b400(launch_daemon), 0xfffffff214c56e24, 0xffffffed13a66200, 0xffffffe99170e000)
  sscratch: 0x8129b780, 0x8129b780
runtime_loader entry point
TLS: 0xffffffed13a66000
image->regions[1]: 31000, 345c8
image->regions[1]: 2b8178, 2e5038
image->regions[1]: 31000, 331b0
image->regions[2]: 31000, 36d50
image->regions[1]: 5b5a0, 5fa18
image->regions[1]: 160650, 16ca08
image->regions[2]: 160650, 168378
image->regions[1]: de000, eb4c8
image->regions[2]: de000, 122480
image->regions[1]: 10000, 103e0
image->regions[1]: 18807b8, 1880928
image->regions[1]: 219448, 22d708
image->regions[1]: e010, f380
image->regions[1]: 2c000, 2db08
image->regions[2]: 2c000, 5de18
image->regions[1]: 160578, 174088
image->regions[1]: 1b000, 1b4a0
image->regions[1]: 5000, 5468
unhandled relocation type R_RISCV_TLS_DTPMOD64
Last message repeated 2 times.
unhandled relocation type R_RISCV_TLS_DTPREL64
unhandled relocation type R_RISCV_TLS_DTPMOD64
unhandled relocation type R_RISCV_TLS_DTPREL64
+init: libgcc_s.so.1
(1)
(2)
(3)
(4)
-init: libgcc_s.so.1
+init: libroot.so
(1)
(2)
init_array[0]: 0xfffffff8fe470136
init_array[1]: 0xfffffff8fe470100
init_array[2]: 0xfffffff8fe4701d0
init_array[3]: 0xfffffff8fe47019a
init_array[4]: 0xfffffff8fe470164
init_array[5]: 0xfffffff8fe470206
init_array[6]: 0xfffffff8fe4702ac
(3)
(4)
-init: libroot.so
+init: libstdc++.so.6
(1)
(2)
init_array[0]: 0xffffffe358ed8bac
init_array[1]: 0xffffffe358ed8c20
init_array[2]: 0xffffffe358ed8c92
init_array[3]: 0xffffffe358ed8dbe
init_array[4]: 0xffffffe358ed8e8e
init_array[5]: 0xffffffe358ed8ece
init_array[6]: 0xffffffe358ed8f70
init_array[7]: 0xffffffe358ed9012
init_array[8]: 0xffffffe358ed9104
(3)
(4)
-init: libstdc++.so.6
+init: libicudata.so.57
(1)
(2)
(3)
(4)
-init: libicudata.so.57
+init: libicuuc.so.57
(1)
(2)
(3)
(4)
-init: libicuuc.so.57
+init: libicui18n.so.57
(1)
(2)
init_array[0]: 0xffffffc4c9c44760
(3)
(4)
-init: libicui18n.so.57
+init: libicuio.so.57
(1)
(2)
(3)
(4)
-init: libicuio.so.57
+init: libicutu.so.57
(1)
(2)
init_array[0]: 0xfffffff2088ec310
vm_soft_fault: va 0x0 not covered by area in address space
vm_page_fault: vm_soft_fault returned error 'Bad address' on fault at 0x18, ip 0xffffffe358edc8ec, write 0, user 1, thread 0x92
PANIC: user_debug_exception_occurred(2, 11)
Welcome to Kernel Debugging Land...
Thread 146 "launch_daemon" running on CPU 0
Stack:
FP: 0x80b315a0, PC: <kernel_riscv64> _ZL20kernel_debugger_loopPKcS0_Pvi + 243
FP: 0x80b31610, PC: <kernel_riscv64> _ZL24kernel_debugger_internalPKcS0_Pvi + 131
FP: 0x80b31650, PC: <kernel_riscv64> panic + 93
FP: 0x80b316f0, PC: <kernel_riscv64> user_debug_exception_occurred + 31
FP: 0x80b317e0, PC: <kernel_riscv64> vm_page_fault + 405
FP: 0x80b318c0, PC: <kernel_riscv64> STrap + 539
FP: 0x80b319c0, PC: <kernel_riscv64> SVecU + 109
FP: 0xffffffe358fb2468, PC: <libstdc++.so.6.0.25_seg0ro> 0x9d8eb
FP: 0x43, PC: 0xffffffffffffffff
kdebug> 
7 Likes

I feel that it is easier to throw away ICU than investigating why it crash.

2 Likes

I removed ICU dependency from libbe.so, but crash seems to be the same. It seems to crash when calling constructor of global variable std::__ioinit.

UPDATE: I found that std::__ioinit is inserted by #include <iostream>. Deleting #include <iostream> from libbe.so code fixes issue. It seems to be never actually used.

arch_thread_init_kthread_stack(0x000000008129b400(launch_daemon), 0x0000000080b2d000, 0x0000000080b31fb0, <kernel_riscv64> _ZL19common_thread_entryPv + 0, 0x0000000080b31fb0)
arch_thread_init_tls(0x000000008129b400(launch_daemon))
  thread->user_local_storage: 0xffffffed13a66000)
arch_thread_enter_uspace(0x000000008129b400(launch_daemon), 0xfffffff214c56e24, 0xffffffed13a66200, 0xffffffe99170e000)
  sscratch: 0x8129b780, 0x8129b780
runtime_loader entry point
TLS: 0xffffffed13a66000
image->regions[1]: 31000, 345c8
image->regions[1]: 2d7000, 303730
image->regions[1]: 31000, 331b0
image->regions[2]: 31000, 36d50
image->regions[1]: 5b5a0, 5fa18
image->regions[1]: 160650, 16ca08
image->regions[2]: 160650, 168378
image->regions[1]: de000, eb4c8
image->regions[2]: de000, 122480
image->regions[1]: 10000, 103e0
image->regions[1]: 1b000, 1b4a0
image->regions[1]: 5000, 5468
image->regions[1]: 18807b8, 1880928
image->regions[1]: 219448, 22d708
image->regions[1]: e010, f380
image->regions[1]: 2c000, 2db08
image->regions[2]: 2c000, 5de18
image->regions[1]: 160578, 174088
unhandled relocation type R_RISCV_TLS_DTPMOD64
Last message repeated 2 times.
unhandled relocation type R_RISCV_TLS_DTPREL64
unhandled relocation type R_RISCV_TLS_DTPMOD64
unhandled relocation type R_RISCV_TLS_DTPREL64
+init: libgcc_s.so.1
(1)
(2)
(3)
(4)
-init: libgcc_s.so.1
+init: libroot.so
(1)
(2)
init_array[0]: 0xfffffff8fe470136
init_array[1]: 0xfffffff8fe470100
init_array[2]: 0xfffffff8fe4701d0
init_array[3]: 0xfffffff8fe47019a
init_array[4]: 0xfffffff8fe470164
init_array[5]: 0xfffffff8fe470206
init_array[6]: 0xfffffff8fe4702ac
(3)
(4)
-init: libroot.so
+init: libstdc++.so.6
(1)
(2)
init_array[0]: 0xffffffe3df587bac
init_array[1]: 0xffffffe3df587c20
init_array[2]: 0xffffffe3df587c92
init_array[3]: 0xffffffe3df587dbe
init_array[4]: 0xffffffe3df587e8e
init_array[5]: 0xffffffe3df587ece
init_array[6]: 0xffffffe3df587f70
init_array[7]: 0xffffffe3df588012
init_array[8]: 0xffffffe3df588104
(3)
(4)
-init: libstdc++.so.6
+init: libz.so.1
(1)
(2)
(3)
(4)
-init: libz.so.1
+init: libbe.so
(1)
(2)
init_array[0]: 0xffffffe6b1a7743a
init_array[1]: 0xffffffe6b1a77404
init_array[2]: 0xffffffe6b1a773c6
init_array[3]: 0xffffffe6b1a77356
init_array[4]: 0xffffffe6b1a77620
init_array[5]: 0xffffffe6b1a775b2
init_array[6]: 0xffffffe6b1a77580
init_array[7]: 0xffffffe6b1a7754a
vm_soft_fault: va 0x0 not covered by area in address space
vm_page_fault: vm_soft_fault returned error 'Bad address' on fault at 0x18, ip 0xffffffe3df58b8ec, write 0, user 1, thread 0x92
PANIC: user_debug_exception_occurred(2, 11)
Welcome to Kernel Debugging Land...
Thread 146 "launch_daemon" running on CPU 0
Stack:
FP: 0x80b315a0, PC: <kernel_riscv64> _ZL20kernel_debugger_loopPKcS0_Pvi + 243
FP: 0x80b31610, PC: <kernel_riscv64> _ZL24kernel_debugger_internalPKcS0_Pvi + 131
FP: 0x80b31650, PC: <kernel_riscv64> panic + 93
FP: 0x80b316f0, PC: <kernel_riscv64> user_debug_exception_occurred + 31
FP: 0x80b317e0, PC: <kernel_riscv64> vm_page_fault + 405
FP: 0x80b318c0, PC: <kernel_riscv64> STrap + 539
FP: 0x80b319c0, PC: <kernel_riscv64> SVecU + 109
FP: 0xffffffe3df661468, PC: <libstdc++.so.6.0.25_seg0ro> 0x9d8eb
FP: 0x43, PC: 0xffffffffffffffff
7 Likes

Dependencies are loaded and initalized. launch_daemon entry point is called. Something is broken then launch_daemon created new thread.

UPDATE: seems to unrelated to threads, someone is attempting to execute heap memory.

arch_thread_init_kthread_stack(0x000000008129b400(launch_daemon), 0x0000000080b2d000, 0x0000000080b31fb0, <kernel_riscv64> _ZL19common_thread_entryPv + 0, 0x0000000080b31fb0)
arch_thread_init_tls(0x000000008129b400(launch_daemon))
  thread->user_local_storage: 0xffffffed13a66000)
arch_thread_enter_uspace(0x000000008129b400(launch_daemon), 0xfffffff214c56e24, 0xffffffed13a66200, 0xffffffe99170e000)
  sscratch: 0x8129b780, 0x8129b780
runtime_loader entry point
TLS: 0xffffffed13a66000
image->regions[1]: 31000, 345c8
image->regions[1]: 2d70d8, 3037c0
image->regions[1]: 31000, 331b0
image->regions[2]: 31000, 36d50
image->regions[1]: 600f0, 644e8
image->regions[1]: 160650, 16ca08
image->regions[2]: 160650, 168378
image->regions[1]: de000, eb4c8
image->regions[2]: de000, 122480
image->regions[1]: 10000, 103e0
image->regions[1]: 1b000, 1b4a0
image->regions[1]: 6428, 6890
unhandled relocation type R_RISCV_TLS_DTPMOD64
Last message repeated 2 times.
unhandled relocation type R_RISCV_TLS_DTPREL64
unhandled relocation type R_RISCV_TLS_DTPMOD64
unhandled relocation type R_RISCV_TLS_DTPREL64
INIT: launch_daemon started
+init: libgcc_s.so.1
(1)
(2)
(3)
(4)
-init: libgcc_s.so.1
+init: libroot.so
(1)
(2)
init_array[0]: 0xfffffffe01b7c136
init_array[1]: 0xfffffffe01b7c100
init_array[2]: 0xfffffffe01b7c1d0
init_array[3]: 0xfffffffe01b7c19a
init_array[4]: 0xfffffffe01b7c164
init_array[5]: 0xfffffffe01b7c206
init_array[6]: 0xfffffffe01b7c2ac
(3)
(4)
-init: libroot.so
+init: libstdc++.so.6
(1)
(2)
init_array[0]: 0xffffffe3df587bac
init_array[1]: 0xffffffe3df587c20
init_array[2]: 0xffffffe3df587c92
init_array[3]: 0xffffffe3df587dbe
init_array[4]: 0xffffffe3df587e8e
init_array[5]: 0xffffffe3df587ece
init_array[6]: 0xffffffe3df587f70
init_array[7]: 0xffffffe3df588012
init_array[8]: 0xffffffe3df588104
(3)
(4)
-init: libstdc++.so.6
+init: libz.so.1
(1)
(2)
(3)
(4)
-init: libz.so.1
+init: libbe.so
(1)
(2)
init_array[0]: 0xffffffe6b1a7729a
init_array[1]: 0xffffffe6b1a77264
init_array[2]: 0xffffffe6b1a77226
init_array[3]: 0xffffffe6b1a771b6
init_array[4]: 0xffffffe6b1a7744a
init_array[5]: 0xffffffe6b1a773dc
init_array[6]: 0xffffffe6b1a773aa
init_array[7]: 0xffffffe6b1a77374
init_array[8]: 0xffffffe6b1a77306
init_array[9]: 0xffffffe6b1a772d0
init_array[10]: 0xffffffe6b1a7749c
init_array[11]: 0xffffffe6b1a77466
init_array[12]: 0xffffffe6b1a774d2
(3)
(4)
-init: libbe.so
+init: libbsd.so
(1)
(2)
(3)
(4)
-init: libbsd.so
+init: libnetwork.so
(1)
(2)
init_array[0]: 0xffffffd2dc86fc90
(3)
(4)
-init: libnetwork.so
+init: libbnetapi.so
(1)
(2)
init_array[0]: 0xffffffd1dfbf4540
init_array[1]: 0xffffffd1dfbf45b8
init_array[2]: 0xffffffd1dfbf45ee
init_array[3]: 0xffffffd1dfbf4636
(3)
(4)
-init: libbnetapi.so
+init: _APP_
(1)
(2)
init_array[0]: 0xffffffe8d0f05214
init_array[1]: 0xffffffe8d0f0524c
init_array[2]: 0xffffffe8d0f05308
(3)
(4)
-init: _APP_
runtime_loader: call entry point
launch_daemon entry point
arch_thread_init_kthread_stack(0x000000008129c180(main worker), 0x000000008098a000, 0x000000008098efb0, <kernel_riscv64> _ZL19common_thread_entryPv + 0, 0x000000008098efb0)
load_driver_settings("/safemode/")
load_driver_settings("kernel")
instruction fetch attempted on execute-protected area 0x175 at 0xfffffff72151b000
vm_page_fault: vm_soft_fault returned error 'Permission denied' on fault at 0xfffffff72151b0c8, ip 0xfffffff72151b0c8, write 0, user 1, thread 0x92
PANIC: user_debug_exception_occurred(2, 11)
Welcome to Kernel Debugging Land...
Thread 146 "launch_daemon" running on CPU 0
Stack:
FP: 0x80b315a0, PC: <kernel_riscv64> _ZL20kernel_debugger_loopPKcS0_Pvi + 243
FP: 0x80b31610, PC: <kernel_riscv64> _ZL24kernel_debugger_internalPKcS0_Pvi + 131
FP: 0x80b31650, PC: <kernel_riscv64> panic + 93
FP: 0x80b316f0, PC: <kernel_riscv64> user_debug_exception_occurred + 31
FP: 0x80b317e0, PC: <kernel_riscv64> vm_page_fault + 405
FP: 0x80b318c0, PC: <kernel_riscv64> STrap + 539
FP: 0x80b319c0, PC: <kernel_riscv64> SVecU + 109
FP: 0x0, PC: <heap> 0x170c7
7 Likes

I solved mystery with strtoull(). It was another miscompilation caused by version declaration (__asm__(".symver ...")). In this case this is fstat(). Currently .symver directive should be never used because it cause disastrous results such as jumping to some random code locations and corrupting stack. Hopefully BeOS compatibility in RISC-V is not needed because BeOS was never run on RISC-V.

13 Likes

Userland symbol name resolving is working, but it is extremely slow (I use default kernel symbol name resolver).

Also after removing all .symver that cause miscompilation, launch_daemon is continiously executing without crashes and it now switching user threads. But I currently don’t know what it exactly doing, it supposed to enter idle loop bylocking on something, but it is continuously invoking syscalls.

I enabled generic user_memcpy() etc. implementation found in arch/generic/user_memory.h, it works perfectly and it allows to avoid recursive kernel crashes when displaying stack trace of corrupted stack.

STrap(exception uEcall)
  sstatus: (ie: {u}, pie: {s}, spp: u, fs: 3, sum: 1)
  sepc: <libroot.so> _kern_find_thread + 4
  sie: {sExtern}
  sip: {}
  sscratch: 0x32, 0x8129b780
  tp: 0x8129b400(launch_daemon)
  trap level: 0x1
  syscall 50(_kern_find_thread)
Stack:
FP: 0x80b318c0, PC: <kernel_riscv64> STrap + 1491
FP: 0x80b319c0, PC: <kernel_riscv64> SVecU + 109
FP: 0xffffffed13a655a0, PC: <libroot.so> _kern_find_thread + 3
FP: 0xffffffed13a655d0, PC: <libroot.so> realloc + 97
FP: 0xffffffed13a65600, PC: <libbe.so> _ZN7BString7_ResizeEi + 65
FP: 0xffffffed13a65620, PC: <libbe.so> _ZN7BString13_MakeWritableEib + 103
FP: 0xffffffed13a65650, PC: <libbe.so> _ZN7BString9_DoAppendEPKci + 51
FP: 0xffffffed13a65670, PC: <libbe.so> _ZN7BStringpLEPKc + 53
FP: 0xffffffed13a65720, PC: <libbe.so> _ZN8BPrivate14DefaultCatalog25ReadFromStandardLocationsEv + 167
FP: 0xffffffed13a65800, PC: <libbe.so> _ZN8BPrivate14DefaultCatalogC1ERK9entry_refPKcj + 327
FP: 0xffffffed13a65830, PC: <libbe.so> _ZN8BPrivate14DefaultCatalog11InstantiateERK9entry_refPKcj + 51
FP: 0xffffffed13a65970, PC: <libbe.so> _ZNK8BPrivate19MutableLocaleRoster11LoadCatalogERK9entry_refPKci + 213
FP: 0xffffffed13a659c0, PC: <libbe.so> _ZN8BCatalog5SetToERK9entry_refPKcj + 71
FP: 0xffffffed13a65ea0, PC: <libbe.so> _ZNK8BPrivate19MutableLocaleRoster17LoadSystemCatalogEP8BCatalog + 189
FP: 0xffffffed13a65f60, PC: </boot/system/runtime_loader> 0xb001
FP: 0xffffffed13a65fc0, PC: </boot/system/runtime_loader> 0xb783
FP: 0xffffffed13a66000, PC: </boot/system/runtime_loader> 0x11ef9
FP: 0x80b319f0, PC: <kernel_riscv64> arch_thread_enter_userspace + 161
FP: 0x80b31a30, PC: <kernel_riscv64> _ZL15enter_userspacePN7BKernel6ThreadEP24UserThreadEntryArguments + 67
FP: 0x80b31a90, PC: <kernel_riscv64> thread_enter_userspace_new_team + 53
FP: 0x80b31f80, PC: <kernel_riscv64> _ZL33team_create_thread_start_internalPv + 547
FP: 0x80b31f90, PC: <kernel_riscv64> _ZL24team_create_thread_startPv + 11
FP: 0x80b31fb0, PC: <kernel_riscv64> _ZL19common_thread_entryPv + 49
FP: 0x0, PC: <kernel_riscv64> arch_thread_entry + 3
8 Likes

app_server is running! I am surprised. We are pretty close to get running desktop.

arch_thread_context_switch(0x000000008129af80(virtio scheduler 1), 0x0000000081299480(app_server))
arch_thread_context_switch(0x0000000081299480(app_server), 0x0000000081299900(mount_server))
arch_thread_context_switch(0x0000000081299900(mount_server), 0x000000008129c180(main worker))
arch_thread_context_switch(0x000000008129c180(main worker), 0x000000008129af80(virtio scheduler 1))
switch_sem_etc()
Last message repeated 2 times.
arch_thread_context_switch(0x000000008129af80(virtio scheduler 1), 0x000000008129bd00(virtio notifier 1))
arch_thread_context_switch(0x000000008129bd00(virtio notifier 1), 0x000000008129c180(main worker))
arch_thread_context_switch(0x000000008129c180(main worker), 0x000000008129af80(virtio scheduler 1))
switch_sem_etc()
arch_thread_context_switch(0x000000008129af80(virtio scheduler 1), 0x000000008129bd00(virtio notifier 1))
arch_thread_context_switch(0x000000008129bd00(virtio notifier 1), 0x000000008129c180(main worker))
arch_thread_context_switch(0x000000008129c180(main worker), 0x000000008129af80(virtio scheduler 1))
switch_sem_etc()
arch_thread_context_switch(0x000000008129af80(virtio scheduler 1), 0x000000008129c180(main worker))
arch_thread_context_switch(0x000000008129c180(main worker), 0x000000008129af80(virtio scheduler 1))
switch_sem_etc()
arch_thread_context_switch(0x000000008129af80(virtio scheduler 1), 0x000000008129c180(main worker))
arch_vm_translation_map_create_map()
_map: 0x00000000812234c8
arch_thread_init_kthread_stack(0x0000000081299000(net_server), 0x0000000080750000, 0x0000000080754fb0, <kernel_riscv64> _ZL19common_thread_entryPv + 0, 0x0000000080754fb0)
arch_thread_context_switch(0x000000008129c180(main worker), 0x0000000081299000(net_server))
arch_thread_init_tls(0x0000000081299000(net_server))
  thread->user_local_storage: 0xffffffdb373f3000)
arch_thread_enter_uspace(0x0000000081299000(net_server), 0xffffffdae6340e24, 0xffffffdb373f3200, 0xffffffff2f447000)
  sscratch: 0x81299380, 0x81299380
runtime_loader entry point
TLS: 0xffffffdb373f3000
image->regions[1]: 17288, 18708
arch_thread_context_switch(0x0000000081299000(net_server), 0x000000008129af80(virtio scheduler 1))
switch_sem_etc()
switch_sem_etc()
arch_thread_context_switch(0x000000008129af80(virtio scheduler 1), 0x000000008129bd00(virtio notifier 1))
arch_thread_context_switch(0x000000008129bd00(virtio notifier 1), 0x0000000081299000(net_server))
image->regions[1]: 2d70d8, 3037c0
image->regions[1]: 33000, 351b0
image->regions[2]: 33000, 38d50
image->regions[1]: 600f0, 644e8
image->regions[1]: 160650, 16ca08
image->regions[2]: 160650, 168378
image->regions[1]: de000, eb550
image->regions[2]: de000, 122480
image->regions[1]: 10000, 103e0
image->regions[1]: 1b000, 1b4a0
image->regions[1]: 6428, 6890
unhandled relocation type R_RISCV_TLS_DTPMOD64
Last message repeated 2 times.
unhandled relocation type R_RISCV_TLS_DTPREL64
unhandled relocation type R_RISCV_TLS_DTPMOD64
unhandled relocation type R_RISCV_TLS_DTPREL64
arch_thread_context_switch(0x0000000081299000(net_server), 0x000000008129c180(main worker))
Worker::Process(): step
Worker::Run("x-vnd.haiku-package_daemon")
Job::_Launch("(null)")
arch_thread_context_switch(0x000000008129c180(main worker), 0x000000008129af80(virtio scheduler 1))
switch_sem_etc()
arch_thread_context_switch(0x000000008129af80(virtio scheduler 1), 0x0000000081299000(net_server))
+init: libgcc_s.so.1
(1)
(2)
(3)
(4)
-init: libgcc_s.so.1
+init: libroot.so
(1)
(2)
init_array[0]: 0xffffffecff8510a6
init_array[1]: 0xffffffecff851070
init_array[2]: 0xffffffecff851140
init_array[3]: 0xffffffecff85110a
init_array[4]: 0xffffffecff8510d4
init_array[5]: 0xffffffecff851176
init_array[6]: 0xffffffecff85121c
(3)
(4)
-init: libroot.so
+init: libstdc++.so.6
(1)
(2)
init_array[0]: 0xfffffff553678bac
init_array[1]: 0xfffffff553678c20
init_array[2]: 0xfffffff553678c92
init_array[3]: 0xfffffff553678dbe
init_array[4]: 0xfffffff553678e8e
init_array[5]: 0xfffffff553678ece
init_array[6]: 0xfffffff553678f70
init_array[7]: 0xfffffff553679012
init_array[8]: 0xfffffff553679104
(3)
(4)
-init: libstdc++.so.6
+init: libz.so.1
(1)
(2)
(3)
(4)
-init: libz.so.1
+init: libbe.so
arch_thread_context_switch(0x0000000081299000(net_server), 0x000000008129b400(launch_daemon))
arch_thread_context_switch(0x000000008129b400(launch_daemon), 0x000000008129c180(main worker))
arch_thread_context_switch(0x000000008129c180(main worker), 0x000000008129af80(virtio scheduler 1))
switch_sem_etc()
arch_thread_context_switch(0x000000008129af80(virtio scheduler 1), 0x000000008129bd00(virtio notifier 1))
arch_thread_context_switch(0x000000008129bd00(virtio notifier 1), 0x000000008129c180(main worker))
arch_thread_context_switch(0x000000008129c180(main worker), 0x000000008129af80(virtio scheduler 1))
switch_sem_etc()
arch_thread_context_switch(0x000000008129af80(virtio scheduler 1), 0x000000008129bd00(virtio notifier 1))
arch_thread_context_switch(0x000000008129bd00(virtio notifier 1), 0x0000000081299480(app_server))
image->regions[1]: 13e88, 14f28
arch_thread_context_switch(0x0000000081299480(app_server), 0x000000008129af80(virtio scheduler 1))
switch_sem_etc()
switch_sem_etc()
arch_thread_context_switch(0x000000008129af80(virtio scheduler 1), 0x000000008129bd00(virtio notifier 1))
arch_thread_context_switch(0x000000008129bd00(virtio notifier 1), 0x000000008129c180(main worker))
arch_thread_context_switch(0x000000008129c180(main worker), 0x000000008129af80(virtio scheduler 1))
switch_sem_etc()
arch_thread_context_switch(0x000000008129af80(virtio scheduler 1), 0x0000000081299480(app_server))
image->regions[1]: 2d70d8, 3037c0
image->regions[1]: 600f0, 644e8
arch_thread_context_switch(0x0000000081299480(app_server), 0x000000008129af80(virtio scheduler 1))
switch_sem_etc()
arch_thread_context_switch(0x000000008129af80(virtio scheduler 1), 0x000000008129c180(main worker))
arch_thread_context_switch(0x000000008129c180(main worker), 0x000000008129af80(virtio scheduler 1))
switch_sem_etc()
arch_thread_context_switch(0x000000008129af80(virtio scheduler 1), 0x0000000081299900(mount_server))
vm_page_fault: vm_soft_fault returned error 'Bad address' on fault at 0x4c00314148504c40, ip 0xfffffff9fb083ec8, write 0, user 1, thread 0x97
PANIC: user_debug_exception_occurred(2, 11)
Welcome to Kernel Debugging Land...
Thread 151 "mount_server" running on CPU 0
Stack:
FP: 0x80a74500, PC: <kernel_riscv64> debug_call_with_fault_handler.localalias.7 + 121
FP: 0x80a74590, PC: <kernel_riscv64> _ZL20kernel_debugger_loopPKcS0_Pvi + 251
FP: 0x80a74600, PC: <kernel_riscv64> _ZL24kernel_debugger_internalPKcS0_Pvi + 131
FP: 0x80a74640, PC: <kernel_riscv64> panic + 93
FP: 0x80a746e0, PC: <kernel_riscv64> user_debug_exception_occurred + 31
FP: 0x80a747d0, PC: <kernel_riscv64> vm_page_fault + 421
FP: 0x80a748c0, PC: <kernel_riscv64> STrap + 587
FP: 0x80a749c0, PC: <kernel_riscv64> SVecU + 109
FP: 0xffffffd08d0d28e0, PC: </boot/system/runtime_loader> 0xeec7
FP: 0xffffffd08d0d2970, PC: </boot/system/runtime_loader> 0xf2d3
FP: 0xffffffd08d0d29b0, PC: </boot/system/runtime_loader> 0x1065b
FP: 0xffffffd08d0d3ed0, PC: </boot/system/runtime_loader> 0xce7b
FP: 0xffffffd08d0d3f60, PC: </boot/system/runtime_loader> 0xb3e1
FP: 0xffffffd08d0d3fc0, PC: </boot/system/runtime_loader> 0xb751
FP: 0xffffffd08d0d4000, PC: </boot/system/runtime_loader> 0x11ef9
FP: 0x80a749f0, PC: <kernel_riscv64> arch_thread_enter_userspace + 161
FP: 0x80a74a30, PC: <kernel_riscv64> _ZL15enter_userspacePN7BKernel6ThreadEP24UserThreadEntryArguments + 67
FP: 0x80a74a90, PC: <kernel_riscv64> thread_enter_userspace_new_team + 53
FP: 0x80a74f80, PC: <kernel_riscv64> _ZL33team_create_thread_start_internalPv + 547
FP: 0x80a74f90, PC: <kernel_riscv64> _ZL24team_create_thread_startPv + 11
FP: 0x80a74fb0, PC: <kernel_riscv64> _ZL19common_thread_entryPv + 49
FP: 0x0, PC: <kernel_riscv64> arch_thread_entry + 3
initial commands: areas
addr                  id  base                size            protect lock  name
0x0000000081012f00     1  0x0000003000000000  0x0000001000000000   10    1  physical map area
0x0000000081012e40     2  0x0000000081800000  0x0000000000280000   30    7  page structures
0x0000000081012d80     3  0x0000000081000000  0x0000000000800000   30    7  slab area
0x0000000081012cc0     4  0x0000000080146000  0x0000000000010000   30    7  _kernel args_
0x0000000081012c00     5  0x0000000080590000  0x000000000002b000   30    7  _kernel args_
0x0000000081012b40     6  0x00000000805e5000  0x0000000000041000   30    7  _kernel args_
0x0000000081012a80     7  0x0000000080666000  0x000000000002e000   30    7  _kernel args_
0x00000000810129c0     8  0x000000008072b000  0x0000000000009000   30    7  _kernel args_
0x0000000081012900     9  0x0000000080740000  0x0000000000010000   30    7  _kernel args_
0x0000000081012840     a  0x00000000807bb000  0x0000000000010000   30    7  _kernel args_
0x0000000081012780     b  0x0000000080800000  0x0000000000010000   30    7  _kernel args_
0x00000000810126c0     c  0x00000000808c6000  0x000000000000e000   30    7  _kernel args_
0x0000000081012600     d  0x00000000808e1000  0x000000000001c000   30    7  _kernel args_
0x0000000081012540     e  0x000000008097a000  0x0000000000010000   30    7  _kernel args_
0x0000000081012480     f  0x00000000809d7000  0x0000000000010000   30    7  _kernel args_
0x00000000810123c0    10  0x0000000080a2b000  0x0000000000010000   30    7  _kernel args_
0x0000000081012300    11  0x0000000080ac3000  0x0000000000010000   30    7  _kernel args_
0x0000000081012240    12  0x0000000080b1d000  0x0000000000010000   30    7  _kernel args_
0x0000000081012180    13  0x0000000080c0a000  0x0000000000010000   30    7  _kernel args_
0x00000000810120c0    14  0x0000000080c43000  0x0000000000010000   30    7  _kernel args_
0x0000000081012000    15  0x0000000080256000  0x0000000000165000   50    7  kernel_riscv64_text
0x0000000081015f08    16  0x00000000803bb000  0x0000000000052000   30    7  kernel_riscv64_data
0x0000000081018600    37  0x00000000809eb000  0x0000000000003000   50    7  virtio_mmio_text
0x0000000081018540    38  0x00000000809ee000  0x0000000000001000   30    7  virtio_mmio_data
0x0000000081018480    39  0x00000000809e7000  0x0000000000003000   50    7  virtio_block_text
0x00000000810183c0    3a  0x00000000809ea000  0x0000000000001000   30    7  virtio_block_data
0x000000008101b3c8    4f  0x0000000080919000  0x000000000000a000   50    7  pci_text
0x000000008101b308    50  0x0000000080923000  0x0000000000001000   30    7  pci_data
0x000000008101d300    65  0x0000000080791000  0x0000000000006000   50    7  fdt_text
0x000000008101d240    66  0x0000000080797000  0x0000000000001000   30    7  fdt_data
0x0000000081020b48    6f  0x00000000806c0000  0x0000000000032000   50    7  bfs_text
0x0000000081020a88    70  0x00000000806f2000  0x0000000000002000   30    7  bfs_data
0x0000000081020548    77  0x0000000080c53000  0x0000000000005000   30    7  idle thread 1 kstack
0x0000000081020488    79  0x00000000ccccc000  0x0000000000040000    0    7  uninitialized heap memory
0x00000000810203c8    7a  0x00000000deadb000  0x0000000000040000    0    7  freed heap memory
0x0000000081020308    7b  0x00000000ccd0c000  0x0000000000010000   30    2  kdebug heap
0x0000000081020248    7c  0x00000000ccd1c000  0x00000000001d5000  130    2  vesa frame buffer
0x0000000081020188    7d  0x00000000ccef1000  0x0000000000160000   30    2  sem_table
0x00000000810200c8    7e  0x00000000cd051000  0x0000000000008000 2030    2  kernel_commpage
0x0000000081020008    7f  0x00000000cd059000  0x0000000000005000   b0    2  undertaker_2_kstack
0x0000000081261f00    80  0x00000000cd05e000  0x0000000000005000   b0    2  kernel daemon_3_kstack
0x0000000081261e40    81  0x00000000cd063000  0x0000000000005000   b0    2  resource resizer_4_kstack
0x0000000081261d80    82  0x00000000cd068000  0x0000000000005000   b0    2  page scrubber_5_kstack
0x0000000081261cc0    83  0x00000000cd06d000  0x0000000000005000   b0    2  page writer_6_kstack
0x0000000081261c00    84  0x00000000cd072000  0x0000000000005000   b0    2  page daemon_7_kstack
0x0000000081261b40    85  0x00000000cd077000  0x0000000000005000   b0    2  object cache resizer_8_kstack
0x0000000081261a80    86  0x00000000cd07c000  0x0000000000005000   b0    2  low resource manager_9_kstack
0x00000000812619c0    87  0x00000000cd081000  0x0000000000005000   b0    2  dpc: normal priority_10_kstack
0x0000000081261900    88  0x00000000cd086000  0x0000000000005000   b0    2  dpc: high priority_11_kstack
0x0000000081261840    89  0x00000000cd08b000  0x0000000000005000   b0    2  dpc: real-time priority_12_ksta
0x0000000081261780    8a  0x00000000cd090000  0x0000000000005000   b0    2  block notifier/writer_13_kstack
0x0000000081261600    8c  0x00000000cd800000  0x0000000000800000   10    1  slab area
0x00000000812613c0    be  0x00000000cd09b000  0x0000000000001000   30    2  Virtio MMIO
0x0000000081261540    c8  0x00000000cd0a1000  0x0000000000001000   30    2  Virtio MMIO
0x0000000081261180    d2  0x00000000cd0a2000  0x0000000000001000   30    2  Virtio MMIO
0x0000000081261300    dc  0x00000000cd09c000  0x0000000000001000   30    2  Virtio MMIO
0x0000000081261480    e6  0x00000000cd09d000  0x0000000000001000   30    2  Virtio MMIO
0x0000000081261000    fc  0x00000000809a6000  0x0000000000005000   b0    2  media checker_112_kstack
0x0000000081018180   11a  0x00000000809b5000  0x0000000000004000   30    3  dma buffer
0x00000000810180c0   11b  0x00000000809ab000  0x0000000000004000   30    3  dma buffer
0x0000000081261240   11c  0x00000000cd0a3000  0x0000000000004000   30    3  dma buffer
0x00000000813bbe48   11d  0x00000000cd0a7000  0x0000000000004000   30    3  dma buffer
0x00000000813bbf08   11e  0x00000000cd0ab000  0x0000000000004000   30    3  dma buffer
0x00000000813bbd88   11f  0x00000000cd0af000  0x0000000000004000   30    3  dma buffer
0x00000000813bbcc8   120  0x00000000cd0b3000  0x0000000000004000   30    3  dma buffer
0x00000000813bbc08   121  0x00000000cd0b7000  0x0000000000004000   30    3  dma buffer
0x00000000813bbb48   122  0x00000000cd0bb000  0x0000000000004000   30    3  dma buffer
0x00000000813bba88   123  0x00000000cd0bf000  0x0000000000004000   30    3  dma buffer
0x00000000813bb9c8   124  0x00000000cd0c3000  0x0000000000004000   30    3  dma buffer
0x00000000813bb908   125  0x00000000cd0c7000  0x0000000000004000   30    3  dma buffer
0x00000000813bb848   126  0x00000000cd0cb000  0x0000000000004000   30    3  dma buffer
0x00000000813bb788   127  0x00000000cd0cf000  0x0000000000004000   30    3  dma buffer
0x00000000813bb6c8   128  0x00000000cd0d3000  0x0000000000004000   30    3  dma buffer
0x00000000813bb608   129  0x00000000cd0d7000  0x0000000000004000   30    3  dma buffer
0x00000000813bb548   12a  0x00000000cd0db000  0x0000000000004000   30    3  dma buffer
0x00000000813bb488   12b  0x00000000cd0df000  0x0000000000004000   30    3  dma buffer
0x00000000813bb3c8   12c  0x00000000cd0e3000  0x0000000000004000   30    3  dma buffer
0x00000000813bb308   12d  0x00000000cd0e7000  0x0000000000004000   30    3  dma buffer
0x00000000813bb248   12e  0x00000000cd0eb000  0x0000000000004000   30    3  dma buffer
0x00000000813bb188   12f  0x00000000cd0ef000  0x0000000000004000   30    3  dma buffer
0x00000000813bb0c8   130  0x00000000cd0f3000  0x0000000000004000   30    3  dma buffer
0x00000000813bb008   131  0x00000000cd0f7000  0x0000000000004000   30    3  dma buffer
0x0000000081499f00   132  0x00000000cd0fb000  0x0000000000004000   30    3  dma buffer
0x0000000081499e40   133  0x00000000cd0ff000  0x0000000000004000   30    3  dma buffer
0x0000000081499d80   134  0x00000000cd103000  0x0000000000004000   30    3  dma buffer
0x0000000081499cc0   135  0x00000000cd107000  0x0000000000004000   30    3  dma buffer
0x0000000081499c00   136  0x00000000cd10b000  0x0000000000004000   30    3  dma buffer
0x0000000081499b40   137  0x00000000cd10f000  0x0000000000004000   30    3  dma buffer
0x0000000081499a80   138  0x00000000cd113000  0x0000000000004000   30    3  dma buffer
0x00000000814999c0   139  0x00000000cd117000  0x0000000000004000   30    3  dma buffer
0x0000000081499900   13a  0x00000000cd11b000  0x0000000000005000   b0    2  virtio scheduler 1_142_kstack
0x0000000081499840   13b  0x00000000cd120000  0x0000000000005000   b0    2  virtio notifier 1_143_kstack
0x0000000081499780   13c  0x00000000cd125000  0x0000000000003000   30    3  VirtIO Queue
0x00000000814996c0   13d  0x00000000cd128000  0x0000000000005000   b0    2  bfs log flusher_144_kstack
0x0000000081499600   13f  0x00000000809af000  0x0000000000002000   50    2  console_text
0x0000000081499540   140  0x00000000809b1000  0x0000000000001000   30    2  console_data
0x0000000081499480   141  0x00000000cd09e000  0x0000000000001000   50    2  dprintf_text
0x00000000814993c0   142  0x00000000cd09f000  0x0000000000001000   30    2  dprintf_data
0x0000000081499300   143  0x00000000809b9000  0x0000000000001000   50    2  null_text
0x0000000081499240   144  0x00000000809ba000  0x0000000000001000   30    2  null_data
0x0000000081499180   145  0x0000000080a3b000  0x0000000000007000   50    2  tty_text
0x00000000814990c0   146  0x0000000080a42000  0x0000000000007000   30    2  tty_data
0x0000000081020f08   149  0x00000000806bd000  0x0000000000001000   50    2  zero_text
0x0000000081020d88   14a  0x00000000806be000  0x0000000000001000   30    2  zero_data
0x00000000813b10c8   154  0xffffffd9063d2000  0x0000000000004000 4033    2  user area
0x0000000081020e48   155  0x0000000080b2d000  0x0000000000005000   b0    2  launch_daemon_146_kstack
0x00000000813b1008   156  0xffffffed12a66000  0x0000000001001000   3b    2  launch_daemon_146_stack
0x0000000081219f00   157  0xffffffe99170e000  0x0000000000008000 6005    2  commpage
0x0000000081219d80   158  0xfffffff214c45000  0x000000000001c000   15    0  runtime_loader_seg0ro
0x0000000081219cc0   159  0xfffffff214c61000  0x0000000000002000   33    0  runtime_loader_seg1rw
0x0000000081219e40   15a  0xffffffc50dacb000  0x0000000000010000   33    0  rld heap
0x0000000081219c00   15b  0xffffffd37005f000  0x0000000000001000  133    0  _rld_debug_
0x0000000081219a80   15c  0xffffffe533ae7000  0x0000000000033000   15    0  launch_daemon_seg0ro
0x00000000812199c0   15d  0xffffffe533b1a000  0x0000000000004000   33    0  launch_daemon_seg1rw
0x0000000081219900   15e  0xffffffe4aa95a000  0x00000000002d7000   15    0  libbe.so_seg0ro
0x0000000081219840   15f  0xffffffe4aac31000  0x000000000002d000   33    0  libbe.so_seg1rw
0x0000000081219780   160  0xfffffffb9123b000  0x0000000000033000   15    0  libnetwork.so_seg0ro
0x00000000812196c0   161  0xfffffffb9126e000  0x0000000000003000   33    0  libnetwork.so_seg1rw
0x0000000081219600   162  0xfffffffb91271000  0x0000000000005000   33    0  libnetwork.so_seg2rw
0x0000000081219540   163  0xffffffd157048000  0x0000000000060000   15    0  libbnetapi.so_seg0ro
0x0000000081219480   164  0xffffffd1570a8000  0x0000000000005000   33    0  libbnetapi.so_seg1rw
0x00000000812193c0   165  0xffffffe3ac1fc000  0x0000000000160000   15    0  libstdc++.so.6.0.25_seg0ro
0x0000000081219300   166  0xffffffe3ac35c000  0x000000000000d000   33    0  libstdc++.so.6.0.25_seg1rw
0x0000000081219240   167  0xffffffe3ac369000  0x0000000000008000   33    0  libstdc++.so.6.0.25_seg2rw
0x0000000081219180   168  0xfffffff83edb4000  0x00000000000de000   15    0  libroot.so_seg0ro
0x00000000812190c0   169  0xfffffff83ee92000  0x000000000000e000   33    0  libroot.so_seg1rw
0x0000000081219000   16a  0xfffffff83eea0000  0x0000000000044000   33    0  libroot.so_seg2rw
0x0000000081216f08   16b  0xffffffec5bb9f000  0x0000000000010000   15    0  libgcc_s.so.1_seg0ro
0x0000000081216e48   16c  0xffffffec5bbaf000  0x0000000000001000   33    0  libgcc_s.so.1_seg1rw
0x0000000081216cc8   16d  0xfffffff956a6b000  0x000000000001b000   15    0  libz.so.1.2.11_seg0ro
0x0000000081216c08   16e  0xfffffff956a86000  0x0000000000001000   33    0  libz.so.1.2.11_seg1rw
0x0000000081216b48   16f  0xffffffe6388cb000  0x0000000000006000   15    0  libbsd.so_seg0ro
0x0000000081216a88   170  0xffffffe6388d1000  0x0000000000001000   33    0  libbsd.so_seg1rw
0x0000000081216d88   171  0xffffffd5071e3000  0x0000000000010000   33    0  rld heap
0x00000000812169c8   172  0xffffffd590b74000  0x0000000000010000   33    0  rld heap
0x0000000081216908   173  0xffffffd649c62000  0x0000000000018000   33    0  rld heap
0x0000000081216848   174  0xffffffd7c0c65000  0x0000000000018000   33    0  rld heap
0x0000000081216788   175  0xfffffff746786000  0x00000000000a0000  133    0  heap
0x0000000081020908   176  0x000000008098a000  0x0000000000005000   b0    2  main worker_147_kstack
0x0000000081216608   177  0xffffffe629a66000  0x0000000000045000   3b    2  main worker_147_stack
0x00000000810209c8   178  0x0000000080694000  0x0000000000005000   b0    2  worker_148_kstack
0x0000000081216488   179  0xffffffd0d3605000  0x0000000000045000   3b    2  worker_148_stack
0x0000000081020788   17a  0x000000008092d000  0x0000000000005000   b0    2  worker_149_kstack
0x0000000081216308   17b  0xffffffe80e02a000  0x0000000000045000   3b    2  worker_149_stack
0x00000000812160c8   17c  0xffffffeb7dd30000  0x0000000000004000 4033    2  user area
0x0000000081020848   17d  0x00000000806ab000  0x0000000000005000   b0    2  debug_server_150_kstack
0x0000000081216008   17e  0xfffffffcd1003000  0x0000000001001000   3b    2  debug_server_150_stack
0x0000000081219b40   17f  0xffffffea125e0000  0x0000000000008000 6005    2  commpage
0x000000008120ef00   180  0xffffffffebf38000  0x000000000001c000   15    0  runtime_loader_seg0ro
0x000000008120ee40   181  0xffffffffebf54000  0x0000000000002000   33    0  runtime_loader_seg1rw
0x000000008120ed80   182  0xffffffe835c86000  0x0000000000010000   33    0  rld heap
0x000000008120ecc0   183  0xffffffe9fe312000  0x0000000000001000  133    0  _rld_debug_
0x000000008120eb40   184  0xffffffe5e6a02000  0x0000000000011000   15    0  debug_server_seg0ro
0x000000008120ea80   185  0xffffffe5e6a13000  0x0000000000002000   33    0  debug_server_seg1rw
0x000000008120e9c0   186  0xffffffe21980d000  0x00000000002d7000   15    0  libbe.so_seg0ro
0x000000008120e900   187  0xffffffe219ae4000  0x000000000002d000   33    0  libbe.so_seg1rw
0x000000008120e840   188  0xffffffe826d07000  0x000000000000d000   15    0  libdebug.so_seg0ro
0x000000008120e6c0   189  0xffffffe826d14000  0x0000000000001000   33    0  libdebug.so_seg1rw
0x000000008120e540   18a  0xfffffff908e06000  0x0000000000004000 4033    2  user area
0x0000000081020608   18b  0x0000000080a70000  0x0000000000005000   b0    2  mount_server_151_kstack
0x000000008120e480   18c  0xffffffd08c0d4000  0x0000000001001000   3b    2  mount_server_151_stack
0x000000008120e3c0   18d  0xfffffff515404000  0x0000000000008000 6005    2  commpage
0x000000008120e240   18e  0xfffffff9fb075000  0x000000000001c000   15    0  runtime_loader_seg0ro
0x000000008120e180   18f  0xfffffff9fb091000  0x0000000000002000   33    0  runtime_loader_seg1rw
0x000000008120e300   190  0xffffffc0993a7000  0x0000000000010000   33    0  rld heap
0x000000008120e0c0   191  0xffffffc0d779e000  0x0000000000001000  133    0  _rld_debug_
0x000000008104c480   192  0xffffffff4dc70000  0x000000000000a000 1033    0  mount_server_seg0ro
0x000000008120af08   193  0xffffffff4dc7a000  0x0000000000001000   33    0  mount_server_seg1rw
0x000000008120ad88   194  0xfffffff9e0874000  0x0000000000160000   15    0  libstdc++.so.6.0.25_seg0ro
0x000000008120acc8   195  0xfffffff9e09d4000  0x000000000000d000   33    0  libstdc++.so.6.0.25_seg1rw
0x000000008120ac08   196  0xfffffff9e09e1000  0x0000000000008000   33    0  libstdc++.so.6.0.25_seg2rw
0x000000008120ab48   197  0xfffffff95fd03000  0x00000000000de000   15    0  libroot.so_seg0ro
0x000000008120aa88   198  0xfffffff95fde1000  0x000000000000e000   33    0  libroot.so_seg1rw
0x000000008120a9c8   199  0xfffffff95fdef000  0x0000000000044000   33    0  libroot.so_seg2rw
0x000000008120a908   19a  0xffffffe0e3961000  0x0000000000010000   15    0  libgcc_s.so.1_seg0ro
0x000000008120a848   19b  0xffffffe0e3971000  0x0000000000001000   33    0  libgcc_s.so.1_seg1rw
0x000000008120a788   19c  0xffffffca8664c000  0x000000000001b000   15    0  libz.so.1.2.11_seg0ro
0x000000008120a6c8   19d  0xffffffca86667000  0x0000000000001000   33    0  libz.so.1.2.11_seg1rw
0x000000008120ae48   19e  0xffffffe9ff356000  0x0000000000010000   33    0  rld heap
0x000000008120a608   19f  0xffffffea02b67000  0x0000000000018000   33    0  rld heap
0x000000008120a548   1a0  0xffffffea06462000  0x0000000000018000   33    0  rld heap
0x000000008120a308   1a1  0xfffffffae9ba1000  0x0000000000004000 4033    2  user area
0x00000000810206c8   1a2  0x0000000080c1a000  0x0000000000005000   b0    2  app_server_152_kstack
0x000000008120a248   1a3  0xfffffff5eb706000  0x0000000001001000   3b    2  app_server_152_stack
0x000000008120a188   1a4  0xffffffdd7832b000  0x0000000000008000 6005    2  commpage
0x000000008120a008   1a5  0xfffffff9dda8c000  0x000000000001c000   15    0  runtime_loader_seg0ro
0x000000008120e780   1a6  0xfffffff9ddaa8000  0x0000000000002000   33    0  runtime_loader_seg1rw
0x000000008120e000   1a7  0xffffffc98de84000  0x0000000000010000   33    0  rld heap
0x000000008120a0c8   1a8  0xffffffcd7dace000  0x0000000000001000  133    0  _rld_debug_
0x0000000081207e40   1a9  0xffffffdc59fff000  0x000000000015b000 1033    0  app_server_seg0ro
0x0000000081207d80   1aa  0xffffffdc5a15a000  0x000000000000b000   33    0  app_server_seg1rw
0x0000000081207c00   1ab  0xffffffee866ff000  0x00000000002d7000 1033    0  libbe.so_seg0ro
0x0000000081207b40   1ac  0xffffffee869d6000  0x000000000002d000   33    0  libbe.so_seg1rw
0x0000000081207cc0   1ad  0xffffffdc5a165000  0x0000000000009000   33    0  app_server_seg2rw
0x0000000081207a80   1ae  0xffffffce028f3000  0x0000000000188000 1033    0  libtracker.so_seg0ro
0x00000000812079c0   1af  0xffffffce02a7b000  0x0000000000019000   33    0  libtracker.so_seg1rw
0x0000000081207840   1b0  0xffffffcbc4665000  0x0000000000050000  133    0  heap
0x0000000081207780   1b1  0xffffffce02a94000  0x0000000000002000   33    0  libtracker.so_seg2rw
0x0000000081207600   1b2  0xfffffff5598ce000  0x0000000000004000 4033    2  user area
0x0000000081020c08   1b3  0x0000000080750000  0x0000000000005000   b0    2  net_server_153_kstack
0x0000000081207540   1b4  0xffffffdb363f3000  0x0000000001001000   3b    2  net_server_153_stack
0x0000000081207480   1b5  0xffffffff2f447000  0x0000000000008000 6005    2  commpage
0x0000000081207300   1b6  0xffffffdae632f000  0x000000000001c000   15    0  runtime_loader_seg0ro
0x0000000081207240   1b7  0xffffffdae634b000  0x0000000000002000   33    0  runtime_loader_seg1rw
0x00000000812073c0   1b8  0xffffffd5e4b95000  0x0000000000010000   33    0  rld heap
0x0000000081207180   1b9  0xffffffda44277000  0x0000000000001000  133    0  _rld_debug_
0x0000000081207000   1ba  0xffffffff06d09000  0x0000000000017000   15    0  net_server_seg0ro
0x0000000081204e48   1bb  0xffffffff06d20000  0x0000000000002000   33    0  net_server_seg1rw
0x0000000081204d88   1bc  0xfffffff05e97d000  0x00000000002d7000   15    0  libbe.so_seg0ro
0x0000000081204cc8   1bd  0xfffffff05ec54000  0x000000000002d000   33    0  libbe.so_seg1rw
0x0000000081204c08   1be  0xffffffd43c718000  0x0000000000033000   15    0  libnetwork.so_seg0ro
0x0000000081204b48   1bf  0xffffffd43c74b000  0x0000000000003000   33    0  libnetwork.so_seg1rw
0x0000000081204a88   1c0  0xffffffd43c74e000  0x0000000000005000   33    0  libnetwork.so_seg2rw
0x00000000812049c8   1c1  0xfffffff7a8b0f000  0x0000000000060000   15    0  libbnetapi.so_seg0ro
0x0000000081204908   1c2  0xfffffff7a8b6f000  0x0000000000005000   33    0  libbnetapi.so_seg1rw
0x0000000081204848   1c3  0xfffffff5535df000  0x0000000000160000   15    0  libstdc++.so.6.0.25_seg0ro
0x0000000081204788   1c4  0xfffffff55373f000  0x000000000000d000   33    0  libstdc++.so.6.0.25_seg1rw
0x00000000812046c8   1c5  0xfffffff55374c000  0x0000000000008000   33    0  libstdc++.so.6.0.25_seg2rw
0x0000000081204608   1c6  0xffffffecff81b000  0x00000000000de000   15    0  libroot.so_seg0ro
0x0000000081204548   1c7  0xffffffecff8f9000  0x000000000000e000   33    0  libroot.so_seg1rw
0x0000000081204488   1c8  0xffffffecff907000  0x0000000000044000   33    0  libroot.so_seg2rw
0x00000000812043c8   1c9  0xfffffffa94363000  0x0000000000010000   15    0  libgcc_s.so.1_seg0ro
0x0000000081204308   1ca  0xfffffffa94373000  0x0000000000001000   33    0  libgcc_s.so.1_seg1rw
0x0000000081204248   1cb  0xffffffe9ef9be000  0x000000000001b000   15    0  libz.so.1.2.11_seg0ro
0x0000000081204188   1cc  0xffffffe9ef9d9000  0x0000000000001000   33    0  libz.so.1.2.11_seg1rw
0x00000000812040c8   1cd  0xfffffffa7c3e9000  0x0000000000006000   15    0  libbsd.so_seg0ro
0x0000000081204008   1ce  0xfffffffa7c3ef000  0x0000000000001000   33    0  libbsd.so_seg1rw
0x00000000812070c0   1cf  0xffffffdac1325000  0x0000000000010000   33    0  rld heap
0x0000000081204f08   1d0  0xffffffdae274b000  0x0000000000010000   33    0  rld heap
0x000000008123af00   1d1  0xffffffdae2e9b000  0x0000000000018000   33    0  rld heap
0x000000008123ae40   1d2  0xffffffdae4367000  0x0000000000018000   33    0  rld heap
0x000000008123acc0   1d3  0xffffffc39a69d000  0x0000000000050000  133    0  heap
0x000000008123ab40   1d4  0xffffffdae575b000  0x0000000000013000 1033    0  libtranslation.so_seg0ro
0x000000008123aa80   1d5  0xffffffdae576e000  0x0000000000002000   33    0  libtranslation.so_seg1rw
0x000000008123a9c0   1d6  0xffffffd7c8046000  0x00000000002d7000 1033    0  libbe.so_seg0ro
0x000000008123a900   1d7  0xffffffd7c831d000  0x000000000002d000   33    0  libbe.so_seg1rw
0x000000008123a840   1d8  0xffffffccfa046000  0x0000000000060000 1033    0  libbnetapi.so_seg0ro
0x000000008123a780   1d9  0xffffffccfa0a6000  0x0000000000005000   33    0  libbnetapi.so_seg1rw
kdebug> 
34 Likes

Such motivation!

3 Likes

Hm time to get some harware ;)… Realy Nice work…

6 Likes

app_server communicating with registrar:

arch_thread_context_switch(0x0000000081298700(roster), 0x0000000081299480(app_server))
  tp: 0x81299480(app_server)
  syscall 221(_kern_read_port_etc)
Stack:
FP: 0x80a018c0, PC: <kernel_riscv64> STrap + 1161
FP: 0x80a019c0, PC: <kernel_riscv64> SVecU + 109
FP: 0xffffffe450ab6910, PC: <libroot.so> _kern_read_port_etc + 3
FP: 0xffffffe450ab6920, PC: <libbe.so> _ZNK10BMessenger11SendMessageEP8BMessageS1_ll + 37
FP: 0xffffffe450ab6a60, PC: <libbe.so> _ZNK7BRoster16_IsAppRegisteredEPK9entry_refijPbP8app_info + 219
FP: 0xffffffe450ab6e00, PC: <libbe.so> _ZN12BApplication9_InitDataEPKcbPi + 941
FP: 0xffffffe450ab6e50, PC: <libbe.so> _ZN12BApplicationC2EPKcS1_ibPi + 69
FP: 0xffffffe450ab6e80, PC: <libbe.so> _ZN7BServerC2EPKcS1_ibPi + 23
FP: 0xffffffe450ab6f60, PC: <_APP_> _ZN9AppServerC2EPi + 47
FP: 0xffffffe450ab6f90, PC: <_APP_> main + 39
FP: 0xffffffe450ab6fc0, PC: <_APP_> _start + 55
FP: 0xffffffe450ab7000, PC: </boot/system/runtime_loader> 0x11f21
FP: 0x80a019f0, PC: <kernel_riscv64> arch_thread_enter_userspace + 161
FP: 0x80a01a30, PC: <kernel_riscv64> _ZL15enter_userspacePN7BKernel6ThreadEP24UserThreadEntryArguments + 67
FP: 0x80a01a90, PC: <kernel_riscv64> thread_enter_userspace_new_team + 53
FP: 0x80a01f80, PC: <kernel_riscv64> _ZL33team_create_thread_start_internalPv + 547
FP: 0x80a01f90, PC: <kernel_riscv64> _ZL24team_create_thread_startPv + 11
FP: 0x80a01fb0, PC: <kernel_riscv64> _ZL19common_thread_entryPv + 49
FP: 0x0, PC: <kernel_riscv64> arch_thread_entry + 3
arch_thread_context_switch(0x0000000081299480(app_server), 0x0000000081298700(roster))
  tp: 0x81298700(roster)
  syscall 221(_kern_read_port_etc)
Stack:
FP: 0x809938c0, PC: <kernel_riscv64> STrap + 1161
FP: 0x809939c0, PC: <kernel_riscv64> SVecU + 109
FP: 0xffffffe26e430aa0, PC: <libroot.so> _kern_read_port_etc + 3
FP: 0xffffffe26e430ad0, PC: <libbe.so> _ZN7BLooper19ReadMessageFromPortEl + 23
FP: 0xffffffe26e430b30, PC: <libbe.so> _ZN7BLooper11task_looperEv + 85
FP: 0xffffffe26e430b50, PC: <libbe.so> _ZN12BApplication3RunEv + 25
FP: 0xffffffe26e430f90, PC: <_APP_> main + 107
FP: 0xffffffe26e430fc0, PC: <_APP_> _start + 55
FP: 0xffffffe26e431000, PC: </boot/system/runtime_loader> 0x11f21
FP: 0x809939f0, PC: <kernel_riscv64> arch_thread_enter_userspace + 161
FP: 0x80993a30, PC: <kernel_riscv64> _ZL15enter_userspacePN7BKernel6ThreadEP24UserThreadEntryArguments + 67
FP: 0x80993a90, PC: <kernel_riscv64> thread_enter_userspace_new_team + 53
FP: 0x80993f80, PC: <kernel_riscv64> _ZL33team_create_thread_start_internalPv + 547
FP: 0x80993f90, PC: <kernel_riscv64> _ZL24team_create_thread_startPv + 11
FP: 0x80993fb0, PC: <kernel_riscv64> _ZL19common_thread_entryPv + 49
FP: 0x0, PC: <kernel_riscv64> arch_thread_entry + 3
arch_thread_context_switch(0x0000000081298700(roster), 0x0000000081299480(app_server))
  tp: 0x81299480(app_server)
  syscall 221(_kern_read_port_etc)
Stack:
FP: 0x80a018c0, PC: <kernel_riscv64> STrap + 1161
FP: 0x80a019c0, PC: <kernel_riscv64> SVecU + 109
FP: 0xffffffe450ab6900, PC: <libroot.so> _kern_read_port_etc + 3
FP: 0xffffffe450ab6910, PC: <libbe.so> _ZNK10BMessenger11SendMessageEP8BMessageS1_ll + 37
FP: 0xffffffe450ab6a60, PC: <libbe.so> _ZNK7BRoster15_AddApplicationEPKcPK9entry_refjiiibPjPi + 329
FP: 0xffffffe450ab6e00, PC: <libbe.so> _ZN12BApplication9_InitDataEPKcbPi + 997
FP: 0xffffffe450ab6e50, PC: <libbe.so> _ZN12BApplicationC2EPKcS1_ibPi + 69
FP: 0xffffffe450ab6e80, PC: <libbe.so> _ZN7BServerC2EPKcS1_ibPi + 23
FP: 0xffffffe450ab6f60, PC: <_APP_> _ZN9AppServerC2EPi + 47
FP: 0xffffffe450ab6f90, PC: <_APP_> main + 39
FP: 0xffffffe450ab6fc0, PC: <_APP_> _start + 55
FP: 0xffffffe450ab7000, PC: </boot/system/runtime_loader> 0x11f21
FP: 0x80a019f0, PC: <kernel_riscv64> arch_thread_enter_userspace + 161
FP: 0x80a01a30, PC: <kernel_riscv64> _ZL15enter_userspacePN7BKernel6ThreadEP24UserThreadEntryArguments + 67
FP: 0x80a01a90, PC: <kernel_riscv64> thread_enter_userspace_new_team + 53
FP: 0x80a01f80, PC: <kernel_riscv64> _ZL33team_create_thread_start_internalPv + 547
FP: 0x80a01f90, PC: <kernel_riscv64> _ZL24team_create_thread_startPv + 11
FP: 0x80a01fb0, PC: <kernel_riscv64> _ZL19common_thread_entryPv + 49
FP: 0x0, PC: <kernel_riscv64> arch_thread_entry + 3
arch_thread_context_switch(0x0000000081299480(app_server), 0x00000000803ea0b0(idle thread 1))
INIT: main: done... begin idle loop on cpu 0
PANIC: idle
Welcome to Kernel Debugging Land...
Thread 1 "idle thread 1" running on CPU 0
Stack:
FP: 0x80c57e60, PC: <kernel_riscv64> debug_call_with_fault_handler.localalias.7 + 121
FP: 0x80c57ef0, PC: <kernel_riscv64> _ZL20kernel_debugger_loopPKcS0_Pvi + 251
FP: 0x80c57f60, PC: <kernel_riscv64> _ZL24kernel_debugger_internalPKcS0_Pvi + 131
FP: 0x80c57fa0, PC: <kernel_riscv64> panic + 93
FP: 0x80c58000, PC: <kernel_riscv64> _start + 1201
FP: 0x80145f00, PC: 0x8000019f
FP: 0x80145f60, PC: 0x8002665f
FP: 0x80146000, PC: 0x800002dd
FP: 0x0, PC: 0x8000000d
initial commands: threads
thread                 id  state     wait for  object              cpu pri  stack              team  name
0x00000000803ea0b0      1  running   -                               0   0  0x0000000080c53000    1  idle thread 1
0x000000008129f780      2  waiting   cvar      0x00000000803ea008    -  15  0x00000000cd411000    1  undertaker
0x000000008129f300      3  waiting   sem       6                     -   5  0x00000000cd416000    1  kernel daemon
0x000000008129ee80      4  waiting   sem       10                    -   5  0x00000000cd41b000    1  resource resizer
0x000000008129ea00      5  zzz                                       -   1  0x00000000cd420000    1  page scrubber
0x000000008129e580      6  waiting   cvar      0x000000008040cb88    -  11  0x00000000cd425000    1  page writer
0x000000008129e100      7  waiting   cvar      0x000000008040cb30    -  10  0x00000000cd42a000    1  page daemon
0x000000008129dc80      8  waiting   cvar      0x000000008040c8e0    - 110  0x00000000cd42f000    1  object cache resizer
0x000000008129d800      9  waiting   sem       26                    -   5  0x00000000cd434000    1  low resource manager
0x000000008129d380     10  waiting   cvar      0x00000000803e04d0    -  10  0x00000000cd439000    1  dpc: normal priority
0x000000008129cf00     11  waiting   cvar      0x00000000803e0538    -  20  0x00000000cd43e000    1  dpc: high priority
0x000000008129ca80     12  waiting   cvar      0x00000000803e0468    - 100  0x00000000cd443000    1  dpc: real-time priority
0x000000008129c600     13  waiting   sem       39                    -   5  0x00000000cd448000    1  block notifier/writer
0x000000008129b880    112  zzz                                       -  10  0x00000000809a6000    1  media checker
0x000000008129af80    142  waiting   cvar      0x00000000810215d8    -  12  0x00000000cd4d3000    1  virtio scheduler 1
0x000000008129bd00    143  waiting   cvar      0x0000000081021638    -  12  0x00000000cd4d8000    1  virtio notifier 1
0x000000008129a200    144  waiting   sem       570                   -  10  0x00000000cd4e0000    1  bfs log flusher
0x0000000081299900    183  waiting   sem       726                   -  10  0x0000000080a70000    1  invalidate_loop
0x000000008129ab00    184  waiting   sem       730                   -  10  0x00000000806ab000    1  run_on_exit_loop
0x000000008129a680    282  waiting   cvar      0x000000008107f590    -  10  0x0000000080c1a000  282  launch_daemon
0x000000008129c180    283  waiting   sem       1145                  -  10  0x000000008092d000  282  main worker
0x0000000081299d80    284  waiting   sem       1145                  -  10  0x0000000080699000  282  worker
0x000000008129b400    285  waiting   sem       1145                  -  10  0x000000008098a000  282  worker
0x0000000081299480    286  waiting   cvar      0x000000008123d460    -  10  0x00000000809fd000  286  app_server
0x0000000081299000    287  zzz                                       -  10  0x0000000080b2d000  287  mount_server
0x0000000081298b80    288  waiting   cvar      0x000000008117fd18    -  10  0x0000000080c1f000  288  power_daemon
0x0000000081298700    289  waiting   cvar      0x000000008117f098    -  11  0x000000008098f000  289  roster
0x0000000081298280    290  zzz                                       -  11  0x0000000080a02000  289  message deliverer
0x0000000081297e00    291  waiting   sem       1191                  -  16  0x000000008079e000  289  timer_thread
0x0000000081297980    292  waiting   cvar      0x000000008117fbd8    -  11  0x00000000807a3000  289  authentication manager
0x0000000081297500    293  waiting   sem       1224                  -  10  0x00000000807a8000  289  main_mime
0x0000000081297080    294  waiting   sem       1209                  -  15  0x0000000080a3b000  289  messaging command processor
0x0000000081296c00    295  zzz                                       -  11  0x0000000080768000  289  create_app_meta_mime (s)
0x0000000081296780    296  waiting   cvar      0x000000008117f958    -  20  0x0000000080beb000  286  DMT is here for you, eventually
kdebug> 
11 Likes

Most stupid mistake rank no. 1.

I identified problem why libicu is crashing at initialization. It was a mistake when popping trap frame, register s7 was loaded instead of a7, causing trashing of function 8-th argument. It can happen from anywhere because code is memory mapped file dymanically loaded by page fault fandler.

Now hacks removing libicu dependency can be removed.

.macro PopTrapFrame
	ld ra,   0*8(sp)
	ld t6,   1*8(sp)
#	ld sp,   2*8(sp) restore later
	ld gp,   3*8(sp)
#	ld tp,   4*8(sp)
	ld t0,   5*8(sp)
	ld t1,   6*8(sp)
	ld t2,   7*8(sp)
	ld t5,   8*8(sp)
	ld s1,   9*8(sp)
	ld a0,  10*8(sp)
	ld a1,  11*8(sp)
	ld a2,  12*8(sp)
	ld a3,  13*8(sp)
	ld a4,  14*8(sp)
	ld a5,  15*8(sp)
	ld a6,  16*8(sp)
	ld s7,  17*8(sp) # !!! should be a7
	ld s2,  18*8(sp)
	ld s3,  19*8(sp)
	ld s4,  20*8(sp)
	ld s5,  21*8(sp)
	ld s6,  22*8(sp)
	ld s7,  23*8(sp)
	ld s8,  24*8(sp)
	ld s9,  25*8(sp)
	ld s10, 26*8(sp)
	ld s11, 27*8(sp)
	ld t3,  28*8(sp)
	ld t4,  29*8(sp)
	ld fp,  30*8(sp)

	ld sp,   2*8(sp)
.endm
11 Likes

app_server tries to initalize graphics output. Probably something is wrong with kernel framebuffer driver.

arch_thread_context_switch(0x000000008129af80(virtio scheduler 1), 0x0000000081299480(app_server))
  tp: 0x81299480(app_server)
  syscall 245(_kern_debug_output)
Stack:
FP: 0x80a018c0, PC: <kernel_riscv64> STrap + 1161
FP: 0x80a019c0, PC: <kernel_riscv64> SVecU + 109
FP: 0xfffffffdc78fca90, PC: <libroot.so> _kern_debug_output + 3
FP: 0xfffffffdc78fcab0, PC: <libroot.so> debug_printf + 39
FP: 0xfffffffdc78fcba0, PC: <_APP_> _ZN7Desktop4InitEv + 603
FP: 0xfffffffdc78fcbe0, PC: <_APP_> _ZN9AppServer14_CreateDesktopEjPKc + 65
FP: 0xfffffffdc78fcc90, PC: <_APP_> _ZN9AppServer15MessageReceivedEP8BMessage + 265
FP: 0xfffffffdc78fcee0, PC: <libbe.so> _ZN12BApplication15DispatchMessageEP8BMessageP8BHandler + 427
FP: 0xfffffffdc78fcf40, PC: <libbe.so> _ZN7BLooper11task_looperEv + 423
FP: 0xfffffffdc78fcf60, PC: <libbe.so> _ZN12BApplication3RunEv + 25
FP: 0xfffffffdc78fcf90, PC: <_APP_> main + 67
FP: 0xfffffffdc78fcfc0, PC: <_APP_> _start + 55
FP: 0xfffffffdc78fd000, PC: </boot/system/runtime_loader> 0x11f21
FP: 0x80a019f0, PC: <kernel_riscv64> arch_thread_enter_userspace + 161
FP: 0x80a01a30, PC: <kernel_riscv64> _ZL15enter_userspacePN7BKernel6ThreadEP24UserThreadEntryArguments + 67
FP: 0x80a01a90, PC: <kernel_riscv64> thread_enter_userspace_new_team + 53
FP: 0x80a01f80, PC: <kernel_riscv64> _ZL33team_create_thread_start_internalPv + 547
FP: 0x80a01f90, PC: <kernel_riscv64> _ZL24team_create_thread_startPv + 11
FP: 0x80a01fb0, PC: <kernel_riscv64> _ZL19common_thread_entryPv + 49
FP: 0x0, PC: <kernel_riscv64> arch_thread_entry + 3
Could not initialize graphics output. Exiting.
11 Likes

Yeah! Desktop started! The first non-x86 Haiku desktop is running.

LaunchBox was selected for first GUI application because other applications still have troubles.

screenshot43

48 Likes

This is simply amazing work! Hats off!

2 Likes

What an entertaining journey. Well done x512

1 Like

I created stand-alone binary distribution so everyone can play with it. Just unpack and click Run.sh to start. Distribution is 32 bit only. Currently it is not very useful because it have no keyboard or mouse driver yet, pointer is not moving.

Source code need cleanup before publishing, maybe I create a branch in that repo.

7 Likes

Now if RISC-V really hit off as hardware… Haiku would be in the front of developing it :smiley:

1 Like