Closed larsbrinkhoff closed 3 years ago
How to repeat:
I tested telnet to port 10007 and it seemed to work fine. Then I tested the VT52 port 10018 and it hung the same way.
Tested 10007 again, no problem. Plain telnet to 10018 hung.
SIMH spinning at 100% CPU.
Triggered the hang, here's the backtrace:
#0 0x0000000000487417 in tmxr_putc_ln ()
#1 0x0000000000430364 in ttyo_svc ()
#2 0x000000000045033b in sim_process_event.part ()
#3 0x000000000040f824 in sim_instr ()
#4 0x000000000045aea6 in run_cmd ()
#5 0x0000000000458f94 in do_cmd_label ()
#6 0x000000000040505c in main ()
With DEBUG=1.
#0 sim_tt_outcvt (c=50, mode=17) at ./sim_console.c:3011
#1 0x000000000043c17e in ttyo_svc (uptr=0x739040 <tty_unit+256>)
at ./PDP10/kl10_fe.c:2298
#2 0x0000000000463964 in sim_process_event () at ./scp.c:11746
#3 0x00000000004078e7 in sim_instr () at ./PDP10/kx10_cpu.c:4342
#4 0x000000000045c4bd in run_cmd (flag=1, cptr=0x7fffffff01b2 "")
at ./scp.c:9078
#5 0x000000000044af28 in do_cmd_label (flag=0,
fcptr=0x7fffffff9680 "build/pdp10-kl/run", label=0x0) at ./scp.c:4180
#6 0x000000000044a1d0 in do_cmd (flag=0,
fcptr=0x7fffffff9680 "build/pdp10-kl/run") at ./scp.c:4004
#7 0x00000000004451d7 in main (argc=2, argv=0x27ad010) at ./scp.c:2910
I poked at the ttyo_svc in various ways without pretending any deeper understanding. I tried various replacements for the continue statements in the while loop, but the only thing that worked is replacing continue with break.
While this avoids the hang, it's probably just papering over the problem. If I type ^F repeatedly to get more output there is an occasional pause and this typed to the console TTY:
TTY: TIMEOUT ON OUTPUT XFER TO DTE, DTEBBY 1015,,100 16:29:08
Try this: --- a/PDP10/kl10_fe.c +++ b/PDP10/kl10_fe.c @@ -2275,6 +2275,7 @@ t_stat ttyo_svc (UNIT uptr) t_stat r; int32 ln; TMLN lp;
int f;^M
if ((tty_unit[0].flags & UNIT_ATT) == 0) / attached? / return SCPE_OK; @@ -2293,7 +2294,8 @@ t_stat ttyo_svc (UNIT *uptr) } if (empty(optr)) continue;
Checks out ok. Thanks!
Verified with latest ITS and KL10 emulator.
I build a KL10 ITS the other day. When I logged in from a DTE20 TTY line, it was ok at first but then the emulator hung.
Symptoms: