My Haiku RISC-V port progress

libgcc_s.so crashes here. More correct stack trace:

debug_server: Thread 559 entered the debugger: Debugger call: `abort() called'
stack trace, current PC 0xfffffff0ea291264  </boot/system/lib/libroot.so> _kern_debugger + 0x4:
  (0xfffffffb498fdf50)  0xfffffffac242ddec  </boot/system/lib/libgcc_s.so.1> uw_init_context_1 + 0x3ff
  (0xfffffffb498fe430)  0xfffffffac242e20a  </boot/system/lib/libgcc_s.so.1> _Unwind_RaiseException + 0x9b
  (0xfffffffb498fef00)  0xfffffff0ea306a28  </boot/system/lib/libroot.so> __cxa_throw + 0x41
  (0xfffffffb498fef30)  0xfffffff02c415bba  </boot/home/ExceptionTest> _Z5DoIntb + 0x4d
  (0xfffffffb498fef50)  0xfffffff02c415bf4  </boot/home/ExceptionTest> _Z2Dov + 0x21
  (0xfffffffb498fef80)  0xfffffff02c415c9e  </boot/home/ExceptionTest> main + 0x19
  (0xfffffffb498fefa0)  0xfffffff02c415b62  </boot/home/ExceptionTest> _start + 0x3f
  (0xfffffffb498fefd0)  0xfffffff0b1c436d4  </boot/system/runtime_loader> runtime_loader + 0xd5
  (0xfffffffb498ff000)  0x803a1af0  

code returned by uw_frame_state_for() is _URC_END_OF_STACK, definitely wrong.

5 Likes

Crash seems to be caused by _Unwind_Find_FDE() returning NULL. It can’t find FDE entry by return address (<libgcc_s.so.1> _Unwind_RaiseException in this case). FDE is exception record for each function that contains unwind information and exception handler (called “personality” in ELF documentation). I looked at libgcc_s.so.1 binary and it seems to have broken init/fini processing. There are no any init/fini entries in dynamic table and there are broken .init section with no pre/post glue code and any references. __register_frame_info for libgcc_s.so.1 is not called and exeption table (eh_frame) is not registered so FDE entry lookup fails.

4 Likes

Exceptions fixed by using --enable-initfini-array flag when configuring GCC build.

arch_thread_init_kthread_stack(0x00000000cde0c100(ExceptionTest))
clone_commpage_area: 0xfffffffb60ca6000
arch_thread_enter_uspace()
+Do()
+DoInt()
catch(123)
-Do()

Remaining problem is libstdc++ crash when using iostream. It crash here.

6 Likes

I guess on riscv you should use .ctor / .dtor by default.

When enabling package-fs on minimum-raw it currently crashes. Some packages are missing?

package_daemon [29302262374:   303] Failed to get activated packages info from activated packages file. Assuming all package files in package directory are activated.
package_daemon [29302263668:   303] latest volume state:
package_daemon [29302264245:   303] active package: "ncurses6-6.0-1-riscv64.hpkg"
package_daemon [29302264833:   303] active package: "bash-4.4.023-1-riscv64.hpkg"
package_daemon [29302265401:   303] active package: "expat-2.1.0-1-riscv64.hpkg"
package_daemon [29302266082:   303] active package: "icu-57.2-2-riscv64.hpkg"
package_daemon [29302266777:   303] active package: "noto-20170920-4-any.hpkg"
package_daemon [29302267424:   303] active package: "coreutils-8.22-1-riscv64.hpkg"
package_daemon [29302268165:   303] active package: "freetype-2.6.3-1-riscv64.hpkg"
package_daemon [29302268997:   303] active package: "libsolv-0.3.0_haiku_2014_12_22-1-riscv64.hpkg"
package_daemon [29302269779:   303] active package: "haiku_loader-r1~beta2_hrev55112_63-1-riscv64.hpkg"
package_daemon [29302270817:   303] active package: "gcc_syslibs-8.3.0_2019_05_24-4-riscv64.hpkg"
package_daemon [29302271679:   303] active package: "zlib-1.2.11-1-riscv64.hpkg"
package_daemon [29302272491:   303] active package: "haiku-r1~beta2_hrev55112_63-1-riscv64.hpkg"
package_daemon [29302273422:   303] The latest volume state is also the currently active one
package_daemon [29302286210:   303] Volume::InitPackages Requesting delayed first boot processing for packages dir /boot/system/packages.
package_daemon [29302323614:   303] Volume::InitialVerify((nil), (nil))
register_domain(1, internet)
unregister_domain(0x00000000cdb4ec00, 1, internet)
arch_thread_init_kthread_stack(0x00000000842a2680(net timer))
register_domain(9, unix)
unregister_domain(0x00000000cdb4eb00, 9, unix)
register_domain(5, internet6)
unregister_domain(0x00000000cdb4eb00, 5, internet6)
register_domain(1, internet)
unregister_domain(0x00000000cdb4eb00, 1, internet)
register_domain(5, internet6)
unregister_domain(0x00000000cdb4eb00, 5, internet6)
register_domain(5, internet6)
unregister_domain(0x00000000cdb4eb00, 5, internet6)
register_domain(5, internet6)
unregister_domain(0x00000000cdb4eb00, 5, internet6)
register_domain(5, internet6)
unregister_domain(0x00000000cdb4ec00, 5, internet6)
arch_thread_init_kthread_stack(0x00000000842a2680(net timer))
package_daemon [29303124217:   303] Volume::InitialVerify(): volume at "/boot/system" has problems:
package_daemon [29303125157:   303] register_domain(9, unix)
unregister_domain(0x00000000cdb4e980, 9, unix)
  1: package zlib-1.2.11-1 is not installable
package_daemon [29303210978:   303]     solution 1:
package_daemon [29303211254:   303]       - allow deinstallation of zlib-1.2.11-1
package_daemon [29303211853:   303]   2: package ncurses6-6.0-1 is not installable
package_daemon [29303214339:   303]     solution 1:
package_daemon [29303214689:   303]       - allow deinstallation of ncurses6-6.0-1
package_daemon [29303215537:   303]   3: package libsolv-0.3.0_haiku_2014_12_22-1 is not installable
package_daemon [29303216502:   303]     solution 1:
package_daemon [29303216928:   303]       - allow deinstallation of libsolv-0.3.0_haiku_2014_12_22-1
package_daemon [29303218055:   303]   4: package icu-57.2-2 is not installable
package_daemon [29303218935:   303]     solution 1:
package_daemon [29303219466:   303]       - allow deinstallation of icu-57.2-2
package_daemon [29303220454:   303]   5: package haiku_loader-r1~beta2_hrev55112_63-1 is not installable
package_daemon [29303221636:   303]     solution 1:
package_daemon [29303222162:   303]       - allow deinstallation of haiku_loader-r1~beta2_hrev55112_63-1
package_daemon [29303223396:   303]   6: package bash-4.4.023-1 is not installable
package_daemon [29303224416:   303]     solution 1:
package_daemon [29303224949:   303]       - allow deinstallation of bash-4.4.023-1
package_daemon [29303225972:   303]   7: package coreutils-8.22-1 is not installable
package_daemon [29303226956:   303]     solution 1:
package_daemon [29303227445:   303]       - allow deinstallation of coreutils-8.22-1
package_daemon [29303228558:   303]   8: package expat-2.1.0-1 is not installable
package_daemon [29303229539:   303]     solution 1:
package_daemon [29303230074:   303]       - allow deinstallation of expat-2.1.0-1
package_daemon [29303231058:   303]   9: package freetype-2.6.3-1 is not installable
package_daemon [29303267201:   303]     solution 1:
package_daemon [29303267752:   303]       - allow deinstallation of freetype-2.6.3-1
package_daemon [29303268837:   303]   10: package gcc_syslibs-8.3.0_2019_05_24-4 is not installable
package_daemon [29303269920:   303]     solution 1:
package_daemon [29303270472:   303]       - allow deinstallation of gcc_syslibs-8.3.0_2019_05_24-4
package_daemon [29303271567:   303]   11: package haiku-r1~beta2_hrev55112_63-1 is not installable
package_daemon [29303272755:   303]     solution 1:
package_daemon [29303273328:   303]       - allow deinstallation of haiku-r1~beta2_hrev55112_63-1
package_daemon [29303280289:   303] Failed to get activated packages info from activated packages file. Assuming all package files in package directory are activated.
package_daemon [29303281803:   303] latest volume state:
package_daemon [29303282391:   303] The latest volume state is also the currently active one
register_domain(5, internet6)
unregister_domain(0x00000000cdb4e780, 5, internet6)
package_daemon [29303326723:   303] Volume::InitPackages Requesting delayed first boot processing for packages dir /boot/home/config/packages.
package_daemon [29303329150:   303] Volume::InitialVerify(0xffffffc5c9da9d00, (nil))
package_daemon [29303361362:   303] Volume::InitialVerify(): volume at "/boot/home/config" is consistent
package_daemon [29303382245:   303] Starting First Boot Processing for 12 packages in /boot/system/packages/administrative/transaction-1.
package_daemon [29303383420:   303] Doing first boot processing #0 for package ncurses6-6.0-1-riscv64.hpkg.
package_daemon [29303384430:   303] Doing first boot processing #1 for package bash-4.4.023-1-riscv64.hpkg.
arch_thread_init_kthread_stack(0x00000000842a2100(sh))
clone_commpage_area: 0xfffffff3fe630000
arch_thread_enter_uspace()
register_domain(1, internet)
unregister_domain(0x00000000cdb4e200, 1, internet)
register_domain(5, internet6)
unregister_domain(0x00000000cdb4e100, 5, internet6)
register_domain(5, internet6)
unregister_domain(0x00000000cdb4e100, 5, internet6)
register_domain(5, internet6)
unregister_domain(0x00000000cdb4e100, 5, internet6)
register_domain(1, internet)
unregister_domain(0x00000000cdb4e100, 1, internet)
arch_thread_init_kthread_stack(0x00000000842a2680(net timer))
clone_commpage_area: 0xfffffffc1be00000
arch_thread_enter_uspace()
register_domain(9, unix)
unregister_domain(0x00000000cdb4e000, 9, unix)
register_domain(5, internet6)
unregister_domain(0x000000008416c180, 5, internet6)
register_domain(1, internet)
unregister_domain(0x00000000cdb4e000, 1, internet)
register_domain(5, internet6)
unregister_domain(0x000000008416c180, 5, internet6)
register_domain(5, internet6)
unregister_domain(0x00000000cdb4e000, 5, internet6)
register_domain(5, internet6)
unregister_domain(0x000000008416c180, 5, internet6)
register_domain(1, internet)
arch_thread_init_kthread_stack(0x00000000842a1b80(loop consumer))
register_domain(5, internet6)
0x00000000843b6a08._RegisterDynamic()
virtio_mmio: supports_device(0x00000000843b6a08)
  name: Generic
arch_thread_init_kthread_stack(0x00000000842a1600(locked_pool_enlarger))
Last message repeated 2 times.
module: Search for bus_managers/pci/x86/v1 failed.
ahci: failed to get pci x86 module
arch_thread_init_kthread_stack(0x00000000842a1600(locked_pool_enlarger))
303: DEBUGGER: abort() called
STrap(exception uEcall)
  sstatus: (ie: {u, s}, pie: {s}, spp: u, sum: 1)
  sie: {sTimer, sExtern}
  sip: {}
  stval: <libroot.so> __tens + 5048
  tp: 0x842a2c00(job runner)
Stack:
FP: 0x81906c10
FP: 0x81906c50, PC: <kernel_riscv64> syscall_dispatcher + 1187
FP: 0x81906d30, PC: <kernel_riscv64> STrap + 531
FP: 0x81906e30, PC: <kernel_riscv64> SVecU + 109
FP: 0xffffffff2d62a3b0, PC: <libroot.so> _kern_debugger + 3
FP: 0xffffffff2d62a3f0, PC: <libstdc++.so.6> _ZN9__gnu_cxx27__verbose_terminate_handlerEv + 239
FP: 0xffffffff2d62a420, PC: <libstdc++.so.6> _ZN10__cxxabiv111__terminateEPFvvE + 11
FP: 0xffffffff2d62a430, PC: module: Search for bus_managers/pci/x86/v1 failed.
usb xhci: failed to get pci x86 module
usb xhci: no devices found
<libstdc++.so.6> _ZSt9terminatev + 23
FP: 0xffffffff2d62a460, PC: module: Search for bus_managers/pci/x86/v1 failed.
usb uhci: failed to get pci x86 module
usb uhci: no devices found
module: Search for bus_managers/pci/x86/v1 failed.
usb ohci: failed to get pci x86 module
usb ohci: no devices found
<libstdc++.so.6> __cxa_throw + 83
FP: 0xffffffff2d62a620, PC: module: Search for bus_managers/pci/x86/v1 failed.
usb ehci: failed to get pci x86 module
usb ehci: no devices found
usb error stack 0: no bus managers available
<_APP_> _ZN24CommitTransactionHandler22_AddGlobalWritableFileEP7PackageRKN11BPackageKit23BGlobalWritableFileInfoERK10BDirectoryS8_ + 1427
FP: 0xffffffff2d62a7e0, PC: <_APP_> _ZN24CommitTransactionHandler23_AddGlobalWritableFilesEP7Package + 381
FP: 0xffffffff2d62a830, PC: <_APP_> _ZN24CommitTransactionHandler25_PreparePackageToActivateEP7Package + 171
FP: 0xffffffff2d62a990, PC: <_APP_> _ZN24CommitTransactionHandler25_PrepareFirstBootPackagesEv + 187
FP: 0xffffffff2d62a9c0, PC: <_APP_> _ZN24CommitTransactionHandler13_ApplyChangesEv + 239
FP: 0xffffffff2d62aab0, PC: <_APP_> _ZN24CommitTransactionHandler13HandleRequestERKN11BPackageKit8BPrivate22BActivationTransactionE + 101
FP: 0xffffffff2d62ab80, PC: <_APP_> _ZN24CommitTransactionHandler13HandleRequestEP8BMessage + 175
FP: 0xffffffff2d62ae80, PC: <_APP_> _ZN6Volume18_CommitTransactionEP8BMessagePKN11BPackageKit8BPrivate22BActivationTransactionERKSt3setIP7PackageSt4lessIS9_ESaIS9_EESF_RNS2_24BCommitTransactionResultE + 129
FP: 0xffffffff2d62afc0, PC: <_APP_> _ZN6Volume30HandleCommitTransactionRequestEP8BMessage + 83
FP: 0xffffffff2d62afe0, PC: <_APP_> _ZN4Root10_JobRunnerEv + 23
FP: 0xffffffff2d62b000, PC: <libroot.so> _thread_do_exit_work + 127
FP: 0x81906e60, PC: <kernel_riscv64> arch_thread_enter_userspace + 145
FP: 0x81906f90, PC: <kernel_riscv64> _ZL15enter_userspacePN7BKernel6ThreadEP24UserThreadEntryArguments + 79
FP: 0x81906fb0, PC: <kernel_riscv64> _ZL19common_thread_entryPv + 93
FP: 0x0, PC: <kernel_riscv64> arch_thread_entry + 3
arch_thread_init_kthread_stack(0x00000000842a2100(team 290 debug task))
arch_thread_init_kthread_stack(0x00000000842a1600(team 290 handler))
arch_thread_enter_uspace()
debug_server: Thread 303 entered the debugger: Debugger call: `abort() called'
stack trace, current PC 0xffffffc5a6fbb214  </boot/system/lib/libroot.so> _kern_debugger + 0x4:
module: Search for bus_managers/pci/x86/v1 failed.
usb xhci: failed to get pci x86 module
usb xhci: no devices found
  (0xffffffff2d62a3b0)  0xfffffff7ebc490c4  </boot/system/lib/libstdc++.so.6.0.25> _ZN9__gnu_cxx27__verbose_terminate_handlerEv + 0xef
  (0xffffffff2d62a3f0)  0xfffffff7ebc46e18  </boot/system/lib/libstdc++.so.6.0.25> _ZN10__cxxabiv111__terminateEPFvvE + 0xb
  (0xffffffff2d62a420)  0xfffffff7ebc46eaa  </boot/system/lib/libstdc++.so.6.0.25> _ZSt9terminatev + 0x17
  (0xffffffff2d62a430)  0xfffffff7ebc47148  </boot/system/lib/libstdc++.so.6.0.25> __cxa_throw + 0x53
module: Search for bus_managers/pci/x86/v1 failed.
usb uhci: failed to get pci x86 module
usb uhci: no devices found
  (0xffffffff2d62a460)  0xfffffff48ddcef0c  </boot/system/servers/package_daemon> _ZN24CommitTransactionHandler22_AddGlobalWritableFileEP7PackageRKN11BPackageKit23BGlobalWritableFileInfoERK10BDirectoryS8_ + 0x593
  (0xffffffff2d62a620)  0xfffffff48ddd03e2  </boot/system/servers/package_daemon> _ZN24CommitTransactionHandler23_AddGlobalWritableFilesEP7Package + 0x17d
  (0xffffffff2d62a7e0)  0xfffffff48ddd075a  </boot/system/servers/package_daemon> _ZN24CommitTransactionHandler25_PreparePackageToActivateEP7Package + 0xab
module: Search for bus_managers/pci/x86/v1 failed.
usb ohci: failed to get pci x86 module
usb ohci: no devices found
  (0xffffffff2d62a830)  0xfffffff48ddd0844  </boot/system/servers/package_daemon> _ZN24CommitTransactionHandler25_PrepareFirstBootPackagesEv + 0xbb
  (0xffffffff2d62a990)  0xfffffff48ddd280a  </boot/system/servers/package_daemon> _ZN24CommitTransactionHandler13_ApplyChangesEv + 0xef
module: Search for bus_managers/pci/x86/v1 failed.
usb ehci: failed to get pci x86 module
usb ehci: no devices found
usb error stack 0: no bus managers available
  (0xffffffff2d62a9c0)  0xfffffff48ddd2872  </boot/system/servers/package_daemon> _ZN24CommitTransactionHandler13HandleRequestERKN11BPackageKit8BPrivate22BActivationTransactionE + 0x65
  (0xffffffff2d62aab0)  0xfffffff48ddd2aaa  </boot/system/servers/package_daemon> _ZN24CommitTransactionHandler13HandleRequestEP8BMessage + 0xaf
  (0xffffffff2d62ab80)  0xfffffff48ddddda0  </boot/system/servers/package_daemon> _ZN6Volume18_CommitTransactionEP8BMessagePKN11BPackageKit8BPrivate22BActivationTransactionERKSt3setIP7PackageSt4lessIS9_ESaIS9_EESF_RNS2_24BCommitTransactionResultE + 0x81
  (0xffffffff2d62ae80)  0xfffffff48ddde090  </boot/system/servers/package_daemon> _ZN6Volume30HandleCommitTransactionRequestEP8BMessage + 0x53
  (0xffffffff2d62afc0)  0xfffffff48dddb556  </boot/system/servers/package_daemon> _ZN4Root10_JobRunnerEv + 0x17
  (0xffffffff2d62afe0)  0xffffffc5a6fb9f86  </boot/system/lib/libroot.so> thread_entry + 0x1d
  (0xffffffff2d62b000)  0x80494af0  
arch_thread_init_kthread_stack(0x00000000842a1080(consoled))
clone_commpage_area: 0xfffffff9a8491000
arch_thread_enter_uspace()
module: Search for bus_managers/pci/x86/v1 failed.
usb xhci: failed to get pci x86 module
usb xhci: no devices found
module: Search for bus_managers/pci/x86/v1 failed.
usb uhci: failed to get pci x86 module
usb uhci: no devices found
module: Search for bus_managers/pci/x86/v1 failed.
usb ohci: failed to get pci x86 module
usb ohci: no devices found
module: Search for bus_managers/pci/x86/v1 failed.
usb ehci: failed to get pci x86 module
usb ehci: no devices found
usb error stack 0: no bus managers available
module: Search for bus_managers/pci/x86/v1 failed.
usb xhci: failed to get pci x86 module
usb xhci: no devices found
module: Search for bus_managers/pci/x86/v1 failed.
usb uhci: failed to get pci x86 module
usb uhci: no devices found
module: Search for bus_managers/pci/x86/v1 failed.
usb ohci: failed to get pci x86 module
usb ohci: no devices found
module: Search for bus_managers/pci/x86/v1 failed.
usb ehci: failed to get pci x86 module
usb ehci: no devices found
usb error stack 0: no bus managers available
etherpci: init_driver init_driver: etherpci not found
0x00000000843b6a08._RegisterDynamic()
virtio_mmio: supports_device(0x00000000843b6a08)
  name: Generic
