Skip to content

Kernel: panic triggered by dash/oksh, and also coredumps from SIGCHLD #26489

@oskar-skog

Description

@oskar-skog

crash.sh

Run with dash crash.sh. *1 It may take a few tries. If it takes more than five, try rebooting, it seems like SerenityOS can occasionally be stubbornly stable.

Tracebacks:
dash-x86_64-1.txt dash-x86_64-2.txt dash-x86_64-3.txt
oksh-x86_64-1.txt
dash-aarch64-1.txt dash-aarch64-2.txt dash-aarch64-3.txt
dash-riscv64-1.txt dash-riscv64-2.txt
oksh-riscv64-1.txt
combined.txt

The riscv64 tracebacks are maybe due to a different issue? It crashes suspiciously quickly for how slow the emulation is and are the only ones with Kernel::SpinlockLocker<Kernel::RecursiveSpinlock<(Kernel::LockRank)0> >::~SpinlockLocker()

The reproducer can probably be reduced further. It no longer depends on Python or my janky code.

My /bin/sh is a symlink to dash on my system, but I don't think this is important for reproducing the crashes.

The original script used to cause a panic consistently: almost always early in the 2nd invocation. But I believe that may just have been pure chance.

Discord thread: https://discord.com/channels/830522505605283862/830522505605283866/1450929276697313350

*1
Also works with oksh, but dash seems to be by far the most crashy. Not sure about bash. Zsh is a PITA to get working correctly and doesn't seem to cause a panic. Shell --posix doesn't run the script correctly and therefore does way less work than the other shells.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions