DF-2343 / run3.log
=== DF-2343/DF-2344 fixed-kernel A/B (-O0 semantics) === DragonFly dfbsd 6.5-DEVELOPMENT DragonFly 6.5-DEVELOPMENT #4: Sun Oct 18 22:16:42 UTC 2026 root@dfbsd:/usr/obj/usr/src/sys/UMCSH x86_64 1064: if (rate == 0) /* no div-by-zero, no divisors[9] OOB read */ 325: device_printf(dev, "failed to read GPIO register\n"); --- DF-2343 fixed: rate==0 now rejected before the loop --- rc=0 numports=0 divisor=0 clk=0x00 attached=0 rd=0 wr=0 oob_dword=0x00000000 rc=4294967295 numports=0 divisor=57005 clk=0xee attached=0 rd=0 wr=0 oob_dword=0x00000000 rc=0 numports=0 divisor=12 clk=0x00 attached=0 rd=0 wr=0 oob_dword=0x00000000 rc=22 numports=0 divisor=0 clk=0x00 attached=0 rd=0 wr=0 oob_dword=0x00000000 rc=22 numports=0 divisor=0 clk=0x00 attached=0 rd=0 wr=0 oob_dword=0x00000000 --- DF-2344 fixed: GPIO failure -> deterministic ENXIO --- rc=6 numports=0 divisor=0 clk=0x00 attached=0 rd=1 wr=0 oob_dword=0x00000000 rc=6 numports=0 divisor=0 clk=0x00 attached=0 rd=1 wr=0 oob_dword=0x00000000 rc=6 numports=0 divisor=0 clk=0x00 attached=0 rd=1 wr=0 oob_dword=0x00000000 rc=6 numports=0 divisor=0 clk=0x00 attached=0 rd=1 wr=0 oob_dword=0x00000000 rc=0 numports=0 divisor=0 clk=0x00 attached=0 rd=1 wr=0 oob_dword=0x00000000 msg: attached=0 numports=0 --- DF-2344 no-regression: good device still attaches --- rc=0 numports=4 divisor=0 clk=0x00 attached=0 rd=2 wr=0 oob_dword=0x00000000 msg: attached, tty=ucom0 rc=16 numports=0 divisor=0 clk=0x00 attached=0 rd=0 wr=0 oob_dword=0x00000000 msg: already attached, run DETACH first rc=0 numports=0 divisor=0 clk=0x00 attached=0 rd=0 wr=0 oob_dword=0x00000000 --- DF-2343 fixed: unprivileged first open (was: panic) --- rc=0 numports=4 divisor=0 clk=0x00 attached=0 rd=2 wr=0 oob_dword=0x00000000 msg: attached, tty=ucom0 tioc0: opening /dev/cuaU0.0 (uid=1001) -- sc_it_* untouched, c_ospeed==0 flows to ucom_pre_param on first open tioc0: open returned fd=3 -- NO PANIC post-open termios ispeed=0 ospeed=0 cflag=0x0 --- TIOCSETA variants still blocked, no panic --- tioc0: opening /dev/ttyU0.0 (uid=0), then TIOCSETA c_ospeed==0 variants current ispeed=0 ospeed=0 cflag=0x0 TIOCSETA sane 19200 -> rc=0 errno=0 (OK) TIOCSETA ispeed=0 ospeed=0 -> rc=-1 errno=22 (Invalid argument) TIOCSETA ispeed=19200 ospeed=0 -> rc=-1 errno=22 (Invalid argument) TIOCSETA CIGNORE ispeed=0 ospeed=0 -> rc=0 errno=0 (OK) after variants ispeed=19200 ospeed=19200 cflag=0x0 tioc0: still alive, no panic rc=0 numports=0 divisor=0 clk=0x00 attached=0 rd=0 wr=0 oob_dword=0x00000000 FIXED_RUN_OK