arch_thread_init_kthread_stack(0x00000000842a0b00(locked_pool_enlarger))
Last message repeated 2 times.
module: Search for bus_managers/pci/x86/v1 failed.
ahci: failed to get pci x86 module
arch_thread_init_kthread_stack(0x00000000842a0b00(locked_pool_enlarger))
arch_thread_init_kthread_stack(0x00000000842a0580(/dev/net/virtio/0 consumer))
virtio_mmio: virtio_device_negotiate_features(0x000000008407bb40)
virtio_mmio: read features: [macaddress] 
virtio_mmio: negotiated features: [macaddress] 
virtio_mmio: virtio_device_alloc_queues(0x000000008407bb40, 2)
queueMem: 0x0000000083882000
fDescs: 0x0000000083882000
fAvail: 0x0000000083883000
fUsed:  0x0000000083884000
descsPhys: 84ae8000
availPhys: 84ae9000
usedPhys:  84aea000
queueMem: 0x0000000083753000
fDescs: 0x0000000083753000
fAvail: 0x0000000083754000
fUsed:  0x0000000083755000
descsPhys: 84d18000
availPhys: 84d19000
usedPhys:  84d1a000
virtio_mmio: virtio_device_setup_interrupt(0x000000008407bb40, 0x0): not implemented
virtio_mmio: virtio_device_queue_setup_interrupt(0x00000000cdb77d88, </boot/system/add-ons/kernel/drivers/network/virtio_net> _ZL17virtio_net_rxDonePvS_ + 0)
virtio_mmio: virtio_device_queue_setup_interrupt(0x00000000cdb77d38, </boot/system/add-ons/kernel/drivers/network/virtio_net> _ZL17virtio_net_txDonePvS_ + 0)
virtio_mmio: virtio_device_read_device_config(0x000000008407bb40, 0, 6)
no mtu feature
/dev/net/virtio/0: media change, media 0x90003a quality 1000 speed 1410065408
virtio_net: ioctl: unknown message 2716
arch_thread_init_kthread_stack(0x00000000842a0b00(ethernet link state checker))
arch_thread_init_kthread_stack(0x00000000842a0000(/dev/net/virtio/0 reader))
arch_thread_init_kthread_stack(0x00000000cdd0f7c0(/dev/net/virtio/0))
arch_thread_enter_uspace()
register_domain(4, link)
arch_store_fork_frame()
  arg: 0x0000000084248a00
  userFrame: 0x000000008388b7d0
