dc's stack breaks when doing modulo-0

Denys Vlasenko vda.linux at googlemail.com
Thu May 9 13:49:59 UTC 2019


On Wed, May 8, 2019 at 7:31 PM Markus Gothe <nietzsche at lysator.liu.se> wrote:
> dc -e '4 0 % p' mess up the stack so bad that my MIPS kernel traps it and reboots.

$ strace ./busybox dc -e '4 0 % p'
execve("./busybox", ["./busybox", "dc", "-e", "4 0 % p"],
0x7ffd62d779e8 /* 53 vars */) = 0
strace: [ Process PID=28924 runs in 32 bit mode. ]
ioctl(0, TCGETS, {B38400 opost isig icanon echo ...}) = 0
ioctl(1, TCGETS, {B38400 opost isig icanon echo ...}) = 0
prctl(PR_SET_NAME, "busybox")           = 0
getuid32()                              = 0
--- SIGFPE {si_signo=SIGFPE, si_code=FPE_INTDIV, si_addr=0x8048600} ---
+++ killed by SIGFPE (core dumped) +++

Please report to your kernel's MIPS people that their signal handling is broken.
I would imagine they definitely do not want that to persist.


More information about the busybox mailing list