lee@unmvax.unm.edu (Lee Ward) (08/20/87)
As far as I can tell this didn't make it the first time. Apologies if it did. Subject: Hanging up on a modem in 4.2 & 4.3 requires a manual reset. Description: Under 4.2, we noticed that a user sometimes hung up on a line with a job waiting for input (not shells). This caused the line to hang. The flags in the tty structure were: ISOPEN,WOPEN,HUPCLS It didn't happen often and was never really a problem. It required that we cycle the power on the modem. Although, sometimes, it magically reset itself after a few minutes. Under 4.3 the problem was still there but now always magically reset after a few minutes. Now, we have a uVAX II with a dhv-11, 4.3 and modems. If someone hangs up on anything the problem appears. The only way to get the modem line usable again is to cycle the modem and the line resets in a few minutes. There are no processes in ANY state (other than getty) desiring or using the line. DTR is NOT being turned on. The phone rings and rings. Here is a "ps" of the current system: F UID PID PPID CP PRI NI ADDR SZ RSS WCHAN STAT TT TIME COMMAND 3 0 0 0 0 -25 0 2ac 0 0 runout D ? 0:00 swapper 1008001 0 1 0 0 5 0 1304 23 13 proc I ? 0:05 init 1000003 0 2 0 0 -24 0 13504096 0 proc D ? 0:00 pagedaemon 1008001 0 47 1 0 1 0 1506 36 24 selwait S co 0:38 /etc/syslogd 1008001 0 54 1 0 1 0 1814 33 24 selwait S ? 0:23 /etc/routed 1008001 0 58 1 0 1 0 163a 83 80 selwait I ? 0:15 /etc/named /etc/named.boot 1008001 0 62 1 0 1 0 1586 31 23 selwait I ? 0:10 /etc/timed -M 1008001 0 67 1 0 1 0 1aa0 92 85 mbutl I ? 0:05 /usr/lib/sendmail -bd -q30m 1008201 0 77 1 1 15 0 1b4e 4 2 u S ? 3:24 /etc/update 1008201 0 80 1 0 15 0 1b3c 15 10 u I ? 0:16 /etc/cron 1008001 0 88 1 0 1 0 1b9e 37 33 mbutl S ? 1:31 /etc/rwhod 1008001 0 92 1 0 1 0 1bfa 40 20 selwait I ? 0:06 /etc/inetd 1008001 0 97 1 0 1 0 1c70 33 18 selwait I ? 0:01 /usr/lib/lpd 1008001 0 108 1 0 3 0 14d0 70 47 cons I co 0:10 -csh (csh) 1408021 0 122 108 0 3 0 1e88 84 45 T co 0:00 ftp turing 1408001 0 175 1 1 1 0 23ba 26 18 mbutl I ? 0:00 /etc/named-116 1008001 0 8051 1 0 3 0 3e12 13 8 dhu_tty I ? 0:00 - D1200 ttyS3 (getty) 1008001 0 10002 1 0 3 0 1d80 13 8 dhu_tty I ? 0:00 - D1200 ttyS4 (getty) 1008001 0 10240 1 0 3 0 7b14 13 8 dhu_tty I ? 0:00 - D1200 ttyS2 (getty) 1008001 0 10573 1 0 3 0 5084 13 8 dhu_tty I ? 0:00 - D1200 ttyS1 (getty) 1008001 0 11051 1 0 3 0 7bde 13 8 dhu_tty I ? 0:00 - D1200 ttyS0 (getty) 1008001 0 10576 92 0 1 0 7324 11 9 selwait S p0 0:42 rlogind 1008201 226 10577 10576 5 15 0 5756 62 39 u I p0 0:05 -csh (csh) 1008021 226 10712 10577 24 31 0 6fc2 139 41 T p0 0:01 view /tmp/stuck.getty.dump 1008221 0 10800 10577 0 15 0 75f8 54 44 u I p0 0:03 -u (csh) 1008021 0 11036 10800 0 5 0 78b0 76 43 proc I p0 0:00 postnews 1008001 0 11048 11036 1 1 0 1498 139 50 mbutl S p0 0:17 vi + /tmp/post011036 8201 0 11054 11048 45 15 0 4fe2 51 41 u S p0 0:00 sh -c ps alxww 1008001 0 11055 11054 32 33 0 7fbc 85 67 R p0 0:00 ps alxww 1008001 0 10952 92 1 1 0 52a0 11 9 selwait I p1 0:01 rlogind 1008001 226 10953 10952 1 3 0 64b0 61 38 pt_tty I p1 0:03 -csh (csh) 1008021 0 10563 1 0 5 0 5a1a 10 9 proc I S1 0:00 sh uuwail ucbvax 1008001 66 10591 10563 0 3 0 79a8 62 41 dhu_tty I S1 0:00 /usr/lib/uucp/uucico -r1 -sucbvax A pstat of the pertinent lines: 1 cons 16 dhu lines # RAW CAN OUT MODE ADDR DEL COL STATE PGRP DISC 0 0 0 0 4cd8 803eb540 0 39 W 0 1 0 0 0 140500d8 803eb540 0 -80 WO H 10130 ntty 2 0 0 0 4cd8 803eb540 0 96 W 0 3 1 0 0 10015dd0 803eb540 0 54 WO H 6552 4 0 0 0 4cd8 803eb540 0 6 W 0 5 0 0 0 40000021 803eb540 0 -33 0 So, how can a line be open but waiting to open? How can a line have a process group that doesn't exist. How can I have the line either open or waiting to open (but not both :-)? Anybody? Repeat-By: Get a uVAX II, put a DHV in it, Attach a modem, login through that modem. Cause the originating modem to drop the connection by turning it off. --Lee Ward lee@unmvax.unm.edu gatech!unmvax!lee -- --Lee (Ward) {ucbvax,convex,gatech,pur-ee}!unmvax!lee