arch_thread_init_kthread_stack(0x00000000cdd0f240(net_server))
arch_thread_init_kthread_stack(0x00000000cdd0ecc0(services listener))
arch_thread_enter_uspace()
arch_restore_fork_frame(0x0000000083606e60)
0x00000000843b6a08._RegisterDynamic()
virtio_mmio: supports_device(0x00000000843b6a08)
  name: Generic
arch_thread_init_kthread_stack(0x00000000cdd0f240(locked_pool_enlarger))
Last message repeated 2 times.
module: Search for bus_managers/pci/x86/v1 failed.
ahci: failed to get pci x86 module
arch_thread_init_kthread_stack(0x00000000cdd0f240(locked_pool_enlarger))
0x00000000843b6a08._RegisterDynamic()
virtio_mmio: supports_device(0x00000000843b6a08)
  name: Generic
arch_thread_init_kthread_stack(0x00000000cdd0f240(locked_pool_enlarger))
Last message repeated 2 times.
module: Search for bus_managers/pci/x86/v1 failed.
ahci: failed to get pci x86 module
arch_thread_init_kthread_stack(0x00000000cdd0f240(locked_pool_enlarger))
0x00000000843b6a08._RegisterDynamic()
virtio_mmio: supports_device(0x00000000843b6a08)
  name: Generic
arch_thread_init_kthread_stack(0x00000000cdd0f240(locked_pool_enlarger))
arch_thread_init_kthread_stack(0x00000000cdd0e740(locked_pool_enlarger))
arch_thread_init_kthread_stack(0x00000000cdd0f240(locked_pool_enlarger))
module: Search for bus_managers/pci/x86/v1 failed.
ahci: failed to get pci x86 module
arch_thread_init_kthread_stack(0x00000000cdd0f240(locked_pool_enlarger))
virtio_input: virtio_input_supports_device(0x00000000843b6a08)
module: Search for bus_managers/pci/x86/v1 failed.
usb xhci: failed to get pci x86 module
usb xhci: no devices found
module: Search for bus_managers/pci/x86/v1 failed.
usb uhci: failed to get pci x86 module
usb uhci: no devices found
module: Search for bus_managers/pci/x86/v1 failed.
usb ohci: failed to get pci x86 module
usb ohci: no devices found
module: Search for bus_managers/pci/x86/v1 failed.
usb ehci: failed to get pci x86 module
usb ehci: no devices found
usb error stack 0: no bus managers available
wacom: cannot get module "bus_managers/usb/v3"
module: Search for bus_managers/pci/x86/v1 failed.
usb xhci: failed to get pci x86 module
usb xhci: no devices found
module: Search for bus_managers/pci/x86/v1 failed.
usb uhci: failed to get pci x86 module
usb uhci: no devices found
module: Search for bus_managers/pci/x86/v1 failed.
usb ohci: failed to get pci x86 module
usb ohci: no devices found
module: Search for bus_managers/pci/x86/v1 failed.
usb ehci: failed to get pci x86 module
usb ehci: no devices found
usb error stack 0: no bus managers available
ps2_hid: init_hardware
ps2_hid: init_driver
module: Search for bus_managers/ps2/v1 failed.
consoled: error -4 starting console.
5 Likes

package zlib-1.2.11-1 is not installable

Something is wrong with that package

Something is wrong with all packages that depends on haiku. Only noto is fine.

Probably arch related. Noto has any arch.

Seems to be related to uname returning unknown?

9 Likes

After fixing uname, and adding vesa driver to haiku.hpkg (it was included only for x86) haiku-minimum.image with package_fs enabled is working:

screenshot69

25 Likes

When compiling on RISC-V Haiku, headers/posix/limits.h is not included for some reason. It is supposed to be included by #include_next in GCC limits.h.

screenshot70

7 Likes

don’t know but ut feals that this port finds/fixes alot of stuff other ports will hit? Nice work. Feels good when one working on this and another one are working in the Intel driver :smiley: . I need to boost my own development :wink:

5 Likes

Seems that our ARM port is getting some attention, with @pengphei working on it. See this thread for progress updates:

3 Likes

Network is working, but only when running TinyEMU on Linux. On Haiku it also should work in theory, but some strange errors occurs (bad packet checksum, malformed reply packets etc.). Currently there are no web browser compiled for riscv64 to test. Maybe it is possible to compile Netsurf without Haikuporter.

Screenshot_20210604_152943

18 Likes

Yes should be possible, I did this on amd64 couple of times.
doc: https://source.netsurf-browser.org/netsurf.git/plain/docs/building-Haiku.md

edit: it looks like upstream webkit also supports riscv64, so that can be investigated in the future ( 222959 – [CMake] Build fails on RISC-V with GCC 11 )

1 Like

maybe one of the commandline web browsers (link, etc.)?

Networking is working on Haiku host, but only 64 bit. TinyEMU embedded Slirp library is probably broken on 32 bits. Not working ping is fine because it is not supported by Slirp library, ping is used to check DNS resolver.

screenshot18

25 Likes

I fixed network for 32 bit TinyEMU. It was caused by hardcoded pointer size in slirp_config.h. File contents looks like it was generated by configure and then copied. Also I fixed bug in virtio_mmio driver, virtio completed packet counter is 16 bit, but driver used 32 bit counter to track what packets are already processed. That counter is intermened for each completed packet and expected to wrap on overflow.

I used Ubuntu disk image for download stability test. It worked fine but run out of disk space because 2GB is currently allocated for virtual machine disk.

screenshot72

23 Likes

Why is there 100% CPU use when downloading?

Because software CPU emulation is slow. No JIT is used.

Per-thread CPU usage when downloading:
screenshot73

6 Likes