Trailing-Edge
-
PDP-10 Archives
-
BB-H138E-BM
-
6-1-documentation/tops20.tco
There are 24 other files named tops20.tco in the archive. Click here to see a list.
TCO-number: 6.1000
Written-by: GRANT Creation-date: 25-Feb-81 10:57:50
Edited-by: HALL Edit-date: 22-Aug-83 08:30:25
Edit-checked: Yes Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: Yes
Program: MONITOR
Routines-affected: STG PROLOG APRSRV PAGEM SCHED
Problem: TOPS-20 doesn't run on a 2080.
Diagnosis: No code.
Solution: Write some code. Write a LOT of code. Create a conditional
flag called KCFLG.
[End of TCO 6.1000]
TCO-number: 6.1002
Written-by: WACHS Creation-date: 27-Feb-81 06:36:11
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PHYPAR PHYSIO PHYP4
Problem: DSK throughput isn't as good as it could be
Diagnosis: No code to handle dual-ported disks, with both ports
connected to the -20
Solution: Add code to do so.
At system start-up time look for drives on 2 seperate paths
which have matching serial numbers, drive types, and unit numbers.
If found, declare the drive to be dual-ported, and choose 1 path as
the main path, one as the alternate. The rest of the system only
knows about the main path. If an IO is appempted on the drive, and
the main path's channel is busy doing a transfer on some other drive,
look at the alternate path. If it is idle, start the IO on that path
instead.
[End of TCO 6.1002]
TCO-number: 6.1004
Written-by: OSMAN Creation-date: 3-Mar-81 15:33:49
Edited-by: OSMAN Edit-date: 4-Mar-81 10:12:35
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: COMND
Problem: If FOO.PCL contains
COMMAND ZOT;
BEGIN
DOCOMMAND "SET DEF TAKE ALLOW";
DOCOMMAND "TAKE FOO";
DOCOMMAND "TAKE FOO";
END;
and FOO.CMD contains
INFO BLECCH
then
ZOT
fails to execute FOO.CMD twice!
Diagnosis: You don't really want to know. Oh well, here goes:
The exec is getting all hot to start the nonexistent command after the first
"TAKE FOO" (i.e. as though the code were
DOCOMMAND "TAKE FOO
more stuff";)
and it does it's call to .CMINI to rev up the COMND jsys. Normally this
call would succeed, the exec would then try to parse a new command, get a
failure due to "more stuff" being null, and continue on with the next DOCOMMAND.
However, since the INFO part of INFO BLECCH was parsed correctly, the .CMINI
call to COMND tries a BIN to see if ^H is being typed! Since this BIN fails,
the exec gets an error before it gets a chance to get all set up, so the
subsequent DOCOMMAND never happens.
Solution: In COMND, if BIN hits end of file when checking for ^H, give
success return from .CMINI just as though there was a character but it
wasn't ^H.
[End of TCO 6.1004]
TCO-number: 6.1006
Written-by: OSMAN Creation-date: 16-Mar-81 17:00:14
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: COMND
Problem: When typing "?" in time-and-date fields, sometimes you don't get
reprompted after the help message.
Diagnosis: Subsequent time-and-date fields in the chain were seeing the input
before the "?" as valid input, and they were giving a success return. Then,
exec went on to parse the text which doesn't respond to "?" but treats it
as text!
Solution: Have COMND realize that help is on the way, and therefore treat
subsequent time-and-date items helpily.
[End of TCO 6.1006]
TCO-number: 6.1008
Written-by: OSMAN Creation-date: 19-Mar-81 09:56:54
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: COMND
Problem: Two:
1) If you type escape in date-and-time field, you get an error, even if
your input so far is O.K.
2) If to the exec you type "SET ALERT 5-MAR-81 7:0 ?", you don't
get help requesting the text message. Instead, you get date-and-time
help even though the date-and-time field is over.
Diagnosis:
1) No special check for escape.
2) Jsyses for date-and-time advance pointer one byte too many. Hence
COMND thought the "?" was still in the date-and-time field!
Solution: Check for escape and adjust count for advanced byte pointer.
[End of TCO 6.1008]
TCO-number: 6.1010
Written-by: PAETZOLD Creation-date: 23-Apr-81 09:38:38
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PAGEM STG APRSRV PHYSIO diag SCHED
MEXEC globs PROLOG
Problem: Monitor is low on virtual address space.
Diagnosis: Many monitor databases are in section zero when they could be in
other sections (other than section one). One group of tables that could be
moved are the CST's. On a 4096K system each CST table would require sixteen
pages.
Solution: Move CST0, CST1, CST2, and CST3 to a new section (CSTSEC). This will
require modifications to the routines which access the above tables to run in
section one and to access CST's in non-zero sections.
[End of TCO 6.1010]
TCO-number: 6.1015
Written-by: BLOUNT Creation-date: 29-May-81 09:23:47
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: Yes
Program: MONITOR
Routines-affected: APRSRV
Problem: test
Diagnosis: test
Solution: test
[End of TCO 6.1015]
TCO-number: 6.1018
Written-by: OSMAN Creation-date: 5-Jun-81 19:48:50
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: getsav
Problem: When doing GET into section 0 with .GBASE, monitor loads into local
section instead!
Diagnosis: PM%EPN needed in MAPIT to say that 0 means 0 and not local.
Solution: do it
[End of TCO 6.1018]
TCO-number: 6.1021
Written-by: MILLER Creation-date: 9-Jun-81 11:01:20
Edited-by: MILLER Edit-date: 20-Mar-83 17:31:57
Edit-checked: Yes Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: TAPE
Problem: Field definitions for file sequence number are too small.
Diagnosis: As above
Solution: Make them bigger
[End of TCO 6.1021]
TCO-number: 6.1026
Written-by: COBB Creation-date: 6-Oct-81 13:21:53
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: APRSRV only
Problem: Instruction address literal does not have an MSEC1 in the left half.
Diagnosis: Instruction address literal needs one to insure section 1.
Solution: change from MOVE A,[ENSKED] to MOVE A,[MSEC1,,ENSKED].
[End of TCO 6.1026]
TCO-number: 6.1028
Written-by: MURPHY Creation-date: 8-Oct-81 11:48:38
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: JSYSF
Problem: CRDIR% (and indirectly the EXEC BUILD command) refuses to
allow reasonable settings for 'offline expiration date'.
Diagnosis: Many bugs in code, including using 0 day limit if no
system limit was set.
Solution: Revise code, remove bugs. Make no setting equivalent to
infinity. Allow wheel to override system max.
[End of TCO 6.1028]
TCO-number: 6.1029
Written-by: COBB Creation-date: 12-Oct-81 14:49:27
Edited-by: COBB Edit-date: 29-Oct-81 22:58:25
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Related-TCO: 6.1034
Problem: Code which must be in section 1 uses an inefficient means of insuring
this. (SE1CAL)
Diagnosis: Should be more efficient.
Solution: Convert SE1CAL to EA.ENT (a more efficient flavor of the same beast).
[End of TCO 6.1029]
TCO-number: 6.1030
Written-by: MCINTEE Creation-date: 16-Oct-81 17:20:09
Edited-by: MURPHY Edit-date: 17-Sep-82 13:26:16
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: GTJFN LOGNAM FILNFT
Related-TCO: 6.1055 6.1056 6.1143 6.1230 6.0
Problem: Need to reference files on remote network nodes.
Diagnosis: Feature needed.
Solution: Implement node name parsing in GTJFN and DAP in the monitor
to communicate with remote systems. See DIM functional spec.
Reorganize code to eliminate double skip returns and obscure flag
diddling in LOOKUP, DIRECT, etc.
[End of TCO 6.1030]
TCO-number: 6.1031
Written-by: PAETZOLD Creation-date: 17-Oct-81 17:11:13
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: DSKALC
Problem:
SHROFD BUGHLT's when initializing structure.
Diagnosis:
In WRTBTB at WRTBT1+24 (plus or minus a few) is a call to msetpt. The call
normally returns at the skip return. The skip return skips the initialization
of an ac for DESPT. A NOP is missing after the MSETPT call.
Solution:
Put the NOP back in.
[End of TCO 6.1031]
TCO-number: 6.1034
Written-by: PAETZOLD Creation-date: 29-Oct-81 22:56:35
Edited-by: PAETZOLD Edit-date: 29-Oct-81 22:58:25
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PHYSIO
Related-TCO: 6.1029
Problem:
GDSTX0 BUGHLT's. PHYCHK returns to scheduler in section zero.
Diagnosis:
Call to PHYSIO returns in section zero. PHYSIO uses macros to save
section of caller on stack for later returns. However stack is use
at time of macro call is not the same as stack in use when returning
to caller.
Solution:
Change the order of the macro and stack replacement. This was a bitch
to find. This TCO also by Dan Cobb.
[End of TCO 6.1034]
TCO-number: 6.1036
Written-by: CHALL Creation-date: 2-Nov-81 15:18:25
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: COMND MONSYM
Problem: IT WOULD BE NICE, IN UNAMBIGUOUS PLACES, TO BE ABLE TO SPECIFY
A NODE NAME OR A DEVICE NAME WITHOUT BEING FORCED TO TYPE THE COLONIAL
DELIMITERS.
Solution: ADD A FLAG, CM%NSF, IN CM%FFL (THE FUNCTION FLAGS PORTION OF
THE COMND FUNCTION DESCRIPTOR BLOCK). IF SET, THE SUFFIX NEED NOT BE TYPED.
NOTE: IF THE USER GOES AHEAD AND TYPES THE SUFFIX ANYWAY, THAT'S LEGAL, TOO.
NOTE FURTHER: THIS CHANGE ADDED 0 NEW INSTRUCTIONS TO COMND. NIL. ZILCH. NADA.
[End of TCO 6.1036]
TCO-number: 6.1037
Written-by: HALL Creation-date: 10-Nov-81 10:17:49
Edited-by: HALL Edit-date: 23-Mar-83 12:30:19
Edit-checked: Yes Document: Yes TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: STG APRSRV JSYSA
Problem: SWTRP doesn't allow user to trap on PDL overflow.
Diagnosis: No code
Solution: Write code. Allow user to set and read block address.
Write code in APRSRV analogous to arithmetic overflow code.
[End of TCO 6.1037]
TCO-number: 6.1038
Written-by: MILLER Creation-date: 17-Nov-81 21:25:55
Edited-by: MILLER Edit-date: 20-Mar-83 17:32:09
Edit-checked: Yes Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: Yes
Program: MONITOR
Routines-affected: PROLOG
Problem: The KL will support a CST write access bit that is needed for
the CFS project.
Diagnosis: Need to have a defintion for the bit.
Solution: Add it. It is called CSWRB
[End of TCO 6.1038]
TCO-number: 6.1039
Written-by: PAETZOLD Creation-date: 1-Dec-81 08:25:44
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: DTESRV
Problem:
Code offends.
Diagnosis:
Ugly literal with a label in it at RMGRNC+1 in DTESRV.
Solution:
Fix it not to be a literal.
[End of TCO 6.1039]
TCO-number: 6.1040
Written-by: SOUTH Creation-date: 1-Dec-81 09:48:50
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: DTESRV
Problem: release 6 version in DN60 protocol area not up to release 5 state.
Solution: move release 5 DN60 protocol cruft into release 6 version
[End of TCO 6.1040]
TCO-number: 6.1042
Written-by: SOUTH Creation-date: 4-Dec-81 19:16:00
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: DTESRV
Problem: same as tco 5.1627
Diagnosis: same problem
Solution: same solution
[End of TCO 6.1042]
TCO-number: 6.1043
Written-by: SOUTH Creation-date: 5-Dec-81 00:24:41
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: DTESRV
Problem: same as tco 5.1628
Diagnosis: same reason
Solution: same solution
[End of TCO 6.1043]
TCO-number: 6.1044
Written-by: SOUTH Creation-date: 7-Dec-81 11:17:31
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: DTESRV
Problem: error exits in DN60 protocol unwieldy.
Diagnosis: previous edit not thought out with suficient care.
Solution: fix it.
[End of TCO 6.1044]
TCO-number: 6.1045
Written-by: SOUTH Creation-date: 9-Dec-81 17:41:48
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: DTESRV
Problem: MCB and DN60 protocol do not always start.
Diagnosis: DTE hardware bug
Solution: dismiss process to wait for doorbell...by the time it runs again
the data deposited by the 11 is in 10 memory. New scheduler test DBTMR added
which check for time out as well as doorbell.
[End of TCO 6.1045]
TCO-number: 6.1046
Written-by: SOUTH Creation-date: 9-Dec-81 17:43:43
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: STG
Problem: need variable for new scheduler test DBTMR
Solution: put it in - one word for each dte
[End of TCO 6.1046]
TCO-number: 6.1047
Written-by: MILLER Creation-date: 16-Dec-81 11:22:32
Edited-by: MILLER Edit-date: 20-Mar-83 17:32:21
Edit-checked: Yes Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: APRSRV
Problem: BUGHLT code can cause a page fault trying to reference the
JSB.
Diagnosis: The check for "process context" at BUGH5 is indaequate.
Solution: Enhance check to include INSKED.
[End of TCO 6.1047]
TCO-number: 6.1048
Written-by: PAETZOLD Creation-date: 18-Dec-81 14:23:44
Edited-by: PAETZOLD Edit-date: 18-Dec-81 14:23:57
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: STG
Problem:
undefined global symbols when loading arpanet monitors. in this case NDVFY1.
Diagnosis:
the usual case of loading decnet dependent modules when DCN is off.
Solution:
if DCN is off then DONT LOAD DECNET MODULES.
[End of TCO 6.1048]
TCO-number: 6.1051
Written-by: MCINTEE Creation-date: 21-Dec-81 09:14:45
Edited-by: MCINTEE Edit-date: 28-Mar-83 10:51:20
Edit-checked: Yes Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: DEVICE
Problem: When recognizing the extension field of a file spec, and an ambiguous
response is called for, you get a "No such file type" error instead.
Diagnosis: in NEWEXT, when ambiguity is discovered, there is a JRST ERRET
instead of a JRST AMBRET. (The code has been reorganized since release 5)
Solution: change it.
[End of TCO 6.1051]
TCO-number: 6.1053
Written-by: MILLER Creation-date: 5-Jan-82 13:36:08
Edited-by: MILLER Edit-date: 20-Mar-83 17:32:28
Edit-checked: Yes Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: DISC JSYSF monsym
Problem: Closing a long file can take a very long time, even if
the contents have not been modified.
Diagnosis: The disk close code always counts the number of pages
in the file in order to update the FDB. There is presently no
way of its knowing if pages have been added or removed.
Solution: Add a bit to the FDB to remember if all of the writers
of a file successful closed it. If this bit is not on when
a long file is closed, suppress the scan of the file.
[End of TCO 6.1053]
TCO-number: 6.1054
Written-by: MILLER Creation-date: 6-Jan-82 09:35:25
Edited-by: MILLER Edit-date: 20-Mar-83 17:32:35
Edit-checked: Yes Document: Yes TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: MEXEC monsym
Problem: Need a way for ACJ to check on ATACH.
Diagnosis: As above
Solution: Add an ACJ call to ATACH analagous to the one in LOGIN.
This will not allow ACJ to bypass or subsititute for the password
check, but will allow it to perform checks similar to those done
for LOGIN.
[End of TCO 6.1054]
TCO-number: 6.1055
Written-by: MCINTEE Creation-date: 6-Jan-82 14:50:42
Edited-by: MCINTEE Edit-date: 28-Mar-83 10:51:50
Edit-checked: Yes Document: Yes TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: GTJFN MONSYM
Related-TCO: 6.1055 6.1030
Problem: With node name parsing in file specs, a way is needed for users to tell
if a node name is part of a file spec.
Diagnosis: New feature needed
Solution: make GTJFN return another flag, GJ%NOD
[End of TCO 6.1055]
TCO-number: 6.1056
Written-by: MCINTEE Creation-date: 7-Jan-82 11:35:24
Edited-by: MCINTEE Edit-date: 28-Mar-83 10:52:14
Edit-checked: Yes Document: Yes TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: JFNS MONSYM
Related-TCO: 6.1030 6.1055
Problem: There is no way for JFNS to return just the node name of a file spec,
or just the device name for a file spec that has a node name.
Solution: Bit 0 (the MSB of the device format control field) is not used.
Use it for node format control, 1 will mean always print it, if present.
0 will mean never print it. Default it to be 1. Call this bit JS%NOD.
Note that this will not affect the behavior of JFNS for file specs that have no
node name.
[End of TCO 6.1056]
TCO-number: 6.1057
Written-by: COBB Creation-date: 19-Jan-82 15:56:28
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: JSYSA monsym
Problem: Calling the QUEUE% Jsys causes an error
Diagnosis: It's not in the monitor yet...
Solution: Put it in
[End of TCO 6.1057]
TCO-number: 6.1059
Written-by: MILLER Creation-date: 25-Jan-82 11:23:16
Edited-by: MILLER Edit-date: 20-Mar-83 17:32:42
Edit-checked: Yes Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: SCHED
Problem: Problems with priority computation with class
scheduler on. Compute-bound process can "lock out"
interactive processes in the same class.
Diagnosis: Interactive processes not always getting adequate
consideration.
Solution: Rearrange code in CORFCT.
[End of TCO 6.1059]
TCO-number: 6.1062
Written-by: WALLACE Creation-date: 19-Feb-82 17:56:32
Edited-by: WALLACE Edit-date: 19-Feb-82 17:57:51
Edit-checked: Yes Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: FREE
Problem: No explicit routine exists for freeing JSB free space.
Diagnosis: All routines that want to release JSB free space
must get the address of the free space header, JSBFRE.
Solution: Add a new routine, RELJFR, which gets the address of
the free space header for the user. Could possibly save
many MOVEI T1,JSBFRE instructions. But more importantly
there are already explicit routines for freeing different
types of free space.
[End of TCO 6.1062]
TCO-number: 6.1064
Written-by: MILLER Creation-date: 24-Feb-82 11:02:43
Edited-by: MILLER Edit-date: 20-Mar-83 17:34:16
Edit-checked: Yes Document: Yes TCO-tested: Yes
Maintenance-release: No Hardware-related: Yes
Program: MONITOR
Routines-affected: APRSRV
Problem: If a page fault occurs while trying to BUGHLT,
much important information is lost.
Diagnosis: Most of the code, including the "hard page fault"
handler, is not reentrant. If a page fault occurs within
the scope of the handler, including the BUGHLT it may
request, it becomes quite difficult to analyze the resulting
dump.
Solution: At the entry to BUGHLT, change UPTPFN to dispatch to
a HALT instruction. While this will cause a "silent death", it will
at least preserve the state of the machine.
[End of TCO 6.1064]
TCO-number: 6.1065
Written-by: MILLER Creation-date: 5-Mar-82 11:12:09
Edited-by: MILLER Edit-date: 20-Mar-83 17:34:24
Edit-checked: Yes Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: TAPE
Problem: Verifying JFN attributes for an invalid tape can
crash the monitor.
Diagnosis: The routine in TAPE that performs the verification,
MTATR, should not attempt to dismiss the the "volume-valid"
bit is not on.
Solution: Fix it.
[End of TCO 6.1065]
TCO-number: 6.1066
Written-by: MILLER Creation-date: 11-Mar-82 07:51:45
Edited-by: MILLER Edit-date: 13-Mar-82 17:04:30
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: Yes
Program: MONITOR
Routines-affected: MONSYM STG DIAG TTYSRV TTPHDV APRSRV
Problem: TOPS-20 needs to support the 2080 console protocol defined
by RSP.
Diagnosis: Seems pretty clear.
Solution: Add code.
[End of TCO 6.1066]
TCO-number: 6.1069
Written-by: COBB Creation-date: 15-Mar-82 16:53:25
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: params
Problem: PARAMS NOFN definition overrides any previous definition
Diagnosis: Not an NDG, but a strict constant declaration
Solution: make it an NDG
[End of TCO 6.1069]
TCO-number: 6.1070
Written-by: PAETZOLD Creation-date: 16-Mar-82 20:04:10
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: SCHED
Problem:
SCTLW is defined in both SCHED and STG. The SCHED definition will override
the STG definition if we ever change it.
Diagnosis:
As above.
Solution:
Remove SCTLW def from SCHED.
[End of TCO 6.1070]
TCO-number: 6.1071
Written-by: GRANT Creation-date: 17-Mar-82 13:55:12
Edited-by: GRANT Edit-date: 28-Mar-83 11:55:53
Edit-checked: Yes Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: FREE
Problem: Free space manager extremely trustworthy of those who return
swappable free space.
Diagnosis: FREE doesn't check to make sure the user has returned the block
with the header word in the proper state.
Solution: Clear out left half of header word before doing the test for
overlapping blocks.
[End of TCO 6.1071]
TCO-number: 6.1072
Written-by: HALL Creation-date: 17-Mar-82 15:25:17
Edited-by: HALL Edit-date: 23-Mar-83 12:31:06
Edit-checked: Yes Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PAGEM APRSRV
Problem:
On the 2080, nonexistent memory is indicated by a page fault, not by an
APR condition. The memory scan in PGRINI checks for the APR condition
and therefore is inadequate for the 2080.
Diagnosis:
Need a page fault handler that is used just during the memory scan, and
places nonexistent pages on the special memory queue.
Solution:
Create the page fault handler for both the KL and the KC. This streamlines
the code a bit for the KL and makes things less processor-dependent. On the
KL there is no change in function, but a few instructions are eliminated.
[End of TCO 6.1072]
TCO-number: 6.1073
Written-by: MCINTEE Creation-date: 22-Mar-82 09:50:51
Edited-by: MCINTEE Edit-date: 28-Mar-83 10:54:02
Edit-checked: Yes Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: bugs DTESRV
Problem: DTETBE bughlt occurs when MCB protocol does a to -10 transfer of 0 bytes
Solution: check for this condition before doing the transfer, and bugchk on
this condition. use the DTEMCC bugchk (in routine DOFRMC). add to the bugchk
the data : piecemeal counter & residual counter.
[End of TCO 6.1073]
TCO-number: 6.1074
Written-by: MURPHY Creation-date: 23-Mar-82 19:28:54
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PROLOG STG
Problem: Build procedures getting to confusing with processor-dependent
varients of REL files. Need to have processor-dependent code in
all modules (UMOVE, etc.)
Diagnosis: Work needed.
Solution: Revise build procedures so processor flag defined as
part of PROLOG assembly and therefore available to all other
assemblies. Use separate directories for RELs for each
processor type.
[End of TCO 6.1074]
TCO-number: 6.1076
Written-by: CDUNN Creation-date: 24-Mar-82 13:35:21
Edited-by: CDUNN Edit-date: 24-Mar-82 13:42:15
Edit-checked: Yes Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Problem: No SCA BUGINFs, BUGCHKs, or BUGHLTs defined in BUGS
Diagnosis: No code
Solution: Add the appropriate defintions to BUGS.MAC
[End of TCO 6.1076]
TCO-number: 6.1077
Written-by: CDUNN Creation-date: 24-Mar-82 13:40:23
Edited-by: CDUNN Edit-date: 24-Mar-82 13:44:21
Edit-checked: Yes Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Problem: No global definitions for SCA or CI port driver
Diagnosis: No code
Solution: Add the definitions to GLOBS.MAC
[End of TCO 6.1077]
TCO-number: 6.1078
Written-by: CDUNN Creation-date: 24-Mar-82 23:17:30
Edited-by: CDUNN Edit-date: 24-Mar-82 23:18:13
Edit-checked: Yes Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Problem: No STG support for CI emulator
Diagnosis: No code
Solution: Add code to STG under FTCI which is off by default. Hence default is
to no have CI emulation code
[End of TCO 6.1078]
TCO-number: 6.1079
Written-by: PAETZOLD Creation-date: 1-Apr-82 07:35:13
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PHYP4
Problem:
PITRAP BUGHLTs.
Diagnosis:
PHYP4 is attempting to use ECC for a IRFRVC function. ECCADR gets called
an returns bad results. IRFRVC uses the skip function of the RH. The last
address word in the channel logout area contains a zero for a skip function.
Solution:
Dont use ECC for a IRFRVC function. PHYP2 allready checks for this.
[End of TCO 6.1079]
TCO-number: 6.1080
Written-by: CDUNN Creation-date: 5-Apr-82 13:51:52
Edited-by: CDUNN Edit-date: 5-Apr-82 13:52:28
Edit-checked: Yes Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Problem: CISRV does not conform to new CI protocol
Diagnosis: Code written before change in protocol.
Solution: Replace old CISRV with new CISRV which does conform to the new
protocol.
[End of TCO 6.1080]
TCO-number: 6.1081
Written-by: CDUNN Creation-date: 6-Apr-82 17:11:55
Edited-by: CDUNN Edit-date: 6-Apr-82 17:12:57
Edit-checked: Yes Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Problem: No BUGHLTs, BUGCHKs, or BUGINFs for CISRV
Diagnosis: No code
Solution: Add the code...
[End of TCO 6.1081]
TCO-number: 6.1084
Written-by: ZIMA Creation-date: 8-Apr-82 09:51:28
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: Yes Hardware-related: Yes
Program: MONITOR
Routines-affected: DSKALC
Problem: No BOOTSTRAP.BIN created if trying to reconstruct the filesystem
on a 2020 via a 143 startup.
Diagnosis: Code fails to initialize size variable to indicate size unknown;
the zero value there from system startup is taken to mean to file desired.
Solution: Initialize BOTSIZ so that the dialog will ask for the size of the
BOOTSTRAP.BIN file and create it.
[End of TCO 6.1084]
TCO-number: 6.1085
Written-by: ZIMA Creation-date: 8-Apr-82 13:49:47
Edited-by: ZIMA Edit-date: 8-Apr-82 13:50:51
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: Yes Hardware-related: No
Program: MONITOR
Routines-affected: JSYSF
Related-SPR: 17080
Problem:
RCUSR does not return RC%NMD (no more directories) when trying to
step a non-wild username string.
Diagnosis:
Code assumes that wild string and RC%STP implicitly go together,
and fails to check.
Solution:
Correct code to check explicitly for RC%STP so that it will try to
step the directory, fail and return RC%NMD. (This was Autopatch edit 1985
to Release 4.)
[End of TCO 6.1085]
TCO-number: 6.1087
Written-by: CHALL Creation-date: 9-Apr-82 08:28:53
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: STG
Solution: Add VT102 support to the monitor (in STG, table TTYPE0).
The VT102 is type 37 (decimal), and looks like a VT100.
[End of TCO 6.1087]
TCO-number: 6.1089
Written-by: MILLER Creation-date: 12-Apr-82 15:31:41
Edited-by: MILLER Edit-date: 20-Mar-83 17:34:35
Edit-checked: Yes Document: Yes TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PROLOG
Problem: Need SPT definitions added for CFS code.
Diagnosis: As above
Solution: Add them
[End of TCO 6.1089]
TCO-number: 6.1091
Written-by: MURPHY Creation-date: 13-Apr-82 15:18:55
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: FORK
Problem: Giving -1 as argument to SCVEC% in order to
prevent loading of PA1050 no longer works correctly.
It causes fork to jump to 777777.
Diagnosis: LH of argument is set to default section
number which wrecks the -1.
Solution: Don't shove section number in if arg is -1.
[End of TCO 6.1091]
TCO-number: 6.1093
Written-by: CDUNN Creation-date: 14-Apr-82 14:18:36
Edited-by: CDUNN Edit-date: 14-Apr-82 14:19:08
Edit-checked: Yes Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Problem: No code to support KLIPA hardware
Solution: Add code to support KLIPA. PHYKLP is the driver module. Also changes
to STG to load the module (under FTKLIPA)...
[End of TCO 6.1093]
TCO-number: 6.1094
Written-by: MILLER Creation-date: 14-Apr-82 15:11:25
Edited-by: MILLER Edit-date: 20-Mar-83 17:34:41
Edit-checked: Yes Document: Yes TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PAGEM DIRECT DSKALC
Problem: TOPS-20 needs to support CFS. This requires changes
to existing page and file management routines.
Diagnosis: As above
Solution: Modify page management and file management interlocking to
support CFS. For now, the CFS code will be conditionally assembled.
[End of TCO 6.1094]
TCO-number: 6.1095
Written-by: PAETZOLD Creation-date: 16-Apr-82 15:24:11
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: JSYSA
Problem:
SMAP% JSYS does not check section number of source id for legal section
numbers. Users can have all kinds of fun with this.
Diagnosis:
Who knows.
Solution:
Add code in .SMAP to check for section numbers.
[End of TCO 6.1095]
TCO-number: 6.1096
Written-by: HALL Creation-date: 18-Apr-82 11:07:17
Edited-by: HALL Edit-date: 23-Mar-83 12:31:52
Edit-checked: Yes Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PAGEM
Problem:
The page fault handler is overdue for a cleaning up. Exiting from a particular
piece of code is accomplished in assorted ways, some of which are causing
unnecessary calls to routines.
Diagnosis:
Years of hacking have produced a mess.
Solution:
Clean things up a bit. Provide one place to go for calling GETTPD, and remove
the call to GETTPD at NIC. In general, the philosophy will be to go to TRPRST
if we need to reanalyze the page fault data, and we believe the reference cannot
succeed, and to go to PGUNTP if we believe the reference will succeed.
[End of TCO 6.1096]
TCO-number: 6.1098
Written-by: MILLER Creation-date: 20-Apr-82 11:49:31
Edited-by: MILLER Edit-date: 20-Mar-83 17:34:49
Edit-checked: Yes Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: FILMSC
Problem: The sequence CLOSF followed by RELD for a TTY: results
in the device's output buffer being unconditionally cleared.
This behavior differs from release 4.
Diagnosis: TTYCLZ was changed sometime during release 5 to
bypass the "free DOBE" if the device was explicitly assigned
via ASND. In release 4, the DOBE was always done.
Solution: Rearrange the code to emulate the release 4 behavior.
[End of TCO 6.1098]
TCO-number: 6.1099
Written-by: ZIMA Creation-date: 22-Apr-82 13:43:03
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: Yes Hardware-related: No
Program: MONITOR
Routines-affected: SYSTAP S20TAP
Related-SPR: 16664
Problem:
Catastrophe tape built by SYSTAP.CTL or S20TAP.CTL does not work.
Diagnosis:
If a user trying to build a catastrophe tape with SYSTAP.CTL or
S20TAP.CTL is connected to another structure while running DLUSER, then
DLUSER will dump the connected structure instead of the intended PS.
Solution:
Explicitly give DLUSER a STRUCTURE PS: command to avoid this problem.
[End of TCO 6.1099]
TCO-number: 6.1102
Written-by: ZIMA Creation-date: 26-Apr-82 14:26:28
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: Yes Hardware-related: No
Program: MONITOR
Routines-affected: MFLIN
Related-SPR: 15864
Problem: FLIN and DFIN JSYSes incorrectly report undeflow as overflow.
Diagnosis:
Code uses the flags AC as a temporary, destroying the flags,
and then tries to test flags.
Solution:
Use another AC for the temporary.
[End of TCO 6.1102]
TCO-number: 6.1103
Written-by: ZIMA Creation-date: 26-Apr-82 14:32:33
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: Yes Hardware-related: No
Program: MONITOR
Routines-affected: MFLIN
Related-SPR: 15864
Problem: FLIN and DFIN JSYSes may return incorrect values.
Diagnosis:
Argument checking for exponents is incorrect. As a result, it
is possible to index out of the exponent table and multiply by a random
value, returning an incorrect number to the user.
Solution:
Make one final check on the exponent adjustment value before using
it for table indexing. Leave the existing partial check in the exponent
construction code in order to leave intermediate computations unaffected.
[End of TCO 6.1103]
TCO-number: 6.1104
Written-by: WALLACE Creation-date: 26-Apr-82 15:31:20
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: BUGS CTSMON FORK GLOBS MONSYM PAGEM
PROLOG STG SYSFLG TTYSRV
Problem: TOPS-20 does not support Dynamically Linked Libraries.
Diagnosis: Code does not exsit for such support.
Solution: Add code to support Dynamically Link Libraries in
TOPS-20.
[End of TCO 6.1104]
TCO-number: 6.1105
Written-by: WALLACE Creation-date: 26-Apr-82 15:33:49
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: BUGS CTSMON FORK GLOBS MONSYM PAGEM
PROLOG STG SYSFLG TTYSRV
Problem: TOPS-20 does not support Canonical Terminals.
Diagnosis: Code does not exist for such support.
Solution: Add code for Canonical Terminal Support in TOPS-20.
[End of TCO 6.1105]
TCO-number: 6.1106
Written-by: MURPHY Creation-date: 26-Apr-82 16:24:48
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: STG TTYSRV
Problem: Need to count TTY wakeups for performance statistics.
Diagnosis: No such counter.
Solution: Add one.
[End of TCO 6.1106]
TCO-number: 6.1108
Written-by: MOSER Creation-date: 28-Apr-82 14:56:01
Edited-by: MOSER Edit-date: 8-Apr-83 08:46:41
Edit-checked: Yes Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: JSYSF
Problem: JFNS WON'T RETURN ATTRIBUTES FOR PARSE ONLY JFNS EVEN THOUGH IT COULD.
Diagnosis: CODED THAT WAY.
Solution: AT JFNS6 IF PARSE ONLY CALL JFNSAT BEFORE MRETN.
[End of TCO 6.1108]
TCO-number: 6.1109
Written-by: MOSER Creation-date: 28-Apr-82 14:59:33
Edited-by: MOSER Edit-date: 8-Apr-83 08:47:46
Edit-checked: Yes Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: MEXEC
Problem: .CHKAC FAILES IF THE .CKACD (CONNECTED DIRECTORY) IS GARBAGE
EVEN IF THE OTHER ARGUMENTS WOULD GIVE ACCESS.
Diagnosis: IF CONNECTED DIR CANNOT BE CONVERTED TO DIRECTORY NUMBER
CHKAC FAILS IMMEDIATLY.
Solution: DON'T FAIL WHEN YOU CAN SUCCEED.
[End of TCO 6.1109]
TCO-number: 6.1110
Written-by: MOSER Creation-date: 28-Apr-82 15:01:53
Edited-by: MOSER Edit-date: 8-Apr-83 08:47:54
Edit-checked: Yes Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: MEXEC
Problem: CHKAC ARGUMENT BLOCK LENGTH CHECKING IS WRONG.
CHKAC WILL ACCEPT AN ARGUMENT BLOCK THAT IS TOO SHORT IF THE USER
DOSEN'T GIVE A JFN.
Diagnosis: CODE IS WRONG.
Solution: CHECK LENGTH CORRECTLY.
[End of TCO 6.1110]
TCO-number: 6.1122
Written-by: MURPHY Creation-date: 3-May-82 11:33:20
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: STG
Problem: Some scheduler tests need more than 18 bits of data, particularly
as extended addresses may need to be tested.
Diagnosis: Current FKSTAT only provides half-word for data.
Solution: Add second word for test data, FKSTA2, indexed by fork
index.
[End of TCO 6.1122]
TCO-number: 6.1123
Written-by: MURPHY Creation-date: 3-May-82 11:46:22
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: TTYSRV
Problem: System crashes with J0NRUN if CTY is XOFF'd for too
long or is being used for local activity.
Diagnosis: Job 0 blocks waiting to send output to CTY. Output
is blocked indefinitely.
Solution: Time job 0 TTY output block. If output remains blocked
for 30 seconds, clear XOFF. If output remains blocked for
60 seconds, force reload of front-end. If output remains blocked
for 90 seconds, clear output buffer and continue.
[End of TCO 6.1123]
TCO-number: 6.1125
Written-by: MURPHY Creation-date: 4-May-82 10:36:20
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: SCHED
Problem: It would be more convenient to have scheduler tests called
in normal way instead of with JSP T4,. JSP is there for
historical reasons now lost to rational thought.
Diagnosis: As above.
Solution: Change scheduler test calls to use CALL (PUSHJ P,), with
+1 and +2 returns indicating no-wake and wake condition respectively.
Leave a return PC in T4 also so existing tests do not have to be
changed. That is, test routine can act as if called with CALL
or JSP.
[End of TCO 6.1125]
TCO-number: 6.1127
Written-by: CDUNN Creation-date: 4-May-82 13:29:17
Edited-by: CDUNN Edit-date: 4-May-82 13:30:10
Edit-checked: Yes Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: SCHED PHYSIO SCAMPI SCAPAR PAGEM GLOBS
Problem: No SCA support
Diagnosis: No code
Solution: Add code to support both SCA and CI port emulation
[End of TCO 6.1127]
TCO-number: 6.1130
Written-by: MOSER Creation-date: 5-May-82 14:30:09
Edited-by: MOSER Edit-date: 8-Apr-83 08:48:42
Edit-checked: Yes Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: TAPE
Problem: CANNOT SET RECORD SIZE FOR A LABELLED TAPE. DOCUMENTATION SAYS
THAT THIS IS LEGAL ONLY IN DUMP MODE BUT IF YOU TRY IT YOU GET AN MTOX3
ERROR, "FUNCTION NOT LEGAL IN DUMP MODE".
Diagnosis: FUNCTION SHOULD NOT BE LEGAL AT ALL FOR LABELLED TAPES AS IT
IS USLESS.
Solution: ALWAYS RETURN MTOX1, "ILLEGAL FUNCTION".
[End of TCO 6.1130]
TCO-number: 6.1133
Written-by: MOSER Creation-date: 6-May-82 16:17:43
Edited-by: MOSER Edit-date: 8-Apr-83 08:49:37
Edit-checked: Yes Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: FORK
Problem: HUNG JOB.
Diagnosis: A FORK IS JSYS TRAPPED, FROZEN, UNTRAPPED, RESUMED AND FROZEN.
JOB HANGS TRYING TO FREEZE BECAUSE THE TRAPPED FORK IS NOINT BECAUSE OF
THE FREEZE BEFORE THE UTFRK.
Solution: OKINT FROZEN FORK WHEN UNTRAPPING.
[End of TCO 6.1133]
TCO-number: 6.1136
Written-by: MILLER Creation-date: 14-May-82 16:41:51
Edited-by: MILLER Edit-date: 20-Mar-83 17:34:56
Edit-checked: Yes Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: IPCF
Problem: It is not possible to do a "page mode send" from the
monitor specifying a monitor page as the source.
Diagnosis: IPCF assumes that if a "page mode" send is requested, the
page is in user space. The QUEUE% JSYS needs to be able
to send a page a data from monitor space.
Solution: Fix IPCF to get the page from whatever the "previous
context".
[End of TCO 6.1136]
TCO-number: 6.1137
Written-by: COBB Creation-date: 14-May-82 16:45:17
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: JSYSA
Problem: QUEUE% was always sending packets, even though message was set up
in a page.
Diagnosis: Author forgot to turn on page-mode-send bit in MSEND% (ooops)
Solution: Turn on bit
[End of TCO 6.1137]
TCO-number: 6.1142
Written-by: MILLER Creation-date: 19-May-82 10:03:29
Edited-by: MILLER Edit-date: 20-Mar-83 17:35:01
Edit-checked: Yes Document: Yes TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: MEXEC monsym SETSPD
Problem: Many messages that should be directed to the operator
are not available via OPR.
Diagnosis: These messages are generated by the monitor and
are not sent to ORION for dessimination to the operators.
Such messages as: BUGCHK, BUGINF, "resource low" are
among these.
Solution: Send these messages to ORION. For those not
wanting to use this new feature, add a SMON/TMON function
to enable or disable the "old way of doing it", i.e. type
the message on the CTY.
Also, whenever the message cannot be sent to ORION, type
it on the CTY.
Some work in OPR and ORION is needed to fully support this
new code.
[End of TCO 6.1142]
TCO-number: 6.1143
Written-by: MCINTEE Creation-date: 19-May-82 16:29:41
Edited-by: MCINTEE Edit-date: 28-Mar-83 10:54:22
Edit-checked: Yes Document: Yes TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: GTJFN MONSYM
Related-TCO: 6.1030
Problem: GTJFN's node name parsing breaks programs
Diagnosis: Need a way for GTJFN to parse local file specs
Solution: Provide new flag in long form GTJFN, G1%LOC, in extended flags word.
[End of TCO 6.1143]
TCO-number: 6.1144
Written-by: HALL Creation-date: 24-May-82 09:11:01
Edited-by: HALL Edit-date: 23-Mar-83 12:32:41
Edit-checked: Yes Document: Yes TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: MEXEC
Problem:
An ancient MDDT command, "BLT swappable monitor", is left over from the days
of booting from DECtape. Updating it for the 2080 requires work, so now's the
time to remove it.
Diagnosis:
Solution:
Eliminate the command.
[End of TCO 6.1144]
TCO-number: 6.1147
Written-by: MURPHY Creation-date: 26-May-82 15:27:38
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: ALL
Problem: Can't assemble several monitor modules, MACRO dies
with "MCRNEC (Not enough core)".
Diagnosis: Too much stuff in UNV files.
Solution: Move bug definitions from BUGS.MAC to module in which
each is used.
[End of TCO 6.1147]
TCO-number: 6.1148
Written-by: GRANT Creation-date: 1-Jun-82 08:20:47
Edited-by: GRANT Edit-date: 28-Mar-83 19:53:06
Edit-checked: Yes Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: TTYSRV TTPHDV
Problem: You can login over a DECnet line when remote logins are disallowed.
Diagnosis: No code to prevent it.
Solution: Add appropriate logic to line startup code; also, remove a check
on DECnet links which breaks the connection if a character is received
on a line on which there is no job.
[End of TCO 6.1148]
TCO-number: 6.1149
Written-by: COBB Creation-date: 2-Jun-82 11:02:03
Edited-by: COBB Edit-date: 2-Jun-82 11:09:33
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: JSYSA
Problem: QUEUE% jsys does not provide a "Don't wait for response from
application" feature.
Diagnosis: no code
Solution: Add code to check QU%NRS and make code smarter about response
lengths.
[End of TCO 6.1149]
TCO-number: 6.1150
Written-by: GRANT Creation-date: 2-Jun-82 11:36:22
Edited-by: GRANT Edit-date: 28-Mar-83 19:53:47
Edit-checked: Yes Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: FREE
Problem: Resident free space count of free blocks is wrong.
Diagnosis: Free space manager is incorrectly handling a RESBAZ BUGCHK.
Solution: Don't update block count until the address being passed has been
verified.
[End of TCO 6.1150]
TCO-number: 6.1151
Written-by: HALL Creation-date: 2-Jun-82 16:40:33
Edited-by: HALL Edit-date: 23-Mar-83 12:34:56
Edit-checked: Yes Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: APRSRV
Problem:
When a TRVAR adds data beyond the end of the stack, no trap is generated.
Diagnosis:
TRVAR computes the new stack pointer by adding to P and checking for non-negative
left half. On overflow, it does an ADJSP in order to force the trap to occur.
However, since the ADJSP occurs when P is already positive, there is no trap.
Solution:
Subtract from P the number that was added originally, so that the ADJSP will
change the left half of P from negative to zero and generate the trap.
[End of TCO 6.1151]
TCO-number: 6.1152
Written-by: PAETZOLD Creation-date: 2-Jun-82 19:38:55
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: DISC
Problem:
OFNJFN can hang trying to lock a JFN that the fork allready has locked.
Needless to say this can not win.
Diagnosis:
TCO 5.1402 fixed most cases of this. However long files can still fall
through tests. Improve the test to check the OFN againt the long files
superindex block OFN and do not try to lock if they are not the same.
Solution:
As below.
[End of TCO 6.1152]
TCO-number: 6.1153
Written-by: GRANT Creation-date: 3-Jun-82 07:10:47
Edited-by: GRANT Edit-date: 28-Mar-83 19:56:09
Edit-checked: Yes Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: NSPSRV
Related-TCO: 6.1154
Problem: Connections to MCB's NML process are incredibly slow.
Diagnosis: TOPS-20 is violating NSP protocol by sending a data segment prior
to sending a link service ACK.
Solution: In routine SNDCHK, add the appropriate check; create a scheduler
test to be returned if the new check fails.
[End of TCO 6.1153]
TCO-number: 6.1154
Written-by: GRANT Creation-date: 3-Jun-82 07:19:17
Edited-by: GRANT Edit-date: 28-Mar-83 19:56:49
Edit-checked: Yes Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: ttphdv
Related-TCO: 6.1154 6.1153
Problem: DECnet NVT lines hang.
Diagnosis: New test in NSPSRV's SNDCHK causes confusion in TTYSRV.
Solution: If the call to SNDCHK fails and there are characters ready to go,
set the bit in TTSOQ so we will continue to try to send. (Note: This
fix is actually independent of the change made to SNDCHK, it should
have been doing this anyway.)
[End of TCO 6.1154]
TCO-number: 6.1155
Written-by: PAETZOLD Creation-date: 3-Jun-82 23:30:29
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PROLOG
Problem:
Recent edit to prolog deleted XBLTUM and XBLTMU. This is admirable except
that code in JSYSA and other modules use them.
Diagnosis:
Solution:
Put them back in for a little while.
[End of TCO 6.1155]
TCO-number: 6.1156
Written-by: HALL Creation-date: 7-Jun-82 10:17:04
Edited-by: HALL Edit-date: 23-Mar-83 12:35:29
Edit-checked: Yes Document: Yes TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: APRSRV FORK JSYSA
Problem:
When user mode address break was added to the monitor, no provision was
made for exec mode address break.
Diagnosis:
When any process enables address break for user mode references, any
previously-set address break for exec mode references is lost.
Solution:
Allow setting of user mode break only if there is no exec mode break set.
Similarly, allow setting of exec mode break only if there is no user mode
break set. (However, provide a means of forcing exec mode break on and
disabling existing user mode breaks.)
[End of TCO 6.1156]
TCO-number: 6.1157
Written-by: MILLER Creation-date: 8-Jun-82 09:41:10
Edited-by: MILLER Edit-date: 20-Mar-83 17:35:07
Edit-checked: Yes Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: FORK
Problem: The monitor ocassionally sets SC%WHL for a process
so that a privileged operation may be performed on the
process' behalf. Even though the process is NOINT, and
therefore it may not take undo advantage of this
enhanced capability, another job may conclude that this
one is privileged and erroneously allow a privleged operation
to succeed. An example of such a "race" is the LOGIN JSYS.
Diagnosis: The code at GJCAPS returns the enabled capabilites
for a job, but it does not check if any "temporary capabilites"
are included.
Solution: Modify GJCAPS to return the AND of the enabled and potential
capabilites. This will ensure that the mask returned has
only capabilites that the process is entitled to enable.
[End of TCO 6.1157]
TCO-number: 6.1159
Written-by: DONAHUE Creation-date: 9-Jun-82 15:04:10
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: GTJFN
Problem: Any program that uses COMND to parse a long string of commands
(such as a long SAVE command to DUMPER) can get a GJFX51 (Byte count too small)
error.
Diagnosis: COMND will send the entire buffer preceding the current field
to GTJFN as the Control/R buffer. When the length of this field exceeds
the maximum Control/R buffer size, GTJFN will generate the GJFX51 error.
Solution: Since COMND handles the Control/R function, it is not necessary
for GTJFN to bother processing the Control/R buffer. In general, anytime
GTJFN is parsing a string from memory, the Control/R buffer is unecessary
and GTJFN can skip routine GTJTP.
[End of TCO 6.1159]
TCO-number: 6.1160
Written-by: MURPHY Creation-date: 9-Jun-82 15:13:33
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: SCHED
Problem: IDLE time not reported correctly. Fork held in balset
causes unused time to appear as FILW instead of IDLE.
Diagnosis: Has always been this way, but increased used
of HDISMS means some systems show no idle time even when
doing practically nothing.
Solution: If all waiting forks in balance set are in hold,
change time to IDLE.
[End of TCO 6.1160]
TCO-number: 6.1162
Written-by: WALLACE Creation-date: 9-Jun-82 15:52:16
Edited-by: WALLACE Edit-date: 9-Jun-82 15:56:05
Edit-checked: Yes Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: APRSRV
Related-TCO: 6.1161
Problem: The support routines for the stack variable facility will not work
properly with the new version of MACSYM.
Diagnosis: The AC save and stack variable facilities of MACSYM were recently
modified (see TCO 6.1161) to be able to use global stack pointers.
The MONITOR DOES use the definitions in MACSYM but does NOT load
MACREL; instead the necessary support routines are duplicated in
APRSRV. Therefore the support routines, .STKST and .TRSET must be
modified to work with the new MACSYM definitions.
Solution: Modify the support routines .STKST and .TRSET to properly use ADJSP in
conjunction with the new count format, EXP n, which follows the JSP's
of STKVAR and TRVAR.
[End of TCO 6.1162]
TCO-number: 6.1164
Written-by: GRANT Creation-date: 10-Jun-82 07:31:16
Edited-by: GRANT Edit-date: 28-Mar-83 20:02:14
Edit-checked: Yes Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: nsppar
Problem: none
Diagnosis: none
Solution: Expand message header by 4 words to accommodate new data link
protocol.
[End of TCO 6.1164]
TCO-number: 6.1166
Written-by: DONAHUE Creation-date: 11-Jun-82 12:47:04
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: MAGTAP
Problem: When writing a tape at 6250 at DUMPER's maximum blocking
factor (15), DUMPER gets a DUMPX3 error indicating the monitor can not
handle the blocking factor.
Diagnosis: Coding error in the check to see if the buffer is too large.
Solution: In MTDIR5, change the compare to MAXPPB-2 to MAXPPB-1.
[End of TCO 6.1166]
TCO-number: 6.1167
Written-by: CHALL Creation-date: 11-Jun-82 14:59:51
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: COMND
Problem: You can get a "does not match directory..." error when
parsing a token with COMND.
Diagnosis: The NPXNMD error in the token-parsing routine is a typo
for NPXNMT (does not match token).
Solution: In COMND, in routine XCMTOK: change the NPXNMD to NPXNMT.
[End of TCO 6.1167]
TCO-number: 6.1168
Written-by: MILLER Creation-date: 12-Jun-82 20:05:21
Edited-by: MILLER Edit-date: 20-Mar-83 17:35:13
Edit-checked: Yes Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: DTESRV
Problem: Buffers may be lost by DTERSV when a front-end
crashes.
Diagnosis: The routine that is supposed to return all outstanding
buffers to the caller neglects to check if a to -10 (i.e. an
input) is in progress.
Solution: Check for to -10 in progress and return input buffer to
NSP.
[End of TCO 6.1168]
TCO-number: 6.1169
Written-by: PAETZOLD Creation-date: 14-Jun-82 19:48:02
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: TTYSRV
Problem:
BADTTY BUGHLT after a power fail restart.
Diagnosis:
TTDAL is called to detach all lines on a power fail. However some line types
(eg. DZ's or MC's) may not exist. A BADTTY will result.
Solution:
At TTDAL5 check for any lines of the current type and do not attempt to
detach if none exist.
[End of TCO 6.1169]
TCO-number: 6.1170
Written-by: WALLACE Creation-date: 15-Jun-82 14:18:30
Edited-by: WALLACE Edit-date: 15-Jun-82 14:19:43
Edit-checked: Yes Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: TTYSRV
Problem: Scheduler attempts to re-schedule itself and causes
SKDCL1 BUGHLT's.
Diagnosis: The scheduler takes a page fault while processing
characters in routine TTCH7. This is a no no. Page fault
is triggered during a call to STADYN with a bad internal
line number. Line number was bad because variable TTCQLN
was wiped out.
Solution: In routine TCOUBF, if the call to LCKTTY fails, then
get the internal line number from saved AC (Q1) rather than off of
the stack. Evidently code was once changed to use SAVEAC but interally
the routine thought an internal line number was on the top of the
stack. Now a return address is on the top of the stack but TTCH7
used it as a bogus internal line number anyway.
[End of TCO 6.1170]
TCO-number: 6.1171
Written-by: DONAHUE Creation-date: 16-Jun-82 13:38:29
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: COMND
Problem: COMND can not parse a keyword with a colon in it.
Diagnosis: When COMND sees a colon it assumes that it is parsing a switch,
so it terminates the parse.
Solution: When a colon is found, check if we are parsing a switch. If so,
terminate the parse. If not, continue parsing.
[End of TCO 6.1171]
TCO-number: 6.1172
Written-by: DONAHUE Creation-date: 16-Jun-82 13:42:37
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: FILINI DSKALC
Problem: Several ROOT-DIRECTORY files can be migrated, leaving a structure
unmountable. Those files are BACKUP-COPY-OF-ROOT-DIRECTORY.IMAGE, BOOTSTRAP.BIN,
DSKBTBL, FRONT-END-FILE-SYSTEM.BIN and INDEX-TABLE.BIN.
Diagnosis: The exempt from migration bits are not set for these files.
Solution: Change the structure initialization code to set the exempt from
migration bit.
[End of TCO 6.1172]
TCO-number: 6.1173
Written-by: DONAHUE Creation-date: 16-Jun-82 13:53:06
Edited-by: DONAHUE Edit-date: 16-Jun-82 13:54:20
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: IO
Problem: A GET of a nonshareable save file into a process that does not have
write access for one of the pages needed for the file will cause an ILMNRF.
Diagnosis: A GET on a nonshareable save file will read the file in using a SIN,
which does not always protect itself against illegal writes.
Solution: Insert an ERJMP after the IDPB instruction at SIN1+7.
[End of TCO 6.1173]
TCO-number: 6.1174
Written-by: MOSER Creation-date: 17-Jun-82 16:38:36
Edited-by: MOSER Edit-date: 8-Apr-83 08:51:45
Edit-checked: Yes Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: MSTR
Problem: MAPBT1 BUGHLT.
Diagnosis: THE CHECKD COMMAND REBUILD (BIT TABLE OF) ... TRIES TO MOUNT THE
STRUCTURE IN QUESTION AND SPECIFIES THAT ERRORS ARE TO BE IGNORED. MSTR
FINDS THAT THERE IS NO BITTABLE BUT LATER TRIES TO CHECK IT'S VALIDITY VIA
A CALL TO CHKBT WHICH CALLS MAPBTB WHICH CRASHES.
Solution: DON'T CHECK NONEXISTENT BITTABLES.
[End of TCO 6.1174]
TCO-number: 6.1176
Written-by: WALLACE Creation-date: 23-Jun-82 16:55:38
Edited-by: WALLACE Edit-date: 23-Jun-82 16:55:57
Edit-checked: Yes Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: TAPE
Problem: The TAPE device dispatch routine MTATR clobbers AC's
U and IOS.
Diagnosis: GTJFN does not expect the AC clobberage when it
calls MTATR.
Solution: At the beginning of routine MTATR save the AC's
U and IOS.
[End of TCO 6.1176]
TCO-number: 6.1180
Written-by: PAETZOLD Creation-date: 28-Jun-82 13:52:17
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: Yes
Program: MONITOR
Routines-affected: APRSRV
Problem:
Wierd crashes from MUUO entry code in APRSRV caused by executing an
illegal extend instruction in an extended section.
Diagnosis:
A Microcode bug in previous context XBLT is causing the ACs to get smashed.
We are exercising this bug with an extra MCENTR in the illegal instruction
code.
Solution:
Move the MCENTR in the gfloat code down past the opcode checks. THis bug
is also in release 5.
[End of TCO 6.1180]
TCO-number: 6.1181
Written-by: WALLACE Creation-date: 30-Jun-82 11:09:51
Edited-by: WALLACE Edit-date: 30-Jun-82 11:11:44
Edit-checked: Yes Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: JSYSF
Problem: JFNS% does not output all attributes on a parse only JFNS.
Diagnosis: Code assumes after outputting the protection, account, and
temporary attributes, that there are no more legal attributes for
parse only JFN's.
Solution: At JFNS6, if the JFN is parse only then add a call to
JFNSAT, which will output any linked attributes, before jumping
to MRETN.
[End of TCO 6.1181]
TCO-number: 6.1183
Written-by: COBB Creation-date: 7-Jul-82 16:13:33
Edited-by: COBB Edit-date: 7-Jul-82 16:42:42
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: STG MEXEC
Problem: No problem, just making an enhancement
Diagnosis: Monitor does not know about the new logical name "DEFAULT-EXEC:".
Solution: In MEXEC at job startup, change SYSTEM:EXEC.EXE to DEFAULT-EXEC:.
In STG, make DEFAULT-EXEC: a system-wide logical name.
[End of TCO 6.1183]
TCO-number: 6.1184
Written-by: CDUNN Creation-date: 12-Jul-82 13:46:08
Edited-by: CDUNN Edit-date: 12-Jul-82 13:46:55
Edit-checked: Yes Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: MEXEC
Problem: ATACH% JSYS does not allow attaching to a terminal assigned by the
caller.
Diagnosis: Data returned from TTYSRV routine GTCJOB was tested incorrectly.
Solution: Fix ATACH to compare the returned job number in T3 with JOBNO instead
of -1.
[End of TCO 6.1184]
TCO-number: 6.1185
Written-by: LEACHE Creation-date: 12-Jul-82 15:05:56
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: DISC
Problem: OPENF bit OF%RDU does not work for directory files.
Diagnosis: Test at DSKOPA-2 only allows OF%THW.
Solution: Add OF%RDU to previously described test.
[End of TCO 6.1185]
TCO-number: 6.1189
Written-by: CDUNN Creation-date: 19-Jul-82 22:28:03
Edited-by: CDUNN Edit-date: 19-Jul-82 22:28:38
Edit-checked: Yes Document: Yes TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: SETSPD
Problem: SETSPD doesn't understand how to copy dumps to structures other than
PS:
Diagnosis: No code
Solution: Teach SETSPD to do the proper sequence of MSTR's to mount the
structure implied by logical name DMP:. Note that this is a new feature and
should be documented.
[End of TCO 6.1189]
TCO-number: 6.1191
Written-by: MOSER Creation-date: 22-Jul-82 14:06:43
Edited-by: MOSER Edit-date: 8-Apr-83 08:52:33
Edit-checked: Yes Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PAGEM
Problem: ILPAG1 BUGHLTS.
Diagnosis: MOVDSK CALLS SKPNWR TO INSURE THAT A PAGE IS NOT BEING WRITTEN
BEFORE SWAPOUT BUT IT THEN CALLS AGECHK WHICH CAN DISMS. THIS CAN LOSE IF
DDMP RUNS AND DECIDES TO SWAP OUT THE PAGE.
Solution: CALL SKPNWR AGAIN AFTER CALLING AGECHK.
[End of TCO 6.1191]
TCO-number: 6.1192
Written-by: DONAHUE Creation-date: 27-Jul-82 09:01:28
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PAGEM
Problem: SWPSTL Bugchk's.
Diagnosis: Routine ADJSWP forgets to set up T1 before calling SETSSP,
which expects T1 to have the total number of drum pages.
Solution: Set up T1.
[End of TCO 6.1192]
TCO-number: 6.1193
Written-by: COBB Creation-date: 27-Jul-82 14:35:11
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PAGEM SCHED
Problem: Routine NBNSB, which keeps a count of NOSKED page-fault locations,
adds needless overhead to page-fault and scheduler code.
Diagnosis: Code is really for debugging.
Solution: Put it under SKEDSW conditional (and make table for PC,,counts 100
words long instead of 20, to get more data when debugging)
[End of TCO 6.1193]
TCO-number: 6.1194
Written-by: COBB Creation-date: 27-Jul-82 14:38:58
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: MEXEC
Problem: Top forks which have ENQ locks never release them.
Diagnosis: Code in MEXEC regards (as do we all) the top fork of a job as
sacred. While killing an inferior fork takes pains to release the locks,
a top fork does not.
Solution: In MEXEC, after SJLGO4, add a call to ENQFKR to release locks. FTS-20
is one example of a program which needs this.
[End of TCO 6.1194]
TCO-number: 6.1195
Written-by: MOSER Creation-date: 27-Jul-82 15:43:26
Edited-by: MOSER Edit-date: 8-Apr-83 08:53:14
Edit-checked: Yes Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: JSYSA
Problem: NODE NAMES ARE NOT EVER FILLED IN IN USAGE RECORDS EVEN IF SUPPLIED.
Diagnosis: CODED LIKE THAT.
Solution: FILL IN THE NODE NAME IF THE USER SUPPLIES ONE.
[End of TCO 6.1195]
TCO-number: 6.1196
Written-by: CDUNN Creation-date: 28-Jul-82 21:32:12
Edited-by: CDUNN Edit-date: 28-Jul-82 21:32:41
Edit-checked: Yes Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: DSKALC
Problem: DSKOP JSYS does not allow use of the DOP%EO bit as documented.
Diagnosis: the DOP%EO flag was not included in the list of allowed flags.
Solution: Add the DOP%EO bit to the list of allowed flags.
[End of TCO 6.1196]
TCO-number: 6.1198
Written-by: WACHS Creation-date: 30-Jul-82 04:41:29
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: STG PHYH2 PHYSIO PHYPAR
Problem: Mods for CI/KLIPA stuff
Diagnosis: yes
Solution: yes
[End of TCO 6.1198]
TCO-number: 6.1199
Written-by: CDUNN Creation-date: 30-Jul-82 09:59:59
Edited-by: CDUNN Edit-date: 30-Jul-82 10:00:20
Edit-checked: Yes Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PAGEM
Problem: CFS code dies with ILLUUO
Diagnosis: Forgotten RET in CFSFCA (inside IFNSK. macro) falls into
unexpected code
Solution: Add the RET
[End of TCO 6.1199]
TCO-number: 6.1201
Written-by: MOSER Creation-date: 30-Jul-82 14:30:02
Edited-by: MOSER Edit-date: 8-Apr-83 08:53:21
Edit-checked: Yes Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: JSYSF
Problem: CHFDB will return CFDBX2 (illegal to change specified bits) when
CFBDX3 (write or owner access required) is more appropriate.
Diagnosis: Oversight.
Solution: Return correct error.
[End of TCO 6.1201]
TCO-number: 6.1202
Written-by: MOSER Creation-date: 30-Jul-82 14:32:58
Edited-by: MOSER Edit-date: 8-Apr-83 09:04:28
Edit-checked: Yes Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: TTPHDV
Problem: ILMNRF Running SETHOST.
Diagnosis: TINET3 calls TTCBF9 with static pointer. TTCBF9 expects dynamic
pointer. Stuff gets trashed and finally TTRLBF gets called which kills the
system.
Solution: Do a STADYN before calling TTCBF9.
[End of TCO 6.1202]
TCO-number: 6.1203
Written-by: PAETZOLD Creation-date: 31-Jul-82 13:15:58
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: DEVICE
Problem:
Damn NUMSIX routine in DEVICE puts PC into section zero.
Diagnosis:
Routine plays with the stack by sotring information in the left half of
the return PC.
Solution:
Rewrite it.
[End of TCO 6.1203]
TCO-number: 6.1205
Written-by: MILLER Creation-date: 2-Aug-82 18:43:05
Edited-by: MILLER Edit-date: 20-Mar-83 17:35:19
Edit-checked: Yes Document: Yes TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PAGEM monsym
Problem: Many large applications exhibit behavior contrary to the
expectations of the monitor's working set manager. These applications
have no way of directing the monitor to manage the working set
more apporpriately. An example of such an application is LISP.
Diagnosis: As above.
Solution: Add a new JSYS: WSMGR. This JSYS allows a program
to delete pages from its working set, to prefault some of its
pages, to discover its current working set as well as to
to "reset" its working set. A complete description of the
new JSYS is in <DOC-SPECS>WSMGR.SPC
[End of TCO 6.1205]
TCO-number: 6.1206
Written-by: MOSER Creation-date: 4-Aug-82 13:56:44
Edited-by: MOSER Edit-date: 8-Apr-83 09:04:33
Edit-checked: Yes Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: DISC
Problem: If the system crashes after a long file has been closed by a writer
who has the file open short the file may be corrupted.
Diagnosis: File is not checked for new longness during close.
Solution: Check FDB for FB%LNG and if set make the file be a long file
for our job in DSKCLZ.
[End of TCO 6.1206]
TCO-number: 6.1207
Written-by: MOSER Creation-date: 4-Aug-82 13:59:23
Edited-by: MOSER Edit-date: 8-Apr-83 09:04:42
Edit-checked: Yes Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: IPCF
Problem: MSEND can fail with undeserved IPCF11 (WHEEL or IPCF privs required).
Diagnosis: VALARG check -1-(some legal bits) instead of just privleged
bits. Thus if a innocuous bit is set it fails.
Solution: Check the right thing (IP%CFP)
[End of TCO 6.1207]
TCO-number: 6.1208
Written-by: MOSER Creation-date: 4-Aug-82 14:01:20
Edited-by: MOSER Edit-date: 8-Apr-83 09:04:48
Edit-checked: Yes Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: FORK
Problem: WFORK waits forever if the fork in question is halted and frozen.
Diagnosis: Only major state is checked.
Solution: If fork is frozen check pre-freeze state for halted or forced
termination in TRMTST.
[End of TCO 6.1208]
TCO-number: 6.1217
Written-by: PAETZOLD Creation-date: 6-Aug-82 14:23:51
Edited-by: PAETZOLD Edit-date: 17-Aug-82 18:16:36
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PHYSIO PHYP2 PHYP4 PHYPAR GLOBS STG
Related-TCO: 6.1220 6.1228
Problem:
Disk read/write counts in UDBs differ from the counts in the SYSTAT
GETTAB table.
Diagnosis:
Read after Write disk skip reads are counted as normal disk reads in the
UDBs. However they are not counted at all in the system wide read/write
counts for the SYSTAT GETTAB table.
Solution:
Add a new word to the SYSTAT gettab table called DSKRVC. This word will
bumped for each skip read. Also add a word to the UDB call UDBRVC which
will be incremented for each skip read for the unit.
[End of TCO 6.1217]
TCO-number: 6.1219
Written-by: PAETZOLD Creation-date: 9-Aug-82 15:05:40
Edited-by: PAETZOLD Edit-date: 9-Aug-82 15:06:44
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PROLOG filnft NETWRK NSPSRV DISC MAGTAP
TAPE DISC LINEPR CDRSRV cdpsrv FESRV
FILMSC GTJFN
Problem:
Some device dependant routines need to be notified of the releaseing of
JFNs in order to release free space etc...
Diagnosis:
RELJFN does not currently call any device dependant stuff in the dtb.
Solution:
Add a new offset to the DTB which is called in RELJFN. Modify all existing
DTBs to have an entry.
[End of TCO 6.1219]
TCO-number: 6.1221
Written-by: CDUNN Creation-date: 9-Aug-82 19:27:04
Edited-by: CDUNN Edit-date: 9-Aug-82 19:28:20
Edit-checked: Yes Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: STG
Problem: TRAPSK to short for CFS support
Diagnosis: Not enough words in the allocated stack
Solution: Move ENSKR to before the hardware locs in the PSB and PIPDB after
the hardware locs. This allows 32 (octal) more words for TRAPSK.
[End of TCO 6.1221]
TCO-number: 6.1223
Written-by: LEACHE Creation-date: 9-Aug-82 20:59:43
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: MEXEC
Problem: The "WHY RELOAD" question won't accept lowercase. Also,
it has a nasty habit of typing out unwanted help text.
Diagnosis: As Above.
Solution: Set bit RD%RAI in the RDTTY so that lowercase will be accepted.
If an erroneous response is made, type out the following message:
Not a valid response (?=HELP).
Only type out the help message if the user types a question mark (followed
by a CRLF).
[End of TCO 6.1223]
TCO-number: 6.1224
Written-by: HAUDEL Creation-date: 10-Aug-82 10:22:28
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: DISC
Problem:
When executing a LOGOUT command, with opened files (long) on a
dismounted structure, the system crashes with an ILMNRF (Illegal to
map file on dismounted structure).
Diagnosis:
The code in OFNJFT does not check for dismounted structure.
Solution:
Add code to check for dismounted structure and RET if structure
is dismounted.
[End of TCO 6.1224]
TCO-number: 6.1226
Written-by: GRANT Creation-date: 16-Aug-82 07:46:50
Edited-by: GRANT Edit-date: 28-Mar-83 20:02:53
Edit-checked: Yes Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: IO PROLOG STG GLOBS
Related-TCO: 6.1236
Problem: Extremely difficult to write a TOPS-20 device driver which does
asynchronous I/O on a JFN.
Diagnosis: TOPS-20 device independent I/O has no provisions for it. IO.MAC
assumes synchronous I/O on a JFN.
Solution: Create new words in the JFN block so that input and output counts
and byte pointers are maintained separately.
Create a new file status bit which new device drivers will set when
doing output.
Put tests in IO.MAC to check for new output so IO.MAC will use the
appropriate storage locations.
[End of TCO 6.1226]
TCO-number: 6.1227
Written-by: GRANT Creation-date: 16-Aug-82 14:03:30
Edited-by: GRANT Edit-date: 28-Mar-83 20:03:53
Edit-checked: Yes Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: STG
Problem: System running out of swappable free space.
Diagnosis: Number of DECnet servers is growing.
Solution: Expand DECnet's swappable storage.
[End of TCO 6.1227]
TCO-number: 6.1228
Written-by: PAETZOLD Creation-date: 17-Aug-82 18:11:19
Edited-by: PAETZOLD Edit-date: 17-Aug-82 18:16:36
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PHYP4 phyp2
Related-TCO: 6.1217
Problem:
UDBRED and UDBRCT do not conform.
Diagnosis:
UDBRED includes skip reads and UDBRCT does not. SPEAR uses UDBRED in
its reports.
Solution:
For the sake of uniformity include skip reads in UDBRCT and watch will
subtract them out. Gene Leache wanted this TCO.
[End of TCO 6.1228]
TCO-number: 6.1229
Written-by: LEACHE Creation-date: 17-Aug-82 19:45:50
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: TTYSRV
Problem: SEND-ALL lock improperly managed.
Diagnosis: TTYSRV obtains the SEND-ALL lock and then checks for user
privileges. If the check fails, a GTDIX1 error is generated, but the
SEND-ALL lock is NOT cleared. Subsequently, no SEND-ALL's can be
performed.
Solution: Clear the lock when the privilege-check fails.
[End of TCO 6.1229]
TCO-number: 6.1230
Written-by: MCINTEE Creation-date: 18-Aug-82 14:05:28
Edited-by: MCINTEE Edit-date: 28-Mar-83 10:54:46
Edit-checked: Yes Document: Yes TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: JSYSA JSYSF MONSYM PROLOG
Related-TCO: 6.1030 6.1270
Problem: For remote aliases, DIM has a need
Diagnosis: As of today no one has taken the lead
Solution: 'Tis I who shall go
and write T C O,
with great stylishness, accomplishing the deed.
(Teach CRDIR% to insert, delete, and change accounts and passwords in the
directory's remote alias list. Teach GTDIR% to spew out the remote alias list,
if desired)
[End of TCO 6.1230]
TCO-number: 6.1232
Written-by: LEACHE Creation-date: 19-Aug-82 17:40:19
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: MONSYM TTYSRV
Problem: If one attempts to assign a TTY while a short block is assigned
for the line, a TTYX01 error is returned ("Line is not active"). Actually,
the line is active, but only temporarily so.
Diagnosis: TTYX01 has been spread a little thin.
Solution: Create TTYX03 ("Line is temporarily active") and return that in
the above mentioned case.
[End of TCO 6.1232]
TCO-number: 6.1233
Written-by: LEACHE Creation-date: 19-Aug-82 19:01:26
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: DSKALC
Problem: Bit DOP%EO (generate error on drive offline) is always on for
DSKOPS.
Diagnosis: DOP%EO may or may not be turned on by the user in the DSKOP.
It should also be turned on by the monitor when a multi-page transfer has
been requested; unfortunately, the monitor always turns it on.
Solution: Change the monitor to set DOP%EO only for multi-page transfers.
[End of TCO 6.1233]
TCO-number: 6.1236
Written-by: GRANT Creation-date: 25-Aug-82 06:03:47
Edited-by: GRANT Edit-date: 28-Mar-83 20:03:27
Edit-checked: Yes Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: NSPSRV
Related-TCO: 6.1226
Problem: Can't communicate with VMS.
Diagnosis: Incorrect bytes being returned to user program HOST.
Solution: New 2-way I/O definitions in the JFN block cause confusion in
NSPSRV. Have NSPSRV use FILBNO instead of FILBFI.
[End of TCO 6.1236]
TCO-number: 6.1237
Written-by: LEACHE Creation-date: 25-Aug-82 12:13:43
Edited-by: LEACHE Edit-date: 25-Aug-82 12:23:50
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: APRSRV
Problem: When the KLSTAT feature of SPEAR is enabled, an AR/ARX parity
error crashes the monitor with a MONPDL, and the KLSTAT block does
not get written.
Diagnosis: Routine ALCSEB, which allocates SYSERR blocks from resident free
space, consumes more stack space than was ever allocated for the KLSTAT
stack (BUGSPL).
Solution: Increase size of stack.
[End of TCO 6.1237]
TCO-number: 6.1238
Written-by: LEACHE Creation-date: 27-Aug-82 15:29:00
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: DISC
Problem: Directory page-allocation counts are inaccurate.
Diagnosis:
(1) GALAXY is stepping on the monitor's toes by changing the page
count of output files.
(2) Anytime a directory file is closed, its own page count goes-nonzero,
skewing the disk allocation counts.
Solution:
(1) Have GALAXY changed to stop changing the page count with CHFDB.
(2) On a file close, only update the page count if the file is open
for WRITE/APPEND and is a non-directory file. For the time being,
a directory file should never have a non-zero page count.
[End of TCO 6.1238]
TCO-number: 6.1239
Written-by: MOSER Creation-date: 27-Aug-82 16:33:24
Edited-by: MOSER Edit-date: 8-Apr-83 09:04:59
Edit-checked: Yes Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: DIRECT
Problem: New files can be temporary even if GJ%TMP is not set.
Diagnosis: Bit is propagated if an old generation of the file exists which
is temporary.
Solution: Zero the FB%TMP bit when copying info from old FDB to new one.
[End of TCO 6.1239]
TCO-number: 6.1243
Written-by: MCINTEE Creation-date: 31-Aug-82 10:24:15
Edited-by: MCINTEE Edit-date: 28-Mar-83 10:55:06
Edit-checked: Yes Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: GTJFN GLOBS
Problem: Error messages while attempting to compile GTJFN
Diagnosis: The ENDSTR macro is interfering with the ENDSTR routine
Solution: Change the ENDSTR routine to ENDSTX
[End of TCO 6.1243]
TCO-number: 6.1244
Written-by: LEACHE Creation-date: 31-Aug-82 11:10:44
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: STG
Problem:
The monitor's terminal characteristics are not correct for VK100 terminals.
Diagnosis:
As above.
Solution:
Change width to 84 and use correct escape sequence for screen erasure.
[End of TCO 6.1244]
TCO-number: 6.1245
Written-by: HALL Creation-date: 1-Sep-82 15:57:40
Edited-by: HALL Edit-date: 23-Mar-83 12:36:29
Edit-checked: Yes Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: DTESRV
Problem:
Occasionally when we reload the -11, we get into section 0. This is bad,
because we could wind up referencing the DST (which is in a non-zero
section).
Diagnosis:
A special routine, JHTEST, is called under the DTESW conditional at
various times during the reload procedure. It BUGHLT's if it is called
from section 0.
Solution:
The bomb went off!!!! The routine RELODR does a transfer indirect through
a table that doesn't have IFIWs. That gets us into section 0. Ordinarily
this occurs after the checks, and after the code that needs to run in
section 1. However, an exception occurs if the -11 crashes a second time
before we exit from this code. If that happens, we try to reload it again,
and this time we're in section 0, and the bomb goes off.
I've been looking for this one since July 1981. Do I get TCO-of-the-week?
[End of TCO 6.1245]
TCO-number: 6.1246
Written-by: MOSER Creation-date: 1-Sep-82 16:18:29
Edited-by: MOSER Edit-date: 8-Apr-83 09:05:06
Edit-checked: Yes Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: SCHED
Problem: ILMNRF when JSYS trapping.
Diagnosis: At TRPSI4 a load is done indexing off of T1. TRPSI4 can be
gotten to after calling JTLOCK which trashes T1.
Solution: Use P6 instead of T1 to index.
[End of TCO 6.1246]
TCO-number: 6.1247
Written-by: LEACHE Creation-date: 2-Sep-82 18:17:18
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: MONSYM JSYSA JSYSF PROLOG
Problem:
No password encryption.
Diagnosis:
No password encryption code.
Solution:
Add password encryption code.
[End of TCO 6.1247]
TCO-number: 6.1251
Written-by: MCINTEE Creation-date: 3-Sep-82 15:27:07
Edited-by: MCINTEE Edit-date: 28-Mar-83 10:55:20
Edit-checked: Yes Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: NSPSRV
Problem: MONPDL bughlt from NODE% jsys
Diagnosis: Code pushes ALL reachable node numbers onto stack. So, if
there happens to be too many reachable nodes, crash occurs.
Solution: Change code in routine NDGNT.
[End of TCO 6.1251]
TCO-number: 6.1255
Written-by: MILLER Creation-date: 7-Sep-82 10:36:57
Edited-by: MILLER Edit-date: 20-Mar-83 17:35:29
Edit-checked: Yes Document: Yes TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: MEXEC
Problem: When one is debugging and must reload the monitor frequently,
the start-up dialog is a nuisance.
Diagnosis: There is no way to suppress entering the time and date and
"reload reason".
Solution: If DBUGSW=3, suppress the start up questions.
[End of TCO 6.1255]
TCO-number: 6.1257
Written-by: WEETON Creation-date: 9-Sep-82 16:42:13
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: MEXEC
Problem: When doing a proxy attach, T4 is supposed to contain the terminal
to which to the job is going to be attached to. ATACH, however, assumes
that the data in T4 is correct. But, if T4 contains some type of device
designator other than a terminal, it will blindly pretend T4 contains
a terminal designator.
Diagnosis: No code to check if T4 contains one following: 600012,,n -or-
0,,.TTDES+n -or- terminal number.
Solution: Add Code.
[End of TCO 6.1257]
TCO-number: 6.1258
Written-by: MOSER Creation-date: 10-Sep-82 13:04:45
Edited-by: MOSER Edit-date: 8-Apr-83 09:05:16
Edit-checked: Yes Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: DIRECT
Problem: Lost pages. Long files become short. Wrong creation dates on files.
Possibly lots of other problems.
Diagnosis: When a user aquires a JFN on a file specifying a generation
of -1 or a generation of 0 and not requiring an old file TOPS-20
may try to reuse old FDBs which are marked nonexistant which correspond
to the file that the user requested. If these nonexistant FDBs are
associated with an open file which is later closed then the file may
be in a strange state because the FDBs are reinitialized before they are
reused.
Giving a totally new FDB will not work because programs depend on FOO.BAR.-1
to give them a JFN associated with an open file if there is one.
Solution: If the reusable FDB is found to correspond to an open file then
do not reinitialize the FDB but still return it.
[End of TCO 6.1258]
TCO-number: 6.1259
Written-by: MILLER Creation-date: 10-Sep-82 13:29:29
Edited-by: MILLER Edit-date: 20-Mar-83 17:35:36
Edit-checked: Yes Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: MEXEC SCHED
Problem: A "remote logout" of a job may cause the logged out
job to overlfow its stack.
Diagnosis: Some cases of remote logout do not cause the stack
to be intialized. Therefore, the logout code is entered with
the stack in whatever state it was when the remote logout was
detected. If the job was in the midst of a monitor routine that
uses most of the stack: boom!
Solution: Fix the routines JOBCOF, in MEXEC, and PIRLGO, in SCHED,
to force the stack to be intialized by FLOGO.
[End of TCO 6.1259]
TCO-number: 6.1260
Written-by: MOSER Creation-date: 13-Sep-82 12:42:07
Edited-by: MOSER Edit-date: 8-Apr-83 09:05:28
Edit-checked: Yes Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: TAPE
Problem: Cannot read Format D EBCDIC tapes.
Diagnosis: Open code in TAPE calls SETRSZ to set the record size if there is a
record size present in the HDR2 label. For format D tapes this field contains
zeros which is correct for format D but the code does not allow it.
Solution: Allow record size 0 for format D tapes.
[End of TCO 6.1260]
TCO-number: 6.1261
Written-by: MOSER Creation-date: 13-Sep-82 14:18:04
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: TAPE
Problem: Cannot read certain EBCDIC tapes.
Diagnosis: TOPS-20 enforces the "EBCDIC volume switch indicator" in the HDR2.
While some systems write this others apparently do not.
Solution: If it isn't there forget it. The tape will read fine without it.
[End of TCO 6.1261]
TCO-number: 6.1262
Written-by: MOSER Creation-date: 13-Sep-82 17:34:21
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: JSYSA
Problem: GTDIR WITH DIRECTORY NUMBER 0 IS ADVERTISED TO RETURN SYSTEM
DEFAULTS IN THE BLOCK. THE OFFLINE EXPIRATION DATE IS WRONG IF THE DEFAULT
HAS BEEN CHANGED USING SMON.
Diagnosis: AS ABOVE.
Solution: USE TAPE RECYCLE PERIOD INSTEAD OF A MAGIC NUMBER UNLESS
THE MAGIC NUMBER IS ALL THERE IS.
[End of TCO 6.1262]
TCO-number: 6.1263
Written-by: PAETZOLD Creation-date: 14-Sep-82 10:38:03
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: TTYSRV
Problem:
TYLMD and TTOCN in TTDAT1 conflict. the MSB for one is the LSB for the other.
Diagnosis:
Solution:
Change DEFSTR for TYLMD to end on bit four instead of bit 5. This is a
two bit field and bits 0,1,2,3 were allready free.
[End of TCO 6.1263]
TCO-number: 6.1264
Written-by: MOSER Creation-date: 14-Sep-82 10:54:14
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: MEXEC
Problem: ACJ sometimes gets function .GOLGO (logout) with the arguments
in the wrong order.
Diagnosis: There are 2 GTOKMs in the monitor for .GOLGO one of them is correct.
Solution: Make GTOKM at JOBCF1 pass arguments in correct order.
[End of TCO 6.1264]
TCO-number: 6.1265
Written-by: MOSER Creation-date: 14-Sep-82 10:57:54
Edited-by: SHTIL Edit-date: 7-Dec-84 11:08:35
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: JSYSA
Related-TCO: 6.2283
Problem: RCVOK argument block word .RCTER contains 0,,-1 for detached job.
This is undocumented and nonstandard.
Diagnosis: DEFSTR of GOKTRM is for 18 bits in the right half this prevents
the normal -1 for detached job. The left half word is unused.
Solution: Make the DEFSTR for GOKTRM use 36 bits.
[End of TCO 6.1265]
TCO-number: 6.1266
Written-by: PAETZOLD Creation-date: 14-Sep-82 19:46:57
Edited-by: PAETZOLD Edit-date: 14-Sep-82 19:48:59
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: TTYSRV
Problem:
Unprived TTMSG JSYS can be used to output obnoxious control character strings
to unsuspecting users.
Diagnosis:
No checking of characters from user is performed.
Solution:
Check the characters the user has in the string. Discard all control characters
except BEL, CR, LF, and HT. This only affects unprived TTMSGs to a single line.
[End of TCO 6.1266]
TCO-number: 6.1271
Written-by: MILLER Creation-date: 17-Sep-82 13:49:01
Edited-by: MILLER Edit-date: 20-Mar-83 17:35:41
Edit-checked: Yes Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PAGEM PROLOG
Problem: A page fault during the scheduler's 20 MS cycle can
cause untold side-effects -- all of them bad.
Diagnosis: The scheduler performs the 20 MS tasks in the context
of whatever is running at the time. If this is other than the
scheduler, page faults dispatch to PGRTRP instead of to KIPFS.
The code at PGRTRP assumes it is not used when the scheduler is
running.
Solution: Check for this case and dispatch to KIPFS should it occur.
Put the code under a new DEBUG conditional, CKSPFL.
[End of TCO 6.1271]
TCO-number: 6.1273
Written-by: LEACHE Creation-date: 20-Sep-82 10:02:32
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: MONSYM PROLOG DSKALC FILINI MEXEC MSTR
Problem:
There are 2 separate sets of flags for the flag word in the home blocks,
and these sets can overlap if new flags are added to either set.
Diagnosis:
One set (MS%xxx) is defined in MONSYM and one set (part of the MI%xxx series)
is defined in PROLOG.
Solution:
Change the appropriate subset of the MI%xxx series (MI%ASG and MI%MXB) to
the MS%xxx series and define them in MONSYM.
[End of TCO 6.1273]
TCO-number: 6.1280
Written-by: MURPHY Creation-date: 23-Sep-82 17:18:03
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: SCHED
Problem: Sluggish response, slow logouts, possibly others.
Diagnosis: NEWST not making adequate distinction between
completely compute-bound jobs and jobs which block
for short-to-moderate periods of time. Particularly with
large load averages, jobs can stay in low queue even
after blocks of a minute or more.
Solution: Revise NEWST algorithms. Make handling of low queue
forks more like previous releases.
[End of TCO 6.1280]
TCO-number: 6.1282
Written-by: MOSER Creation-date: 24-Sep-82 17:02:34
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: Yes
Program: MONITOR
Routines-affected: PAGEM
Problem: Swap errors for directories are treated just like swap errors
for ordinary files. Directories are usually somewhat more important.
Diagnosis: It is impossible to determine at swap in time whether a given
page is in a directory or not. Consequently nothing special is done and
the poor user just has to wait for the ax to fall.
Solution: Check at read complete time whether the OFN for a page
with a swap error is the same as DIROFN if so give a new BUGCHK, SWPDIR.
[End of TCO 6.1282]
TCO-number: 6.1283
Written-by: MOSER Creation-date: 24-Sep-82 17:26:47
Edited-by: MOSER Edit-date: 24-Sep-82 17:27:31
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: Yes
Program: MONITOR
Routines-affected: DISC
Problem: When the monitor marks a file as possibly bad, FB%BAT in the
FDB, it isn't assertive enough. It may be quite awhile before the user
notices the bit is set and when he does notice he has no idea when
it happened or what backup tape has a good copy of his file.
Diagnosis: As above.
Solution: Invent a new BUGINF, FILBAT, and issue it when setting FB%BAT.
[End of TCO 6.1283]
TCO-number: 6.1284
Written-by: MOSER Creation-date: 24-Sep-82 17:32:56
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: JSYSA
Problem: When the monitor times out an ACJ request it almost always
does the wrong thing.
Diagnosis: When issuing a RCVTMR BUGCHK the monitor kills the ACJ
and then looks through the queue of requests and attempts to deny
or allow them depending on the default. It also trashes the AC
which indexes into the default table and ends up using the
default for function number 1 for every request.
For GIVTMR BUGCHKs it uses a wrong skip instruction and denies all
requests which should be allowed and allows all which should be
denied.
Solution: Fix code to do the right stuff.
[End of TCO 6.1284]
TCO-number: 6.1285
Written-by: MOSER Creation-date: 27-Sep-82 14:40:23
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PAGEM
Problem: J0NRUN Bughlts.
Diagnosis: Dump shows STRLOK locked. DDMP locks STRLOK before going NOINT
it seems to be the likely culprit.
Solution: NOINT before locking STRLOK at DDMP.
[End of TCO 6.1285]
TCO-number: 6.1291
Written-by: MOSER Creation-date: 30-Sep-82 10:22:20
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: TAPE
Problem: MTOPR function .MONTR (set "no translate" for EBCDIC tapes) works
in a very strange way.
Diagnosis: "No translate" implies that records should not have CRLF appended
to the ends. This is setup when the tape is opened. It is illegal to
set no translate when the tape is closed. The only way to prevent CRLFs
is to open the tape, set no translate, close the tape, open it again.
Solution: Make .MONTR clear "append CRLFs" when it is done. Also make this
function legal if the file is not opened.
[End of TCO 6.1291]
TCO-number: 6.1292
Written-by: LEACHE Creation-date: 30-Sep-82 18:23:48
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: FUTILI
Problem:
Bad 30-bit addresses dupplied to the NODE JSYS can crash the monitor.
Diagnosis:
At STRDIR3:
UMOVEM A,@C
WIll cause an ILLIND BUGHLT if bits 0 and 1 are on in C.
Solution:
Change the above instruction to:
UMOVEM A,(C)
[End of TCO 6.1292]
TCO-number: 6.1294
Written-by: NEUSTAEDTER Creation-date: 1-Oct-82 05:08:58
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: APRSRV STG PROLOG globs
Problem: none
Diagnosis: none
Solution: Implement a recovery address for BUG. This becomes the 8th field
in the BUG. macro (after the long text), and does not have to be supplied
unless used. The macro will only generate the word containing the recovery
address if it is being used, which means that all current BUG.s will still
generate the same code as they used to.
[End of TCO 6.1294]
TCO-number: 6.1299
Written-by: LEACHE Creation-date: 4-Oct-82 22:50:01
Edited-by: LEACHE Edit-date: 4-Oct-82 23:09:20
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: APRSRV
Problem: Bad byte pointers supplied to a JSYS can crash the monitor.
Diagnosis: As above.
Solution: Change KIMXCT so that it returns +1 (to monitor code) if we
are NOINT at the time of the trap, and generates an illegal instruction trap
to user code if we are not NOINT.
[End of TCO 6.1299]
TCO-number: 6.1300
Written-by: MOSER Creation-date: 6-Oct-82 13:08:48
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: JSYSA
Problem: Spurious RCVTMR BUGCHKs.
Diagnosis: When a single request is queued it may be removed before
the ACJ does a RCVOK. The GETOK starts the request timer but this timer
is only reset when the queue becomes empty during a RCVOK. If the RCVOK
is done after the queue is empty and no other requests come in then
a RCVTMR BUGCHK results and the ACJ is killed.
Solution: Reset the RCVOK timer when a RCVOK is done with the queue empty.
[End of TCO 6.1300]
TCO-number: 6.1309
Written-by: GRANT Creation-date: 13-Oct-82 06:47:35
Edited-by: GRANT Edit-date: 28-Mar-83 20:05:06
Edit-checked: Yes Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: Yes
Program: MONITOR
Routines-affected: TTYSRV
Problem: When a non-enabled user does a TTMSG JSYS, the output on the
receiver's terminal is not formatted correctly, namely, the colon
and the space are missing.
Diagnosis: Incorrect byte pointer being passed to GSALCP.
Solution: In GETSAL, change MOVEI to HRROI.
[End of TCO 6.1309]
TCO-number: 6.1310
Written-by: MOSER Creation-date: 13-Oct-82 13:44:08
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: SCHED
Problem: Idle time is always zero, Jobs hang and WATCH output looks terrible
if windfall is withheld. Problems may also occur when windfall is not withheld
and with the bias scheduler.
Diagnosis: Number of runnable jobs is determined by subtracting NHOLDF from
NGOJOB. NGOJOB may be greater than the number of runnable jobs since to
run a job must be both on the GOLIST and in the balance set.
Solution: Use NBPROC instead of NGOJOB.
[End of TCO 6.1310]
TCO-number: 6.1314
Written-by: DONAHUE Creation-date: 14-Oct-82 10:12:27
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: DSKALC
Problem: Disk I/O is not split across a multi-pack structure evenly.
Diagnosis: When we allocate a file page on the disk for a file that already
has pages allocated, the algorithm to assign the page is different than when
we are assigning the first page for the file. The DSKASN routine will try to
assign the new page as close as possible to the last page that was allocated
for the file. The effect of this is that most pages will be allocated on the
first pack of a multi-pack structure until that pack is full. This causes
a heavy I/O load on one pack while the other packs in that structure are
nearly idle. If the packs are on different channels, we might as well get
rid of the extra channels since they are hardly used.
Solution: When we are assigning a page for an old file (i.e. it already has
some pages assigned), try to assign the new page on the same cylinder as the
last page that was assigned for this file. If that cylinder is full, interleave
across packs in the structure. This interleaving is the same algorithm used
for the first page of a file.
[End of TCO 6.1314]
TCO-number: 6.1315
Written-by: COBB Creation-date: 14-Oct-82 10:57:50
Edited-by: COBB Edit-date: 17-Oct-82 16:52:40
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: MEXEC TTYSRV
Problem: Hole in CRJOB% can cause two jobs on one TTY:, and
two jobs are not better than one.
Diagnosis: CRJOB% does an internal RELD% on the TTY it was told to use
for the new job so this new job can assign it. Between this RELD% and
the CREATED job's assignment, the TTY is up for grabs. Even though
someone else may have grabbed this TTY, CRJOB still completes successfully,
hence the two jobs...
Solution: 1) At SYSINE+10, add a SETZM CRJTTY to flag that we are done
with this word.
2) At TTYASC, if some job is assigning the same TTY as is
currently in CRJTTY, make sure that this job is the one being created.
If not, return TTY unavailable for assignment error.
Another CRJOB hole plugged...hackers beware!
[End of TCO 6.1315]
TCO-number: 6.1316
Written-by: MOSER Creation-date: 14-Oct-82 11:41:37
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: JSYSA
Problem: PTNON0 BUGHLT when user logs in.
Diagnosis: ACTLCK can become unlocked by a fork which never locked it. Thus
fork A can lock and unmap page. B can unlock (without locking). C can lock
and map page. A then runs again and tries to map over the existing page.
Solution: Move lock up a few lines to take care of this case. Also change
GTAD Jsyses to internal calls to speed things up a bit.
[End of TCO 6.1316]
TCO-number: 6.1317
Written-by: MCINTEE Creation-date: 15-Oct-82 08:49:26
Edited-by: MCINTEE Edit-date: 28-Mar-83 10:55:50
Edit-checked: Yes Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: DISC
Problem: ILLUUO BUGHLT
Diagnosis: Routine DSKCLZ uses PUSHs and POPs. In an exceptional case,
it is done wrong. (Not that it is exceptional that such a thing is wrong,
but rather the case infrequently occurs)
Solution: There already is a TRVAR at the start of the routine. Add two
more variables to the list.
[End of TCO 6.1317]
TCO-number: 6.1318
Written-by: DONAHUE Creation-date: 15-Oct-82 16:04:30
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: IO
Problem: ILMNRF Bughlts
Diagnosis: It is possible to create a non-shareable save file that, if the
user sets the proper page write protected, will crash the system when the
user issues a GET or RUN. For non-shareable save files, the GET jsys will
read the file in using a SIN. When the SIN tries to write to the write
protected page, the page fault handler will generate the ILMNRF since the
reference was from the monitor.
Solution: Insert an ERJMP after the IDPB instruction in the literal near
SINW that will return an Illegal memory write to the user.
[End of TCO 6.1318]
TCO-number: 6.1320
Written-by: PAETZOLD Creation-date: 18-Oct-82 16:05:30
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: TTYSRV
Problem:
SAVELN in TTYDEA may be skipped if the TTY is an arpanet NVT.
Diagnosis:
TDCALL calls NVTDET. NVTDET has a skip return. The SAVELN gets skipped.
Solution:
Add a NOP after the TDCALL.
[End of TCO 6.1320]
TCO-number: 6.1321
Written-by: GRANT Creation-date: 19-Oct-82 06:50:46
Edited-by: GRANT Edit-date: 28-Mar-83 20:05:37
Edit-checked: Yes Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: DTESRV
Problem: No more resident free space.
Diagnosis: Free space full of unused blocks assigned to DECnet pool. DTE
driver got into a loop after getting a byte count of zero from the
MCB.
Solution: At DOFMCI, put in a check for a zero count; if count is zero,
BUGCHK and reload MCB - this is a protocol violation.
[End of TCO 6.1321]
TCO-number: 6.1324
Written-by: LEACHE Creation-date: 22-Oct-82 11:08:53
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: DISK
Problem:
Disk allocation counts inaccurate.
Diagnosis:
The directory-allocation update code is not being invoked in
certain cases.
Solution:
Make sure that the directory-allocation count is updated anytime
RELOFN returns a positive page count.
[End of TCO 6.1324]
TCO-number: 6.1325
Written-by: MOSER Creation-date: 25-Oct-82 10:44:55
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: Yes
Program: MONITOR
Routines-affected: PHYH2
Problem: PH2PIM is a BUGCHK and not a BUGHLT even though an occurance of it
can mean that the file system will be trashed.
Diagnosis: As above.
Solution: Change it to a BUGHLT.
[End of TCO 6.1325]
TCO-number: 6.1326
Written-by: GRANT Creation-date: 25-Oct-82 11:36:19
Edited-by: GRANT Edit-date: 28-Mar-83 20:05:50
Edit-checked: Yes Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: FREE PROLOG
Problem: Difficult to debug swappable free space problems.
Diagnosis: No information available.
Solution: Create a header word for the swappable free space blocks and put
the caller's PC in it.
[End of TCO 6.1326]
TCO-number: 6.1327
Written-by: MOSER Creation-date: 25-Oct-82 13:19:39
Edited-by: MOSER Edit-date: 26-Oct-82 10:46:41
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: Yes
Program: MONITOR
Routines-affected: PHYH2
Problem: None observed but code is very wrong. When the monitor dismisses
an RH20 interrupt it tries to restore the PREP register using a DATAO RHx,CDBRST
In all cases this fails because the monitor actually does a CONI RHx,CDBRST!!!
Diagnosis: In RH2INI as the CDBs are setup the monitor does a
HRLI T1,(DATAO T1,0) and then IORMs in the bits for RHx and CDBRST. There is
no such instruction as DATAO T1, instead this assembles as CONI 0,0.
Luckily this dosen't matter since all RH interrupts happen at the same PI
level.
Solution: Change the instruction to assemble a DATAO instead of a CONI.
[End of TCO 6.1327]
TCO-number: 6.1330
Written-by: MOSER Creation-date: 26-Oct-82 13:35:08
Edited-by: MOSER Edit-date: 26-Oct-82 13:44:41
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: MSTR
Problem: MSTR function .MSGSS (Get structure status) never returns the bit
MS%PS (This structure is a public structure).
Diagnosis: Bit is not in mask for allowed bits to be returned and it is not
set if the structure is the public structure.
Solution: Include it in the mask and set it when the MSTR is done.
[End of TCO 6.1330]
TCO-number: 6.1334
Written-by: PAETZOLD Creation-date: 26-Oct-82 17:22:34
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: STG
Problem:
MODULE names in LOADMODULES are truncated to five characters. THis means that
module names must be unique in the first five characters. THis is not always
obvious and causes immense grief.
Solution:
Add a simple check to the LOADMODULE macro to check if the $'MODULE symbol
has allready been defined. If it has generate an error in a PRINTX.
[End of TCO 6.1334]
TCO-number: 6.1336
Written-by: COBB Creation-date: 28-Oct-82 16:45:00
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: LINEPR
Problem: Line printers can hang because FE doesn't update their status
if there are solar flares active.
Diagnosis: Don't know about solar flares, but asking the FE for status
of the LPTs does not mean it will always give it. H/W flakes or a failing
call to DTEQ can cause this.
Solution: Make STSWAT notice not only the status coming back, but also see
hard errors.
[End of TCO 6.1336]
TCO-number: 6.1337
Written-by: COBB Creation-date: 29-Oct-82 13:53:44
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: DEVICE
Problem: System can crash with ILMNRF when it should crash with a NOFNDU.
Diagnosis: If we're gonna crash, we might as well crash quickly and correctly.
Solution: If FILDEV is 0 on a call to FNDUNT, give the NOFNDU.
[End of TCO 6.1337]
TCO-number: 6.1340
Written-by: DONAHUE Creation-date: 1-Nov-82 09:14:45
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: COMND
Problem: If a user attempts to default a field being parsed by the .CMTOK
function of COMND, the monitor will return an error.
Diagnosis: There is no code to handle defaulting of the token function.
Solution: Add the code to check if the user wants to default the field,
and if so, copy the string into the atom buffer.
[End of TCO 6.1340]
TCO-number: 6.1341
Written-by: GRANT Creation-date: 1-Nov-82 11:53:26
Edited-by: GRANT Edit-date: 28-Mar-83 20:06:04
Edit-checked: Yes Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: NSPSRV
Problem: No more swappable free space.
Diagnosis: Space is filled with 6-word blocks which are no longer needed.
When a DECnet server closes a connection and goes back into wait
state one of the swappable blocks is not released before assigning
a new one.
Solution: In routine CLRBLK, release old block if one exists.
[End of TCO 6.1341]
TCO-number: 6.1342
Written-by: LEACHE Creation-date: 1-Nov-82 14:38:28
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: MEXEC
Problem: No way to determine monitor version number without retrieving
the monitor version string and parsing it.
Diagnosis: As above
Solution: Add a new GETAB table, MONVER, which will return the contents
of monitor location 137.
[End of TCO 6.1342]
TCO-number: 6.1343
Written-by: COBB Creation-date: 2-Nov-82 08:24:01
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: TTYSRV
Problem: Assigning permanent lines is permanent!
Diagnosis: TTPFK, the top fork of the SCTTY tree, is never cleared on
a deassign of a permanent line. ASSIGN CTY: gets you the CTY, but
DEASSIGN just hangs waiting for TTPFK to go to -1.
Solution: At TTYDE3, where DEASSIGNing permanent lines, add a SETONE
TTPFK(T2).
[End of TCO 6.1343]
TCO-number: 6.1344
Written-by: WEETON Creation-date: 3-Nov-82 11:15:52
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: MEXEC
Problem: Enabled Wheels are Operators get the error message "?Execute access
required" when attempting to create a new job with a special program as
the new job's top level process.
Diagnosis: After performing the LOGIN JSYS, both the capability mask word and
the capabilities enabled word are zeroed. Then an attempt is make to set up
the above words as they should be. However, the code does this wrong.
Solution: Put in better code to set up the capablilites enabled word
properly.
[End of TCO 6.1344]
TCO-number: 6.1345
Written-by: MOSER Creation-date: 3-Nov-82 13:28:31
Edited-by: MOSER Edit-date: 3-Nov-82 16:10:19
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: Yes
Program: MONITOR
Routines-affected: PHYH11
Problem: Cannot read some tapes on 2020s running TOPS-20. Tapes can be read
on 2020s running TOPS-10 and on KLs running anything.
Diagnosis: For PE format tapes certain error bits can be set in the
drive error register without indicating that the operation failed. The
TM02/TM03 driver ignores these bits under the proper conditions but
any of these bits being set also sets the bit RH1TRE (transfer error)
in the RH11. This bit is checked and if set the operation fails.
Solution: Check the correct bits in seperate registers to determine if
a problem occurred. Don't depend on the catch all bit, RH1TRE.
[End of TCO 6.1345]
TCO-number: 6.1348
Written-by: LEACHE Creation-date: 5-Nov-82 14:41:32
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: JSYSF
Problem:
When using a password supplied with an encryption version number, CRDIR is
too stringent in protecting against building a directory with an encrypted
password on a structure for which encrypted passwords have not been enabled.
Diagnosis:
CRDIR is not checking for the case where the version number is zero (I.E.,
the password is in plaintext form).
Solution:
Add the missing check at CRDRP1.
[End of TCO 6.1348]
TCO-number: 6.1352
Written-by: MOSER Creation-date: 8-Nov-82 11:25:47
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: LINEPR
Problem: OKSKBG Bughlts.
Diagnosis: TOPS-20 may decide to reload the front end and may call LPTINT
in LINEPR during reload processing. This can go OKSKED without going NOSKED.
Solution: Go NOSKED when appropriate.
[End of TCO 6.1352]
TCO-number: 6.1353
Written-by: MOSER Creation-date: 8-Nov-82 11:30:33
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: MEXEC
Problem: GETOK block for ATACH is wrong. It contains the user number
in the job number word. The documentation is wrong too. The documentation
gives the wrong symbols with the wrong values for this function.
Diagnosis: Code does the wrong thing.
Solution: Pass the job number in the job number in the job number word.
[End of TCO 6.1353]
TCO-number: 6.1354
Written-by: MAYO Creation-date: 8-Nov-82 13:34:05
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: TTYSRV
Problem: None, but code is obviously wrong.
Diagnosis: At CLRSAL:, the instruction SETZM TTSAL2 can be found. TTSAL2 is
defined as 3, and the SETZM thereby trashes an innocent AC that never did it
any harm. Possibly no one calling CLRSAL cares if T3 gets zeroed, but...
Solution: ... the code should read SETZM TTSAL2(T2), clearing the correct
word in the terminal data instead of T3.
[End of TCO 6.1354]
TCO-number: 6.1355
Written-by: WACHS Creation-date: 9-Nov-82 04:02:01
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: STG PHYSIO
Problem: Mods for KLIPA/MSCP
[End of TCO 6.1355]
TCO-number: 6.1358
Written-by: LOMARTIRE Creation-date: 10-Nov-82 16:26:49
Edited-by: LOMARTIRE Edit-date: 29-Mar-83 16:10:06
Edit-checked: Yes Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: JSYSF
Related-SPR: 18380
Problem: The DELBDD BUGINF is not documented and it does not provide enough
information about the problem.
Diagnosis: The DELBDD BUGINF was never documented.
Solution: Add the necessary documentation in JSYSF. Also, add code to
place the sixbit structure name in register A. This will be printed on the
CTY when the BUGINF is issued.
[End of TCO 6.1358]
TCO-number: 6.1365
Written-by: MOSER Creation-date: 11-Nov-82 17:03:40
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: JSYSA
Problem: ILPPT3 Bughlt.
Diagnosis: ACJ can do a RCVOK with -1 as the argument block length. This
will eventually end up in BLTMU1 which will try to BLT an entire section
into the users space. Depending on the circumstances (starting address of
the BLT) you get an ILPPT3 or ILMNRF.
Solution: Return ARGX17 if RCVOK is done with arg block length less than
or equal to zero.
[End of TCO 6.1365]
TCO-number: 6.1371
Written-by: LEACHE Creation-date: 15-Nov-82 13:26:30
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: JSYSA
Problem: USAGE function .USCKI (set checkpoint time interval) does not
require privileges to perform.
Diagnosis: Oversight.
Solution: Require WHEEL or OPERATOR to perform the function.
[End of TCO 6.1371]
TCO-number: 6.1372
Written-by: MOSER Creation-date: 15-Nov-82 16:44:27
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: TTYSRV
Problem: SOBE is documented to return +1 if the terminal output buffer
is non-empty with AC2 containing the count of characters in the buffer.
Sometimes this works but other times AC2 contains the device designator.
Diagnosis: TTSOBE returns +1 if output is active without setting up the
character count. The device designator happens to be in the AC.
Solution: Rearrange the tests a bit to do the correct thing. Documentation
should reflect that the character count can be 0 on a non-skip return if
output is currently active.
[End of TCO 6.1372]
TCO-number: 6.1375
Written-by: MOSER Creation-date: 16-Nov-82 14:17:16
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: SCHED
Problem: Dregs queue is mishandled. Jobs become "stuck" in the dregs queue.
Diagnosis: When a fork is in the dregs queue it cannot run until the system
is otherwise idle. To come out of the dregs queue it becomes necessary to run,
since the fork cannot run it is effectivly stuck until the system is idle.
Solution: In CHKBMP give a boost to forks with PSIPRI (priority change PSI)
set. Check for fork on the dregs queue when it shouldn't be in GLREM and
SAVRT and fix up FKQN if this is the case.
[End of TCO 6.1375]
TCO-number: 6.1376
Written-by: MOSER Creation-date: 16-Nov-82 14:24:32
Edited-by: MOSER Edit-date: 8-Dec-82 17:22:28
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: GETSAV FORK
Related-TCO: 6.1409
Problem: FLKTIM, FLKNS Bugchks sometimes followed by GLFNF Bughlts.
Diagnosis: FORK.MAC has more races than Churchill Downs. One particularly
nasty one is when FORK A owns the Fork Lock and tries to suspend FORK B
which is trying to get the fork lock while NOINT. There are 2 routines which
try to lock the fork lock and which get called NOINT all the time.
Solution: In FKHP1 and VECSET (in GETSAV) use NOSKED/OKSKED instead of
FLOCK/FUNLK.
[End of TCO 6.1376]
TCO-number: 6.1377
Written-by: MCINTEE Creation-date: 16-Nov-82 15:18:54
Edited-by: MCINTEE Edit-date: 28-Mar-83 10:56:03
Edit-checked: Yes Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: DTESRV
Problem: Yet another JHTEST bughlt.
Diagnosis: Yet another indirect table.
HOWEVER, this one has 400000 in the left half for
SOME of the entries.
Solution: Yet another filling in of IFIWs
[End of TCO 6.1377]
TCO-number: 6.1378
Written-by: PAETZOLD Creation-date: 16-Nov-82 15:19:47
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: IO
Problem:
ILMNRF's from TTYBLO in FILMSC.
Diagnosis:
Yet more amazing confusion between .TTDES designators and universal terminal
designators. For those of you lately in the game universal designators also
caused problems with OWGBPs.
TTYBLO is testing JFN and forgets about the universal case. Probably lots
of other code scattered around also forgets.
Solution:
In CHKJFN convert the universal designator to a .TTDES designator. In reality
the code allready does this but takes pains to restore the universal form.
Do not restore the universal form.
[End of TCO 6.1378]
TCO-number: 6.1380
Written-by: MOSER Creation-date: 16-Nov-82 16:46:38
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: MEXEC
Problem: Jobs hang when logged out while doing a save to magtape.
Diagnosis: SSAVE uses JSB free space which can be released on a RESET,
unfortunatly the RESET in the logout code is after the call to WTSPT which
waits for the SPT share count to go to 1, consequently it never does.
Solution: Add another reset before the call to WTSPT. The origional one is
still needed to reset TTY modes and stuff which can change while we wait.
[End of TCO 6.1380]
TCO-number: 6.1381
Written-by: MOSER Creation-date: 17-Nov-82 11:16:29
Edited-by: MOSER Edit-date: 8-Dec-82 13:37:19
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: DIRECT
Problem: Monitor reports that a structures Root directory or backup
root directory is bad when it is not.
Diagnosis: Out of OFNs.
Solution: Invent a new BUGINF CGROFN, Can't get Root directory OFN and
issue it when ASROFN fails.
[End of TCO 6.1381]
TCO-number: 6.1385
Written-by: PAETZOLD Creation-date: 18-Nov-82 11:03:11
Edited-by: PAETZOLD Edit-date: 18-Nov-82 11:36:33
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: APRSRV
Problem:
Amazing GFLOAT simulation. GFLT0 goes to JSYS context after deciding
if this instruction needs to be simulated. This was done to avoid a
microcode problem. Unfortunatly MCENTR trashes a few ACs on us.
The monitor crashes.
Diagnosis:
Engineer brain damage.
Solution:
Go NOINT and refetch the information from the user's context after entering
JSYS context via the MCENTR. THis is also a problem in the release 5.1
autopatch monitor.
[End of TCO 6.1385]
TCO-number: 6.1387
Written-by: PAETZOLD Creation-date: 19-Nov-82 18:35:12
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: APRSRV
Problem:
ILLIND BUGHLTs in some cases where an ILLUUO BUGHLT should have resulted.
Diagnosis:
KIMXCT (the wonderfull routine which checks for illegal OWGBPs in PXCTs)
decrements the MUUO PC. If the MUUO PC was zero the decrement will result
in a 36 bit minus one. The instruction fetch (using an indirect reference)
will fail with an illegal indirect.
Solution:
Add a HRRZS after the decrement in KIMXCT.
We will probably still get an ILLUUO instead of an ILLIND but what the heck.
[End of TCO 6.1387]
TCO-number: 6.1390
Written-by: MURPHY Creation-date: 23-Nov-82 11:18:13
Edited-by: MURPHY Edit-date: 6-Jan-83 15:46:00
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: Yes
Program: MONITOR
Routines-affected: TTYSRV TTPHDV
Related-TCO: 6.1444
Problem: Noisy 20F lines not being shut off. Wasting lots of
cycles in 20F and TOPS20.
Diagnosis: If inactive line generates one noise character,
TOPS20 echos one bell during next bigbuf cycle. This may
generate one more noise character which will cause another
bell during the next bigbuf cycle, etc. The current noisy
line check requires more than 2 noise characters during
one cycle.
Solution: Add a check for more than 2 input characters on
inactive line during one second interval.
This will detect noisy line regardless of frequency of
bigbuf activity.
[End of TCO 6.1390]
TCO-number: 6.1391
Written-by: PAETZOLD Creation-date: 24-Nov-82 11:27:39
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: APRSRV
Problem:
NOINTs at GFLT0 are not strong enough. Another fork may try to play games on
us.
Diagnosis:
More engineer brain damage.
Solution:
Change the NOINT and OKINT to NOSKED and OKSKED.
[End of TCO 6.1391]
TCO-number: 6.1401
Written-by: WEETON Creation-date: 2-Dec-82 16:05:01
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: MEXEC JSYSA
Related-SPR: 18144
Problem: Infinite number of ITRLGO BUGCHKs and a WAITNI BUGHLT.
Diagnosis: No ERJMPs after JSYSes in the Monitor.
Solution: Put in ERJMPs after failing JSYSes. In the interrupt code, add
an extra routine that will do a new BUGINF ("LGFAIL") when interrupts happens
in the interrupt code.
[End of TCO 6.1401]
TCO-number: 6.1402
Written-by: PAETZOLD Creation-date: 5-Dec-82 14:50:43
Edited-by: PAETZOLD Edit-date: 7-Dec-82 13:46:13
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PROLOG
Problem:
Symbol LOCAL in PROLOG conflicts with one of the TCP MACROs.
Diagnosis:
The TCP MACRO is used a lot. The PROLOG symbol is used for the lock definition
stuff only.
Solution:
Change the LOCAL symbol in PROLOG to LLCAL. Also change the GLOBAL symbol to
GLLBAL.
[End of TCO 6.1402]
TCO-number: 6.1404
Written-by: GRANT Creation-date: 7-Dec-82 13:03:44
Edited-by: GRANT Edit-date: 28-Mar-83 20:06:17
Edit-checked: Yes Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: NSPSRV
Problem: Fork stuck in a SOUTR is hogging the system.
Diagnosis: Scheduler test CHKSCT wakes up incorrectly.
Solution: Make CHKSCT wake up only when the resend queue is ready to
accommodate another segment.
[End of TCO 6.1404]
TCO-number: 6.1405
Written-by: PAETZOLD Creation-date: 7-Dec-82 13:48:03
Edited-by: PAETZOLD Edit-date: 7-Dec-82 13:50:11
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: Yes
Program: MONITOR
Routines-affected: PHYH2
Problem:
PH2PIM BUGHLTs do not give enough information.
Diagnosis:
Currently they give the channel that we are upset with. We should also
output the CONI we did receive.
Solution:
In the PH2PIM BUGHLT also output the results of the CONI and the value we
expected but did not receive.
[End of TCO 6.1405]
TCO-number: 6.1407
Written-by: PAETZOLD Creation-date: 7-Dec-82 15:21:26
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PROLOG TTYSRV
Problem:
TVTs do not have a terminal type.
Diagnosis:
Never existed before.
Solution:
They exist now.
[End of TCO 6.1407]
TCO-number: 6.1408
Written-by: MOSER Creation-date: 8-Dec-82 13:43:05
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: MSTR DIRECT
Problem: Backup root directories cause more problems than they solve.
Diagnosis: If a backup root directory is bad there is no simple way to fix
it. It is quite difficult to even find out what is wrong.
Solution: If the backup root directory cannot be copied, issue a BUGINF
CCBROT which gives LSTERR as additional information. Also allow mounts
of the structure which specify MS%IGN (ignore errors) to succeed.
[End of TCO 6.1408]
TCO-number: 6.1409
Written-by: MOSER Creation-date: 8-Dec-82 17:21:45
Edited-by: MCLEAN Edit-date: 13-Apr-84 21:48:28
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: FORK IPCF GETSAV
Related-TCO: 6.1376 6.2034
Problem: FLKTIM Bugchks followed by FLKNS Bughcks.
Diagnosis: Don't allow this. Fix the known cases in GET and MSEND and
reinstall the FLKINT BUGINF to detect other offenders. This BUGINF is currently
repeat zeroed.
Solution: Don't allow this. Fix the known cases in GET and MSEND and
reinstall the BUGINF FLKINT which is currently repeat zeroed to detect
other offenders.
[End of TCO 6.1409]
TCO-number: 6.1410
Written-by: DONAHUE Creation-date: 9-Dec-82 15:39:46
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: STG PHYX2 PHYM2 PHYM78 GLOBS
Problem: DX2N2S Bugchk's when a TU72 gets set online
Diagnosis: A system with some TU72's switchable to another system and some
tape drives online when the system comes up will initialize the online drives
to unit numbers starting at 0 when the system is brought up. SETSPD can then
set those drives to be up to unit number 7. This leaves MTINDX pointing at
slot 7 in the MTCUTB table. When an operator sets the TU72's online, the
monitor will grab the pointer out of MTCUTB to determine a unit number for
the new drives. Since MTINDX points to the highest slot in MTCUTB, we
generate the Bugchk.
Solution: Don't use the MTINDX pointer. Instead, search MTCUTB for the first
available slot. Change all references to MTINDX to use a STKVAR, since we only
need it for temporary storage now.
[End of TCO 6.1410]
TCO-number: 6.1411
Written-by: GRANT Creation-date: 10-Dec-82 11:30:34
Edited-by: GRANT Edit-date: 28-Mar-83 20:06:29
Edit-checked: Yes Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: NSPSRV
Problem: DECnet spends an enormous amount of time in the routine LLLKUP.
It should be made as efficient as possible. It is called while
processing every incoming DECnet message and during almost every
DECnet scheduler test.
Diagnosis: LLLKUP currently does a binary search on a tree of logical link
blocks. The more links you have on the system, the greater the
potential for spending excess time finding the logical link block
you want. Need a different mechanism for looking up the logical
block address when presented the link's id.
Solution: Get rid of the tree structure entirely. Create a table which
can be indexed into by the 7 bits of the logical link ID which are
unique to the monitor.
[End of TCO 6.1411]
TCO-number: 6.1413
Written-by: PAETZOLD Creation-date: 11-Dec-82 17:07:36
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: SCHED
Problem:
Hard to track down bugs involving excessive ECSKEDs.
Diagnosis:
I guess no one ever had trouble with them before.
Solution:
Create a new BUGHLT called CSKBUG which detects excessive ECSKEDs.
[End of TCO 6.1413]
TCO-number: 6.1414
Written-by: DONAHUE Creation-date: 13-Dec-82 08:56:38
Edited-by: DONAHUE Edit-date: 13-Dec-82 09:00:06
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: IO PAGEM PROLOG
Problem: ILLUUO, ILMNRF, ILFPTE and probably many others, when running a
program that passes bogus arguments to SOUT.
Diagnosis: SOUT uses the BYTBLT routine to transfer most of the bytes. BYTBLT
will set up address TRPDSP in case it gets an illegal read or write during the
transfer. The page fault code checks TRPDSP, and if it is set, will return
to BYTERR after handling the page fault. BYTERR simply pops all saved ACs off
the stack and RETs. A problem occurs when BYTBLT receives the illegal read/write
in the middle of a subroutine that has been CALLed. The cleanup routine then
restores all of the ACs incorrectly, since P is off by one. Not only that,
but when the cleanup routine attempts to RET, it will return to the address
that called the subroutine and attempt to continue BYTBLT, with several ACs
clobberred.
Solution: Set a flag in TRPDSP before CALLing any routines from BYTBLT. Don't
zero TRPDSP in the page fault handler as is done now. Instead, check TRPDSP
in the cleanup routine, and if the flag is set, adjust the stack pointer
to compensate for the extra CALL. Then zero TRPDSP before leaving the cleanup
routine.
[End of TCO 6.1414]
TCO-number: 6.1417
Written-by: DONAHUE Creation-date: 15-Dec-82 09:00:43
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: TTYSRV
Problem: OKSKBG Bughlts
Diagnosis: The code at SALLI2 has an OKSKED following a call to LCKTT
which already went OKSKED.
Solution: Replace the OKSKED with an OKINT.
[End of TCO 6.1417]
TCO-number: 6.1420
Written-by: MOSER Creation-date: 15-Dec-82 14:39:39
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: JSYSA
Problem: Inconsistent PMAP behavior. If a user tries to delete a page
in a nonexistent file section he gets a LNGFX1 error. If he tries to delete
a nonexistent page in an existant file section everything is OK.
Diagnosis: No check for deleting pages if CPMAPX fails.
Solution: Check for this case.
[End of TCO 6.1420]
TCO-number: 6.1421
Written-by: MOSER Creation-date: 15-Dec-82 14:44:37
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: TAPE
Problem: Direct of a labeled tape shows N files but a COPY TAP:*.*.* to NUL:
only copies N/2 of the files! Examination shows that every second file was
skipped.
Diagnosis: If a file has the exact same name as a previous file then TAPE
thinks that it is still looking at the previous file and skips ahead to the
next file.
Solution: Check the tape position before skipping ahead. Only skip if it is
the same as the last position. Save the position in FILMS2 of the JFN block.
[End of TCO 6.1421]
TCO-number: 6.1422
Written-by: MOSER Creation-date: 15-Dec-82 15:01:24
Edited-by: MOSER Edit-date: 21-Dec-82 11:01:26
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: TAPE
Problem: Cannot write "standard" variable length (FORMAT:D) tapes.
Diagnosis: Record length stored in the HDR2 is wrong. It should be the size of
the largest possible RCW it is actually 4 less than this because the RCW
length is not counted.
Solution: Use correct size.
[End of TCO 6.1422]
TCO-number: 6.1423
Written-by: MCINTEE Creation-date: 16-Dec-82 11:33:40
Edited-by: MCINTEE Edit-date: 28-Mar-83 10:56:21
Edit-checked: Yes Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PAGEM
Problem: ILSPTH BUGHLTs
Diagnosis: In the routine SETPT0, a share pointer to an existing page is
being constructed. The existing SPTH entry is checked for consistency, and
fails the test. The reason it fails the test is that the bit OFNERR is set
for that entry. However, this entry is not in the OFN portion of SPTH,
and should not have that bit set.
Solution: The routine which sets the OFNERR bit already does various checks
for being in the OFN portion of the SPTH table. Add one final check in routine
BADCPG.
[End of TCO 6.1423]
TCO-number: 6.1426
Written-by: GRANT Creation-date: 27-Dec-82 08:16:00
Edited-by: GRANT Edit-date: 28-Mar-83 20:06:46
Edit-checked: Yes Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: ttphdv TTYSRV
Problem: DECnet logical link block in "DI read" state stays around forever.
Diagnosis: If a user SETHOSTs in to a system and then SETHOSTs out to another
system, a certain combination a LOGOUTs and escape characters will cause the
TTPRM bit to get turned off for an MCB terminal. Taking a TTY out of "net
user" state normally turns off the TTPRM bit; it should not do this if the
TTY is an MCB or the CTY.
Solution: When undoing "net user" state or closing an NVT connection check
for MCB TTY type; if it is, don't turn off TTPRM.
[End of TCO 6.1426]
TCO-number: 6.1427
Written-by: GRANT Creation-date: 27-Dec-82 08:19:43
Edited-by: GRANT Edit-date: 28-Mar-83 20:06:55
Edit-checked: Yes Document: Yes TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: NSPSRV nsppar STG
Problem: The NCP command SHO NODE FOO COUNTERS doesn't return the "seconds
since last zeroed" parameter when the executor node is TOPS-20.
Diagnosis: Monitor doesn't return this value to NMLT20 because the monitor
doesn't keep track of it.
Solution: Add code to support it.
[End of TCO 6.1427]
TCO-number: 6.1428
Written-by: GRANT Creation-date: 27-Dec-82 09:01:56
Edited-by: GRANT Edit-date: 28-Mar-83 20:07:11
Edit-checked: Yes Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: NSPSRV
Problem: There are 2, almost consecutive, UMOVE T4,4 in routine MTSNIN.
Diagnosis: That's one too many.
Solution: Remove one.
[End of TCO 6.1428]
TCO-number: 6.1429
Written-by: GRANT Creation-date: 27-Dec-82 09:06:52
Edited-by: GRANT Edit-date: 28-Mar-83 20:07:20
Edit-checked: Yes Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: NSPSRV
Problem: None, at least for now.
Diagnosis: Missing OKINT in routine DCDCS. This routine is currently only
executed by the background task so there's probably no harm done yet.
Solution: Insert the OKINT.
[End of TCO 6.1429]
TCO-number: 6.1430
Written-by: GRANT Creation-date: 28-Dec-82 07:51:43
Edited-by: GRANT Edit-date: 28-Mar-83 20:08:11
Edit-checked: Yes Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: NSPSRV
Problem: Unnecessary processing of the resend queue on Phase II connections.
Diagnosis: CCs are not put on the resend queue now, they once were.
Solution: In the background fork's code for processing ACKs and Data
segments, remove the logic which scans the resend queue looking for a CC.
[End of TCO 6.1430]
TCO-number: 6.1431
Written-by: DONAHUE Creation-date: 29-Dec-82 11:00:37
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: Yes
Program: MONITOR
Routines-affected: PHYM78
Problem: KPALVH Bughlts
Diagnosis: A dual ported TM78 will occasionally send online interrupts to
both systems. The system that doesn't know about the drives on this
controller will loop through routine NOUDB, looking for the proper UDB.
When it can't find a UDB it will simply return. Apparrently, the interrupt
is still up at this time.
Solution: Clear the interrupt before returning.
[End of TCO 6.1431]
TCO-number: 6.1433
Written-by: LOMARTIRE Creation-date: 3-Jan-83 13:17:09
Edited-by: LOMARTIRE Edit-date: 29-Mar-83 16:12:11
Edit-checked: Yes Document: Yes TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Related-SPR: 18387
Problem: There is no way to prevent logins on DECnet lines.
Diagnosis: There is no code (in version 5) to do this. In versions 5.1 and 6,
TCO 5.1.1039 makes DECnet login permission be governed by the state of remote
logins. An ^ESET NO LOGINS-ALLOWED DECNET-LINES command is needed to disallow
DECnet logins specifically. ^ESET LOGINS-ALLOWED DECNET-LINES needs to be
added in order to allow DECnet lines specifically.
Solution: Add the new code to four modules: TTYSRV, EXECSE, EXECIN, and
MONSYM. In MONSYM, add SMON/TMON function code 27 (.SFMCB) and a new
monitor flag (SF%MCB). Check the login request in TTYSRV and, if disallowed,
print ?LOGGING IN ON DECNET LINES IS CURRENTLY DISALLOWED. Also, remove the
code in TTYSRV added by TCO 5.1.1039 which uses the remote login setting as
the DECnet logins-allowed value. Add code in EXECSE which will provide for
the setting/clearing of SF%MCB when allowing/disallowing DECnet logins. In
EXECIN, print out whether logins are or are not allowed when INFORMATION
SYSTEM-STATUS is issued.
[End of TCO 6.1433]
TCO-number: 6.1434
Written-by: MILLER Creation-date: 3-Jan-83 14:50:11
Edited-by: MILLER Edit-date: 20-Mar-83 17:35:49
Edit-checked: Yes Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: DIRECT
Problem: The field OFOPC in the SPT is not properly maintained. Now
and then, the value in the field is negative.
Diagnosis: Some of the callers to RELOFN do not correctly indicate
if the call is to close a file or to simply decrement an OFN share
count. The latter case is common for directory files.
Solution: Set FILUB in calls to RELOFN when the caller is decrmenting
the share count and not closing the file.
[End of TCO 6.1434]
TCO-number: 6.1435
Written-by: GRANT Creation-date: 4-Jan-83 13:15:48
Edited-by: GRANT Edit-date: 28-Mar-83 20:08:34
Edit-checked: Yes Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: NSPSRV
Problem: The node counter "connect resource errors" is always 0.
Diagnosis: Code doesn't properly check for "no such object".
Solution: Rewrite part of CI message processing to better deal with
incoming connect errors
[End of TCO 6.1435]
TCO-number: 6.1440
Written-by: DONAHUE Creation-date: 6-Jan-83 13:02:10
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: Yes
Program: MONITOR
Routines-affected: PHYP4
Problem: RP4UNF Bughlts when an RP06 dual ported between 2 systems is
powered on.
Diagnosis: When the drive is powered on, it will send an interrupt
to both systems. Depending on the port switch, the DCL will send all
zeroes to the one of the systems when it tries to read the drive type
while trying to initialize the drive. Zero is an invalid typ and will
cause the bughlt.
Solution: Change the Bughlt to a Bugchk.
[End of TCO 6.1440]
TCO-number: 6.1441
Written-by: MCINTEE Creation-date: 6-Jan-83 13:22:34
Edited-by: MCINTEE Edit-date: 28-Mar-83 10:56:38
Edit-checked: Yes Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: MONSYM
Problem: No symbol in MONSYM for the GETAB table MONVER.
Diagnosis:
Solution: Think of a symbol, any symbol. Aha - .MONVR !
[End of TCO 6.1441]
TCO-number: 6.1442
Written-by: GRANT Creation-date: 6-Jan-83 13:41:47
Edited-by: GRANT Edit-date: 28-Mar-83 20:08:50
Edit-checked: Yes Document: Yes TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: NSPSRV
Problem: Obsolete code.
Diagnosis: Code which checks for 2020 loopback mode gets executed for
every DECnet message. Release 6.0 will never run on a 2020.
Solution: Remove everything pertaining only to 2020.
[End of TCO 6.1442]
TCO-number: 6.1443
Written-by: GRANT Creation-date: 6-Jan-83 14:09:10
Edited-by: GRANT Edit-date: 28-Mar-83 20:09:00
Edit-checked: Yes Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: NSPSRV
Problem: All DECnet jobs are hung.
Diagnosis: NSP is accidently trying to do inactivity timing on a local link.
The code is designed specifically not to time local links. Trying
to send a local link service message while in the background task's
inactivity timer tries to get a lock it already has and spins forever.
Solution: The inactivity timer is being set for a local link when it shouldn't
be. Remove the incorrect setting of the timer.
[End of TCO 6.1443]
TCO-number: 6.1444
Written-by: CDUNN Creation-date: 6-Jan-83 15:44:48
Edited-by: CDUNN Edit-date: 6-Jan-83 15:45:59
Edit-checked: Yes Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: TTYSRV
Related-TCO: 6.1390
Problem: The fix for the bug introduced by TCO 6.1390 does not cover all cases.
Diagnosis: Engineer brain fade.
Solution: Fix the fix to the first fix. Move the TTCHN1 label up one line such
that the line number is always loaded before the noisy line check...
[End of TCO 6.1444]
TCO-number: 6.1445
Written-by: MCINTEE Creation-date: 7-Jan-83 11:19:59
Edited-by: MCINTEE Edit-date: 28-Mar-83 10:57:56
Edit-checked: Yes Document: Yes TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: MEXEC GLOBS VERSIO
Related-TCO: 6.1446
Problem: Need a different calling mechanism for SYSJOB
Solution: Use the same mechanism as for SETSPD; the monitor will
invoke X-SYSJOB.EXE which will use as command files X-SYSJOB.RUN,
X-SYSJOB.DEBUG, X-SYSJOB.TEST0, where X is the monitor version number.
[End of TCO 6.1445]
TCO-number: 6.1447
Written-by: MURPHY Creation-date: 7-Jan-83 12:36:06
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: SCHED
Problem: "One man's meat is another man's poison" when it
comes to scheduling algorithms. That is, some customers
think our scheduling parameters could be improved. They
may be right for their own installation. In any case,
they are the customer.
Diagnosis: System administrator should be able to change
more scheduling parameters.
Solution: Add functions to SKED% JSYS to:
1. Allow specific setting of bias bits;
2. Allow setting of queue quanta and number of queues.
Plus SETSPD and OPR stuff to set and read the stuff.
[End of TCO 6.1447]
TCO-number: 6.1448
Written-by: COBB Creation-date: 10-Jan-83 11:12:31
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: JSYSA
Problem: GLFNF bughalts...
Diagnosis: NTCTAB, the table of forks who wish network-topology-change
interrupts, contains an erroneous entry. This is because top-level forks
do not go through code which removes them from this table.
Solution: Add a call to NTCOFF in .RESET code, under FTSNSPSRV conditional.
[End of TCO 6.1448]
TCO-number: 6.1452
Written-by: MILLER Creation-date: 11-Jan-83 19:28:58
Edited-by: MILLER Edit-date: 20-Mar-83 17:35:57
Edit-checked: Yes Document: Yes TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: mstr monsym
Problem: CFS-20 needs an MSTR function that will designate
a structure as SHARED or EXCLUSIVE.
Diagnosis: As above
Solution: Add .MSCSM function to MSTR. Also add appropriate error
messages and defintions.
[End of TCO 6.1452]
TCO-number: 6.1453
Written-by: MCINTEE Creation-date: 12-Jan-83 08:05:23
Edited-by: MCINTEE Edit-date: 28-Mar-83 10:58:31
Edit-checked: Yes Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: STG
Problem: SOME OF THE DEFAULTS FEATURE TEST SWITCHES ARE NOT GLOBAL
Diagnosis:
Solution: MAKE ALL OF THEM GLOBAL.
[End of TCO 6.1453]
TCO-number: 6.1454
Written-by: GRANT Creation-date: 12-Jan-83 12:20:53
Edited-by: GRANT Edit-date: 28-Mar-83 20:09:25
Edit-checked: Yes Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: NSPSRV nsppar STG ntman
Problem: NSPSRV is getting too big.
Diagnosis:
Solution: Break it up into 2 modules, NSPSRV and NTMAN; NTMAN contains the
NTMAN% JSYS.
[End of TCO 6.1454]
TCO-number: 6.1455
Written-by: GRANT Creation-date: 12-Jan-83 14:13:09
Edited-by: GRANT Edit-date: 28-Mar-83 20:09:37
Edit-checked: Yes Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: NSPSRV
Problem: Old Code.
Diagnosis: Check for internal links are scattered throughout NSPSRV and all
the "driver" code for internal links still gets assembled.
Solution: Remove it all.
[End of TCO 6.1455]
TCO-number: 6.1458
Written-by: CHALL.WIZARD Creation-date: 12-Jan-83 16:35:28
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: GETSAV
Problem: CSKBUGs.
Diagnosis: A GET% of an execute-only file which will get an error
because the monitor couldn't get the Job Fork Handle (a call to
STJFKR gets an error return) does two FUNLK's, each of which try
to ECSKED.
Solution: In GET02, eliminate the CALL FUNLK before jumping to
GETE2 (GETE2 calls GETEND, which does the other FUNLK).
While I'm in there, tighten the code up a little by creating
label GETE0: and making several error jumps go there. That eliminates
a number of literals.
[End of TCO 6.1458]
TCO-number: 6.1462
Written-by: CHALL.WIZARD Creation-date: 13-Jan-83 14:06:55
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: JSYSA
Problem: CSKBUG BUGHLT.
Diagnosis: PMAP does a FLOCK early and keeps it. If it gets an error
it goes to a routine which releases PMAP locks (PMAPRL) and then calls
FUNLKI to negate the FLOCK. But PMAPRL calls LUNLKF calls ULKSTR, and
the latter goes CSKED/ECSKED. The ECSKED zeroes FLKCNT, so the later
FUNLKI doesn't think the fork was locked.
Solution: Going CSKED while CSKED is flaky, so in that PMAP error routine
reverse the calling order to call FUNLKI first, then PMAPRL.
[End of TCO 6.1462]
TCO-number: 6.1463
Written-by: HALL Creation-date: 13-Jan-83 15:02:02
Edited-by: HALL Edit-date: 23-Mar-83 12:37:41
Edit-checked: Yes Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PAGEM STG PROLOG
Problem:
PAGEM's too big to carry around and takes too long to assemble.
Diagnosis:
Not enough END statements.
Solution:
Make three modules. Move data definitions to STG. Make a whole lot of things
global, and add them to PROLOG. The modules are as follows:
PAGEM - memory management stuff; PGRTRP; XGC; GCCOR; swapping
PAGFIL - file system stuff; OFN routines; SETMPG and friends
PAGUTL - everything else; general-purpose routines; PGRINI
[End of TCO 6.1463]
TCO-number: 6.1466
Written-by: PAETZOLD Creation-date: 17-Jan-83 14:21:56
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: sysdpy
Problem:
SYSDPY does not work anymore.
Diagnosis:
It looks for symbols in PAGEM that are not in PAGEM anymore.
Solution:
Look somewhere else.
[End of TCO 6.1466]
TCO-number: 6.1469
Written-by: GRANT Creation-date: 19-Jan-83 08:11:25
Edited-by: GRANT Edit-date: 28-Mar-83 20:09:49
Edit-checked: Yes Document: Yes TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: NSPSRV NTMAN STG PROLOG
Problem: TOPS-20's node parameter "state" is always on. The network manager
would like to put it into the "shut" and "restricted" states when
appropriate.
Diagnosis: No code.
Solution: Add code to NTMAN% to allow the setting and displaying of the state;
also, add code to NSPSRV to disallow connection attempts, as
dictated by the state setting.
[End of TCO 6.1469]
TCO-number: 6.1470
Written-by: MCINTEE Creation-date: 19-Jan-83 12:32:17
Edited-by: MCINTEE Edit-date: 28-Mar-83 10:58:47
Edit-checked: Yes Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: APRSRV
Problem: KPALVH bughlts
Diagnosis: A new feature of BUGCHK (continuation address) doesn't work
when the SYSERR queue is full. Lately, the SYSERR queue appears full
during system startup, i.e., BUGCNT = BUGMAX.
Solution: Fix the code in the bug handler so that the continuation feature
works.
[End of TCO 6.1470]
TCO-number: 6.1471
Written-by: MCINTEE Creation-date: 19-Jan-83 15:32:18
Edited-by: MCINTEE Edit-date: 28-Mar-83 10:59:01
Edit-checked: Yes Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: STG MEXEC
Problem: SEBQOU and BUGCNT disagree.
Diagnosis: During system startup, it is possible to get a BUGCHK before
SEBQIN has been initialized. In particular, PHYINI frequently gets a
an RP4SSC bugchk on KL2136.
Solution: Move the initialization (CALL SEBINI) from EXEC0 to SYSGO1,
just before PHYINI.
[End of TCO 6.1471]
TCO-number: 6.1472
Written-by: MURPHY Creation-date: 19-Jan-83 18:03:29
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: SCHED
Problem: CSKBUG bughlts. That is, attempt to do ECSKED when
process is not CSKED.
Diagnosis: JSYS (e.g. PMAP) goes CSKED, then calls another JSYS
(e.g. SMAP%) which gets an error. PMAP is prepared to handle
the error and has an ERJMP after the SMAP%, but the ITRAP
routine thinks it needs to "clean up", and clears the
CSKED. Hence, we're now back in PMAP but not CSKED. When
PMAP attempts to return normally and do the ECSKED, it gets
a biiiiig surprise.
Solution: 1. Prevent ITRAP code from clearing CSKED.
2. However, it may be that some JSYSes fail to do a
needed ECSKED when generating an error return.
To detect this in ITRAP, look for the case of
returning to user mode OR returning to monitor
mode without an ERJMP. In this case, the previous
context could not or should not have been CSKED,
so being CSKED now indicates that this JSYS is
not cleaning up properly. Do a NOSKTR and
make it a BUGHLT to discourage this sort of
behaviour.
[End of TCO 6.1472]
TCO-number: 6.1474
Written-by: MILLER Creation-date: 20-Jan-83 09:35:54
Edited-by: MILLER Edit-date: 20-Mar-83 17:36:02
Edit-checked: Yes Document: Yes TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: ENQ cfssrv
Problem: The first release of LCS-20 will support only CFS. Consequently,
other important services, such as ENQ/DEQ, will be limited to
processes running on a single processor. However, an application
that uses ENQ/DEQ that also takes advantage of CFS will malfunction.
Diagnosis: Absolutley correct! If copies of the application are run
simultaneously on two or more CFS nodes, these applications will
successfully share the file contents but will not be sharing the
ENQ/DEQ resource. Most likely no one will notice this until the
data base has been irretrievably damaged.
Solution: Add a check in ENQ/DEQ whenever a "lock block" is
created for an OFN resource being established. If so, ask
CFS-20 to allocate an "exclusive" file resource to inhibit programs
on other processors from using ENQ/DEQ on the file.
Also, delete the CFS file resource whenever the "lock block"
is deleted.
[End of TCO 6.1474]
TCO-number: 6.1475
Written-by: MURPHY Creation-date: 20-Jan-83 18:31:30
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: FORK
Problem: Entering PA1050 in extended section doesn't work.
Diagnosis: UUO was done in section 0, so PCS is 0 when monitor
is trying to setup PA1050 entry vector. Hence, monitor can
only reference section 0.
Solution: Set PCS to section of entry vector before referencing it.
[End of TCO 6.1475]
TCO-number: 6.1480
Written-by: WEAVER Creation-date: 27-Jan-83 21:13:26
Edited-by: WEAVER Edit-date: 15-Aug-83 10:21:02
Edit-checked: Yes Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: TTYSRV TTPHDV
Problem:
Terminal lines appear to lose an occasional XON and possibly XOFFs as well.
Diagnosis:
When RSX20F receives an XOFF, it stops output immediately and passes the
XOFF through to TOPS20 so that TOPS20 can stop sending characters. TOPS20
will turn around and tell the front-end to stop output which is redundant
as it forces RSX20F to go through the same code it executed when it first
received the XOFF.
When RSX20F receives an XON, it does nothing other than pass the character
through to TOPS20. TOPS20 will then see the XON and tell RSX20F to start
output again.
It is unclear exactly how it happens, but it appears that this scenario
produces a race condition which can make 20F appear to lose the XON in
rare circumstances. This same condition happened on TOPS10 as well and
the cure that follows remedied that problem.
Solution:
Eliminate any possibility of race conditions. Allow RSX20F to control both
the starting and stopping of output, rather than just the stopping. Create
a bit in TTSTAT (TT%XFF) that allows TOPS20 to force the front-end to set/clear
the XOFFed state. This will allow two consecutive ^C's and a ^O to be able
to restart output. This bit is only set by the routine that flushes output
(TTCBF7), as this routine handles both cases.
Edit A to RSX20F is required to make RSX20F restart output when it receives
an XON. If this edit is not installed lines will hang when an XOFF is typed,
and the only way to clear them will be by typing 2 ^C's or a ^O.
[End of TCO 6.1480]
TCO-number: 6.1483
Written-by: GRANT Creation-date: 28-Jan-83 22:13:17
Edited-by: GRANT Edit-date: 28-Mar-83 20:10:34
Edit-checked: Yes Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: NSPSRV
Problem: ILMNRF BUGHLTs and hung forks with DECnet links.
Diagnosis: Logical link block being improperly unlocked during processing
of a DI.
Solution: Fixes in routine DCDCS.
[End of TCO 6.1483]
TCO-number: 6.1485
Written-by: WEAVER Creation-date: 1-Feb-83 13:40:46
Edited-by: WEAVER Edit-date: 31-Mar-83 17:05:39
Edit-checked: Yes Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: Yes
Program: MONITOR
Routines-affected: TTYSRV TTPHDV
Problem:
Monitor crashes since last Friday.
Diagnosis:
Engineer has no brain.
Solution:
T2 does not point to the static area but the dynamic area, so define TT%XFF
to be in the dynamic area (which is more appropriate) rather than the static
area.
[End of TCO 6.1485]
TCO-number: 6.1486
Written-by: GRANT Creation-date: 2-Feb-83 07:20:18
Edited-by: GRANT Edit-date: 28-Mar-83 20:10:59
Edit-checked: Yes Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: NSPSRV
Problem: ILMNRF BUGHLTs.
Diagnosis: Scheduler's queue header for incoming DECnet messages is inconsistent.
Solution: It appears that the routines which queue and dequeue the messages can
be called from the background task. Make the routines NOSKED.
[End of TCO 6.1486]
TCO-number: 6.1487
Written-by: WEETON Creation-date: 2-Feb-83 09:33:26
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: DATIME JSYSA STG MONSYM
Problem: Customers can't conviently turn on or off Daylight Saving Time.
Diagnosis: No code was ever written to do this.
Solution: Add new SMON and TMON functions to set/read DST conversion
method. In DATIME.MAC change DST checking routines to read new format,
and add a new routine to get current setting, and issue a BUGINF is
DSTLFG contains an illegal value.
[End of TCO 6.1487]
TCO-number: 6.1491
Written-by: GRANT Creation-date: 2-Feb-83 12:30:25
Edited-by: GRANT Edit-date: 28-Mar-83 20:11:13
Edit-checked: Yes Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: NSPSRV
Problem: MTOPR doing the DECnet function "get link's segment size" fails.
Diagnosis: The monitor returns failure if the link is not in the run state.
Solution: Return the segment size once it has been establish, regardless of
link state.
[End of TCO 6.1491]
TCO-number: 6.1493
Written-by: GRANT Creation-date: 3-Feb-83 11:58:50
Edited-by: GRANT Edit-date: 28-Mar-83 20:11:33
Edit-checked: Yes Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: DSKALC PHYSIO FREE STG
Problem: PHYSIO doesn't fit the model of how users of resident free space need
to behave.
Diagnosis: It rarely gives back any blocks of free space.
Solution: Make a separate pool for PHYSIO (and DSKALC) and change the 2/3
allocation of total space to 100%.
[End of TCO 6.1493]
TCO-number: 6.1495
Written-by: WACHS Creation-date: 4-Feb-83 05:03:11
Edited-by: LEACHE Edit-date: 25-Apr-84 14:44:34
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: Yes
Program: Monitor
Routines-affected: BOOT
Problem: BOOT wipes out KLIPA/KLNI microcode
Diagnosis: DATAO/DATAI to read drive type register writes the
microcode.
Solution: test CONI bits. If bits 0,16, and 17 are on then don't
read the drive type register
[End of TCO 6.1495]
TCO-number: 6.1497
Written-by: MILLER Creation-date: 9-Feb-83 13:21:31
Edited-by: MILLER Edit-date: 20-Mar-83 17:37:35
Edit-checked: Yes Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PAGFIL
Problem: It is possible for a file opened with OF%DUD set not to
be opened in the correct mode.
Diagnosis: OFNDUD is not set if the OFN already exists. Therefore, if
the OFN is created for a file not opened for OF%DUD, subsequent
sharers requesting OF%DUD will not realize that request.
Solution: If OFNDUD is requested, and the OFN already exists, set OFNDUD in
the existing OFN's data base (SPTH).
Also, a related problem is in the routine RELP4. This code does not
call SCNOFN for an OFN that is becoming unshared and has OFNDUD set.
Although this will usually be harmless, it is also incorrect. So, always
call SCNOFN when an OFN's share count is reduced to zero.
[End of TCO 6.1497]
TCO-number: 6.1498
Written-by: LEACHE Creation-date: 9-Feb-83 17:21:47
Edited-by: PURRETTA Edit-date: 25-Apr-84 15:03:16
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: BOOT
Problem: BOOT is very sensitive to transient IO errors.
Diagnosis: Unlike the monitor, BOOT does not have error-correction logic and
head-repositioning logic.
Solution: 1. Up the IO retry count from 5 to 15.
2. On an IO error, display the channel status, drive status, and the
contents of drive error-registers one and two.
3. When an IO error occurs during a dump, print out the page number(s)
on which the error(s) occurred.
[End of TCO 6.1498]
TCO-number: 6.1501
Written-by: WACHS Creation-date: 11-Feb-83 03:58:22
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: Yes
Program: MONITOR
Routines-affected: PHYH2
Problem: System won't come up - loops in RH20 initialization
Diagnosis: If a KLIPA or KLNI exists, and the monitor was not built
to support that device, then we think it is a vanilla RH20. If there
is no valid microcode in the device then we get an unclearable CRAM
parity error as soon as a PI is lit in the device.
Solution: After the conditional checks for KLIPA/KLNI check the CONI.
If bits 0, 16, and 17 are on then don't give the device a PI assignment.
[End of TCO 6.1501]
TCO-number: 6.1502
Written-by: HALL Creation-date: 14-Feb-83 09:58:36
Edited-by: HALL Edit-date: 23-Mar-83 12:38:11
Edit-checked: Yes Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: STG FREE NSPSRV
Problem:
We're running out of virtual address space in the monitor.
Diagnosis:
Among other things, resident free space is allocated from the PC section
(sections 0 and 1). Some users of free space run in section 1 and can
address free space in another section. They just need a way to get that
free space.
Solution:
Allow allocation of free space outside of the PC section. There will be
two areas of resident free space, one in the PC section as it is today,
and one in some other section.
In theory, there is no need to change the callers. Those that require the
old style free space should have been setting bit RS%SE0 when they called
ASGRES. In practice, some of them probably do not. In the future, all callers
should set or clear this bit as appropriate.
[End of TCO 6.1502]
TCO-number: 6.1503
Written-by: MCINTEE Creation-date: 14-Feb-83 11:24:00
Edited-by: MCINTEE Edit-date: 28-Mar-83 10:59:20
Edit-checked: Yes Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PAGFIL
Problem: 1) Jobs hanging in LKDTST, and in NLKTST.
2) ILSPTH bughlts with OFNWRB set for non-OFN entries.
3) DEAUNA bugchks
Diagnosis: Routine RELADR has been changed to support new functionality.
The change has greatly increased the entropy of the monitor.
Solution: In routine RELADR, after the CALL REMFP1, restore T2, fixing
ILSPTH & DEAUNA problems. Also, change the CALLRET RETZ to SETZ T1, fixing
the hanging jobs problems. Remove the now extraneous SAVEAC <T2>.
So, entropy has been decreased,
Address space has not been increased,
Three fixes in one,
REL-AD-R Is done,
The monitor group should be pleased.
[End of TCO 6.1503]
TCO-number: 6.1504
Written-by: MURPHY Creation-date: 14-Feb-83 13:49:42
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: DTESRV
Problem: Monitor fails to reload 20F.
Diagnosis: Fork running RELOAD code not properly initialized. Return
PC is not set before MCENTR. Hence, UPDL and context not properly
setup.
Solution: Init FFL before MCENTR.
[End of TCO 6.1504]
TCO-number: 6.1505
Written-by: COBB Creation-date: 15-Feb-83 08:41:26
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: TAPE
Problem: MTOPR% fails,
User wails,
We get mails.
Diagnosis: Function .MORRS (Read record size) succeeds on MTAs, but fails on
MTs with "?File not open". OPENF% routine MTAOPN sets the OPN bit in MTASTS
but MTOPN does not. Comments claim that .MORRS should work the same for MTs
as for MTAs, but it does not, since .MORRS code checks for the OPN bit before
performing the function.
Solution: Call MAGTAP through jacket routine MTLFCN, which temporarily sets
the OPN bit. Note that all other functions which claim to be MTA/MT independent
use this routine to access the MAGTAP routines.
[End of TCO 6.1505]
TCO-number: 6.1506
Written-by: MURPHY Creation-date: 15-Feb-83 09:25:47
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: MEXEC
Problem: Job 0 errors not reported in system error file.
Diagnosis: Job 0 unexpected interrupts result in message being
explicitly printed on CTY, but no BUGCHK or other general
notification for error file.
Solution: Make these events be BUGCHKs; take out typeout on CTY.
BGCHKs are: JB0INT, unexpected interrupt during initialization;
JB0CSH, unexpected interrupt during normal operation; DDMINT, unexpected
interrupt in DDMP process.
[End of TCO 6.1506]
TCO-number: 6.1507
Written-by: MURPHY Creation-date: 15-Feb-83 09:30:44
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: MEXEC
Problem: MONPDL bughlt.
Diagnosis: Monitor runs out of UPDL space while handling carrier off
event (also network terminal disconnect). This event causes an
interrupt to JOBCOF which attempts to detach the job without
aborting the JSYS then in progress. Hence, the fork may already
be deep into UPDL. Doing the detach attempts to send a message
to the "logging terminal" which includes the user name. This
requires a lot of stack, particularly if CFS is present and
various resources must be obtained.
Solution: Don't attempt to type a message on the logging terminal
in this case. As far as we know, no one actually uses the logging
terminal; hence, the message were being written to the null
device anyhow.
[End of TCO 6.1507]
TCO-number: 6.1510
Written-by: DONAHUE Creation-date: 16-Feb-83 13:45:19
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: TTYSRV
Problem: Some applications (such as X29SRV) get large numbers of terminal input
characters at one time and SOUTR them to a DCN: file, for which the monitor
gives it a PTY. Soon the terminal input buffer fills up and Tops-20 sends
Control/G's to the terminal as characters get lost.
Diagnosis: This problem is normally handled by Tops-20 sending an XOFF to the
terminal before the input buffer gets full. This is not sufficient in this case
as the terminal has already sent more characters which are bufferred by the
application. We need some way to identify these terminals and wake up the
forks to process the input before the TTY buffer fills up.
Solution: In this case, the lines are in half duplex mode. Therefore, we can
wake a fork whose TTY is in half duplex mode whenever we see a carriage return
character for that line. This should wake the fork up
in time to process the characters before the input buffer is full. Note that
this is not a cure all, as an application can send a line that is longer than
123 characters with no carriage return imbedded. It is up to the application
for breaking the line down appropriately.
[End of TCO 6.1510]
TCO-number: 6.1511
Written-by: HALL Creation-date: 16-Feb-83 16:31:07
Edited-by: HALL Edit-date: 23-Mar-83 12:38:48
Edit-checked: Yes Document: Yes TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: JSYSA FORK APRSRV
Problem:
RESET JSYS doesn't clear effect of SWTRP JSYS.
Diagnosis:
Code never written.
Solution:
Write CLRTRP in FORK, and call it from RESET. Make it call the three
routines in APRSRV.
[End of TCO 6.1511]
TCO-number: 6.1514
Written-by: MURPHY Creation-date: 17-Feb-83 18:09:43
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: SCHED
Problem: User AC1 clobbered on fail return from certain JSYSes
even though ERJMP is present.
Diagnosis: Coded that way.
Solution: At MRETNE in SCHED, check for ERJMP/ERCAL present
before storing error code into user AC1. Store error
code into user AC1 IFF ERJMP/ERCAL not present.
Documentation note: Monitor call manual, section 1.4 presently
says "if ERJMP or ERCAL executes on error...contents of any
ACs that would normally contain an error code may be
unreliable". This should be changed to a more definite statement.
In particular "If ERJMP or ERCAL is executed as a result of
any monitor call, the error code will not be stored in any
AC. The ACs returned will be either be unchanged from the
call or will be updated values from the call reflecting
partial completion of the function. The error code will
only be available from the GETER% monitor call."
[End of TCO 6.1514]
TCO-number: 6.1515
Written-by: PAETZOLD Creation-date: 18-Feb-83 15:53:23
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: Yes
Program: MONITOR
Routines-affected: PHYSIO PHYH2 PROLOG
Problem:
PH2PIM BUGHLTs on 2102 are very difficult to solve.
Diagnosis:
Need code in the monitor for a while to help.
Solution:
Temporarily create a new debuging switch named PH2DBG. When the switch is on
the following thngs will change:
PHYCHK will check the channels from 7 to 0 instead of 0 to 7. Also PH2PIM
will be a BUGCHK. Also RH2CHK will recheck the channel PI level on a PH2PIM.
The the channel refuses to use the correct PI level a KPALHV will result.
[End of TCO 6.1515]
TCO-number: 6.1517
Written-by: MURPHY Creation-date: 21-Feb-83 00:08:38
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: SCHED
Problem: Monitor found running in section 0. Can't reference
interesting data.
Diagnosis: If a JSYS is invoked with the internal call mechanism and
that JSYS itraps, and the caller had an ERJMP after the internal
call, the ERJMP jumps to section 0. This happens because PCS
is not set on an internal call, and ITRSIM uses PCXT of XMOVEI
to compute the effective address of the ERJMP.
Solution: Make ITRSIM check for internal call and not use PXCT.
Instead, just plug in the section of the call if there is no
indexing or indirection. If there is indexing, use XMOVEI.
Indirection can't be used, and indexing must generate a global
address.
[End of TCO 6.1517]
TCO-number: 6.1520
Written-by: MILLER Creation-date: 22-Feb-83 09:55:32
Edited-by: MILLER Edit-date: 20-Mar-83 17:36:10
Edit-checked: Yes Document: Yes TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: monsym DSKALC PAGEM PAGUTL PAGFIL MEXEC
Problem: Allocating new disk pages is expensive. With the advent
of CFS, disk allocation will become even more expensive.
Diagnosis: Each call to DSKASN performs considerable overhead
in interlocking data bases and computing the indices into the
bit table.
In addition to all of this, a CFS monitor must interlock the
bit table from the other CFS systems.
Solution: Add a new entry point into the allocator that will
allocate a group of consecutive pages.
Also, add a new "per OFN" word where the unused pages may be kept.
Each time the monitor needs to assign a page to a file, it will
first try to use an unused, preallocated page. Failing that, it
will acquire a group of pages.
When the OFN is released, all unused pages will be returned to the allocator.
To make this work efficiently, a new entry point into the deallocator
is provided to return a group a pages.
[End of TCO 6.1520]
TCO-number: 6.1524
Written-by: MAYO Creation-date: 23-Feb-83 15:09:49
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: JSYSF
Related-SPR: 17907
Problem: ARCF% function 12 doesn't exist, but if given it has the effect
of crashing the system.
Diagnosis: Off by one at .ARCF+6 when checking the function number.
Solution: Change the CAILE to a CAIL.
[End of TCO 6.1524]
TCO-number: 6.1525
Written-by: MURPHY Creation-date: 23-Feb-83 15:26:00
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PROLOG SCHED others
Problem: Can't build some monitor configurations.
Diagnosis: Insufficient address space.
Solution: Various: 1. Make sure all possible code runs in non-0 section.
2. Move various storage areas out of section 0/1.
3. Provide for code to run in another section or sections
beside 0/1.
[End of TCO 6.1525]
TCO-number: 6.1526
Written-by: LOMARTIRE Creation-date: 23-Feb-83 15:49:40
Edited-by: LOMARTIRE Edit-date: 29-Mar-83 16:14:15
Edit-checked: Yes Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: FILMSC
Related-SPR: 18498
Problem: As soon as an ATTACH is done to operator job 1 running PTYCON, which
is connected to a subjob running OPR, the CTY hangs. The only character that
can be typed is a CTRL/X, which returns control back to PTYCON command level.
Diagnosis: PTYCON is in terminal input wait and the scheduler test (TCITST) is
set up to check the original SYSJOB terminal line for input. Once the ATTACH
is done, the job's controlling terminal is changed but the line number in
FKSTAT is not. So PTYCON remains in input wait and the CTY input is ignored.
When the PTYCON interrupt character (CTRL/X) is typed, the entry in FKSTAT is
changed to the line number of the controlling terminal.
Solution: In TTYIN2, check to see if the JFN for the terminal is for the
controlling terminal. If so, place the line number in the left half of DEV.
This will eventually be placed in FKSTAT by code in TTYSRV. This problem is
not present in version 4 since this code exits to handle this situation.
[End of TCO 6.1526]
TCO-number: 6.1527
Written-by: PAETZOLD Creation-date: 25-Feb-83 01:13:27
Edited-by: PAETZOLD Edit-date: 25-Feb-83 01:13:47
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: Yes
Program: MONITOR
Routines-affected: APRSRV
Problem:
Analyzing ILLUUO BUGHLTs is made difficult by the KIMXCT subroutine.
Diagnosis:
KIMXCT smashes up the old contents of the stack. It is therefore difficult
to see what has just happened on the stack.
Solution:
There are no easy solutions. The best solution (for debuging) would be to
add a stack just for KIMXCT. This seems like a bit of a waste.
Another "solution" would be to artificially bump the stack pointer before
calling KIMXCT and then decrement it after the call. We will "adjust" the
stack pointer by eight words and then fix it up. This is a bit of a kludge
but then again this whole routine is a kludge.
[End of TCO 6.1527]
TCO-number: 6.1528
Written-by: MCINTEE Creation-date: 28-Feb-83 07:49:02
Edited-by: MCINTEE Edit-date: 28-Mar-83 10:59:37
Edit-checked: Yes Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: MACSYM
Related-TCO: 6.1519
Problem: Exec won't compile.
Diagnosis: The macro BEGSTR doesn't clean up after itself. It uses intermediate
macros, one of which is FIELD, which conflicts with the Exec macro of the
same name.
Solution: In the macro ENDSTR, purge all the intermediate macro names.
[End of TCO 6.1528]
TCO-number: 6.1529
Written-by: PAETZOLD Creation-date: 28-Feb-83 19:03:20
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PHYSIO
Problem:
Lots. Mainly ILLUUOs and possibly PH2PIMs when UNICHK gets into UNIC10
to check the home blocks on a unit.
Diagnosis:
UNIC10 trashes all over Q1 and it claims it should not.
Solution:
Rework some code to use T3 instead of Q1.
[End of TCO 6.1529]
TCO-number: 6.1530
Written-by: MOSER Creation-date: 1-Mar-83 14:15:37
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: Yes
Program: MONITOR
Routines-affected: PHYSIO
Problem: MONPDL BUGHLT when mounting a multi pack structure and errors
are encountered.
Diagnosis: If the first pack has good home blocks the SDB for the structure
is set up including the count of units in the structure. If errors are
encountered later in the mount but before all UDB addresses are stored in the
SDB the monitor may call CLRSTR which loops through all units in the
structure. Some UDB addresses may be 0 and stuff gets destroyed including
the stack pointer.
Solution: If the UDB address is 0 don't use it.
[End of TCO 6.1530]
TCO-number: 6.1531
Written-by: GROSSMAN Creation-date: 1-Mar-83 15:09:30
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: DTINIT
Problem: RSX20F can't tell what operating system is running on the KL.
Diagnosis: It has no way of finding out.
Solution: Put a number which indicates the operating system type in an
unused field in the DTE comm region. This is the same number that the
GETTAB %CNMNT (112,,11) returns (it happens to be four for TOPS20).
[End of TCO 6.1531]
TCO-number: 6.1532
Written-by: MCINTEE Creation-date: 3-Mar-83 13:04:55
Edited-by: MCINTEE Edit-date: 28-Mar-83 10:59:55
Edit-checked: Yes Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: MEXEC
Problem: JSSEC0 BUGCHKS
Diagnosis: In the code to create a job, there is an SE1ENT-SE0ENT bracketing
a CALL BLTMU. All JSYSes following that are then executed in section 0 (big
surprise)
Solution: Remove the SE1ENT-SE0ENT. Put in a TSTMS0 just in case there REALLY
is a case where that code is run while in section 0. The comments claim
it mysteriously does, but those are old comments...
[End of TCO 6.1532]
TCO-number: 6.1533
Written-by: MOSER Creation-date: 3-Mar-83 15:39:44
Edited-by: MOSER Edit-date: 3-Mar-83 16:12:23
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: JSYSA
Problem: ILMNRF crash when releasing all assigned devices using .RELD
with an argument of -1 and one of the devices is a tape drive.
Diagnosis: T2 is required as an index to the device tables when calling
DSMNT0 but in the all device case it isn't set up before the call. If
a magtape is being released then T2 will be trashed before this call. The
code does set up P3 before the call but it is never used by anyone before
or after the call.
Solution: Setup the ac we will use instead of an unused one.
[End of TCO 6.1533]
TCO-number: 6.1534
Written-by: WEETON Creation-date: 3-Mar-83 16:40:01
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: JSYSF
Problem: RCDIR doesn't know how to handle logical names containing
wild cards.
Diagnosis: RCDIR doesn't take into consideration this possiblity.
Solution: Modify the routine that handle logical names to install directory
terminators around the defination, then go back and process the directory.
[End of TCO 6.1534]
TCO-number: 6.1540
Written-by: MILLER Creation-date: 11-Mar-83 12:48:20
Edited-by: MILLER Edit-date: 20-Mar-83 17:36:16
Edit-checked: Yes Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: APRSRV
Problem: BLCAL support routines do not work with a "global"
stack pointer.
Diagnosis: .ENTER assumes that the stack is local and that
it may "popped" by subtracting <n,,n> from the current
stack pointer. This results in mayhem if the stack pointer
is global.
Solution: Use ADJSP instead of SUB to change the stack pointer.
[End of TCO 6.1540]
TCO-number: 6.1541
Written-by: WACHS Creation-date: 14-Mar-83 07:45:01
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: phyklp phymsc
Problem: Undefined globals when trying to build a monitor with KLIPA, SCA
but no MSCP
Diagnosis: Routines in wrong modules
Solution: Move DMA routines from PHYMSC to PHYKLP
[End of TCO 6.1541]
TCO-number: 6.1544
Written-by: MILLER Creation-date: 15-Mar-83 10:46:25
Edited-by: MILLER Edit-date: 20-Mar-83 17:36:20
Edit-checked: Yes Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PAGUTL MEXEC
Problem: It is possible for the pages that contain BOOT to be assigned
as part of the CTS, DST, etc. during monitor start-up.
Diagnosis: The routines that allocate the CST and the DST acquire
memory pages from the replacable queue, as one might expect. However,
the original assumption made by the author of BOOT was that BOOT
would be mapped before any of the pages on the replacable queue were
needed. Therefore, BOOT's pages are placed on the replacable queue during
the intial memory scan, and are fair game for any routine needing
memory. Up until now, the combined sizes of the resident monitor,
the CST and the DST have been sufficiently small not to need
BOOT's pages, but any day now...
Solution: Put BOOT's pages on the special memory queue instead of
on the replacable queue. Then, when BOOT is mapped, retrieve the pages
from the special memory queue.
[End of TCO 6.1544]
TCO-number: 6.1546
Written-by: MILLER Creation-date: 15-Mar-83 16:40:35
Edited-by: MILLER Edit-date: 20-Mar-83 17:36:25
Edit-checked: Yes Document: Yes TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: diag SYSERR monsym
Problem: Diagnostics need a way of determining whether the monitor
reported any errors while the diagnostic was running.
Diagnosis: As above.
Solution: Provide a counter that is incremented each time QUESEB is called
and a DIAG% function to read the counter.
[End of TCO 6.1546]
TCO-number: 6.1549
Written-by: WACHS Creation-date: 16-Mar-83 04:08:27
Edited-by: PURRETTA Edit-date: 25-Apr-84 15:07:21
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: Yes
Program: MONITOR
Routines-affected: BOOT
Problem: BOOT doesn't load the KLIPA or KLNI microcode
Diagnosis: no code
Solution: Add code to load them
[End of TCO 6.1549]
TCO-number: 6.1554
Written-by: MCINTEE Creation-date: 17-Mar-83 08:27:01
Edited-by: MCINTEE Edit-date: 28-Mar-83 11:00:14
Edit-checked: Yes Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: GTJFN
Related-TCO: 6.1542
Problem: While bringing up a monitor,
1) SERGOF bugchks
2) No SETSPD message
3) ACCOUNTS-TABLE.BIN not found
and finally,
4) UXXCRE bughlt
Diagnosis: TCO 6.1542 was OBVIOUSLY not tested at all, since removing
the one line of code fixed all of the above problems.
[End of TCO 6.1554]
TCO-number: 6.1557
Written-by: PAETZOLD Creation-date: 18-Mar-83 14:01:27
Edited-by: PAETZOLD Edit-date: 18-Mar-83 15:23:34
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: Yes
Program: MONITOR
Routines-affected: FORK globs GTJFN JSYSA JSYSF PAGUTL
PAGFIL params PROLOG STG TTYSRV ttntdv
ttphdv imppar IMPDV NETWRK impanx iman22
tttvdv ipipip ipfree tcptcp tcpcrc tcpjfn
anaunv mnetdv
Problem:
Release 6 does not know about new arpanet protocols.
Diagnosis:
Merge in code to support new arpanet protocols.
Solution:
Change a lot of modules. The following modules are replaced with new versions:
IMPANX.MAC
IMPDV.MAC
NETWRK.MAC
The following modules have gone away:
IMPPAR.MAC
IMAN22.MAC
The following modules are new:
ANAUNV.MAC
MNETDV.MAC
IPIPIP.MAC
IPFREE.MAC
TCPTCP.MAC
TCPCRC.MAC
TCPJFN.MAC
TTTVDV.MAC
The following modules have had significant edits:
GLOBS.MAC
MEXEC.MAC
STG.MAC
TTYSRV.MAC
TTNTDV.MAC
Several other modules have had minor edits.
[End of TCO 6.1557]
TCO-number: 6.1558
Written-by: GRANT Creation-date: 19-Mar-83 06:13:40
Edited-by: GRANT Edit-date: 28-Mar-83 20:11:49
Edit-checked: Yes Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: NSPSRV
Problem: Extraneous BUGINF NSPBAD.
Diagnosis: An illegal node init from the MCB causes 2 BUGINFs - ILLSTR and
NSPBAD; the NSPBAD doesn't need to occur.
Solution: After the ILLSTR BUGINF, just throw away the message.
[End of TCO 6.1558]
TCO-number: 6.1559
Written-by: WEETON Creation-date: 20-Mar-83 11:31:44
Edited-by: WEETON Edit-date: 20-Mar-83 11:40:28
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PHYSIO
Problem: DSKOP JSYS fails when running in section 1.
Diagnosis: When routine IOLOCK checks to see if a reasonable address
was passed, it only checks the right half of the word and doesn't
allow for sections other than 0.
Solution: Modify the check to check for sections 1-37 also.
[End of TCO 6.1559]
TCO-number: 6.1562
Written-by: MOSER Creation-date: 23-Mar-83 06:53:41
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: STG MSCPAR MEXEC PHYMVR JSYSA
Solution: MSCP SERVER.
[End of TCO 6.1562]
TCO-number: 6.1568
Written-by: MOSER Creation-date: 24-Mar-83 17:33:21
Edited-by: MOSER Edit-date: 25-Jul-83 17:21:52
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: STG MEXEC globs params monsym JSYSA
Related-TCO: 6.1752
Problem: Jobs get logged out to soon after a carrier off interrupt.
Diagnosis: A value of 5 minutes is used and some users would like it to be
longer. Unfortunatly there is no way to change this value without a DDT
patch.
Solution: Put a word in STG, COFTIM, which holds the value of the
time to remain detached. Add a parameter to PARAMS, COFMIN, as the default
and make it 5 minutes. Allow users to change this with a new SMON function,
.SMCOF, which takes the time in milliseconds as an argument.
[End of TCO 6.1568]
TCO-number: 6.1569
Written-by: WACHS Creation-date: 25-Mar-83 03:11:07
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: DIAG MONSYM PHYKLP
Problem: Diagnostics need some new CI functions
Diagnosis: Add DIAGs to turn polling on or off, start remote system,
reset remote system, set/read performance counters
[End of TCO 6.1569]
TCO-number: 6.1570
Written-by: WEAVER Creation-date: 25-Mar-83 12:14:22
Edited-by: WEAVER Edit-date: 15-Aug-83 10:22:15
Edit-checked: Yes Document: Yes TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: DTESRV
Problem:
DDT11 can't look at <SYSTEM>0DUMP11.BIN.
Diagnosis:
File name is more than 6 characters.
Solution:
Change 0DUMP11.BIN to 0DMP11.BIN.
[End of TCO 6.1570]
TCO-number: 6.1571
Written-by: MURPHY Creation-date: 25-Mar-83 15:33:21
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: GLOBS STG PROLOG
Problem: MACRO runs out of space when assembling some the
larger monitor modules.
Diagnosis: MACRO is a loser. Hence, the monitor must
make lesser demands of it. In particular, the amount of
universal and macro definition space should be reduced
if possible.
Solution: Modify handling of GLOBS. Make GLOBS separate
universal so that it can be searched on pass 2 only.
Also purge the GGLOBS macro immediately after use
thus eliminating a very big macro definition.
[End of TCO 6.1571]
TCO-number: 6.1577
Written-by: PAETZOLD Creation-date: 26-Mar-83 12:06:47
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PAGUTL
Problem:
Global symbol FPTEPG giving problems in PAGUTL assemble.
Diagnosis:
Nees to be declared external.
Solution:
Add it in the EXTN macros in the begining of the module. Why aren't these
symbols in GLOBS?
[End of TCO 6.1577]
TCO-number: 6.1578
Written-by: PAETZOLD Creation-date: 27-Mar-83 12:06:09
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: globs
Problem:
SCSKIL symbol needs to be in globs.
Diagnosis:
I love doing other peoples work.
Solution:
Add the SCSKIL symbol to globs.
[End of TCO 6.1578]
TCO-number: 6.1579
Written-by: MILLER Creation-date: 29-Mar-83 20:06:06
Edited-by: MILLER Edit-date: 2-Apr-83 21:10:09
Edit-checked: Yes Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: DIRECT
Problem: Doing an "expunge and rebuild symbol table" does not
always correct the reported values for the directory allocation.
Diagnosis: The code in DIRECT, RBLDST, computes the correct value
for the directory allocation and stores this value in the
directory. However, it does not call ADJALC and therefore any
locally cached values for the directory allocation remain unchanged
and incorrect.
Solution: RBLDST should call ADJALC when the new value for the
directory allocatio is stored.
[End of TCO 6.1579]
TCO-number: 6.1585
Written-by: MILLER Creation-date: 1-Apr-83 11:47:14
Edited-by: MILLER Edit-date: 2-Apr-83 21:10:17
Edit-checked: Yes Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: Yes
Program: MONITOR
Routines-affected: APRSRV
Problem: If a program specifies an arithmetic trap block addres or
an PDL overflow block address that is in a non-zero section, and
a trap occurs in section 0, the monitor does not use the
correct address for the trap block.
Diagnosis: The monitor uses PXCT instructions to reference the
trap block. However, if PCS (previous context section) is zero,
all memory references will be made to section 0 in the previous context.
Solution: Since the monitor needs to reference the previous context
as defined at the trap, as well as an arbitrary section for the
trap block, the monitor must first gather all of the information
about the trap (instruction and effective address), force PCS
to be non-zero, and then reference the trap block.
[End of TCO 6.1585]
TCO-number: 6.1586
Written-by: MILLER Creation-date: 2-Apr-83 21:05:02
Edited-by: MILLER Edit-date: 2-Apr-83 21:07:50
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: MEXEC
Problem: The PSI dispatch to EXECI when the top fork of a job halts,
crashes the monitor.
Diagnosis: The dispatch from the PSI code starts EXECI in section 0.
The first time it calls into TTYSRV (need I go on?)...
Solution: Place an EA.ENT at EXECI. Perhaps there is a more general
solution for instances of the PSI code using MONBK as an 18-bit
dispatch address, but that is for another time.
[End of TCO 6.1586]
TCO-number: 6.1587
Written-by: WACHS Creation-date: 4-Apr-83 07:24:11
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: STG PHYMSC
Problem: Can't put more than 1 RA81 in a file structure
Diagnosis: It's too large
Solution: Make all addresses for RA81s be on a per-page basis. This
quadruples the max number of units on an RA81. Make the same
change to RA60s for internal consistency
[End of TCO 6.1587]
TCO-number: 6.1588
Written-by: MILLER Creation-date: 4-Apr-83 09:38:59
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: APRSRV cfssrv
Problem: CFSSRV needs to determine if two adjacent virtual pages
are also physically adjacent.
Diagnosis: No routine to do this.
Solution: Add CPPCON to APRSRV.
[End of TCO 6.1588]
TCO-number: 6.1589
Written-by: MILLER Creation-date: 4-Apr-83 12:43:39
Edited-by: MILLER Edit-date: 4-Apr-83 13:19:36
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: Yes
Program: MONITOR
Routines-affected: PHYSIO
Problem: The message "Problem on device..." can appear
when it shouldn't.
Diagnosis: PHYSIO checks once-a-minute to determine if any devices
need an operator assistance message. However, in the case of
a dual-ported drive in use on the other system, the time since
this system first encountered the problem and the time PHYSIO
decides to type the message may be less than the "port release" time.
Solution: Make sure that the system has had adequate time to retry
the operation before typing the operator assistance message.
[End of TCO 6.1589]
TCO-number: 6.1592
Written-by: MILLER Creation-date: 5-Apr-83 15:17:09
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: Yes
Program: MONITOR
Routines-affected: PHYP4
Problem: A dual-ported Massbus disk, such as an RP07, can deliver
an attention status to the wrong port.
Diagnosis: Apparently (who's to know?) the DCL in the drive can
be provoked into reporting an attention to a system that did
not request an operation warranting an attention. This has two
ramifications: the system not expecting the condition considers this
a drive exception and the system expecting the condition might
never be notified of it.
Solution: If a system detects an attention condition in a drive
and is not expecting the condition, clear the condition and
proceed with the requested operation. This will be done only
if all other apsects of the drive's status are legitimate.
[End of TCO 6.1592]
TCO-number: 6.1593
Written-by: FLEMMING Creation-date: 6-Apr-83 05:50:09
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PROLOG GLOBS MONSYM DIRECT JSYSA JSYSF
FILINI
Problem: New: Implement TOPS-10 PPNs for compatability. See PPN.MEM
for details.
[End of TCO 6.1593]
TCO-number: 6.1594
Written-by: COBB Creation-date: 6-Apr-83 09:06:07
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: JSYSA MONSYM
Problem: QUEUE% application debugging features not "robust" enough.
Diagnosis: As above...
Solution: QUEUE% currently uses a full-word table, indexed by function,
to retrieve the target-PID for this function. Make it use a half-word
table, with the RH as it was and the LH as the debugging PID for the same
application. Add a bit in the flags to say "use debug entry". The debug
entries correspond to new entries in the system pid table, which a user
would fill in with a .MOSSP MUTIL% call.
[End of TCO 6.1594]
TCO-number: 6.1600
Written-by: WEAVER Creation-date: 7-Apr-83 20:57:51
Edited-by: WEAVER Edit-date: 15-Aug-83 10:23:05
Edit-checked: Yes Document: Yes TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: TTYSRV
Problem:
TOPS20 will not allow a line to be set as AUTOBAUD without the line being
declared as REMOTE.
Diagnosis:
Now that RSX20F allows a line to be put back into autobaud by typing
2 consecutive <BREAK>s or by logging out a local line when not logged
in, it would be nice to make use of autobaud for LOCAL lines as well
as REMOTE lines. Unfortunatly, because of previous restrictions in
RSX20F, TOPS20 goes out of its way to insure that only REMOTE lines
get set as AUTOBAUD.
Solution:
Remove all checks for REMOTE when setting a line as AUTOBAUD.
[End of TCO 6.1600]
TCO-number: 6.1601
Written-by: MURPHY Creation-date: 7-Apr-83 21:38:44
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PAGEM PAGUTL PAGFIL
Problem: Too hard to find code in PAGEM.
Diagnosis: Code isn't in PAGEM. It's in PAGFIL or PAGUTL.
Where 1 module was too few for all this code, it appears
that 3 is too many.
Solution: Condense PAGxxx into 2 modules, PAGEM and PAGUTL.
PAGFIL vanishes. PAGEM has pager traps, swap in and out,
and PMAP and SMAP stuff. PAGUTL has initialization, DDMP,
and other stuff.
[End of TCO 6.1601]
TCO-number: 6.1602
Written-by: WACHS Creation-date: 8-Apr-83 05:22:53
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: Yes
Program: MONITOR
Routines-affected: PHYKLP PHYPAR
Problem: If the KLIPA dies it doesn't get automatically reloaded
Diagnosis: No code
Solution: Have PHYKLP set a bit in the CDB, kick JOB 0 to reload
the microcode
[End of TCO 6.1602]
TCO-number: 6.1603
Written-by: WACHS Creation-date: 8-Apr-83 05:26:18
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: Yes
Program: MONITOR
Routines-affected: PHYP2 PHYP4 PHYPAR
Problem: Operator/CFS need to know if a massbus disk is dual-ported
between 2 systems
Solution: Add a bit - US.2PT - which is on the UDBSTS if a disk is
potentially dual-ported between 2 systems
[End of TCO 6.1603]
TCO-number: 6.1604
Written-by: WACHS Creation-date: 8-Apr-83 05:29:30
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PHYKLP MEXEC
Problem: Long delay between system being booted and it starting to run.
Diagnosis: The KLIPA driver waits for 20 seconds to make sure that all
HSCs on the CI net are willing to talk to us.
Solution: Remove the wait since HSC disks will not be PS.
Note that for stress testing it would be nice to allow PS on an
RA81. The assembly switch FTKEARLY in SYSFLG can be set non - 0
to put back the wait and the possibility of using an RA81 as PS.
[End of TCO 6.1604]
TCO-number: 6.1605
Written-by: GRANT Creation-date: 8-Apr-83 06:44:49
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: NSPSRV
Problem: SKDPF1 BUGHLT
Diagnosis: Swappable code being referenced from scheduler.
Solution: Make routine INTINT resident.
[End of TCO 6.1605]
TCO-number: 6.1606
Written-by: WACHS Creation-date: 8-Apr-83 07:27:48
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: Yes
Program: MONITOR
Routines-affected: DIAG MONSYM
Problem: User mode diagnostics can wipe out the CI
Diagnosis: CI ports are considerably different from RH20 chans, what
works for one will not work for the other.
Solution: Invent a new DIAG - .DGENB - which will allow the DIAG which
gains control of the channel to work.
If this DIAG has not been done, then attempting to do a DIAG to gain control
of a CI port will fail.
Call: MOVE 1,[-3,,ADDR]
ADDR: .DGENB
Port number (7 for a KLIPA)
Value
DIAG
LOSE
WIN
VALUE=0 to disable other DIAGS; =NON-0 to enable them
If the chan is currently under control of a DIAG then this JSYS will
fail.
[End of TCO 6.1606]
TCO-number: 6.1609
Written-by: MOSER Creation-date: 11-Apr-83 17:02:24
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: CDRSRV PROLOG
Problem: Card readers don't work under version 5 of TOPS-20.
Diagnosis: RSX20-F now sends configuration messages to CDRSRV. This
is very confusing to CDRSRV so it treats it as a normal status message.
There is also a problem with setting the offline PSI is needed bit when
no fork is blocked.
Solution: Ignore configuration messages. Don't set CDOFI if CDBLK isn't set.
[End of TCO 6.1609]
TCO-number: 6.1610
Written-by: MILLER Creation-date: 12-Apr-83 09:44:49
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: Yes
Program: MONITOR
Routines-affected: PHYSIO cfssrv PHYP4 phyp2
Problem: If a CFS system is "cut off" from the CFS network because its
CI port fails, it may destroy the data on the shared, dual-ported
MASSBUS disks.
Diagnosis: CFS uses the CI to coordinate accesses to disks. If the CI port
fails, the system will not be able to access the CI disks (HSC), but it
can access MASSBUS disks. If it does try to use a MASSBUS disk that
is also connected to another system, the on-disk structure will be
destroyed.
Solution: Add a bit to the UDB to indicate that if this drive is dual-ported
it is not to be used. CFS will direct PHYSIO to set these bits.
PS: is excluded from this.
[End of TCO 6.1610]
TCO-number: 6.1611
Written-by: WEETON Creation-date: 12-Apr-83 16:03:43
Edited-by: WEETON Edit-date: 12-Apr-83 16:11:44
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: MSTR MONSYM
Problem: Job can get hung when attempting to dismount a structure.
Diagnosis: After doing DSKAS JSYS with DA%INI set, and before doing
DSKAS with DA%WRT if a fork does a dismount of the structure (via MSTR),
the fork will wait untill D1%INI get turned off in DEVCH1. If this
fork happens to be the same fork that did the DSKAS with DA%INI set,
and hasn't done the DA%WRT yet, the fork will never return. In addition,
the fork is running NOINT! Say good bye to your fork. Unfortunately,
this not only hangs the fork, but also hangs the structure.
Solution: When doing the dismount function of MSTR, check if D1%INI is
set, if it is, return an error.
[End of TCO 6.1611]
TCO-number: 6.1612
Written-by: WEETON Creation-date: 12-Apr-83 16:09:30
Edited-by: WEETON Edit-date: 12-Apr-83 16:12:19
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: DSKALC MONSYM
Problem: No way to abort DA%INI function of DSKAS JSYS.
Diagnosis: (see TCO 6.1611) Noone ever thought it might be nessesary.
Solution: Add new function (DA%AIN) which aborts the initialization of the
private copy of the bit table.
[End of TCO 6.1612]
TCO-number: 6.1615
Written-by: PAETZOLD Creation-date: 15-Apr-83 16:26:38
Edited-by: PAETZOLD Edit-date: 16-Apr-83 14:18:47
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: STG
Problem:
Address space is tight.
Diagnosis:
A page of storage from old LCS stuff still hangs around.
Solution:
Remove BLKTRN.
[End of TCO 6.1615]
TCO-number: 6.1617
Written-by: PAETZOLD Creation-date: 19-Apr-83 22:22:30
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: STG
Problem:
Problems in release 6.0 when DECNET is turned off.
Diagnosis:
Several symbols and jsys' which do not get defined in a non decnet module
are undefined.
Solution:
Add dummies for DIMLNK, EVRKIL, OURNAM, OURNOD, and .NODE.
[End of TCO 6.1617]
TCO-number: 6.1619
Written-by: PAETZOLD Creation-date: 20-Apr-83 13:45:18
Edited-by: PAETZOLD Edit-date: 21-Apr-83 14:28:09
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: STG execca EXEC0 EXECGL
Problem:
No monitor support for H19 terminals.
Diagnosis:
Solution:
Add H19 terminal code to STG and MONSYM. Precedent exists in supporting
TI and Teletype terminals.
[End of TCO 6.1619]
TCO-number: 6.1620
Written-by: WACHS Creation-date: 21-Apr-83 07:40:50
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PHYSIO MSTR MONSYM
Problem: GALAXY needs to know if a disk is potentailly dual-ported
between systems.
Diagnosis: Need a bit in MSTR.
Solution: return a bit, MS%2PT, if US.2PT is lit in the UDB's status
word. This bit is returned in the .MSRST word
[End of TCO 6.1620]
TCO-number: 6.1622
Written-by: MAYO Creation-date: 22-Apr-83 13:52:08
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: mstr
Related-SPR: 18667
Problem: MSTR% doesn't always take user byte pointers. Sometimes it
just takes the RH of the byte pointer and sticks POINT 7 in the LH.
Diagnosis: The STOSTR: routine has a bad check for -1 LH byte pointers.
Solution: Replace the bad check with the more usual TLC, TLCN sequence.
[End of TCO 6.1622]
TCO-number: 6.1623
Written-by: MILLER Creation-date: 25-Apr-83 14:11:52
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: STG JSYSA
Problem: The current technique for deterring people from guessing
passwords is inadequate and inconvenient.
Diagnosis: The 3 second pause for an incorrect password is annoying
for those of us who are poor typists, and of marginal deterrent
value to those intent on breaching the system's security measures.
Solution: Implement a new scheme that limits the number of guesses
one is entitled to.
[End of TCO 6.1623]
TCO-number: 6.1624
Written-by: MCLEAN Creation-date: 25-Apr-83 20:07:16
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: SCHED
Problem: ILMREF FROM UUO
Diagnosis: UU1050 HAS PCU IN THE PC WORD CAUSING A SECTION
GREATER THAN 27 PAGEFAIL
Solution: REMOVE PCU PC WORD.
[End of TCO 6.1624]
TCO-number: 6.1627
Written-by: LOMARTIRE Creation-date: 27-Apr-83 09:09:34
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: STG
Related-SPR: 19033
Problem: The customer cannot increase the size of FFF unless he has
sources.
Diagnosis: FFF was moved from STG to POSTLD so that it would be the last
area to be placed in the RSDAT PSECT. The intent was to allow any extra
space at the end of the PSECT to be used as additional patching space. But
PAT.. and the symbol table are always placed after FFF, so (except for that
offered by PAT..) there is no addtional space available.
Solution: Move FFF back into STG so that even customers without sources can
change the size of the patching area.
[End of TCO 6.1627]
TCO-number: 6.1628
Written-by: LOMARTIRE Creation-date: 27-Apr-83 09:23:19
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: DEVICE
Related-SPR: 19091
Problem: ILMNRF BUGHLT.
Diagnosis: While doing a CLOSF, after the device dependent routine has been
called to close the JFN, the monitor tries to clean up the DEVxxx tables.
To do this it needs an index into these tables and so FNDUNT is called. This
routine searches INIDVT until the dispatch address is found which matches the
one stored in the JFN block at FILDEV. However, the JFN block has somehow
been cleared and FILDEV is zero. So FNDUNT returns with a bogus index and
ILMNRF.
Solution: In routine FNDUNT, if FILDEV is zero, use DEV (AC 13) instead.
This is setup by CHKJFN to contain a copy of FILDEV and will always be
correct since CHKJFN is called before FNDUNT.
[End of TCO 6.1628]
TCO-number: 6.1630
Written-by: MCINTEE Creation-date: 27-Apr-83 14:52:01
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: SCHED MEXEC IPIPIP IMPDV
Problem: JSSEC0 bugchks when some people login
Diagnosis: Routine PSIMB forces section zero (the miniexec is entered via this
routine, and SOME people go to the miniexec after logging in)
Solution: Change the MONBK/PSIMB technique and all users of it.
1) MONBK now contains the 30 bit address of the "interrupt" routine
(formerly the right half of MONBK contained the address)
2) ITFFL & ITFPC will now be used for the storage of the flags & PC
at the time of the interrupt, by having PSIMB store them there
directly. (formerly the left half of MONBK pointed to a 2 word block,
which was either ITFFL (MEXEC) or ITFPC (ARPANET modules) - the
latter being, of course, incorrect)
[End of TCO 6.1630]
TCO-number: 6.1633
Written-by: LOMARTIRE Creation-date: 28-Apr-83 11:15:03
Edited-by: LOMARTIRE Edit-date: 28-Apr-83 14:26:39
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PAGUTL STG
Related-SPR: 18449
Problem: The customer cannot open large files and the error messages give
no particular clue as to what the problem is.
Diagnosis: The system has run out of OFN space. However, there is no
message given to the operator to indicate this - just MONX01 errors issued
to the users.
Solution: Create a new BUGINF called NOOFN. This will be called from
two places within ASOF4:. The first is when a long file OFN cannot be
created (just before returning with MONX01) and the other is when a normal
file OFN creation attempt fails (just before returning with OPNX10). There
will be no additional data printed with this BUGINF. Also, to make changing
NOFN easier, change it's definition in STG to use the NDG macro.
[End of TCO 6.1633]
TCO-number: 6.1635
Written-by: MURPHY Creation-date: 29-Apr-83 14:02:02
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: SCHED APRSRV
Problem: References to user address space fail if monitor context
is not properly setup. Many places where new flags are
established fail to ensure that PCU and PCS are set to
appropriate values.
Diagnosis: Flag and field not being set.
Solution: Create symbol MONENV which includes values for PCU and
PCS as well as current and previous AC blocks. It should be
used in place of MONFLG wherever the entire flag word is being
set.
[End of TCO 6.1635]
TCO-number: 6.1637
Written-by: MCLEAN Creation-date: 2-May-83 12:18:37
Edited-by: COBB Edit-date: 22-Jun-83 23:50:26
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: STG SYSERR JSYSA MONSYM SETSPD GLOBS
Problem: The SOFTWARE REQUIREMENTS DOCUMENT associated with TOPS-20 V6.0
contains many less-than-reasonable requests/demands.
Diagnosis: One of them involves implementing a running count (since forever)
of SPEAR entries generated by TOPS-20 for a given system.
Solution: Implement this, based on reading the old count out of the DUMP, if
possible. If not, find old count in ERROR.SYS. If these fail, BUGINF and
start count at 0.
[End of TCO 6.1637]
TCO-number: 6.1638
Written-by: LEACHE Creation-date: 2-May-83 15:53:43
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: CMSKSP
Problem: User programs cannot parse a semi colon using any function
provided by the COMND% JSYS.
Diagnosis: The code was written to always consider semi colon to
begin full line comments. There is no code to allow semi colon to
be parsed in any other way.
Solution: Add a new bit (CM%NOC) to the FDB specific flags which
causes COMND% to skip the check for full line comment character.
If the bit is off, all programs work as before. If the bit is on
and a semi colon is seen is does NOT begin a full line comment, but
can be matched against the function in the FDB.
[End of TCO 6.1638]
TCO-number: 6.1639
Written-by: MOSER Creation-date: 3-May-83 15:52:06
Edited-by: COBB Edit-date: 6-May-83 13:28:48
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: POSTLD
Problem: Not enough question marks?
Also, not enough percents%
Diagnosis: The modules listed contain PRINTXs informing the assembler
(the person, not the program) of certain inconsistancies in defining
data.
Solution: Add %'s and ?'s where applicable.
[End of TCO 6.1639]
TCO-number: 6.1641
Written-by: LEACHE Creation-date: 4-May-83 08:48:03
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: GTJFN FREE IPCF ENQ
Problem: Need more address space in the monitor.
Diagnosis: As above.
Solution: Move swappable free space into a non-zero section.
[End of TCO 6.1641]
TCO-number: 6.1642
Written-by: GRANT Creation-date: 4-May-83 09:19:25
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: NSPSRV nsppar
Problem: ILMNRF BUGHLT
Diagnosis: Swappable free space clobbered. On incoming DECnet connections
TOPS-20 is not allowing enough space for 39-character user names, accounts,
and passwords.
Solution: Create a new symbol SIZ39 and use it instead of OPTSIZ in
routine GTSBLK.
[End of TCO 6.1642]
TCO-number: 6.1645
Written-by: MCLEAN Creation-date: 5-May-83 13:12:47
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PHYSIO
Problem: ILLUUO OCCURS WHEN A HARD ERROR OCCURS ON A DISK THAT IS DUAL PORTED
AND THE SECOND ACCESS PATH IS IN USE.
Diagnosis: WHEN THE ERROR HAPPENS WE RECOVER CORRECTLY THE PROBLEM OCCURS WHEN
THE NEXT REQUEST TO THE ALTERNATE PATH HAPPENS. THE NEW REQUEST INTERRUPTS FROM
SEEK DONE AND FINDS THAT UDBERR IS NON-ZERO. IT THEN TRIES TO RECOVER AND
WE WANDER OFF INTO THE WILDERNESS BECAUSE WE AREN'T IN ERROR RECOVERY ANY MORE.
Solution: DON'T SWITCH BACK TO THE PRIMARY CHANNEL UNTILL ALL THE CLEANUP IS DONE
FOR THE UDB.
[End of TCO 6.1645]
TCO-number: 6.1648
Written-by: PAETZOLD Creation-date: 5-May-83 20:19:34
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: Yes
Program: MONITOR
Routines-affected: PHYH2
Problem:
Still gettting PH2PIMs on 2102.
Diagnosis:
Need help from the monitor.
Solution:
Add a temporary change to recheck the rh PIA after it is detected bad to
see if a possible timing/race condition exists. In any case the machine will
still crash (as it does now).
During the duration of this change the following is true:
PH2PIM BUGHLT means that the RH PIA has gone away for a long time.
PH2PIX BUGHLT means that the RH PIA came back after it was detected incorrect.
[End of TCO 6.1648]
TCO-number: 6.1649
Written-by: MCLEAN Creation-date: 5-May-83 20:22:01
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PHYP4
Problem: PHYP4 DOES PORT RELEASES WHEN IT SHOULDN'T. THIS CAN CAUSE
ERROR RECOVERY TO FAIL IF THE OTHER PORT SEIZES THE DISK. IT CAN ALSO
LEAVE THE DISK IN A VERY STRANGE STATE.
Diagnosis: PORT RELEASES ARE SCATTERED A BIT TOO LIGHTLY THRU PHYP4.
Solution: REMOVE SOME OF THE CALLS TO RP4DIS.
[End of TCO 6.1649]
TCO-number: 6.1651
Written-by: WACHS Creation-date: 10-May-83 04:15:25
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: Yes
Program: MONITOR
Routines-affected: PHYKLP
Problem: KLIPA ucode doesn't get automatically reloaded after a diagnostic
has released the KLIPA channel
Diagnosis: No code
Solution: Add code to reset the KLIPA, set the appropriate bits so as not
to cause a BUGCHK, and ask that job 0 reload the ucode when the channel
is returned by a diagnostic
[End of TCO 6.1651]
TCO-number: 6.1655
Written-by: COBB Creation-date: 12-May-83 09:52:34
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: JSYSA
Problem: GTDIR% trashes too many words of user space.
Diagnosis: Its OK to trash the words the user asks us to, but an off-by-one
caused TOPS-20 to store into the user's block+1.
Solution: Add the ever popular SOJLE Q2,GTDIR5 to account for the word we've
stored into user space.
[End of TCO 6.1655]
TCO-number: 6.1657
Written-by: MCLEAN Creation-date: 15-May-83 21:35:51
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: GLOB PHYMSC
Problem: NOT ENOUGH BUG.'S AND TOO MANY ##'S
Diagnosis: PHYMSC NOTICES ERRORS BUT DOES NOT REPORT THEM IT JUST
DOES SOME WORK TO FIX THINGS UP OR DECLARE A UNIT OFF LINE AND CONTINUE'S
Solution: ADD MORE BUGINF'S AND MAKE GLOB.MAC BIGGER TO REMOVE ##'S
[End of TCO 6.1657]
TCO-number: 6.1658
Written-by: MCLEAN Creation-date: 16-May-83 21:46:47
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: DIAG
Problem: A COUPLE OF PLACES IN DIAG CALL SC.ABF OKINT. SPECIFICALLY
DGSTRT,DGRSET
Diagnosis: ADD A FEW NOINT'S ETC
[End of TCO 6.1658]
TCO-number: 6.1659
Written-by: GRANT Creation-date: 17-May-83 10:11:54
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: NTMAN
Problem: Needless use of swappable free space.
Diagnosis: NTMAN% uses swappable free space for a copy of the user's
argument block; the block is only 11 words long. Also, this
makes cleanup more complicated than necessary.
Solution: Put the copy of the user's argument block on the stack instead
of in swappable free space.
[End of TCO 6.1659]
TCO-number: 6.1660
Written-by: MURPHY Creation-date: 18-May-83 11:43:32
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: SCHED
Problem: Code appears wrong -- references variable never set up.
Probable result is inefficient scheduling under heavy swapping
conditions.
Diagnosis: Half baked implementation.
Solution: Remove half-baked code. Yields more predictable result
than attempting to finish baking.
[End of TCO 6.1660]
TCO-number: 6.1664
Written-by: COBB Creation-date: 21-May-83 22:09:01
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PHYSIO
Problem: Code is wrong.
Diagnosis: PHYSIO calls ELOGOO: in MEXEC to logout a job which offened it.
To do this, it takes the halfword job number from FKJOB(fork #). Unfortunately,
it picks the wrong half word.
Solution: HLRZ, not HRRZ.
[End of TCO 6.1664]
TCO-number: 6.1665
Written-by: MCLEAN Creation-date: 23-May-83 22:27:57
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PHYPAR
Problem: DUPLICATE SERIAL NUMBERS SEEM TO APPEAR USING HSC.
Diagnosis: 48 BITS IS GREATER THAN 36 BITS.
Solution: MAKE UDBDSN TWO WORDS DO WE CAN GET THE WHOLE SERIAL NUMBER
NOT JUST SOME MAGIC CONSTANT.
[End of TCO 6.1665]
TCO-number: 6.1666
Written-by: MCLEAN Creation-date: 24-May-83 16:15:57
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PHYP4
Problem: SERIAL NUMBER IS MISSING IF PORT IS LOCKED TO OTHER SIDE
Diagnosis: SERIAL NUMBER SHOULD BE SET WHEN PACK COMES ONLINE.
Solution: FIX IT AND COMPLAIN ABOUT NO SERIAL NUMBER
[End of TCO 6.1666]
TCO-number: 6.1667
Written-by: GRANT Creation-date: 25-May-83 10:31:44
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: STG NSPSRV NTMAN
Problem: Low on address space.
Diagnosis: DECnet doesn't need node counter tables in section 0.
Solution: Use NRE and RSE for the network management node counters.
[End of TCO 6.1667]
TCO-number: 6.1669
Written-by: MCLEAN Creation-date: 26-May-83 19:36:49
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PHYMSC
Problem: RESTAC HAS AN INSTRUCTION SKIPN KDBIAC+2
Diagnosis: MISSING (P2)
Solution: ADD IT.
[End of TCO 6.1669]
TCO-number: 6.1672
Written-by: CHALL Creation-date: 8-Jun-83 16:43:59
Edited-by: MCLEAN Edit-date: 8-Jun-83 16:45:15
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: SYSERR
Problem: WE SEEM TO BE LOSING SYSERR ENTRIES INCLUDING GETTING LARGE
BLOCKS OF 0 WRITTEN
Diagnosis: CODE LOOKS GOOD EXCEPT THAT IT IS POSSIBLE THE CHFDB GETS
DONE BEFORE THE FILE IS WRITTEN THEN WE CRASH AND LOSE THE DATA
BUT NOT THE END OF FILE POINTER.
Solution: ADD A WELL PLACED UFPGS.
[End of TCO 6.1672]
TCO-number: 6.1673
Written-by: CHALL Creation-date: 8-Jun-83 16:44:06
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: IO SCHED FORK GLOBS MONSYM
Problem: The signal JFN is not correctly recognized and acted upon.
Diagnosis: It needs to be checked for specially by CHKJFN, and the
fork superior waked up.
Solution: Add code to handle the signal JFN in IO, SCHED, and FORK.
[End of TCO 6.1673]
TCO-number: 6.1674
Written-by: CHALL Creation-date: 8-Jun-83 16:44:52
Edited-by: MOSER Edit-date: 8-Jun-83 16:46:55
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PHYMSC
Problem: The flag INIT in the MSCP driver and KLIPA driver is a tremendous
kluge. It causes more problems than it fixes.
Diagnosis: As above. INIT is not needed unless HSCs can be PS anyway.
Solution: Rip init out of PHYMSC.
[End of TCO 6.1674]
TCO-number: 6.1678
Written-by: MURPHY Creation-date: 9-Jun-83 12:23:48
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: POSTLD
Problem: Solving PSECT overflows is a big pain. It often requires
several attempts to get it right.
Diagnosis: Too gruesome to discuss is public.
Solution: The ultimate solution may be long in coming. However,
as a current expedient, make POSTLD write a file with computed
PSECT origins based on the length of the PSECTS in the load
just completed. Assuming that nothing is changed in the
build, and that there is in fact 0 or more free pages in
section 0, the link and parameter files may be changed
to these origins and the build will work the next time.
Documentation: whatever documentation discusses building monitors
in the field should be updated to note that this file is
written at the conclusion of each build, and describe
how to put the values from it and put them into the files
which control the next load. The file written by
POSTLD is PSORG.TXT. It may also be that some of the existing
discussion about juggling PSECTS can be deleted.
[End of TCO 6.1678]
TCO-number: 6.1680
Written-by: PAETZOLD Creation-date: 9-Jun-83 14:13:48
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: MEXEC
Problem:
SYSERR fork and QUASAR eventually stop talking to eachother and free
space gets used up and Paetzold can not login.
Diagnosis:
Solution:
Turn on QU%NRS in the QUEUE% JSYS call in WROPR0.
[End of TCO 6.1680]
TCO-number: 6.1681
Written-by: MCLEAN Creation-date: 9-Jun-83 14:20:27
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PHYPAR
Problem: NO-ONE KNOWS WHO OWNS THE CI AND NI CHANNELS.
Diagnosis: PHYH2 SEEMS TO BE THE OWNER OF THE SETUP CODE AND
HE IS A RH20 GUY.
Solution: MAKE PHYKNI AND PHYKLP BE THE OWNER OF THESE CHANNELS AND CDB'S.
[End of TCO 6.1681]
TCO-number: 6.1685
Written-by: MOSER Creation-date: 13-Jun-83 16:48:05
Edited-by: MOSER Edit-date: 20-Jun-83 17:37:46
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: SYSERR
Problem: System hung. Free space exhausted, in use from general pool.
Diagnosis: Syserr fork is dead. It got a panic channel interrupt while
doing a Jsys Which returns +1, +2. Syserr can handle +1 but not interrupts.
Solution: Change instructions after possibly failing JSYSes to ERJMPs
not JRSTs or JFCLs.
[End of TCO 6.1685]
TCO-number: 6.1687
Written-by: GRANT Creation-date: 15-Jun-83 13:18:00
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: NSPSRV
Problem: ILLSTR BUGCHKs.
Diagnosis: A message is being processed as if it were a node init from the
DN20. It's not. It is an illegally constructed message from VMS but TOPS-20
doesn't detect it soon enough.
Solution: In STRMSG, the routine which processes a node init, make sure we
are looking at the first byte in the message before proceeding.
[End of TCO 6.1687]
TCO-number: 6.1689
Written-by: HALL Creation-date: 16-Jun-83 15:19:32
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: APRSRV
Problem: Need more address space
Diagnosis: Fork tables in code section
Solution: Move them elsewhere
[End of TCO 6.1689]
TCO-number: 6.1690
Written-by: MCLEAN Creation-date: 17-Jun-83 20:55:36
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: MSCPAR
Problem: STATUS CODE ALWAYS SUCCESS.
Diagnosis: BYTE POINTER WRONG (TONY WAS IN THE WRONG BYTE).
Solution: PUT THE POSITION OF THE END STATUS IN P.STS WHERE IT BELONGS.
[End of TCO 6.1690]
TCO-number: 6.1692
Written-by: LOMARTIRE Creation-date: 20-Jun-83 14:31:48
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: DEVICE ENQ IPCF PROLOG
Related-SPR: 18562
Problem: As of version 5.0, a new macro was added to PROLOG called LCKINI. It
hides the global symbol LCKINI (which is in PAGUTL) and makes it unusable.
Thus, the instruction CALL LCKINI doesn't work because the macro expansion is
invoked.
Diagnosis: As above.
Solution: Change the name of the macro (and all invocations of it) from LCKINI
to INILCK. This name is not presently used.
[End of TCO 6.1692]
TCO-number: 6.1699
Written-by: PAETZOLD Creation-date: 21-Jun-83 19:37:12
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: SCHED
Problem:
ERROR.SYS and everything else is full of HPSCHKs.
Diagnosis:
They are not going away and just clog everything up.
Solution:
Put a SKIPA before the HPSCHK for now.
[End of TCO 6.1699]
TCO-number: 6.1700
Written-by: MURPHY Creation-date: 22-Jun-83 10:26:40
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PAGEM
Problem: Need to be able to map pages in scheduler-level code,
using either page identifier or physical core page number.
Diagnosis: No code.
Solution: Write some. Enhance SETMPG to check INSKED and use
alternate procedure. Requires that destination map be in
core already. Source page must also be in core if it will
subsequently be referenced at scheduler level.
New routine SPHYPG which takes physical page number and
destination map ID. Destination map must be in memory;
source page must be in core with legal CST0 age.
[End of TCO 6.1700]
TCO-number: 6.1702
Written-by: MCLEAN Creation-date: 22-Jun-83 20:44:36
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PHYMSC
Problem: EXODUS GETS I/O ERRORS WHEN DRIVE GOES OFFLINE.
Diagnosis: UNIT-AVAILABLE IS LEGAL ERROR RETURN FROM READ/WRITE
SO WE MUST OFF-LINE IT INSTEAD OF DECLARING FATAL ERROR TO USER.
Solution: ADD AVAILABLE CHECK.
[End of TCO 6.1702]
TCO-number: 6.1703
Written-by: MCLEAN Creation-date: 22-Jun-83 21:19:52
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PHYMSC
Problem: REGISTERS ARE GETTING TRASHED BUT CODE LOOKS GOOD.....
Diagnosis: THE CODE HAS:
SAVEAC (Q1,Q2,Q3)
Solution: THIS IS A CASE WHERE THE "WONDERFUL" MACROS DON'T GIVE AN
ERROR WHEN YOU TYPE SOMETHING WRONG!!!!!! (YUCK)
CHANGE SAVEAC (Q1,Q2,Q3) TO SAVEAC <Q1,Q2,Q3>.
[End of TCO 6.1703]
TCO-number: 6.1705
Written-by: MCLEAN Creation-date: 25-Jun-83 20:40:49
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: DIAG
Problem: ENABLE/DISABLE CI IS CURRENTLY MAINTENANCE CAPABILITY
Diagnosis: IT SHOULDN'T BE.
Solution: MAKE IT WHEEL OR OPERATOR ONLY.
[End of TCO 6.1705]
TCO-number: 6.1706
Written-by: MCLEAN Creation-date: 26-Jun-83 10:04:05
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PHYSIO
Problem: BAT BLOCKS ARE NOT CREATED ON HSC DISK'S
Diagnosis: IT WAS SPECIFICALLY DISABLED.
Solution: IF IS.DVE (DEVICE ERROR) IS SET THEN DON'T CREATE BAT BLOCKS
FOR ERRORS THAT OCCUR ON HSC DISK'S.
[End of TCO 6.1706]
TCO-number: 6.1707
Written-by: CHALL Creation-date: 27-Jun-83 16:40:23
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: DATIME
Problem: IDTNC interprets "1200midnight" as noon.
Diagnosis: Midnight winds up as 1200pm.
Solution: Treat midnight as 1200am.
[End of TCO 6.1707]
TCO-number: 6.1709
Written-by: LOMARTIRE Creation-date: 29-Jun-83 10:24:08
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: GETSAV
Related-SPR: 19299
Problem: Illegal memory READ.
Diagnosis: Create a non-zero section with SMAP% but don't create any pages in
the section. Then SAVE the core image and GET the .EXE file. The section
that was created is now gone. The SSAVE JSYS fails to record an empty section
(other than zero) in the directory area of the .EXE file.
Solution: Add some code to SSAVE which will accurately record any empty
section in the directory area of the .EXE file.
[End of TCO 6.1709]
TCO-number: 6.1710
Written-by: PRATT Creation-date: 29-Jun-83 16:58:07
Edited-by: PRATT Edit-date: 5-Jul-83 19:51:56
Edit-checked: No Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: DIRECT
Related-SPR: 17020 16235
Problem: GNJFN does not return all generations of a particular file when
doing version lookups. This is demonstrated by having the files file.ext.1,
file.ext.10, and file.ext.20. Now GTJFN/OPENF to write file.ext.5 but don't
CLOSF. At this point GTJFN / GNJFN's of file.ext.* will return only
generation 1.
Diagnosis: When the version lookup code is scanning for old files only and
finds FB%NXF set in the FDB, it stops stepping thru the FDB chain and returns
a File not found error.
Solution: When FB%NXF is detected, check to see if we are stepping versions.
If so, set the new version flag and go to the routine which will cause a
scan of the next FDB in the chain.
[End of TCO 6.1710]
TCO-number: 6.1712
Written-by: TAMBURRI Creation-date: 1-Jul-83 14:11:30
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: FORK JSYSA SCHED
Problem: Extended section PA1050 confuses the monitor.
Diagnosis: When a RESET% JSYS is done, the address of the current
PA1050 is cleared to indicate that it no longer exists. The
memory area or section in which PA1050 lives, is not cleared
however, since the monitor that it will overwrite the area
in another UUO is done. This works fine with a regular PA1050
in section 0, but with the extended section PA1050, the
monitor automatically looks for the first free section it finds.
Since the old PA1050 is still occupying its section, we give
the new one the next section following it, rather than overwriting
the current one.
Solution: Don't clear the entire PA1050 address on a RESET%. Rather,
just clear the insection address, and keep the section number
in the left half. The next time a UUO is done, see if we already
have a section number, and if we do, use it instead of searching
for a new section.
NOTE: This fix also anticipates the same problem with RMS living
in extended sections.
[End of TCO 6.1712]
TCO-number: 6.1713
Written-by: MCLEAN Creation-date: 5-Jul-83 14:07:45
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PHYSIO PHYP4
Problem: It is impossible to determine between drive offline and
CFS has forced the drive to be offline because it is dual ported.
Diagnosis: need a new operator message and a few fixes to do this
in a better manner.
Solution: add a new message
%Problem Drive Dual Ported to Unknown System:
Also fix it so that programs will now see the offline bit.
[End of TCO 6.1713]
TCO-number: 6.1714
Written-by: MCLEAN Creation-date: 6-Jul-83 23:00:42
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PHYP4
Problem: Lots of NRFTCL and NPWQPD BUGCHKS occur with RP06/RP07's.
Diagnosis: Code was changed from REL 4 to REL 5 at RP4ATU to call
PHYPDN which notify's PHYSIO that a position request is done.
The problem is that when we get to RP4ATU the device was offline and
was not active. Therefore we could not have been positioning at
the time so why should we declare the positioning done??
Solution: Fix it so that the JRST ATNXIU is a JRST ATNXIT where
it used to go.
[End of TCO 6.1714]
TCO-number: 6.1717
Written-by: TSANG Creation-date: 7-Jul-83 17:01:33
Edited-by: TSANG Edit-date: 7-Jul-83 17:08:41
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: Yes Hardware-related: No
Program: MONITOR
Routines-affected: DIRECT
Related-SPR: 18697
Problem: If you submit a command like: @EXPUNGE PS:<*> the MONITOR may issue
BUGCHK's DIRFDB, ILIBPT and then crashed the system with BUGHLT ILMNRF.
Diagnosis: If the FBEXL field (link to FDB of next extension) contains some kind
of garbage which may cause by hardware problem, and later on when the MONITOR
refers to that field, the system will crash with a BUGHLT ILMNRF.
Solution: Insert a subroutine ADRCHK in MDDDC1 to check the address of next
extension. If it is not valid skip that file and go to the next one. Later on
a BUGCHK DIRFDB with the additional information "Internal format of directory
is incorrect" will be issued instead of a BUGHLT ILMNRF with system crashed.
[End of TCO 6.1717]
TCO-number: 6.1718
Written-by: WEAVER Creation-date: 7-Jul-83 17:16:18
Edited-by: WEAVER Edit-date: 15-Aug-83 10:24:38
Edit-checked: Yes Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: TTPHDV
Problem:
Remote flag gets set when FE tells TOPS20 what speed a local autobaud line is.
Diagnosis:
Remote bit is not specifically checked, but rather a JUMPE C,... is used
where C contains both REMOTE (1B2) and AUTOBAUD (1B3) bits.
Solution:
Specifically check the REMOTE bit before declaring the line REMOTE, then
fall through to check the AUTOBAUD bit.
[End of TCO 6.1718]
TCO-number: 6.1719
Written-by: MURPHY Creation-date: 8-Jul-83 15:43:20
Edited-by: MURPHY Edit-date: 25-Jul-83 17:21:35
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: MEXEC PARAMS
Related-TCO: 6.1752
Problem: Some customers want system to do modem hangup on
logout, some don't. TOPS20 now hangs up if job not logged in;
doesn't hang up if job is logged in.
Diagnosis: No adjustment possible.
Solution: Add parameters to PARAMS which can be set by customer
to get desired behaviour, as follows:
HNGU0==:1 ;Not-logged-in jobs, 0=don't hangup, 1=hangup
HNGU1==:0 ;Logged-in jobs, 0=don't hangup, 1=hangup
Above values are default settings consistent with previous releases.
[End of TCO 6.1719]
TCO-number: 6.1725
Written-by: PRATT Creation-date: 12-Jul-83 18:28:47
Edited-by: PRATT Edit-date: 12-Jul-83 18:30:50
Edit-checked: No Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: TTYSRV
Related-SPR: 19285
Problem:
Users that try to set their terminals pause character to ^S will hang
the line after they log out.
Diagnosis:
The TTPCS code increments the line's lock count and calls TTPPCS which
checks the arguement for ^S. If it is, it generates an error without
decrementing the lock count.
Solution:
Change the ITERR TTYX02 at TTPPCS+2 to ITERR (TTYX02,<CALL ULKTTY>)
[End of TCO 6.1725]
TCO-number: 6.1726
Written-by: MOSER Creation-date: 14-Jul-83 09:59:01
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: JSYSF
Problem: CHFDB can adversly affect file length field of the FDB. Even when
totally unrelated fields are changed.
Diagnosis: Code makes incomplete checks and call UPDFLN (Update file length)
at the wrong times. For new files it can cause the length to be 0 bytes!
Solution: Fix it.
[End of TCO 6.1726]
TCO-number: 6.1727
Written-by: MOSER Creation-date: 14-Jul-83 11:27:02
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: JSYSA MSTR
Problem:
MOUNTR is hung, SYSJOB too.
No one knows quite what to do.
They tried Control-E SPEAK,
the situation looks bleak.
Before 5 this never was true.
Diagnosis:
PMAP trashes structure lock count.
MOUNTR then hangs during dismount.
MSTR code has a race,
in more than one place,
DISMSes with large INTDF ammount.
Solution:
CALL LUNLKF from PMAP
and that should prevent this mishap.
Make MSTR benevolent
by DISMSing OKINT.
That should fix all of this crap.
[End of TCO 6.1727]
TCO-number: 6.1729
Written-by: JCAMPBELL Creation-date: 14-Jul-83 11:36:47
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: JSYSF DIRECT
Problem: EXEC cannot set FDB attribute for FORTRAN carriage control.
And even if they could, they might propogate them in new generations.
Diagnosis: FB%FOR not an allowed bit for CHFDB. FB%FOR not cleared
by code to create new generation.
Solution: Add FB%FOR for writer, owner, and wopr in CHFDB tables.
Add FB%FOR to flags to be cleared for new generation in DIRECT.MAC.
[End of TCO 6.1729]
TCO-number: 6.1733
Written-by: PAETZOLD Creation-date: 15-Jul-83 14:17:04
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: FORK STG globs TTYSRV IMPDV IMPANX
TCPTCP TCPBBN TCPCRC ipipip ipfree MNETDV
NETWRK
Problem:
TCP code in release 6 not up to date.
Diagnosis:
Lots of merging needs to be done.
Solution:
Merge my changes since April. This includes the removal of most of the old
ARPANET NCP code.
[End of TCO 6.1733]
TCO-number: 6.1734
Written-by: MCLEAN Creation-date: 18-Jul-83 11:15:46
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: SYSERR
Problem: SYSERR JSYS doesn't account for extra crash spanning word.
Diagnosis: split the transfer into two parts to account for this
without changing the jsys.
Solution: Make the changes to JSYS code to split buffer and
insert crash spanning word.
[End of TCO 6.1734]
TCO-number: 6.1736
Written-by: MILLER Creation-date: 18-Jul-83 14:55:54
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: JSYSA
Problem: STDEV does not return its error code in AC2 as documented. In
fact, it doesn't return its error code in AC1! The only way to
learn why STDEV failed is a GETER JSYS.
Diagnosis: No code to do what we claim it does.
Solution: Add the code to do what we claim it does.
[End of TCO 6.1736]
TCO-number: 6.1737
Written-by: LEACHE Creation-date: 18-Jul-83 18:53:26
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: SCHED STG
Problem:
It is sometime desireable to capture the state of a stuck fork with a dump.
Diagnosis:
There is currently no easy way to do this.
Solution:
Invent the crash-on-fork utility which will cause the scheduler to crash
ths system the next time the specified fork is run. The facility is
invoked (from MDDT) as follows:
T1/ Fork number
CALL CRSFRK$X
The routine will set up the appropriate database, and give the fork a
PSI interrupt. The next time the fork is chosen to run, the scheduler
will crash the system with a KRSFRK BUGHLT, displaying the number of
the crashed fork and the number of the job requesting the crash on
the CTY.
The crash-on-fork utility is under the control of the DEBUG conditional.
[End of TCO 6.1737]
TCO-number: 6.1740
Written-by: MCINTEE Creation-date: 19-Jul-83 11:28:09
Edited-by: MCINTEE Edit-date: 19-Jul-83 11:57:05
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PROLOG
Problem: The BUG. expansion in a listing does not display the continuation
address when it is used.
Diagnosis: Bug in MACRO requires fix in BUG. macro
Solution: Rearrange the BUG. macro, pushing the continuation feature down
one level.
[End of TCO 6.1740]
TCO-number: 6.1742
Written-by: PAETZOLD Creation-date: 20-Jul-83 16:59:47
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: MEXEC
Problem:
ATTACH JSYS bombs out for ARPANET FTP servers.
Diagnosis:
ATACH% was changed to only allow attaches when the target terminal is
assigned to the current job. ATACH will not allow attachs when the
target terminal is unassigned.
Solution:
Add code so that unaasigned tty's can be attached to.
[End of TCO 6.1742]
TCO-number: 6.1743
Written-by: MCCOLLUM Creation-date: 20-Jul-83 20:35:57
Edited-by: MCCOLLUM Edit-date: 18-Aug-83 13:52:22
Edit-checked: No Document: Yes TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: MONSYM MEXEC
Problem:
PEEK% JSYS can't return data from extended sections.
Diagnosis:
PEEK% JSYS wasn't intended to return data from extended sections.
Solution:
Write XPEEK% JSYS to handle extended sections.
See document R60SPC:XPEEK-SPEC.DOC
[End of TCO 6.1743]
TCO-number: 6.1746
Written-by: MOSER Creation-date: 22-Jul-83 09:35:52
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: JSYSA
Problem: PLOCK cannot lock pages in sections other than zero.
Diagnosis: It explicitly checks for page numbers less than 1000. It
cannot get the SPT number right for sections other than zero.
Solution: Call FKHPTN to setup PTN,,PN and remove the inadequate code from
PLOCK. Also allow bit FK%EPN in AC1 for PLOCK.
[End of TCO 6.1746]
TCO-number: 6.1747
Written-by: MOSER Creation-date: 22-Jul-83 11:01:23
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: JSYSF
Problem: RMS cannot set the FB%FCF (file class field) of files FDB unless
it has OWNER access to the file. Write access should be sufficent since
it is possible to change a file's class by writing it.
Diagnosis: FB%FCF not in WRITER table of CHFDB.
Solution: Add it.
[End of TCO 6.1747]
TCO-number: 6.1748
Written-by: MOSER Creation-date: 22-Jul-83 16:12:13
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: FORK
Problem: System runs strangly after SJPRI or SPRIW Jsys is done by
a careless WHEEL. It may crash or hang.
Diagnosis: SJPRI and SPRIW do not check the users arguments for legal values
in the queue number fields. The monitor is happy to use the values supplied
by the user as indexes into many tables that are too short for the value
supplied. This can lead to lmost anything.
Solution: Check for legal queue values in these Jsyses.
[End of TCO 6.1748]
TCO-number: 6.1749
Written-by: WEETON Creation-date: 23-Jul-83 01:57:10
Edited-by: MCLEAN Edit-date: 4-Aug-83 07:57:05
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PHYH2 PHYSIO
Problem: NOIORB BUGHLT for tapes.
Diagnosis: A lot of work has been done to CHECKD; thus CHECKD has been going
through growing pains.
Solution: Fix SETUDB to return the Active UDB if there is one
and fix WRNGUN to BUGCHK if nothing was supposed to be active.
[End of TCO 6.1749]
TCO-number: 6.1750
Written-by: TGRADY Creation-date: 23-Jul-83 12:54:50
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: Yes
Program: MONITOR
Routines-affected: PHYH2
Problem:
PH2PIM BUGHLT's are the apparent result of a hardware design problem
with RP07's, and filling the dump structure(s).
Diagnosis:
Field Service has determined that the loss of PI assignment is intrinsic
in the design of the RP07, and all the BUGHLT's in the world aren't going
to help find the problem.
Solution:
Make it back into a BUGCHK, as well as it's cousin PH2PIX, and wait for
hardware engineering to fix the bug.
[End of TCO 6.1750]
TCO-number: 6.1751
Written-by: MURPHY Creation-date: 25-Jul-83 17:07:14
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: SCHED
Problem: FPTMXX bughlt; possibly others in release 5, 5.1, etc.
related to paging confusion.
Diagnosis: SKEDFC (force clear) flag invokes routine which
put AOBJN pointer in FX instead of just plain fork index.
This may confuse lower level paging routines.
Solution: Use separate AC for count; keep LH of FX clear.
[End of TCO 6.1751]
TCO-number: 6.1752
Written-by: MURPHY Creation-date: 25-Jul-83 17:20:45
Edited-by: MURPHY Edit-date: 25-Jul-83 17:21:52
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: MEXEC JSYSA STG PARAMS MONSYM
Related-TCO: 6.1568
Problem: Need way for customers to control system carrier off
and hangup actions.
Diagnosis: No adjustment presently possible.
Solution: Create following new SMON/TMON functions:
.SFCOT - Value is time in milliseconds between carrier off event
(including network connection broken) and automatic
logout of job. Default is 5 minutes.
.SFHU0 - Flag to control hangup action for not-logged-in jobs.
0 = no hangup; 1 = hangup. Default is 1.
.SFHU1 - Flag to control hangup action for logged-in jobs.
0 = no hangup; 1 = hangup. Default is 0.
This TCO replaces 6.1568 and 6.1719.
[End of TCO 6.1752]
TCO-number: 6.1753
Written-by: PRATT Creation-date: 26-Jul-83 11:42:33
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: COMND
Related-SPR: 17334
Problem: Documentation says that the user may change the break
mask for switches but the code does not allow it.
Diagnosis: The code is missing a CMSBF parameter for .CMSWI functions.
Solution: Change the entry for .CMSWI at CFNTAB+3 to set CMSBF.
[End of TCO 6.1753]
TCO-number: 6.1758
Written-by: MILLER Creation-date: 3-Aug-83 10:49:58
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: STG exec
Problem: We need a way for each site to specify where the MAIL.TXT
files reside. This is particularly important for CFS.
Diagnosis: Presently, the mail software assumes that MAIL.TXT
resides on PS:.
Solution: Create the logical name POBOX: as the location of the
MAIL.TXT files. POBOX: is defined by the monitor to be PS: but
may be redefined in the CONFIG.CMD file. Changes the EXEC, MS
and the mailers to look on POBOX: for the mail files.
[End of TCO 6.1758]
TCO-number: 6.1762
Written-by: MCINTEE Creation-date: 8-Aug-83 12:51:39
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PHYSIO
Problem: SKDPF1 bughlt
Diagnosis: UNICHK runs in section 0, but references the fork tables, and
calls PSIRQ & ELOGOO, which reference the fork tables.
Solution: Make those sections of code run in section 1.
[End of TCO 6.1762]
TCO-number: 6.1763
Written-by: MCINTEE Creation-date: 8-Aug-83 14:30:13
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: DISC
Problem: ILMNRF bughlt
Diagnosis: A PMAP done under the following conditions will cause a ILMNRF:
1) The file is a long file
2) The current page is being changed to another file section
3) The directory in which the file resides is not open
The ILMNRF occurs when the directory is referenced, assuming it is mapped
in the usual manner. It isn't.
Solution: Change routine CPJFNV to call SETDIR at its beginning, and USTDIR
at its end.
[End of TCO 6.1763]
TCO-number: 6.1764
Written-by: MCINTEE Creation-date: 8-Aug-83 14:50:43
Edited-by: MCINTEE Edit-date: 9-Aug-83 11:47:22
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: APRSRV
Problem: Sometimes in a SKDPF1 crash, TRAPPC, TRAPFL & UPTPFW have
been trashed, apparently in the BUGHLT code.
Diagnosis: To aid in the diagnosis of this type of crash, move the contents of
TRAPPC & TRAPFL into AC2 & AC3 respectively, and comment that fact.
UPTPFW is already in AC1.
Solution: None.
[End of TCO 6.1764]
TCO-number: 6.1767
Written-by: LOMARTIRE Creation-date: 11-Aug-83 10:57:19
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: SCHED
Related-SPR: 19356
Problem: The .SKBCS function of the SKED JSYS only changes the batch class
of the first running batch job; all others retain their original classes.
Diagnosis: Routine SKDSCB is called to change the batch class and sets T4
as a loop counter. Then routine CHGCLS is called which in turn calls upon
routine CHGCNT. But CHGCNT trashes T4 and as a result only the first
running batch job gets its class changed.
Solution: Change the ASUBR at CHGCLS to a SASUBR. This will restore T4 and
allow for the proper stepping through all the batch jobs.
[End of TCO 6.1767]
TCO-number: 6.1768
Written-by: LOMARTIRE Creation-date: 11-Aug-83 16:23:33
Edited-by: LOMARTIRE Edit-date: 18-Oct-84 13:03:32
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: APRSRV
Related-TCO: 6.1769 6.2252
Related-SPR: 19162
Problem: The system hangs after a spurious power fail.
Diagnosis: It appears that a microcode bug does not allow paging to be
turned off once it has been on. In the routine IORST (which is called
from within SYSRST), the monitor attempts to turn off paging and cache
via a CONO PAG,@CONOPG. Once this instruction has been executed after
a spurious power fail, the system hangs.
Solution: Insert a CONSO PAG,PGTPEN before the CONO PAG,@CONOPG so that
paging will not be turned off once it has been turned on. Also, place
a CONSO PAG,PGTPEN before the UMOVEM T1,CSTBR in PAGRST so that the CST
base register is not redefined if paging is kept on.
[End of TCO 6.1768]
TCO-number: 6.1769
Written-by: LOMARTIRE Creation-date: 11-Aug-83 16:49:49
Edited-by: LOMARTIRE Edit-date: 18-Oct-84 13:03:31
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: APRSRV
Related-TCO: 6.1768 6.2252
Related-SPR: 19223
Problem: The system does not continue after a power fail and usually fails
due to an ILLUUO BUGHLT.
Diagnosis: See TCO 6.1768. Routine PWRRST turns off paging and this causes
the system to perform strangely.
Solution: First install TCO 6.1768. Next, place a CONSO PAG,PGTPEN before
the CONO PAG,@CONOPG in PWRRST. This will insure that paging will not be
turned off if it is already on.
[End of TCO 6.1769]
TCO-number: 6.1779
Written-by: PRATT Creation-date: 18-Aug-83 10:37:47
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: COMND
Related-SPR: 18895
Problem:
TBADD and TBDEL don't know how to handle addresses which point to
command table entries for abbreviated keywords.
Diagnosis:
For abbreviated keywords, the RH of the command table entry points to
the address of the table entry for which it is an abbreviation. If a
keyword is added to or deleted from the table, the address in the RH may
have to be incremented or deleted.
Solution:
Create a flag called TB%ABR (1B0), which can be set in AC 1 of a TBADD
or TBDEL jsys call. When set, TB%ABR says that abbreviated keywords are
present in the command table. After adding or deleting the keyword, find
all abbreviated keywords and update the pointers if they were affected.
[End of TCO 6.1779]
TCO-number: 6.1781
Written-by: LOMARTIRE Creation-date: 18-Aug-83 16:48:35
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: GETSAV
Related-SPR: 19390
Problem: The user can hang his job in the GET JSYS if he does a GET on a
TTY or PTY.
Diagnosis: At GET01, a call is made to GTSVID, where the device
characteristics are obtained. Next, the fork lock is obtained, the fork
goes NOINT, and a BIN is used to obtain the first word of the directory
section for the file. At this point, if the user hits a CONTROL/C, the
fork will hang in the TCIPIT test waiting for the fork to become
interruptable.
Solution: After the return from GTSVID, test the device. If it is a TTY
or a PTY, return a GETX1 error (which, if passed back to the EXEC, will
result in a ?Bad .EXE file format message).
[End of TCO 6.1781]
TCO-number: 6.1782
Written-by: TBOYLE Creation-date: 18-Aug-83 17:23:12
Edited-by: TBOYLE Edit-date: 22-Feb-85 17:08:10
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: DISC
Related-SPR: 18430
Problem: Data in files that are opened short but become long can be lost
even if UFPGS (update file pages) is used. If a crash occurs, the file
can in some circumstances come back short. This can affect accounting data
files, PTYCON logs, DBMS Journals, or other applications that rely on
UFPGS working for long files.
Diagnosis: The code that turns a short file into a long file turns on
the FILNB bit on storage address of the super-index block AFTER it
is saved in a temporary. When it is later used to store in the FDB,
it does not have the FILNB bit set!
Solution: This bug is fixed by reversing the TLO and the MOVEM.
[End of TCO 6.1782]
TCO-number: 6.1784
Written-by: GRANT Creation-date: 22-Aug-83 08:54:33
Edited-by: GRANT Edit-date: 22-Aug-83 08:58:48
Edit-checked: No Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: TTPHDV
Related-SPR: 18827
Problem: Terminal page mode does not work on a DECnet NVT line.
Diagnosis: If you do the MTOPR function .MOSNH twice on the same line, the first
time setting SH%LPM and second time not, ^S and ^Q have no effect. This is
caused by incorrect logic in the translating the user's SH%LPM setting into the
monitor's internal indicator. The code assumes this funciton is done only once.
Solution: If SH%LPM is not on, turn off TTNPM in the terminal data base.
[End of TCO 6.1784]
TCO-number: 6.1787
Written-by: TBOYLE Creation-date: 25-Aug-83 11:33:22
Edited-by: TBOYLE Edit-date: 26-Aug-83 12:42:22
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: Yes Hardware-related: No
Program: MONITOR
Routines-affected: JSYSA
Related-SPR: 19182
Problem: The TMON% JSYS zeros the right half of ac2 when called
with the .SFSOK function on GETOK% function code of 400000 (user defined)
but not on the other codes (.GOACC,.GOLOG,...) The sometimes zeroing
and sometimes leaving alone of RH AC2 is not consistent behavior.
Diagnosis: Code zeros the right half of AC2 to index into the GETOK flags
table.
Solution: Be sure RH AC2 has original value on return.
[End of TCO 6.1787]
TCO-number: 6.1788
Written-by: TBOYLE Creation-date: 26-Aug-83 12:47:26
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: Yes Hardware-related: No
Program: MONITOR
Routines-affected: FORK
Related-SPR: 18805
Problem: If a user supplies the exact number of words needed for
the information block returned by GFRKS% JSYS, an error is returned.
Diagnosis: fencepost error when using AOBJP.
Solution: subtract another 1,,0 off the AOBJP pointer before doing the job.
[End of TCO 6.1788]
TCO-number: 6.1789
Written-by: MOSER Creation-date: 26-Aug-83 17:11:26
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PAGUTL
Problem: ILIBPT Bugchks, PAGLCK, PGNDEL, PTNIC1 Bughlts, File damage and
potentially other problems for sites which heavily excercise the file system.
Diagnosis: When the system runs out of OFNs it calls FREOFN to release
all "unshared" OFNs. Unfortunatly FREOFN believes that many OFNs are unused
while they still are valid page tables and frees them. When they are later
used for something else various parts of TOPS-20 lose their minds when they
do not find the page table they expected.
Solution: Only release OFNs which are unshared and unlocked in FREOFN.
[End of TCO 6.1789]
TCO-number: 6.1791
Written-by: LOMARTIRE Creation-date: 1-Sep-83 11:27:46
Edited-by: LOMARTIRE Edit-date: 1-Sep-83 11:57:42
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: MEXEC
Related-SPR: 19445
Problem: Any user can log into any account on the system from a batch
job.
Diagnosis: First, assign a terminal to act as a dummy controlling terminal.
Then, create a job via CRJOB%, keyed off of the controlling terminal;
maintain ownership but don't log it in. Next, attach to the new job and
release ownership of it. Now BATCON is controlling this new job (which is
not logged in). Since BATCON is privileged, the user can log into any
account without giving a password.
Solution: Add code which will return a CAPX1 error if the job attempting the
ATACH% is running under batch and does not have WHEEL or OPERATOR capabilities
enabled.
[End of TCO 6.1791]
TCO-number: 6.1792
Written-by: LOMARTIRE Creation-date: 1-Sep-83 11:47:42
Edited-by: LOMARTIRE Edit-date: 15-Jun-84 08:40:35
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: FILMSC
Related-TCO: 6.2100
Related-SPR: 15946
Problem: A user can obtain and open 2 JFNs on the same TTY. He will be
unable to close the second JFN and has obtained "permanent" ownership of
it. If another user logs in with this TTY as his controlling terminal,
he can be watched.
Diagnosis: There is no check made to detect multiple openings made on the
same TTY.
Solution: As in the PTY case, test DV%OPN to see if the TTY is already open.
If it is, fail with a OPNX9 (Invalid simultaneous access) error. An exception
to this will be an OPENF% on TTY:, which will always succeed.
[End of TCO 6.1792]
TCO-number: 6.1793
Written-by: TBOYLE Creation-date: 7-Sep-83 11:33:02
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: GTJFN
Related-SPR: 17233
Problem: GTJFN can return the error ?No such file type when recognition
occurs and an extension is defaulted. This is fine, except that it can
also occur when the actual error is ?Directory is full i.e. when the symbol
table fills up.
Diagnosis: The "do default extension" routine (DEFEXT) has a very general
interpretation of errors and informs its caller that no match occurs, the
caller then generalizes the error with even more humorous errors.
Solution: Change DEFEXT to return the error GJFX23 if it is encountered
rather than "no match".
[End of TCO 6.1793]
TCO-number: 6.1795
Written-by: PRATT Creation-date: 8-Sep-83 11:19:19
Edited-by: PRATT Edit-date: 8-Sep-83 11:21:15
Edit-checked: No Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: GTJFN
Related-SPR: 17124
Problem:
Using editing characters such as delete and ctrl-w on CRT, can confuse
users if a GTJFN informational message has been typed out by the monitor.
Diagnosis:
Whenever a short form GTJFN is performed with GJ%CFM and GJ%MSG turned on,
or a long form GTJFN with G1%RCM turned off and GJ%CFM and GJ%MSG turned
on, the informational message is output only to the terminal. If a delete
is typed, the last character in the message is erased from the screen but
the last character in the filename is removed from the buffer.
Solution:
If we are waiting for a confirmation character to be typed and get a
editing character instead, retype the filespec on the next line up to the
point of the deleted character.
[End of TCO 6.1795]
TCO-number: 6.1796
Written-by: PRATT Creation-date: 8-Sep-83 17:18:57
Edited-by: PRATT Edit-date: 16-Nov-83 18:15:19
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: TTYSRV
Related-SPR: 18806
Problem:
Certain terminals or terminal like devices, such as graphics terminals,
plotters, hardcopy printers, and even microcomputers, have a need to
ensure that no characters/messages are sent to it except data characters.
The REFUSE SYSTEM-MESSAGES, REFUSE ADVICE, and REFUSE LINKS commands are
not adequate to stop all messages sent to a terminal line.
REFUSE SYSTEM-MESSAGES will not stop a TTMSG to a specific terminal.
The "TALK" command will generate bells on a terminal which is
"refusing links".
Nothing prevents a privileged user from BOUTing/SOUTing to a
specific terminal.
Diagnosis:
There is no code to prevent certain messages or characters from being sent
to a particular line.
Solution:
There are many changes.
1) Create a new multi-purpose MTOPR function which allows
several terminal related flags to be set. The initial
implementation creates the REFUSE USER-MESSAGES and
TERMINAL [NO] INHIBIT (NON-JOB OUTPUT)
2) Modify TTMSG and TLINK to obey the flags for the new
commands mentioned above. Also modify the code so that
a priv'd user cannot BOUT/SOUT/etc to a terminal that
does not want to be interrupted.
3) Create the new EXEC commands REFUSE/RECEIVE USER-MESSAGES
and the TERMINAL [NO] INHIBIT (NON-JOB OUTPUT).
4) Allow a new flavor of REFUSE/RECEIVE ADVICE/LINKS/SYSTEM/etc
which is [SET] TERMINAL [NO] RECEIVE ADVICE/LINKS/etc.
For addtional info, see R60SPC:TERMINAL-MESSAGES.MEM
and R60SPC:REFUSE-USER-MESSAGES.MEM
[End of TCO 6.1796]
TCO-number: 6.1797
Written-by: MCLEAN Creation-date: 12-Sep-83 13:21:46
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PHYP4
Problem: Pulling the lap plug on the RP06 may cause the unit to
stop transferring when the plug is replaced
Diagnosis: If the unit is active at the time we don't clear the active bits.
Solution: clear the active and position bits.
[End of TCO 6.1797]
TCO-number: 6.1798
Written-by: HALL Creation-date: 12-Sep-83 15:33:29
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: Yes
Program: MONITOR
Routines-affected: PAGUTL APRSRV PROLOG globs
Problem: An ECO to the KL will allow it to support the "keep me" bit
in the hardware page table. We need software support.
Diagnosis:
Solution: Define some new bits in PROLOG. Make PGRINI set "keep me" in
the appropriate section map (sections 0 and 1) and map entries. Clear the
pager with "keep me" ignored at system startup, and then honor "keep me"
in subsequent pager clears.
Note: for now we are turning on the bit only in PSECTS RSCOD and SZCOD.
The whole thing is experimental until the hardware folks evaluate their
changes. Meanwhile, the code seems to have no adverse effects in a non-
ECOd KL.
There is one unexpected effect of this change: bit 8 of the page fail word,
which was supposed to mean "virtual reference", will now mean "keep me".
But that's OK because the hardware never got it right anyway. Also, the
SMAPOK macro, which checked for a successful MAP instruction, no longer
checks bit 8. Instead, it checks the "hard error" bit, which it should have
been doing all along.
[End of TCO 6.1798]
TCO-number: 6.1799
Written-by: TBOYLE Creation-date: 13-Sep-83 17:01:08
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: JSYSF
Related-SPR: 18733
Problem:
WHEN A SUPERIOR DIRECTORY GOES OVER WORKING QUOTA, PEOPLE IN THE
SUBDIR'S RECIEVE "?REQUEST EXCEEDS SUPERIOR WORKING QUOTA" WHEN
THEY TRY TO CHANGE ANYTHING I.E. SUCH AS THE PASSWORD OR ANY OTHER
THING.
Diagnosis: CRDIR% IS TOO SMART FOR ITS OWN GOOD. IT DOESN'T BOTHER
TO CHECK TO SEE IF THE CALLER IS NOT CHANGING THE WORKING QUOTA
AND SO WHEN THE SUPERIOR IS OVER QUOTA IT GIVES UP ON ANY
REQUEST.
Solution: CHANGE PROPER CODE SO THAT THE CHECKS FOR SUPERIOR BEING
OVER QUOTA ARE MADE ONLY IF THE USER IS TRYING TO CHANGE THE WORKING
QUOTA. THIS INCLUDES THE CASE OF A NEW DIRECTORY AS WELL.
[End of TCO 6.1799]
TCO-number: 6.1800
Written-by: TBOYLE Creation-date: 15-Sep-83 14:29:21
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: Yes
Program: MONITOR
Problem:
CHKPNT ignores user records.
Diagnosis: The size of a user record is calculated incorrectly.
Solution: Repair calculation of user record size.
[End of TCO 6.1800]
TCO-number: 6.1802
Written-by: TSANG Creation-date: 16-Sep-83 15:50:42
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: Yes Hardware-related: No
Program: MONITOR
Routines-affected: COMND
Related-SPR: 19417
Problem: A large number of unreleased JFNs exist if an error occurs when use
an indirect file. For example, if you submit a command "@SYSTAT @FOO.FIL X",
and then you submit another command "@INFO FILE", you will see a large number
of "FOO.FIL not opened".
Diagnosis: COMND JSYS is used to parse the argument which appears after the
command. If the argument is an indirect file, the system tries to get a JFN
for that indirect file first, and then looks for CR to terminate it. If CR
is not following the indirect file, the system will try to reparse it and get
another JFN for that indirect file. That is the reason why you will see "FOO.FIL
not opened" many times.
Solution: If the argument after an indirect file can not be parsed successfully,we have to release the JFN of that indirect file first, then try to reparse the
command string again.
[End of TCO 6.1802]
TCO-number: 6.1803
Written-by: TBOYLE Creation-date: 20-Sep-83 15:16:51
Edited-by: TBOYLE Edit-date: 20-Sep-83 15:17:39
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: DIRECT JSYSF DISC
Related-SPR: 18747
Problem: Special directories such as <SPOOL> or <ACCOUNTS> when deleted,
cause strange error messages when they are subsequently referenced and
hence cannot be recreated unless the system is booted again.
Diagnosis: The monitor specially encaches these directory numbers to speed
up their access. If one of these directories are deleted, the entries are
not removed from the special cache and so subsequent lookups return the
directory numbers which is now invalid.
Solution: Add a routine called REMSDR to DIRECT which removes a directory
number from the table if it is there. CRDIR% with CR%DEL will call this
and so will DELETE with DF%DIR.
[End of TCO 6.1803]
TCO-number: 6.1806
Written-by: MILLER Creation-date: 23-Sep-83 10:31:24
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: CFSSRV MEXEC globs
Problem: CFS systems need to corrdinate the date and time.
Diagnosis: As above
Solution: Have the CFS systems exchange date and time when they connect.
[End of TCO 6.1806]
TCO-number: 6.1807
Written-by: TSANG Creation-date: 23-Sep-83 13:12:35
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: Yes Hardware-related: No
Program: MONITOR
Routines-affected: JSYSF
Related-SPR: 19523
Problem: SFUST JSYS does not return an updated byte pointer in AC2.
Diagnosis: The system forgets to restore the updated byte pointer in AC2 at
the end of .SFUST routine.
Solution: Do it.
[End of TCO 6.1807]
TCO-number: 6.1808
Written-by: MCLEAN Creation-date: 27-Sep-83 21:22:41
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: SYSERR
Problem: BAD entries in SYSERR file.
Diagnosis: SYSERR JSYS permits users to make entries without codes.
Solution: Bugchk and don't make entry if no code is supplied.
[End of TCO 6.1808]
TCO-number: 6.1809
Written-by: MILLER Creation-date: 28-Sep-83 15:07:33
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PAGUTL
Problem: Deleting a file with a bad page can crash the monitor.
Diagnosis: DELBAD uses most of the P registers, but doesn't save
them first.
Solution: Save the P's at DELPT.
[End of TCO 6.1809]
TCO-number: 6.1810
Written-by: MOSER Creation-date: 28-Sep-83 16:46:08
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: GTJFN
Problem: None but behavior of monitor is inconsistent.
Diagnosis: The logical name DSK: is expanded to your connected directory
even if the bit G1%SLN (suppress logical name) is set unless DSK: has been
defined.
Solution: As an experiment never expand DSK: if G1%SLN is set.
[End of TCO 6.1810]
TCO-number: 6.1812
Written-by: PRATT Creation-date: 29-Sep-83 17:15:34
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: COMND
Related-SPR: 13260
Problem:
If a .CMUQS function is in a chain of function descriptor blocks,
and a question mark is typed, two bugs will occur.
1) No "Unquoted string" help message will be typed out.
2) The "?" will be blindly accepted as part of the unquoted string
along with any other characters which are typed.
Diagnosis:
The XCMUQS routine immediately starts reading input characters. If
the .CMUQS function is part of a chain, and the "?" is typed, then
XCMUQS is called to provide a help message. Unfortunately it doesn't
check to see if we are in the middle of processing help for each
function descriptor block.
Solution:
Have XCMUQS check the CMQUES flag and if it is on, do the standard
help message processing.
[End of TCO 6.1812]
TCO-number: 6.1814
Written-by: MILLER Creation-date: 3-Oct-83 08:21:26
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: mstr PAGUTL
Problem: It is not always possible to dismount an "off line"
structure.
Diagnosis: MSTR tries to update the OFNs for the structure
and MRKOFN always looks at the index block, even if it is
already on disk and therefore contains no local addresses.
Solution: Have MSTR bypass the OFN update if the structure is off-line,
and have MRKOFN (actually INVOFN) not scan the index block
if it is on disk.
[End of TCO 6.1814]
TCO-number: 6.1815
Written-by: MURPHY Creation-date: 3-Oct-83 12:22:07
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: SCHED
Problem: 1. SK%RSQ flag doesn't do anything.
2. Code obviously wrong, although no symptom known.
Diagnosis: 1. APSKED is called to check for resheduling needed before
the fork that might run is on the golist.
2. SKIPE T1,[stuff] never skips -- should have been a SKIPA.
Solution: 1. Reorder code to call APSKED after new priority is computed
and fork put on GOLIST. Also, put ISB SKDCHN back in.
2. Make the SKIPE be a SKIPA at .DISMS+11.
Credit for both of the above goes to Roy Davis of the Course Development
group who found them by reading the code. He also independently found
the half-baked code in AJBALS that we found a few months ago.
[End of TCO 6.1815]
TCO-number: 6.1816
Written-by: MOSER Creation-date: 4-Oct-83 14:59:22
Edited-by: MOSER Edit-date: 6-Oct-83 11:43:10
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: STG
Problem: PITRAP Bughlt.
Diagnosis: The code at DTEOFF references RLDFRK which is non-resident. This
can happen at DTE interrupt level.
Solution: Make RLDFRK resident.
[End of TCO 6.1816]
TCO-number: 6.1817
Written-by: PAETZOLD Creation-date: 4-Oct-83 19:34:07
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: GTJFN
Problem:
FILNO never gets cleared on a new jfn assignment.
Diagnosis:
We forgot.
Solution:
Zero it the same time FILSTS gets reset.
[End of TCO 6.1817]
TCO-number: 6.1818
Written-by: MCLEAN Creation-date: 5-Oct-83 20:10:59
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PHYP4 PHYSIO PHYM78 PHYP2 PHYX2
Problem: Physio runs in sec 0
Diagnosis: A few HLL P3, and friends
Solution: fix code in PHYxxx modules.
[End of TCO 6.1818]
TCO-number: 6.1820
Written-by: MILLER Creation-date: 7-Oct-83 22:38:58
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: DISC
Problem: RPACS% can crash the monitor.
Diagnosis: The routines used by RPACS (and other JSYSes) to verify
the JFN do not bother to check if the JFN is open!
Solution: Check if it is open and return DESX5 error if it is not.
[End of TCO 6.1820]
TCO-number: 6.1821
Written-by: TGRADY Creation-date: 7-Oct-83 23:22:55
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: FORK
Problem:
Older applications that use RMS expect that issuing an RMS JSYS will
result in loading RMS into user memory. They depend upon RMS being
in section 0. If XRMS is available on SYS, though, it gets loaded
instead, into section 2. This proves to be very unpopular...and breaks
FTS, PASCAL, and probably all sorts of other guys who just never noticed
before.
Diagnosis:
Originally, this was how it was supposed to work. The tune got changed,
but nobody told the monitor.
Solution:
To hell with XRMS. Always load RMS into section 0. If someone wants it
elsewhere, they can do it themselves. RMS has routines that are bright
enough to make this decision on their own, so the monitor doesn't need to know.
[End of TCO 6.1821]
TCO-number: 6.1822
Written-by: MCLEAN Creation-date: 8-Oct-83 22:24:27
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PHYMSC
Problem: BLDUDB LOOSES PACKET ADDRESS BEFORE CALL TO SETUDB
Diagnosis: DON'T LOOSE Q2
Solution: FIX IT IN BLDUDB TO SAVE Q2 BEFORE CALLING PHYUDB
[End of TCO 6.1822]
TCO-number: 6.1824
Written-by: MILLER Creation-date: 11-Oct-83 10:25:02
Edited-by: MILLER Edit-date: 12-Oct-83 08:14:37
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: IPCF CFSSRV STG
Related-TCO: 6.1826
Problem: IPCF PIDs are not guaranteed to be valid on only
on CFS system.
Also, the technique used by IPCF to avoid having an old PID
look to be valid is not as good as it could be.
Diagnosis: PIDs have an 18-bit field used to identify a valid
PID index. However, CFS systems duplicate this field, and
a PID assigned on one CFS system could look to be valid on
another CFS system. Even though it is unlikely that an
application could be "fooled" by this, it can be fixed by
creating a sub-field in the 18-bit ID that is unique
to each processor.
Also, the unique number palced in the 18-bit ID field should
come from a "random seed" instead of always starting from 1.
Solution: Create a 4-bit sub-field in the ID field to contain
the local CI port number. For systems that do not have a CI, or
do not have CFS, use a zero for this sub-field.
The remaining 14 bits of the ID field are generated as
before, except that the right-half of the date and time
word is used as the seed value. This should provide a little
better resolution of the field.
[End of TCO 6.1824]
TCO-number: 6.1825
Written-by: MOSER Creation-date: 11-Oct-83 15:37:20
Edited-by: MOSER Edit-date: 11-Oct-83 15:38:32
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: SCHED
Problem: J0NRUNs, no resident free space, GALAXY very slow... When class
scheduling with windfall withheld.
Diagnosis: When windfall is withheld the monitor removes jobs from the balance
set that are "ahead" of their allocation. It does not remove NOSKED or CRSKED
forks but it can remove forks that have JP%SYS set.
Solution: Don't remove forks that have BSSPQ set in FKSWP even if they are
ahead of their allocation.
[End of TCO 6.1825]
TCO-number: 6.1827
Written-by: MOSER Creation-date: 12-Oct-83 13:56:58
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: SCHED
Problem: ILMNRF during fork creation.
Diagnosis: If the drum is nearly full the pager will give an interrupt
when creating pages if the page fault is from the user or if the monitor is
OKINT. If this happens during fork creation (while creating the PSB) the
monitor will crash as it is OKINT (INTDF is -1) and unprepared for an interrupt.
Solution: Be NOINT during PSB creation.
[End of TCO 6.1827]
TCO-number: 6.1828
Written-by: MOSER Creation-date: 12-Oct-83 14:03:27
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: FORK
Problem: Hung jobs.
Diagnosis: Device lock can get locked but never unlocked during one strange
path through FORK.
Solution: Unlock DEVLKK at the correct place.
[End of TCO 6.1828]
TCO-number: 6.1829
Written-by: TGRADY Creation-date: 17-Oct-83 10:10:50
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PHYMSC
Problem:
PHMUND BUGCHK's happen when the system comes up because PHYMSC is checking
the unit type without setting up P4 correctly.
Diagnosis:
P4 just never got set up...and usually has a very negative number in it, so
whatever disk is on the HSC is never recognised.
Solution:
Use a call to UNTYPE, since it returns +1 if the unit isn't valid, and +2
if it is. This is equivalent to checking the unit type.
[End of TCO 6.1829]
TCO-number: 6.1830
Written-by: TGRADY Creation-date: 17-Oct-83 10:15:25
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PHYMSC
Problem:
SKDPF1's and probably other ILMNRF-type BUGHLT's
Diagnosis:
In PHYMSC, the CNRAVL routine handles Connect Response Available messages
from SCA, but SCA seems to return a Connect ID of -1 sometimes. Thereafter
any diddling with the Connect ID (MSCCID or MSCOLD) for that VC results in
illegal memory references.
Solution:
In CNRAVL, after checking that the Connect Response Available is good (i.e.
not rejected), check for a positive Connect ID (it should never be negative
or zero). If it's bad, BUGHLT with a BADCID bughlt. This is a new BUGHLT.
[End of TCO 6.1830]
TCO-number: 6.1832
Written-by: MILLER Creation-date: 17-Oct-83 14:00:34
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: Yes
Program: MONITOR
Routines-affected: APRSRV
Problem: Page table parity errors always cause a BUGHLT. This need
not be so.
Diagnosis: No code present to attempt to recover from this condition.
Solution: Add the missing code. Retry by clearing the pager (including
kept entries) and allowing the reference to proceed. If more than
two such errors occur, then BUGHLT.
Each time the monitor retries, issue a BUGCHK.
[End of TCO 6.1832]
TCO-number: 6.1833
Written-by: MOSER Creation-date: 19-Oct-83 11:07:13
Edited-by: MOSER Edit-date: 19-Oct-83 11:08:23
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: GTJFN
Problem: The system crashes when the FORTRAN group does experiments
with the OPEN. statement.
Diagnosis: Monitor does a JRST to nowhere when parsing an attribute
for a JFN that has no device. Any parse only JFN will do the trick.
Solution: Return GJFX40 "Undefined attribute in file specification" if the
DEV register contains a zero.
[End of TCO 6.1833]
TCO-number: 6.1834
Written-by: LOMARTIRE Creation-date: 19-Oct-83 11:35:40
Edited-by: LOMARTIRE Edit-date: 19-Oct-83 11:36:20
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: FILMSC
Related-SPR: 18423
Problem: After a user assigns the TTY end of a PTY, he will be unable to
open the PTY. The misleading error code "Device already assigned to another
job" (OPNX7) is returned.
Diagnosis: When the monitor is checking to see if the PTY can be opened, it
finds that the TTY end already has a dynamic data block assigned. It assumes
that someone else has assigned the TTY and returns with OPNX7.
Solution: In PTYOPN, if the line is found to already be active, check to see
who assigned the TTY. Continue if the same user is trying to open the PTY,
otherwise fail with a OPNX7.
[End of TCO 6.1834]
TCO-number: 6.1836
Written-by: PAETZOLD Creation-date: 20-Oct-83 10:08:18
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: TCPJFN monsym
Problem:
.IPGWY function of IPOPR JSYS not coded.
Diagnosis:
It was in the spec but somehow slipped by.
Solution:
Add the code. This function simply calls GWYINI to reinitialize the IP
gateway routing tables.
[End of TCO 6.1836]
TCO-number: 6.1838
Written-by: PRATT Creation-date: 20-Oct-83 15:39:39
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: COMND
Problem:
If CNTL-F is defined as a break character to the unquoted
string function, the field does not terminate when CNTL-F is
typed. The character goes into the buffer and the code keeps
accepting text until some other break character is typed.
Diagnosis:
The CMUQS1 routine correctly notices that CNTL-F terminates
the field, and calls the routines that treat it like an escape.
That code checks for CNTL-F and continues to accept input until the
field is terminated.
Solution:
Make escape and CNTL-F behave the same way for the unquoted string
function. This doesn't affect recognition since it isn't allowed.
[End of TCO 6.1838]
TCO-number: 6.1839
Written-by: MILLER Creation-date: 25-Oct-83 09:28:41
Edited-by: MILLER Edit-date: 25-Oct-83 10:13:10
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: SWPALC PAGEM
Problem: It is possible to run out of swapping space and crash
the monitor.
Diagnosis: This is a chronic problem, and there is likely no way
to prevent it completely, but quicker diagnosis of the
impending condition so that DDMP can run might help.
Solution: Do two things:
1. Each time a swapping address is assigned, check if the swapping space
threhsold is exceeded. If so, try to get DDMP to run immediately
2. In SWPOUT, around the label BKUPS, check for swapping space
low and an unmodified file page. If both of these are true, don't
swap out the page.
These together should help prevent running out of swapping space.
[End of TCO 6.1839]
TCO-number: 6.1843
Written-by: MOSER Creation-date: 26-Oct-83 15:19:16
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PAGEM
Problem: Swap space gets full. Unnecessary disk traffic on the public
structure. Difficult for system administrators to balance disk load.
Diagnosis: The monitor writes unmodified file pages to the swapping space.
Solution: In SWPOUT if a file page is unmodified simply put it on the
replacable queue instead of the swapping space.
[End of TCO 6.1843]
TCO-number: 6.1844
Written-by: TGRADY Creation-date: 26-Oct-83 23:16:18
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: SYSFLG PAGEM FORK
Problem:
The DYNLB% JSYS is still being loaded into the production monitors.
This is not a planned part of Release 6, and takes up some unnecessary
space.
Diagnosis:
Nobody ever took it out.
Solution:
In SYSFLG.MAC, make DYNFLG=0, and don't forget to recompile PAGEM and
FORK.
[End of TCO 6.1844]
TCO-number: 6.1845
Written-by: LOMARTIRE Creation-date: 31-Oct-83 16:21:25
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: JSYSF MONSYM
Related-SPR: 17741
Problem: CHFDB% JSYS done with a terminal JFN returns error code CFDBX1.
The message "Invalid displacement" is inappropriate in this situation.
Diagnosis: No appropriate error message for this case.
Solution: Add a new error code, CFDBX5 "No FDB for non-directory devices".
[End of TCO 6.1845]
TCO-number: 6.1846
Written-by: PRATT Creation-date: 2-Nov-83 11:27:33
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: COMND
Problem:
The .CMTOK COMND jsys function returns a "?Does not match token"
error if a default has been provided and the user types a crlf.
Diagnosis:
No code to take user default on crlf.
Solution:
Add the code.
[End of TCO 6.1846]
TCO-number: 6.1848
Written-by: TSANG Creation-date: 3-Nov-83 16:22:52
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: Yes Hardware-related: No
Program: MONITOR
Routines-affected: JSYSA
Related-SPR: 19555
Problem: The node name field in the Entry Header Record of a Session Entry is
always blank.
Diagnosis: The node name field UHNOD was set to blank in UFNI01 subroutine.
Solution: Move the node name to UHNOD in UFNI01 subroutine.
[End of TCO 6.1848]
TCO-number: 6.1849
Written-by: GROSSMAN Creation-date: 3-Nov-83 23:31:39
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: MEXEC STG
Problem: The RSX20F DL console stops working when the CTY gets relocated (via
the switch register).
Diagnosis: A long time ago, and far away... ...somebody installed a TCO to
prevent a tty being CRJOBed on from being assigned by another job. It did
this by comparing CRJTTY to the line that was being assigned. CRJTTY usually
has a value of 0 (in fact MEXEC goes out of it's way to ensure this) when
a CRJOB is not being done. The 20F DL console just happens to have a line
number of 0 (when it's not the CTY).
In any case, TTYSRV incorrectly determines that line 0 is the CRJOB tty, and
doesn't allow it to be assigned to the job we are creating, resulting in a
hung console.
Solution: If a CRJOB is not being done, ensure that CRJTTY contains the value
-1 which cannot be mistaken for a valid tty number. While in the neighborhood,
move the resetting of CRJTTY into code that only gets executed for CRJOB
startups. Previously, the monitor was resetting CRJTTY every time a new job
started up, whether or not it was a CRJOB startup.
[End of TCO 6.1849]
TCO-number: 6.1850
Written-by: MCLEAN Creation-date: 7-Nov-83 13:21:08
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PHYSIO
Problem: ILTWQP bughlt
Diagnosis: The homeblock IORB was on the Position wait queue and not
on the Transfer wait queue and it timed out. This caused the IORB
not to get removed from the PWQ but the IORB could now be re-used.
Solution: Check for PWQ entry and do hung check instead of cleaning
up the IORB.
[End of TCO 6.1850]
TCO-number: 6.1851
Written-by: CJOHNSON Creation-date: 8-Nov-83 13:07:09
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: JSYSA
Related-SPR: 18631
Problem: A program attempts to change the CCOC words for a terminal assigned to
another job with the SFCOC% Jsys. The JSYS appears to return
successfully, but no change is made.
Diagnosis: SFCOC% was using the incorrect error return mechanism (that for
skipping calls).
Solution: Use the proper error return mechanism (ITERR (DESX2)).
[End of TCO 6.1851]
TCO-number: 6.1853
Written-by: MCLEAN Creation-date: 9-Nov-83 13:24:00
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PHYX2
Problem: When writing 800/556 bpi NRZI count of frames is wrong.
Diagnosis: missing (P3)
Solution: Add (P3) to table so we don't write in 55 but write instead
55(P3) since we really want the count in the UDB.
[End of TCO 6.1853]
TCO-number: 6.1854
Written-by: TBOYLE Creation-date: 9-Nov-83 13:54:18
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: MEXEC
Problem: CTY output can be garbled if CHECKD is run during system
initialization.
Diagnosis: system initialization types [CHECKING SYSTEM STRUCTURE]
and also creates and runs the CHECKD fork which does a send-all
saying "Checking system structure."
Solution: Use DOBE to wait for CTY output to finish before creating
and running CHECKD fork.
[End of TCO 6.1854]
TCO-number: 6.1856
Written-by: PAETZOLD Creation-date: 10-Nov-83 11:12:37
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: STG TCPTCP
Problem:
TOPS-20AN floods other hosts, imps, and gateways with many redundant
useless probing acks when the TCP window is full on a TVT connection.
Diagnosis:
The packetizer attempts to send a probing ack every 200 milleseconds
from now until the window becomes non full. This causes amazing pain to
the other host and to the internet in general.
Solution:
Slow down the ack rate to once every 10 seconds. Change TVTWTM to
^D10000 from ^D200.
[End of TCO 6.1856]
TCO-number: 6.1860
Written-by: LOMARTIRE Creation-date: 10-Nov-83 16:42:52
Edited-by: LOMARTIRE Edit-date: 10-Nov-83 16:44:55
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: SCHED FORK GLOBS
Related-SPR: 19563
Problem: Job hangs on logout.
Diagnosis: A job is started via CRJOB and a process is started which maps
section 0 to section 1 and then continues running in section 1. This will
increment the share count of the PSB. Upon logout, the code at HLTJB1 clears
the pages in the process map and job map but neglects the section map for the
process. The code then waits for the PSB to become unshared, which it never
does, and the process hangs in WTSPTT test.
Solution: In HLTJB1, before the job and process maps are cleared, clear all
non-zero sections of the section map. This is done by calling CLNZSC. This
routine will have to be made global.
[End of TCO 6.1860]
TCO-number: 6.1861
Written-by: CJOHNSON Creation-date: 11-Nov-83 15:53:01
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: DISC
Related-SPR: 18823
Problem: Dump Mode I/O with disk files ignores the previous-context
section, making it impossible to provide command lists in non-zero
sections.
Diagnosis: The code wasn't obtaining the previous context section,
thereby defaulting in all cases to zero.
Solution: When obtaining right-half I/O word addresses, apply the
previous context section.
[End of TCO 6.1861]
TCO-number: 6.1862
Written-by: PAETZOLD Creation-date: 13-Nov-83 09:15:31
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: MEXEC
Problem:
XPEEK JSYS returns invalid words transferred count in .XPCN2 word if
user supplied section zero monitor address.
Diagnosis:
Code converts address to section one if it was given as section zero.
It later does arithmetic with the section zero version of the address and
the results are incorrect.
Solution:
Convert the address to section one format earlier in the code and save it
so that arithmetic will use the section one version.
[End of TCO 6.1862]
TCO-number: 6.1863
Written-by: GROSSMAN Creation-date: 14-Nov-83 19:26:47
Edited-by: GROSSMAN Edit-date: 14-Nov-83 19:45:32
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PAGUTL
Problem: PLOCK% JSYS causes KPALVH BUGHLTs (sometimes).
Diagnosis: The routine LODPPS gets a page fault (on PIPGA) when it tries to
write to a page that does not have it's CST write bit set. (Yes, thats right
folks, there's a new bit in the CST that says that this PHYSICAL page is
writeable!) PAGEM then tries to analyze the page fault, and in the process of
doing so, it:
1) smashes the map entry for PIPGA (PAGEM uses PIPGA to look at physical memory),
2) it determines that there was no reason for the page fault.
So, it restarts the instruction with PIPGA being non-addressible, and gets a
fault, and backto point #1...
Since the machine was PIOFF at the time, a KPALVH soon occurred.
The moral of the story is "Don't get page faults on PIPGA" (because PAGEM can't
possibly deal with them correctly).
Solution: Set the CST write bit for the physical page we are trying to lock.
[End of TCO 6.1863]
TCO-number: 6.1864
Written-by: PAETZOLD Creation-date: 14-Nov-83 23:57:46
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: monsym
Problem:
GTHST% functions .GTHLN and .GTHNT are not in MONSYM.
Diagnosis:
oversight.
Solution:
add them.
[End of TCO 6.1864]
TCO-number: 6.1866
Written-by: PAETZOLD Creation-date: 15-Nov-83 12:20:47
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: IMPANX
Problem:
IOPGF code in IMPANX will not work for multiple AN20s or for systems
not on ARPANET (eg. MILNET).
Diagnosis:
I was lazy when I coded it. It has the network wired in and it assumes that
the AN20 is the first NCT.
Solution:
Scan NCTs for AN20s and check each AN20's IWAR and OWAR for the bad page.
[End of TCO 6.1866]
TCO-number: 6.1867
Written-by: PAETZOLD Creation-date: 16-Nov-83 13:54:23
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: APRSRV
Problem:
TCP/IP needs a SAVEAC routine for P1
Diagnosis:
There is not one.
Solution:
Add it to APRSRV.
[End of TCO 6.1867]
TCO-number: 6.1868
Written-by: PRATT Creation-date: 16-Nov-83 14:38:01
Edited-by: PRATT Edit-date: 16-Nov-83 14:41:46
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PROLOG
Problem:
There is no way to ERJMP to the next instruction inside a literal.
Diagnosis:
ERJMP .+1 will jump out of the literal
IFJER. <> isn't descriptive and in fact generates an undefined symbol
Solution:
Define ERNOP. which generates:
ERJMP %tag
%tag:!
[End of TCO 6.1868]
TCO-number: 6.1872
Written-by: PAETZOLD Creation-date: 20-Nov-83 18:49:25
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: ipipip
Problem:
INTFRK runs all the time.
Diagnosis:
IBPTIM calculation for SIQCHK is wrong.
Solution:
Always call SIQCHK and let it decide when to wakeup.
[End of TCO 6.1872]
TCO-number: 6.1873
Written-by: MCLEAN Creation-date: 20-Nov-83 19:53:54
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PHYSIO
Problem: %UNIT switched on device: message reports junk.
Diagnosis: This routine calls UNIMES with the wrong data in
P1.
Solution: FIX AC usage.
[End of TCO 6.1873]
TCO-number: 6.1875
Written-by: MOSER Creation-date: 21-Nov-83 11:41:32
Edited-by: MOSER Edit-date: 6-Dec-83 11:46:22
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PAGUTL PAGEM
Problem: PAGLCK or ILMNRF BUGHLTs, NSKDT2 Bugchks when running SORT
or DATATRIEVE or any user mode program doing extended addressing.
Diagnosis: If a page fault occurs and the monitor does garbage collection
and CPTPGA is mapped and the user is using extended addressing the monitor will
call SECIND which calls SECPTR which trashes the mapping of CPTPGA. This
is caused by SETCPT giving a "free" call to RELCPT which undoes the unmapping.
Solution: Change SECPTR to save/restore mapping of CPTPGA. Change SETCPT
to BUGHLT instead of giving a free unmapping. Change SETMPG to not expect
this "feature" of SETCPT. The new BUGHLT will be CPTMAP.
[End of TCO 6.1875]
TCO-number: 6.1876
Written-by: TBOYLE Creation-date: 21-Nov-83 14:21:34
Edited-by: TBOYLE Edit-date: 21-Nov-83 14:22:37
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: MSTR MONSYM
Problem: CHECKD has no way to find out lost-sectors/cylinder. This
is needed so that CHECKD can find out disk drive infor directly from
the system rather than in its hokey private tables.
Diagnosis: MSTR% has never been instructed to return that info.
Solution: Make a new entry called .MSRLS (lost sectors/cyl.)
Additional research shows that sectors/surface cannot be determined
either, therefore provide another entry .MSRSS since it is conceivable
that someone may desire the information.
[End of TCO 6.1876]
TCO-number: 6.1877
Written-by: MOSER Creation-date: 21-Nov-83 16:44:01
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: APRSRV
Problem: Arithmetic trapping doesn't work. Word .AROPC of the trap block
is garbage.
Diagnosis: HRR T2,P1 should be HRR T1,P1.
[End of TCO 6.1877]
TCO-number: 6.1879
Written-by: MCLEAN Creation-date: 22-Nov-83 19:15:40
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PHYP4
Problem: RP4UNF BUGHLTS
Diagnosis: The port is in use on the other side.
Solution: Seize the port before reading the register.
[End of TCO 6.1879]
TCO-number: 6.1882
Written-by: GLINDELL Creation-date: 28-Nov-83 10:30:40
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: JSYSF monsym
Problem:
DECnet-36 (and possibly others) need to allow MTOPR without
the JFN being open.
Diagnosis:
Not needed before.
Solution:
Add a bit D1%MTO that means "this device can handle MTOPRs without the
jfn being open" to DEVCH1, and make JSYSF test the bit in the MTOPR
dispatch.
[End of TCO 6.1882]
TCO-number: 6.1883
Written-by: MCINTEE Creation-date: 28-Nov-83 15:10:08
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: JSYSA
Problem: CRJOB sometimes fails with invalid password when it shouldn't
Diagnosis: Incorrect check for -1,,X style byte pointer
Solution: Use the correct check (TLC, TLCN)
[End of TCO 6.1883]
TCO-number: 6.1884
Written-by: CJOHNSON Creation-date: 28-Nov-83 17:48:06
Edited-by: CJOHNSON Edit-date: 19-Dec-83 11:34:12
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: JSYSF
Related-SPR: 19729
Problem: System crashes with NOFNDU Bug Halt
Diagnosis: Under some circumstances, routine CLZDO calls FNDUNT after the
contents of AC JFN have been zeroed.
Solution: Have CLZDO restore the contents of AC JFN by using the existing
STKVAR CLZDOJ (times MLJFN).
[End of TCO 6.1884]
TCO-number: 6.1887
Written-by: MOSER Creation-date: 30-Nov-83 09:31:31
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: FORK
Problem: FLKINT Bugchk's, possible GLFNF Bugchk's when using TFORK function
.TFRES (Remove interrupts from all inferiors and clear assigned software
channels).
Diagnosis: TFORK^ goes NOINT and then does a TFORK JSYS which calls FLOCK.
Solution: Call FLOCK at TFORK6.
[End of TCO 6.1887]
TCO-number: 6.1888
Written-by: MCLEAN Creation-date: 30-Nov-83 21:20:29
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: DSKALC
Problem: BUM bat blocks.
Diagnosis: Unit numbers in the range of 9-16 destroy the bat block
word pair since the unit number is converted to a bit position with
a LSH.
Solution: Mask the unit number to 3 bits before LSH since it is impractical
to change the format of the BAT Blocks. This is also what TOPS10 plans to do.
[End of TCO 6.1888]
TCO-number: 6.1889
Written-by: MCINTEE Creation-date: 1-Dec-83 09:20:57
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: DTESRV
Problem: BUGHLT at RELNOD+4.
Diagnosis: Sanity check does not consider the case when the queue was empty
Solution: Make sanity check more sane.
[End of TCO 6.1889]
TCO-number: 6.1892
Written-by: MCLEAN Creation-date: 6-Dec-83 14:08:04
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: APRSRV
Problem: TCO 5.1196
Diagnosis: APR interrupt destroys most of the AC's (including the
stack pointer). If this is a non-fatal error we return with random
stack and ac's (we are careful to preserve AC 1.....).
Solution: Save and restore AC's!
[End of TCO 6.1892]
TCO-number: 6.1896
Written-by: MOSER Creation-date: 7-Dec-83 10:23:14
Edited-by: MOSER Edit-date: 7-Dec-83 10:25:07
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: APRSRV
Problem: FORTRAN and PASCAL will not run under release 6. Arithmetic
trapping does not work correctly. It is impossible to reference a trap block
in section zero.
Diagnosis: The monitor forces PCS to section 1 to allow for a trap
block in section N and a trapping instruction in section 0. It cannot
reference a trap block in section zero because it uses indexed references
to the users block.
Solution: Use indirect references.
[End of TCO 6.1896]
TCO-number: 6.1899
Written-by: CJOHNSON Creation-date: 7-Dec-83 15:32:30
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: ENQ
Related-SPR: 19771
Problem: ENQC% function .ENQCS (Obtain Status) never returns the EN%QCB flag,
and does not return the job number of the lock's owner when its a different
job than the caller.
Diagnosis: Not coded to do these things.
Solution: Add the code
[End of TCO 6.1899]
TCO-number: 6.1900
Written-by: PAETZOLD Creation-date: 8-Dec-83 13:50:39
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: Yes
Program: MONITOR
Routines-affected: APRSRV
Problem:
To my amazing surprise the hardware and microcode can give us unvectored
channel zero interrupts to handle. Currently EPT location 40 has a zero.
This may be the cause of many of the ILLUUO BUGHLTs we see that happen on
perfectly reasonable instructions.
Diagnosis:
Solution:
Add a new BUGHLT PI0ERR which will be dispatched from the EPT.
[End of TCO 6.1900]
TCO-number: 6.1901
Written-by: MCCOLLUM Creation-date: 9-Dec-83 18:18:46
Edited-by: MCCOLLUM Edit-date: 9-Dec-83 18:27:52
Edit-checked: No Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: COMND
Problem:
COMND% JSYS incorrectly handle the case of printing help messages for linked
FDBs for successive .CMKEY functions. It will print only the word "or" for
every FDB after the first if the user input has eliminated all possible keywords
for this FDB.
Diagnosis:
The routine CMQ1 in COMND.MAC is responsible for printing both the standard
help message and the user supplied help message. If this routine is called
for a .CMKEY FDB when all the possible keywords have been emilinated because
of text already typed, it will first print out the "or" text and then check
to see if the FDB is the first in the chain. If it is the first, it will print
the help text(s), if it isn't the first, it won't print anything further.
Solution:
Make CMQ1 first check to see if the FDB is the first in the chain, then print
out the "or" text and any necessary help strings. This will cause no help text
at all to appear for all FDBs after the first in the chain that cannot match
the user input.
[End of TCO 6.1901]
TCO-number: 6.1902
Written-by: CJOHNSON Creation-date: 12-Dec-83 12:25:50
Edited-by: CJOHNSON Edit-date: 12-Mar-84 16:06:22
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: GETSAV
Related-SPR: 19758
Problem:
When saving files on magtape via SSAVE%, the file is saved
incorrectly when it contains PDVs.
Diagnosis:
At SSAV4, a calculation to determine how many zero words to
write to fill the directory page with zeroes assumes that in
addition to the directory word pairs there are always five (5)
words (directory header, 3 word entry vector and trailer words).
Solution:
Make it figure out how many directory words really were written.
[End of TCO 6.1902]
TCO-number: 6.1906
Written-by: PAETZOLD Creation-date: 13-Dec-83 13:43:36
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: MEXEC SCHED STG globs
Problem:
DDMP can get stuck and we would never know it. Also J0NRUN indicates
that CHKR has stopped running and not DDMP.
Diagnosis:
DDMP and CHKR are not the same fork anymore.
Solution:
Add code to detect DDMP hung. The code looks just like the CHKR hung
code and uses the same time interval (4 minutes). Also change the
J0NRUN BUGHLT to NOCHKR and add the NODDMP BUGHLT.
[End of TCO 6.1906]
TCO-number: 6.1907
Written-by: CJOHNSON Creation-date: 13-Dec-83 15:50:55
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: NSPSRV
Related-SPR: 19770
Problem: DCN: links can not be open write-only, forks which do so appear
to block forever upon writing to the link.
Diagnosis: If a link is opened write-only, routine TURNON in NSPSRV avoids
sending an LS message to the remote NSP on the assumption that it
is not needed when the remote end is forbidden to transmit (because
the local process will never read from the link). However, SRV: links
require that the DCN: link transmit an LS before it will send one
of its own. Thus, if a DCN: link is opened write-only, it will never
send an LS and the SRV: end of the link won't either. As the initial
LS is needed to grant an allocation of transmit segments, the DCN: link
can never write because it never receives the transmit allocation.
Solution: Have TURNON not send the initial LS only when it is a write-only
SRV: link. Have write-only DCN: links send a zero transmit allocation
to the remote end of the link.
[End of TCO 6.1907]
TCO-number: 6.1909
Written-by: MURPHY Creation-date: 14-Dec-83 14:30:35
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: APRSRV
Problem: SAVEPQ doesn't work when P has a global stack pointer.
Diagnosis: Support routine uses BLT and therefore ignores the
actual section of the stack.
Solution: Get rid of BLT; use instructions which handle global
or local index correctly.
[End of TCO 6.1909]
TCO-number: 6.1910
Written-by: MOSER Creation-date: 15-Dec-83 13:50:24
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: SCHED
Problem: Cannot run programs that do CALLI 41 after SET NO UUO-SIMULATION
even though CALLI 41 does not use PA1050. CALLI 41 is the "magic" UUO for
obtaining the operationg system type.
Diagnosis: The new style of PATADR is incorrectly handled by UU1050. It
does not consider that PATADR may contain -1 meaning no PA1050 is allowed.
Solution: Correctly handle PATADR containing -1.
[End of TCO 6.1910]
TCO-number: 6.1912
Written-by: PRATT Creation-date: 15-Dec-83 14:11:33
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: MEXEC
Problem:
The write to operator routine is setting the QU%NRS
(no response) bit in ac1 when it should be setting
it in the argument block for the QUEUE jsys.
Diagnosis:
Solution:
Change the code.
[End of TCO 6.1912]
TCO-number: 6.1913
Written-by: TSANG Creation-date: 15-Dec-83 16:52:11
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: FORK
Problem: When you execute a PDVOP% JSYS with the .POGET function, and set both
.POADR and .POADE words to zero, they are interpreted as NO memory. The documentation claims that they will be interpreted as meaning all of memory.
Diagnosis: If the value in .POADE is zero, the system should convert it to
377777,,777777 which is the largest address in memory.
Solution: Do it as above.
[End of TCO 6.1913]
TCO-number: 6.1917
Written-by: TSANG Creation-date: 21-Dec-83 09:56:18
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: Yes Hardware-related: No
Program: MONITOR
Routines-affected: JSYSA
Related-SPR: 19596
Problem: A structure does not need to be mounted by a job in order for that job
to expunge the contents of a directory on that structure.
Diagnosis: No check is made for a mounted structure or not.
Solution: Call CHKMNO in .DELDF and return an error if the structure is not
mounted. The original PCO was created by Schmitt and applied to V4 monitor
on May 6, 1981.
[End of TCO 6.1917]
TCO-number: 6.1918
Written-by: TSANG Creation-date: 21-Dec-83 16:02:04
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: Yes Hardware-related: No
Program: MONITOR
Routines-affected: DATIME
Related-SPR: 19582
Problem: IDCNV JSYS does not work properly. If you specify 83 instead of 1983
in the left half of AC2, which contains year, the result time (in right half
of AC2) will be off by one hour, while the result year and date (in left half
of AC2) will be fine.
Diagnosis: Subroutine IDAYL is used to check against the input year whether
the DST should be applied or not. If input year is smaller than 1975 (decimal),
don't apply the DST otherwise apply DST. That is the reason why the result time
will be off by one hour between 83 and 1983.
P.S. If you specify input year smaller than 75, the problem won't exist.
Solution: If the input year in the left half of AC2 is smaller than 99, we
should convert it to 19XX. Later when the subroutine IDAYL is called, the
correct year will be used to check against the DST.
[End of TCO 6.1918]
TCO-number: 6.1920
Written-by: GRANT Creation-date: 30-Dec-83 07:05:51
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: NSPSRV
Problem: In debugging mode (NSPSW=1), logical link block verification doesn't
work.
Diagnosis: Release 6 uses different logical link block offsets than did Release
5.1. Thus, the offset used for the verification code is no longer
valid.
Solution: Use offset LLMSIT instead of offset LLMSG.
[End of TCO 6.1920]
TCO-number: 6.1921
Written-by: CJOHNSON Creation-date: 3-Jan-84 18:08:19
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: JSYSA
Related-SPR: 19853
Problem: The NIN% Jsys accepts 2**35 and returns -2**35 and no error code.
Diagnosis: The code looks only for 36 bit overflows.
Solution: Check the carry flags.
[End of TCO 6.1921]
TCO-number: 6.1924
Written-by: PRATT Creation-date: 4-Jan-84 14:52:15
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: APRSRV MEXEC
Problem:
Galaxy is looking for a "display type" function block for any
Write To Operator functions. The valid types are: bugchks,
buginfs, and system messages.
Currently, no one is setting the display type.
Diagnosis:
The WTO routines (WROPER and WROPR0) don't know about the display
type function block.
Solution:
Make the WTO routines build the display type block and use the
value supplied by the caller.
Make all callers of the WTO routines put the display type in AC3.
Also, change WROPER to use symbols instead of hardwired numbers.
[End of TCO 6.1924]
TCO-number: 6.1925
Written-by: PRATT Creation-date: 6-Jan-84 13:28:26
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: JSYSA
Problem:
At QUCHK+45 is a backwards test of the QU%NTB (No Text Block) for
the QUEUE% jsys.
Diagnosis:
Someone misinterpretted the meaning of the bit.
Solution:
Change the TXNN to a TXNE.
[End of TCO 6.1925]
TCO-number: 6.1926
Written-by: PRATT Creation-date: 6-Jan-84 13:41:26
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: JSYSA
Problem:
The QUEUE% jsys should set .IPCCG (sent by system for queue%)
as the system sender value in the flags word of an IPCF packet.
Diagnosis:
Solution:
Add the code to the instruction at QUE02+21.
[End of TCO 6.1926]
TCO-number: 6.1927
Written-by: PAETZOLD Creation-date: 7-Jan-84 11:15:35
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: MEXEC monsym
Problem:
The monrd jsys uses up lots of system resources and causes other problems
time after time after time.
Diagnosis:
It has never been good enough to put in the monitor. It originally happened
because the monitor could not return psb and jsb values to users.
Solution:
Add the .XPJSB and .XPPSB functions to XPEEK. This will allow us to get
rid of the monrd jsys.
[End of TCO 6.1927]
TCO-number: 6.1929
Written-by: PAETZOLD Creation-date: 12-Jan-84 14:14:35
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: SCHED STG PROLOG MEXEC APRSRV FORK
Problem:
FKJOBN DEFSTR in PROLOG conflicts with FKJOB symbol name.
Diagnosis:
Solution:
Change FKJOBN references to use FKJBN.
[End of TCO 6.1929]
TCO-number: 6.1930
Written-by: MCLEAN Creation-date: 12-Jan-84 19:31:55
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PAGUTL
Problem: Dumb installation wanted other than 256K increment of memory or
memory has a parity error somewhere.
Diagnosis: Either always use 256k multiples and no errors or fix PAGUTL
to do the correct calculation of CST?X sizes.
Solution: Make MOVCS2+2 be an ADDI T2,777 instead of an AOS T2.
This when followed by an LSH T2,-PGSIZ will produce the correct result.
[End of TCO 6.1930]
TCO-number: 6.1932
Written-by: MCINTEE Creation-date: 13-Jan-84 12:43:21
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: JSYSF
Problem: JFNS% does not return the password attribute.
Solution: Allow returning password attribute when JFN is parse only.
[End of TCO 6.1932]
TCO-number: 6.1933
Written-by: TBOYLE Creation-date: 13-Jan-84 17:11:17
Edited-by: TBOYLE Edit-date: 17-Jan-84 12:32:07
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: STG MEXEC SYSERR
Problem: SETSPD does not give SPEAR entries ascending serial numbers
when it tries to get the old number from ERROR.SYS.
Diagnosis: It can't possibly work because, by the time SETSPD runs,
the monitor has already logged entries starting at zero. Hence if we
look in the file we will get the wrong number. The code was also
blatantly wrong, it picked up the serial number from the wrong
field in the ERROR.SYS (the processor serial number to be exact!)
Solution: Set SPRCNT initially at -1. Change SEBLUP to defer queueing
of entries into ERROR.SYS until this value changes. At system
startup, SETSPD will come along to set the value correctly.
After SETSPD is invoked, put a check in to make sure SPRCNT was
set non-negative, if it wasn't, then warn the CTY and set it to
zero. This also handles the case of when there is no SETSPD. After
all this, we will also bump SEBCKF to oust the present queue.
[End of TCO 6.1933]
TCO-number: 6.1935
Written-by: MCINTEE Creation-date: 16-Jan-84 08:58:57
Edited-by: MCINTEE Edit-date: 19-Jan-84 14:26:25
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: COMND MONSYM
Problem: There is a need for programs which implement network virtual terminals
from TOPS-20 to other operating systems to selectively enable/disable each
editing control character (^R, ^U, ^V, ^W, DELETE). The TEXTI% jsys provides
the functionality to enable all of those characters, but does not provide
a way of turning any of them off.
Diagnosis: No code to do so.
Solution: Define a new bit, RD%NED, in the flags word (.RDFLG) of the TEXTI%
argument block. If this bit is set, then any editing character (^R, ^U, ^V, ^W,
and DELETE) that is in the user supplied break mask will not have its
editing function.
[End of TCO 6.1935]
TCO-number: 6.1943
Written-by: PRATT Creation-date: 20-Jan-84 14:48:19
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: JSYSA MONSYM
Problem:
The header block used between the monitor and Galaxy for the QUEUE%
jsys is changing. The GOPHER function code (QOGFR) in .QJLTY is now
obsolete by the "packet from QUEUE jsys" bit in the IPCF header.
The header words .QJFNC and .QJUFC are also obsolete. The value that
used to go in .QJUFC (user function code) now goes in .QJLTY.
Diagnosis:
Solution:
Rewrite the QUVERF (verification) routine so that .QJFNC and .QJUFC
isn't used. Decrease the message block count by 2. Change the .QJ1SB
offset from 7 to 5.
[End of TCO 6.1943]
TCO-number: 6.1944
Written-by: MOSER Creation-date: 20-Jan-84 15:26:04
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: MONSYM MSTR
Problem: Mountr needs a way to determine the serial numbers of a disk drive.
Diagnosis: No code.
Solution: Add 2 words to the MSTR block returned by functions .MSRNU and
.MSRUS. The words will be the high and low order serial numbers from the
UDB. They will be stored in words .MSDSH and .MSDSN respectivly.
[End of TCO 6.1944]
TCO-number: 6.1947
Written-by: PRATT Creation-date: 23-Jan-84 15:44:10
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: JSYSA MONSYM
Problem:
The definitions in MONSYM for offsets in the argument block between
the QUEUE% jsys and Galaxy are only needed by the monitor. They
should be defined locally to JSYSA only and shouldn't be defined in
MONSYM. In fact, at a later time, these symbols should be gotten rid
of and replaced by the definitions in GLXMAC.UNV.
Diagnosis:
Solution: Remove them from MONSYM, put them in JSYSA.
[End of TCO 6.1947]
TCO-number: 6.1951
Written-by: PAETZOLD Creation-date: 24-Jan-84 14:07:57
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PHYKLP
Problem:
ILLUUO from KLPRST from KLPCHK from PHYCHK.
Diagnosis:
doing a return to a stack location.
Solution:
move a push in klprst around.
[End of TCO 6.1951]
TCO-number: 6.1952
Written-by: MCCOLLUM Creation-date: 24-Jan-84 14:15:24
Edited-by: MCCOLLUM Edit-date: 24-Jan-84 22:30:02
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: alocrs
Problem:
ASGREQ BUGCHKs.
Diagnosis:
Routine ALOCRS soed not pass a pool number to ASGRES due to a typo.
Solution:
Fix typo so ALOCRS requests from general pool.
[End of TCO 6.1952]
TCO-number: 6.1954
Written-by: PAETZOLD Creation-date: 25-Jan-84 10:08:36
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: SCHED MEXEC STG globs
Problem:
NODDMP and NOCHKR BUGHLTs are too sensitive.
Diagnosis:
HSCs take a long time to do anything.
Solution:
Make them BUGCHKs. After a number of them (DDPMAX or CHKMAX) issue a
DDMPNR or CHKRNR BUGHLT.
[End of TCO 6.1954]
TCO-number: 6.1955
Written-by: LOMARTIRE Creation-date: 26-Jan-84 12:54:21
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PAGEM SWPALC
Related-SPR: 18481
Problem: ASGSW2 BUGHLTs when swap space is exhausted.
Diagnosis: Whenever multiple pages are to be swapped to disk for the various
forms of garbage collection, routine SWPOMG is called. This routine calls
DRMAM in order to get the starting drum address of the contiguous group
of pages. DRMAM returns plus one upon success with the address in T2.
However, it also returns plus one upon failure; this being when DRMFRE is
zero. SWPOMG is not prepared for a failure and tries to assign the drum
page it thinks is returned in T2. This leads to the ASGSW2 BUGHLT.
Solution: First, fix DRMAM to return plus one upon failure and plus two
upon success. Allow SWPOMG to handle the failure return by printing a new
BUGCHK, called SMGFUL, and then returning. This is similar to how the
routine to swap out a single page (SWPOUT) handles DRMFRE=0; it produces a
DRMFUL BUGCHK.
[End of TCO 6.1955]
TCO-number: 6.1958
Written-by: PRATT Creation-date: 26-Jan-84 18:13:39
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: JSYSA
Problem:
If a user issues a queue jsys setting the "Don't wait for response"
bit, OPR reports that it received a message from job 0, not the users
job.
Diagnosis:
The queue jsys creates a pid when it sends the ipcf packet to galaxy.
If the user sets the "no response" bit the monitor deletes the pid
right after the packet is sent and returns to the user.
Galaxy receives the packet and does an MUTIL jsys to find out the users
job number. Because the monitor has already deleted the pid, the error
return is taken and galaxy defaults the job to 0.
Solution:
Redefine the .QJMB2 to be .QJJOB which is not used by galaxy for the
queue jsys. Galaxy will then use this job number if the MUTIL fails.
Note: Other relevant info such as the user #, connected directory, privs,
can still be obtained from the ipcf packet.
[End of TCO 6.1958]
TCO-number: 6.1959
Written-by: MCINTEE Creation-date: 27-Jan-84 14:23:20
Edited-by: MCINTEE Edit-date: 30-Jan-84 11:56:59
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: GLOBS MONSYM FILMSC TTYSRV
Problem: There is a need for programs that do NVT protocols to be enable
for a two character escape sequence.
Diagnosis: No code
Solution: Implement it. New terminal code, .TITCE. New MTOPR% functions for
TTY: - .MOTCE, .MORTC.
[End of TCO 6.1959]
TCO-number: 6.1962
Written-by: PURRETTA Creation-date: 31-Jan-84 14:13:47
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: GETSAV
Problem: At GTSVID, the GET jsys uses DVCHR without checking for an
error returned by DVCHR. It is possible for the DVCHR to fail if it
was passed a bad JFN argument.
Diagnosis: Some error checking needs to be done.
Solution: Put an ERJMP after the call to DVCHR.
Make GTSVID return +1 on error, +2 ok
ITERR after calls to GTSVID
[End of TCO 6.1962]
TCO-number: 6.1963
Written-by: MOSER Creation-date: 1-Feb-84 17:30:44
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PAGUTL
Problem: Monitor utility subroutine, ASGVAS, will crash the system if
bit AV%LOK (lock pages in memory) is supplied in the flags word.
Diagnosis: ASGVAS assumes that T1 is preserved across a call to MLKPG. It
isn't. ASGVAS also tries to get 1000 times the number of pages requested
because it forgets that the size of the block to aquire is in words not
pages.
Solution: Save / restore T1. Divide by 1000 before looping.
[End of TCO 6.1963]
TCO-number: 6.1964
Written-by: PALMIERI Creation-date: 2-Feb-84 18:17:38
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: ENQ STG
Problem: Monitor runs out of ENQ free space.
Diagnosis: Long term locks that are not in use are not being garbage collected.
Problem started when the long term list pointer was changed from a half
word pointer to a full word pointer. The code is now comparing a half
word address to a full word address, which of course doesn't work.
Solution: Do full word compare. Also, fix up references to ENQLTL. This
word was originally only a forward list pointer, so there is no need to
maintain a backward list pointer.
[End of TCO 6.1964]
TCO-number: 6.1966
Written-by: PRATT Creation-date: 8-Feb-84 13:00:58
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: JSYSA MONSYM IPCF
Problem:
Galaxy needs a way to verify that a Queue jsys BUGCHK/INF message
actually came from the monitor or from a user program. Currently
there is no way to pass that information using QUEUE or IPCF.
Diagnosis:
Solution:
Define a new bit in the IPCF packet flag word called IP%MON. This
bit will be set by QUEUE whenever the monitor does a queue jsys.
Other code in the monitor could take advantage of this bit but
doesn't have to. The MSEND code will verify that only the monitor
has set this bit.
[End of TCO 6.1966]
TCO-number: 6.1970
Written-by: TGRADY Creation-date: 15-Feb-84 11:15:05
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: DATIME
Problem:
TCO 6.1918 bug causes an error in ODTNC when user specified a two digit
year (less than 100).
Diagnosis:
Check for two digit year does a JRST into a literal to add 1900 to it.
It doesn't JRST out of that literal, but falls through to the next one,
which luckily is an error return.
Solution:
Add a JRST .+1 at the end of the first literal in routine CKYMDT.
[End of TCO 6.1970]
TCO-number: 6.1972
Written-by: MCCOLLUM Creation-date: 16-Feb-84 16:05:37
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: monsym MAGTAP
Problem:
If the serial number given in AC 2 of a call to MTALN% does not match any of
the drives on the system, MTALN% does not return a valid error code
Diagnosis:
MATLN% does an ITERR with no argument, but AC 1 is not set up with an error
code.
Solution:
Add the error "MTNX01 - serial number not found" to MONSYM and use it in MTALN%.
This error should be added to the MTALN% documentation
[End of TCO 6.1972]
TCO-number: 6.1975
Written-by: GROSSMAN Creation-date: 20-Feb-84 22:43:32
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PROLOG
Problem: Too many junk symbols.
Diagnosis: BUG. generates local, suppressed symbols which are not needed after
assembly time.
Solution: PURGE the symbols after they are defined during pass 2.
This and the previous TCO were applied to APRSRV, CFSSRV, PAGEM, PAGUTL and
NISRV. Approximately 40 to 50 generated labels were deleted from each
module.
[End of TCO 6.1975]
TCO-number: 6.1976
Written-by: CJOHNSON Creation-date: 21-Feb-84 12:02:20
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: GTJFN
Problem: If a system has a non-PS: public structure, then the DSK*: wildcard
is broken. (It works within a logical name.)
Diagnosis: The code at STRDEV in GTJFN assumes the public structure name is
PS:.
Solution: Make STRDEV determine the public structure's name.
[End of TCO 6.1976]
TCO-number: 6.1983
Written-by: PURRETTA Creation-date: 28-Feb-84 13:29:10
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: Yes
Program: MONITOR
Problem: Supported memory sizes for TOPS-20 release 6.0 monitors need to be
updated in the parameter files.
Diagnosis: Release 6.0 supports up to 3 meg of core.
Solution: Update the parameter files to 3 meg.
[End of TCO 6.1983]
TCO-number: 6.1993
Written-by: CJOHNSON Creation-date: 7-Mar-84 11:50:36
Edited-by: CJOHNSON Edit-date: 19-Mar-84 11:34:08
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: SCHED
Problem:
When processing phase one of a terminal interrupt, if the given
interrupt is not setup in any of the top fork's
(at PSIT1) inferior forks, and the terminal is not the
job's controlling terminal, the
monitor crashes with ILMNRF at LCKTT+1.
Diagnosis:
PSIT13 calls CLRINT but there is a path to PSIT13 that does not set up
T2, which CLRINT expects to contain the line number.
Solution:
Make the path setup T2 to contain the line number.
[End of TCO 6.1993]
TCO-number: 6.1997
Written-by: TGRADY Creation-date: 14-Mar-84 10:04:55
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: JSYSF
Problem:
DVCHR% Jsys returns the wrong job number of device assigner.
Diagnosis:
DVCHR% is not translating local job index to global job number, yet.
Solution:
Add calls to LCL2GL to translate job index before returning it.
[End of TCO 6.1997]
TCO-number: 6.1998
Written-by: TGRADY Creation-date: 14-Mar-84 10:11:38
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: MEXEC
Problem:
The EXEC command to log out another job gets confused, and returns an error
that you can't log yourself out by specifying a job number, even though the
job number that was specified really wasn't our own.
Diagnosis:
LGOUT% Jsys compares the specified job number to the caller's job number, but
instead of comparing it to the global job number in GBLJNO, it compares it
to the local index, JOBNO. Whenever the job to be logged out happens to have
a global job number equal to the callers local job index, the jsys fails.
Solution:
At ELOGO, change the compare to look at GBLJNO.
[End of TCO 6.1998]
TCO-number: 6.1999
Written-by: TGRADY Creation-date: 14-Mar-84 10:17:39
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: CFSSRV STG
Problem:
Non-CFS monitors break in various attempts to use GETJI% and friends.
Diagnosis:
The symbol MXGLBS is returned to applications as the highest legal job
number. MXGLBS is always defined as 511., which for non-CFS monitors
is about 383 too much. Applications that loop through the GETAB tables,
or call GETJI% for information about the errant job numbers receive unexpected
'Invalid Job number' errors, and usually blow up.
Solution:
Conditionally assemble MXGLBS in STG to be 511. for CFS monitors, and to
equal NJOBS for non-CFS monitors. In CFSSRV, change GL2LCL to always use
the symbol MXGLBS for rannge checking the job number to be converted, since
MXGLBS will now be properly defined.
[End of TCO 6.1999]
TCO-number: 6.2001
Written-by: TGRADY Creation-date: 15-Mar-84 17:44:21
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: JSYSF
Problem:
CFSILJ BUGCHK's caused by DVCHR% Jsys.
Diagnosis:
DVCHR% gets the assigning job index for each device from the left half of
DEVUNT(n), and calls LCL2GL to translate it into a global job number. Devices
that aren't assigned have a -1 in the left half. LCL2GL expects to be
handed a number from 1 to NJOBS, and so BUGCHK's with CFSILJ - illegal job
number. The error return is taken, and DVCHR returns the right thing, but
this can cause thousands of BUGCHK's, since everyone in the world uses it.
Solution:
Check for negative number in left half before calling LCL2GL, don't do
anything if it's negative.
[End of TCO 6.2001]
TCO-number: 6.2003
Written-by: MOSER Creation-date: 19-Mar-84 16:50:02
Edited-by: MOSER Edit-date: 26-Mar-84 14:10:11
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: watch MEXEC monsym
Problem: WATCH cannot find a jobs local job index and cannot correlate
SNOOP data with any global job.
Diagnosis: No way to do so.
Solution: Add a new GETJI function, .JILJI (Local Job Index).
[End of TCO 6.2003]
TCO-number: 6.2005
Written-by: CJOHNSON Creation-date: 21-Mar-84 14:26:03
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: DIRECT
Related-SPR: 17074
Problem: When performing lookups on directories, attempting recognition using
valid partial fields occasionally results in a "?No such directory"
error. Such failures occur only with certain unfortunate arrangements
of the superior directory's symbol table (and deficiencies in the
binary search algorithm used).
Diagnosis: The lookup routine has a 'feature', wherein if an exact filename
match is typed, and recognition is attempted, any exact match will
result in name recognition, even if it is in reality an ambiguous
entry. When looking up directories, this 'feature' can cause a
successful return from the lookup code, whereupon the directory lookup
code scans the types and generations of the exact match filename,
finds no directory files, and produces the specified error.
Solution: Make the lookup routine sensitive to the fact that its looking for a
directory, and have it scan types and generations before returning an
"exact match" status. If no directories appear in the file list,
treat this situation as a partial match, so recognition will ding.
THIS IS A HACK, THE CODE SHOULD BE RE-WRITTEN.
[End of TCO 6.2005]
TCO-number: 6.2009
Written-by: NICHOLS Creation-date: 23-Mar-84 16:36:38
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: NSPSRV
Problem: Many NSPBAD BUGINFs when plugged into a Phase IV DECnet network.
Diagnosis: Phase IV retransmitted connect initiate messages are being
reported as bad messages.
Solution: Before reporting a message as bad, check to see if its a
retransmitted CI, and if so, toss the message without complaining.
Also, keep the most recent message which caused an NSPBAD BUGINF so
that it will be easier to debug these problems in the future. Pointer
to kept bad message is in BADMSP.
[End of TCO 6.2009]
TCO-number: 6.2011
Written-by: LEACHE Creation-date: 26-Mar-84 10:31:33
Edited-by: PURRETTA Edit-date: 25-Apr-84 15:08:53
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: BOOT
Problem: -
Other systems cannot access a dual-ported RP04567 while BOOT is reading from
or writing to it.
Diagnosis: -
BOOT categorically seizes the port and the other system never has access to it.
Solution: -
Have BOOT release the port after each IO operation, and conditionally (based
on the drive's availability) re-seize the port immediately before the next
seek begins. A timeout value is used to prevent BOOT from endlessly attempting
to seize a stuck port.
[End of TCO 6.2011]
TCO-number: 6.2023
Written-by: MOSER Creation-date: 9-Apr-84 14:41:19
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PAGEM MEXEC JSYSA
Problem: The monitor inconsistently handles some error returns.
Diagnosis: The monitor does not support ERCAL but there is code scattered
throughout the monitor to half support ERCAL. There is also code in the
monitor which depends upon ERCAL. The monitor also incompletly supports
the new error return formats ERJMPS and ERJMPR. They are supported for
JSYSes but not for page faults.
Solution: Remove all vestiges of ERCAL support and dependencies from the
monitor. Completly support all 3 ERJMP flavors.
[End of TCO 6.2023]
TCO-number: 6.2025
Written-by: MOSER Creation-date: 10-Apr-84 14:30:41
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PHYSIO
Problem: MOUNTR explodes when a "Three ported disk" appears on the system.
Diagnosis: The monitor suppresses information for the .MSRNU call of MSTR
for any secondary disk path. It forgets about the 3-ported disk case and
in fact does not work for any dual path disk with a controller field
that isn't -1.
Solution: Move the check for dual access paths to common code. Add check
for 3-ported disk.
[End of TCO 6.2025]
TCO-number: 6.2026
Written-by: MOSER Creation-date: 11-Apr-84 19:28:53
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: APRSRV
Problem: ILLUUO Bughlts.
Diagnosis: KIMXCT is broken AGAIN. This time it is because of a microcode
bug fix. This routine is a major hack anyway and needs to be changed.
Solution: Remove KIMXCT and all of it's strange returns. Handle all
instructions consistently. Don't expect an opcode of zero for failing byte
instructions.
[End of TCO 6.2026]
TCO-number: 6.2027
Written-by: TBOYLE Creation-date: 11-Apr-84 21:58:35
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: SYSERR APRSRV STG GLOBS
Problem: No counters present to provide data on lost BUGHLTs,
SYSERR stuff, and running BUGCHKs if such should occur.
Diagnosis: When ALCSEB fails to have enough resident space
available for a request, which is often the case lately,
it drops the data on the ground.
Solution: Make three counters
ALCLST counts failures from ALCSEB
BUGLST counts failures from ALCSEB in the BUG logging code.
SYELST counts failures from ALCSEB in the SYER% JSYS code.
This should give us a feel of how badly we are doing..
[End of TCO 6.2027]
TCO-number: 6.2032
Written-by: TGRADY Creation-date: 12-Apr-84 15:49:22
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: SCHED
Problem:
When SET BATCH BACKGROUND is used, batch jobs don't get set in the Dregs
queue. Instead, random non-batch jobs get put in the Dregs instead.
Diagnosis:
The scheduler uses SJPRI% to set jobs in the Dregs, but calls SJPRI% with
the local job index instead of the global job number. This tends to set
random jobs in the dregs, regardless of whether they are batch jobs or not.
Solution:
In SETCLS, get the job number to set in the dregs queue from GBLJNO
instead of JOBNO. In SKDRDQ, call LCL2GL to convert the job index
to global job before using it to set the job in the dregs.
[End of TCO 6.2032]
TCO-number: 6.2033
Written-by: TBOYLE Creation-date: 12-Apr-84 17:03:17
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: STG
Problem: BUGHLTs, BUGCHKs, BUGINFs tend to get lost at times.
Diagnosis: The size of the general resident pool used exclusively for
this sort of stuff can only hold 10. The problem is that nowadays
BUGxxx's come in spurts of large amounts at once and can easily
saturate this small amount of space. The code also never retries,
it just drops stuff off the table.
Solution: Increase the space a bit temporarily for this release. A
better fix such as using extended space, and other hacks are necessary
asap. For now increase to 6 pages by quaddrupling .RESGP. This will
still leave 19 pages left in the biggest monitor build possible
CFS60:ARPCFS. There will now be room for 40 BUGxxx's and/or other
SYSERR entries.
[End of TCO 6.2033]
TCO-number: 6.2034
Written-by: MCLEAN Creation-date: 13-Apr-84 21:48:27
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: JSYSA
Related-TCO: 6.1409
Problem: FLKINT'S on first SMON to setup ACJ.
Diagnosis: The Smon does a SJPRI JSYS while NOINT
Solution: Make OKINT not necesary here.
[End of TCO 6.2034]
TCO-number: 6.2035
Written-by: GROSSMAN Creation-date: 17-Apr-84 06:37:30
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: JSYSA STG monsym SETSPD
Problem: Users cannot set Ethernet address.
Diagnosis: No code to do it.
Solution: Create a new SMON% function. The calling sequence is:
call: MOVEI 1,.SFSEA ; Set Ethernet Address
MOVEI 2,channel_number ; Always zero for now
MOVE 3,[POINT 8,ADDR] ; Byte pointer to 6 byte Ethernet address
SMON%
;...
ADDR: BYTE (8) 2,3,4,5,6,7 ; Arbitrary string of 6 bytes. Cannot
; be a multicast address.
[End of TCO 6.2035]
TCO-number: 6.2037
Written-by: MOSER Creation-date: 17-Apr-84 14:21:40
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: SCHED PROLOG
Problem: Hung system.
Diagnosis: A job in the dregs queue has a global system lock and will not
run.
Solution: Add CRSKED and ECSKED to LOKK and UNLOKK macros. Change CORFCT
to boost CRSKED forks to a higher priority than non all other forks except
NOSKED forks.
[End of TCO 6.2037]
TCO-number: 6.2038
Written-by: MOSER Creation-date: 17-Apr-84 14:40:54
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: MSTR
Problem: Cannot create a 2 pack bootable public structure using CHECKD if
the structure name is not PS:. Booting from this structure always asks
for the name of the structure.
Diagnosis: MSTR does not correctly compute the address of the serial number
word for 2 (or more) pack structures.
Solution: Look at the correct word in the argument block.
[End of TCO 6.2038]
TCO-number: 6.2041
Written-by: TGRADY Creation-date: 24-Apr-84 10:11:10
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: CFSSRV
Problem:
ILSPTI BUGHLT's on Non-CFS monitors, usually from a GETJI% Jsys calling
GL2LCL (in CFSSRV) with a job number greater than NJOBS.
Diagnosis:
On Non-CFS monitors, Global job number translation routines are dummy
routines, but GETJI and friends depend upon correctly translating a
job number greater than NJOBS, even on Non-CFS monitors
Solution:
Take out conditional assembly switches in CFSSRV routines that handle
the Global Job numbers data structures, including CFGTJB, JBAVAL, JBGET1,
GL2LCL, and LCL2GL. Non-CFS systems simply will always use the low job
numbers, but GETJI% can still get the expected results (i.e. an error
code) from calls to the translation routines.
[End of TCO 6.2041]
TCO-number: 6.2042
Written-by: TGRADY Creation-date: 24-Apr-84 10:21:59
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: MEXEC
Problem:
CFSILJ BUGCHK's caused by GETJI% using .TTDES+terminal number (400000+n).
Diagnosis:
GETJI% occasionally calls LCL2GL with a job index in T1 that also has bit
one set to indicate that the terminal is assigned by this job. LCL2GL doesnt
take this well, BUGCHK's, and also returns 'no such job' to GETJI%.
Solution:
Call LCL2GL with only the right half of the job index, and restore the flag
upon return from the call.
[End of TCO 6.2042]
TCO-number: 6.2044
Written-by: MOSER Creation-date: 24-Apr-84 13:27:04
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PAGEM
Problem: PAGLCK, PLKMOD, PTNIC1 and PSBNIC BUGHLTs. Possibly others.
Diagnosis: When a user runs MDDT it creates 2 private pages which are mapped
indirect through the PSB at PSBBAS. When these pages are created they are
shown as being owned by PSBBAS. When these pages get old they are put on the
RPLQ and reused. The owning page tables lock count is decremented BUT at that
time PSBBAS probably contains the wrong PSB and that PSB is then erroneously
unlocked. This is bad news.
Solution: At GETTPD when tracing indirect pointers check the SPT index
against PSBBAS if it matches change it to be FKPSB of the running fork.
[End of TCO 6.2044]
TCO-number: 6.2045
Written-by: TBOYLE Creation-date: 24-Apr-84 13:52:20
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: DISC
Problem: Files can appear to have never been read.
Diagnosis: If a user opens a file for read and write access, only
the write access date is updated.
Solution: Change the code at OPENF0 in the DSKOPN code to update
the reference date if read access is given and read access was
also requested.
[End of TCO 6.2045]
TCO-number: 6.2047
Written-by: LOMARTIRE Creation-date: 25-Apr-84 11:42:34
Edited-by: LOMARTIRE Edit-date: 27-Apr-84 11:23:57
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: TTYSRV
Related-SPR: 19811
Problem: KPALVH BUGHLTs.
Diagnosis: TTYSRV can be entered at PI level 6 via a CALL TTYDED from CLRSAL.
TTYDED does NOSKED and then OKSKED, and a XCT RSKED is done. If the scheduler
tried to run while TTYDED was NOSKED, then XCT RSKED will send you to RSKCH1.
Here you will initiate the channel 7 request and wait at a JRST . for the
interrupt to take. But you are at level 6 and the interrupt will never happen.
Solution: Put a CONSO PI,77000 before the NOSKED and OKSKED in TTYDED so that
they will not be done at PI level.
[End of TCO 6.2047]
TCO-number: 6.2048
Written-by: MCLEAN Creation-date: 25-Apr-84 14:22:45
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: MSTR
Problem: MSTR did not return an error on get next unit but it didn't work
either
Diagnosis: Not enough pages in JSB caused an error to occur but user
got successful return.
Solution: Return error code already generated MSTRX4 and Itrap.
[End of TCO 6.2048]
TCO-number: 6.2051
Written-by: LEACHE Creation-date: 29-Apr-84 17:25:06
Edited-by: LEACHE Edit-date: 2-May-84 08:51:09
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: BOOT MTBOOT
Problem:
Depending on configuration, it can take an order of magnitude longer
for monitor startup to occur when the monitor has been loaded with
MTBOOT.
Diagnosis:
The channel initialization code for certain channels with RP20
DX20's repeatedly times out, significantly slowing up system
startup. When the system finally does come up, the RP20's in
question are not available until DX20LD is run for the parent DX20.
As it turns out, MTBOOT successfully loads and start all DX20's on
the system prior to beginning its search for a loaded mag tape unit.
Part of this search includes doing a MASSBUS reset for each channel
and (as a side affect of this) the DX20 micro-processor is halted.
MTBOOT takes this into account and restarts the DX20 when the units
on that channel are identified. Unfortunately, the restart code was
never updated to include the (then) new device type for RP20 DX20's.
Thus, if MTBOOT terminates its mag-tape search on channel N, all RP20
DX20's on channel N-1 and below will be halted when the system
comes up.
Solution:
Include RP20 DX20's in MTBOOT's DX20 restart logic.
[End of TCO 6.2051]
TCO-number: 6.2052
Written-by: LEACHE Creation-date: 29-Apr-84 18:24:05
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: FREE
Problem:
Interrupt routines can sometimes be allocated a block of resident
freespace that has not been completely deallocated.
Diagnosis:
The resident freespace deallocator tries to be gracious and not
be PIOFF overly long when it is playing with the bit table.
As a result, it is PION when it returns from the routine that
plays with the bit table and still PION when it attempts to extract the
pool number and block size from the nearly deallocated block.
Unfortunately, an interrupt-level routine may have already
been allocated that block and may have destroyed the original pool
number and/or blocksize.
Solution:
Save the pool number and block size in STKVARs before we enter
the critical window and call CLRBTS. Likewise, clear the block-in-use
bit before the call to CLRBTS.
[End of TCO 6.2052]
TCO-number: 6.2055
Written-by: TBOYLE Creation-date: 7-May-84 13:12:12
Edited-by: TBOYLE Edit-date: 10-May-84 16:56:39
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: SYSERR
Problem: SYSERR sequence numbers don't work in several of the algorithms
that we have tried.
Diagnosis: Bad approaches.
Solution: We will approach the problem as TOPS-10 does. The SYSERR fork
will maintain the last value of the SPEAR sequence number inside the
SPEAR EOF word at the end of the file. This is accomplished by having
ALCSEB provide room for one extra word which will be the Internal EOF
value with the SPEAR sequence number in it. Before the fork writes a
SYSERR entry to the file, it will back up and overwrite the old EOF value,
insert the new EOF value at the end of the SYSERR block and output it.
At system startup, SEBOFI will read the value out of the end of the
file, see if it is valid and if so stash it. If the value is garbled,
we reset to zero. Hence, we are guaranteed ascending sequence numbers
for any given file, and also accross files if the file is renamed or
removed while the system is still up.
[End of TCO 6.2055]
TCO-number: 6.2057
Written-by: MOSER Creation-date: 9-May-84 17:03:52
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PAGUTL
Problem: Long files opened with OF%DUD which are shared may be updated
with changes even when the users remove those changes using PM%ABT flavor
of PMAP.
System performance is also bad. Pages are being written to disk unnecessarily
and removed from core when they ar still valid.
Diagnosis: CFS added some code to ASGOFN (and friends) to throw away
local copies of file pages for files opened OF%RDU whenever anyone
opened that file normally. Unfortunatly this code does not understand
long files and often does needless work.
Solution: Short term: Don't call UPDPGX from ASGOFN if any of the following
are true:
1. This OFN is a super index block.
2. This OFN has write access.
3. This OFN is open normally (not OF%RDU)
Also rewrite ASGOFN somewhat.
Long term: DO NOT CALL UPDPGX UNNECESSARILY. The algorithm for this has
yet to be determined but it basically boils down to only calling it
on the first normal open AFTER an unrestricted open which is still in effect.
[End of TCO 6.2057]
TCO-number: 6.2058
Written-by: MOSER Creation-date: 10-May-84 11:30:29
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PAGEM
Problem: OF%DUD and PMAP interact in strange ways. A PMAP unmap of a file
page sometimes updates the changed contents of the page to disk even if DUD
was set. Users would expect one of the 2 following behaviors:
1. Unmap of a DUD file page without PM%ABT would update the changed contents to
disk.
2. The same thing would not. Note that this is the only way to make OF%DUD
work with the non-PMAP IO JSYSes such as SOUT,BOUT and ROUT. This would allow
the user to change a file page, unmap it, remap the changed page and erase the
changes using PM%ABT.
Diagnosis: The code does different things depending on the page pointer type.
If the page has an indirect pointer we get behavior 2. For a share pointer we
get behavior 1.
Solution: Behavior 2 is more desirable so make both pointer types exhibit that
behavior.
[End of TCO 6.2058]
TCO-number: 6.2059
Written-by: MOSER Creation-date: 10-May-84 11:46:37
Edited-by: MOSER Edit-date: 30-May-84 19:56:05
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: MEXEC GLOBS FORK
Problem: The TOPS-20 EXEC cannot be protected EXECUTE ONLY in 2 senses:
1. Any user can copy the EXEC regardless of it's protection.
2. BATCON cannot start jobs if the EXEC is protected EXECUTE ONLY.
Diagnosis: The first problem is caused by the monitors handling of new
jobs. All jobs are created as enabled Wheels thus the GET of the EXEC always
opens the file for READ access, even if EXEC.EXE is protected execute only.
Any user can read pages from JFN 1 and get a copy of the EXEC.
The second problem is caused by a different treatment of CRJOB jobs. CRJOB
created jobs are NOT started as enabled wheels and they cannot GET an EXECUTE
ONLY EXEC because the monitor destroys the top forks virginity by doing an
AIC before the GET of the EXEC. Also CRJOB does not correctly report the error
to the creator (unless the creator gets scheduled strangly (don't ask)).
Solution: Restore the virginity of the top fork (disproving several old adages)
before the GET of the EXEC. Make the GET happen while the fork is not enabled.
Fix the CRJOB code to return the correct error if the GET of the EXEC fails.
[End of TCO 6.2059]
TCO-number: 6.2060
Written-by: MOSER Creation-date: 10-May-84 13:05:43
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: COMND NSPSRV FILMSC LINEPR
Problem: Release 6 is slow. It does thousands of unnecessary .MOSFW (Set Field
Width) MTOPRs to TTYs. TTY MTOPRs are slow and so are DECNET MTOPRs and LPT
MTOPRs.
Diagnosis: Darwin Hatheway discovered that the above MTOPRs are handled by
searching a half word table of function,,address. The functions could
be done much more readily by dispatching through a table indexed by function
number. Also COMND does many needless .MOSFW functions. A simple compare
instruction could eliminate many of these.
Solution: Fix the dispatches and COMND to be more efficent.
[End of TCO 6.2060]
TCO-number: 6.2061
Written-by: MOSER Creation-date: 10-May-84 14:28:19
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: FORK
Problem: TOPS-20 is too slow.
Diagnosis: TOPS-20 does lots of NOSKED page faults. Some of these are
unnecessary such as the one in SFORK3 which references CTTAB. It can be
done OKSKED if the fork lock is locked which it is.
Solution: Move OKSKED up 2 lines near SFORK3. This prevents about 4000
NOSKED page faults per day on GIDNEY.
[End of TCO 6.2061]
TCO-number: 6.2065
Written-by: EVANS Creation-date: 11-May-84 14:59:06
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: JSYSA
Problem: Garbage is sometimes put in the node name field of an accounting
header record.
Diagnosis: In JSYSA, LLSR(P1) is used to point to the node name. This is incorrect; LLSR contains the node name, there is no need for an index register.
Solution: Eliminate index register in instruction.
[End of TCO 6.2065]
TCO-number: 6.2067
Written-by: MCLEAN Creation-date: 22-May-84 22:08:15
Edited-by: MCLEAN Edit-date: 22-May-84 22:11:14
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PHYP4 phyp2 DSKALC phymsc PHYSIO
Problem: HSC50'S are Page Mode disks but they are addressed in Sector mode.
Because the monitor thinks they are addressed in Page Mode they have the
home blocks in the wrong place.
Diagnosis: Tony did only 1/2 the work to make them work correctly.
Solution: Add DOP%PS to DSKOP JSYS to indicate that the address is a
Physical Sector address not a Page/Sector address. Use of this bit
will only make a difference on HSC50 disks where the Physical mapping
and the Virtual mapping don't match.
[End of TCO 6.2067]
TCO-number: 6.2068
Written-by: GRANT Creation-date: 24-May-84 09:07:01
Edited-by: GRANT Edit-date: 24-May-84 09:12:24
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: NSPSRV
Problem: DECnet is hung.
Diagnosis: DECnet is in a deadly-embrace; it has used all of its resident
free space quota, mainly for messages which have been sent and are
waiting to be ACKed but ACKs can't be received because there is no
space for them.
Solution: Establish a free space threshold large enough to allow room for
a few full-size messages. If we are below the threshold, reject all
requests for space for outgoing messages. Also, accept all incoming
messages but immediately toss anything but an ACK (or a data message
with an imbedded ACK). Anything tossed will get retransmitted by the
sender and processing the ACKs should free space.
When space is low, i.e. we've reached the threshold, existing DECnet
links will continue to run but attempts to open new connections will be
rejected.
[End of TCO 6.2068]
TCO-number: 6.2069
Written-by: MOSER Creation-date: 25-May-84 14:54:05
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PAGEM
Problem: Fork Garbage collection has not worked since we moved the CSTs
to a non-zero section.
Diagnosis: The monitor has the page lock mask in AC T1 but it tries to
use this AC to index the CSTs. It always looks at page 0 which never gets
garbage collected. The monitor loops NHIPG times and never does any useful
work. If page 0 wasn't always locked we would get WSPNEGs and crash alot.
Solution: Restore page number to T1 before using it for an index. This should
be somewhat of a performance win.
[End of TCO 6.2069]
TCO-number: 6.2070
Written-by: TBOYLE Creation-date: 29-May-84 16:40:06
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: JSYSF
Problem: After RESET% JSYS is called, LSTERR can get overwritten with
an "Undefined JSYS" error.
Diagnosis: CLZFF% also called RELIQ% which is an undefined JSYS in
a non arpanet monitor.
Solution: Check the value of NETN and call RELIQ% only when appropriate.
[End of TCO 6.2070]
TCO-number: 6.2071
Written-by: MOSER Creation-date: 30-May-84 10:25:52
Edited-by: MOSER Edit-date: 30-May-84 10:58:02
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: STG CDPSRV GLOBS
Related-QAR: 706008
Problem: Cannot LINK a monitor when PCDPN (number of physical card punches)
is set to zero and CDPN (number of spooled card punches) is non-zero.
Diagnosis: PICALL MACRO cannot work correctly because it looks at CDPN and
calls CDPSV CDPN is the wrong parameter.
Solution: Look at PCDPN and rename CDPSV to PCDPSV for consistency.
[End of TCO 6.2071]
TCO-number: 6.2072
Written-by: MOSER Creation-date: 30-May-84 11:13:24
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: STG JSYSA GLOBS
Related-QAR: 706021 706023
Problem: New password algorithm cannot be enabled using PARAM0. The
code is in JSYSA not STG.
Diagnosis: Oversight.
Solution: Change PSPNTP to a NDG in STG.
[End of TCO 6.2072]
TCO-number: 6.2073
Written-by: CDUNN Creation-date: 30-May-84 13:58:21
Edited-by: CDUNN Edit-date: 30-May-84 14:07:01
Edit-checked: Yes Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: Monitor
Routines-affected: SCSJSY
Related-QAR: 706033
Problem: RESBAZ BUGCHKs sometimes followed by ILMNRF BUGHLTs
Diagnosis: Routine SCSDEQ did not correctly update the queue FLINK when
deleteing the first entry from a queue with more than one
entry.
Solution: Fix SCSDEQ to update the FLINK rather than the BLINK when deleteing
the first entry from a queue with more than one entry.
[End of TCO 6.2073]
TCO-number: 6.2075
Written-by: TBOYLE Creation-date: 30-May-84 17:33:53
Edited-by: TBOYLE Edit-date: 15-Jun-84 12:59:36
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: FORK
Problem: PDVOP% JSYS unable to return the program name when used
in an extended section even if EFIW pointer is used.
Diagnosis: The code was not made to handle EFIW's. At the moment
it makes a pointer of value 0,,addr behave as an EFIW. The truth
is that 0,,addr should not be interpretted as section relative
but as a global pointer to section zero.
Solution: Add a routine to FORK to do the correct address calculation.
[End of TCO 6.2075]
TCO-number: 6.2076
Written-by: TGRADY Creation-date: 1-Jun-84 17:53:13
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: JSYSA
Problem:
Empty accounting session records, and a funny second session runtime output
on logout.
Diagnosis:
Edit 3865 to JSYSA added a call to LOGCJM in SJBSRM. This caused the SETJB%
Jsys to create a new session record when the .SJSRM function was used to set
the session remark. The EXEC uses this call right after login to set the
session remark, but the LOGIN Jsys already created a session record, albeit
an empty one. The EXEC SETJB% writes the old one, creates a new one, and
generally confuses things.
Solution:
Remove edit 3865.
[End of TCO 6.2076]
TCO-number: 6.2077
Written-by: TGRADY Creation-date: 1-Jun-84 17:59:54
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: MEXEC
Problem:
SYSDPY, and lots of other people, depend on GETAB% to return a -1 when
a non-existant job number was specified. What they're getting is an
error code, which lots of times looks like read data (e.g. job runtime)
Diagnosis:
Engineer brain damage.
Solution:
In GTJOB, if the call to GL2LCL returns +1, then there must not be any such
job, so instead of doing a RETBAD(), do a SETO T1, and a RET.
[End of TCO 6.2077]
TCO-number: 6.2078
Written-by: SHTIL Creation-date: 4-Jun-84 11:07:26
Edited-by: SHTIL Edit-date: 5-Jun-84 15:25:34
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: DISK DELFIL
Problem: A file that has been opened with OF%RDU can be expunged what
results some file pages become "lost".
Diagnosis: DELFIL calls ASGOFN which ignores FILUB flag (unrestricted
access),FDB gets expunged ,the file pages mapped become lost.
Solution: Call CHKOFN before ASGOFN to check whether a file to be
expunged is open.
[End of TCO 6.2078]
TCO-number: 6.2080
Written-by: TBOYLE Creation-date: 4-Jun-84 13:26:49
Edited-by: TBOYLE Edit-date: 4-Jun-84 13:28:38
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: JSYSF
Related-QAR: 706067
Problem: structure creation does not set TOPS-10 PPN's. It supposed
to do that now.
Diagnosis: CRDIR% calls FNDPPN to see if the PPN is a duplicate and
ends up zeroing the register with the PPN to set.
Solution: Since FNDPPN is not supposed to leave the PPN in T2 in this case,
do a UMOVE. PS:This is TCO 2080.
[End of TCO 6.2080]
TCO-number: 6.2081
Written-by: TBOYLE Creation-date: 4-Jun-84 14:40:38
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: STG
Related-QAR: 706039
Problem: system-wide magtape default density cannot be set without
editing STG.MAC.
Diagnosis: Its defined there.
Solution: Since this might be a common thing to be site-specific. Use
an NDG in STG, so that it could be defined in PARAM0 as are the other
items on PARAM0.
[End of TCO 6.2081]
TCO-number: 6.2082
Written-by: TBOYLE Creation-date: 4-Jun-84 16:40:11
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: JSYSA
Problem: User's can get around system accounting if they are clever
enough with ^C.
Diagnosis: The CACCT% JSYS can be aborted after the user account
is changed and before a USAGE session record is logged. The code
is mostly NOINT due to MAPDIR, however, USTDIR is called before
LOGCJM is called.
Solution: Go NOINT some more before USTDIR and OKINT at the
very end of the JSYS.
[End of TCO 6.2082]
TCO-number: 6.2083
Written-by: MOSER Creation-date: 4-Jun-84 21:29:00
Edited-by: MOSER Edit-date: 20-Jul-84 16:06:22
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: SCHED MEXEC GLOBS
Problem: CHKRNR Bughlts.
Diagnosis: CHKR crashes because of a device (or some other error). It is never
restarted even though it enabled the MONBK facility. MONBK is only called when
an interrupt occurs on channel 34 or 35. Channel 34 is reserved for ^P and
channel 35 is used for top fork termination. Hence when CHKR (fork 4) gets a
fatal error it never recieves the critical Channel 35 interrupt and never
restarts.
Solution: Just before storing FORCTM check MONCHN for enabled channels. If
MONCHN is non-zero issue a channel 35 interrupt.
[End of TCO 6.2083]
TCO-number: 6.2086
Written-by: MOSER Creation-date: 5-Jun-84 16:49:33
Edited-by: MOSER Edit-date: 7-Jun-84 17:03:48
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: SCHED GLOBS FORK DIRECT
Problem: SHROFN Bughlt. Ofn is found to be <ROOT-DIRECTORY>INDEX-TABLE.BIN.
Diagnosis: Index file of last structure with a directory mapped
is never unmapped. Lots of LOGIN/LOGOUT makes the share count for PS: index
table overflow.
Solution: Call UNMIDX instead of UNMAPD at KSELF and HLTJOB.
[End of TCO 6.2086]
TCO-number: 6.2087
Written-by: EVANS Creation-date: 6-Jun-84 12:39:25
Edited-by: EVANS Edit-date: 27-Nov-84 14:57:21
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: JSYSF
Problem: [S] When an attempt is made to expunge an unmounted structure, the "Structure Not Mounted" message is displayed for every directory.
In addition, it is possible to get a DIR of <ROOT-DIRECTORY> of an unmounted structure.
Diagnosis: [D] The edit to prevent expunge of unmounted structures was put
in the DELDF JSYS code. The EXEC does the actual stepping of directories on the
structure. Thus, the EXEC steps the directory, the check for mounting is made,
the error message displays, the EXEC steps to the next directory, etc.
Solution: [C] In JSYSF at RCD020+31, get the unique code for the
structure, and pass it to CHKMNO for the mount check. If regulated and not
mounted, and/or user not enabled, give an error return. This should
"short-circuit" the expunge process, avoiding the display of all directory
names.
It is only possible to get a directory of <ROOT-DIRECTORY> if the user is
enabled AND the structure is non-regulated; this is the way it should be.
[End of TCO 6.2087]
TCO-number: 6.2088
Written-by: MCLEAN Creation-date: 7-Jun-84 11:43:37
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PHYSIO
Problem: We never get -1 (disk offline) from DSKOP or UDSKIO
Diagnosis: Looks like a change was made by someone to make it nice
by returning an error code (pc address) in the right half of T1.
Solution: For Disk offline return -1. For other cases return -1,,error code
not a pc!.
[End of TCO 6.2088]
TCO-number: 6.2090
Written-by: TBOYLE Creation-date: 7-Jun-84 14:31:54
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: FORK
Problem: Layered products group find it difficult to deal with
the .PVNAM word of the PDV.
Diagnosis: It is not consistent with other words of the PDV that
the layered products people use as pointers so that they can use
XMOVEI on them. This is because PDVOP% JSYS function .PONAM expects
it to be a 30-bit compatibility address where a zero in the left
half means PC relative. This makes code that uses the value kludgy
in true extended addressing programs. It also does not allow a pointer
to a section zero item.
Solution: Since it is presumed that no one is using PDV things anyway,
and DEC products are about to be released (dynamic libraries, and
LINK) that use it, change it now so that the .PONAM function interprets
the address as a valid 30-bit address pointer. Indirection will
be permitted but not indexing as are the other words in the PDV.
[End of TCO 6.2090]
TCO-number: 6.2094
Written-by: SHTIL Creation-date: 12-Jun-84 12:32:17
Edited-by: SHTIL Edit-date: 18-Jul-84 10:10:25
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: JSYSA DIRECT JSYSF
Related-TCO: 6.2131
Related-SPR: 20108
Problem: 1)Reported in SPR #20108:
A user should be able to set file account of any
file to which he or she has the write access to any
account that he is allowed to use independently of under
which account he is presently running and, in addition, he
should be able to set file accounts according to the DIRECTORY
command that may occur in ACCOUNTS.CMD
2)Found by the way:
SACTF (Related to 1) and CACCT JSYSes validate
account string given by calling VERACT (in JSYSA) which
gives the good return when accounting is not enabled.
This allowes the user put any junk into JSB or FDB.I don't know
what can happen if after that accounting gets enabled.
Diagnosis:
1)SCNUNO (JSYSA) checks the "user" type blocks in
ACCOUNTS.BIN by comparing the user name found with the
directory containing the file name but not with
the user name.
2)Bad code.
Solution: 1)Check the user name correctly.Store
the mapped directory number,unmap it,map login directory
(through JOBNO,JOBDIR).
2)Check before VERACT call in the main routines
whether accounting is enabled.
[End of TCO 6.2094]
TCO-number: 6.2095
Written-by: MOSER Creation-date: 12-Jun-84 14:27:07
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: DISC
Problem: FILBAT Buginf prints structure as a structure number which can change
by the time anyone notices.
Diagnosis: That is the way it is.
Solution: Print octal representation of sixbit structure name instead.
[End of TCO 6.2095]
TCO-number: 6.2096
Written-by: MCLEAN Creation-date: 13-Jun-84 14:07:42
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: MSTR
Problem:
Sometimes you are told you can't decrement the mount count because
JFN's are still assigned (MSTX36). I have mounted the structure exclusive
and I have reset all forks yet I still get MSTX36! I guarantee that
no JFN's are assigned!!!
Diagnosis: Kevin says he has seen it since Rel 4. Therefore it must
not be important.
Solution: If your Structure number and Terminal number are the same
you can't decrement the mount count. Therefore we must check to see
what type of JFN this is before we complain about the structure number
and the terminal number matching on an assigned JFN.
[End of TCO 6.2096]
TCO-number: 6.2100
Written-by: LOMARTIRE Creation-date: 15-Jun-84 08:40:34
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: FILMSC
Related-TCO: 6.1792
Related-SPR: 20192
Problem: TCO 6.1792 attempted to solve a security problem by disallowing the
opening of two or more JFNs on TTYnnn:. This has caused a problem for programs
like KERMIT which open the controlling terminal as TTYnnn: twice; once for read
and once for append.
Diagnosis: While it is not desirable to allow multiple openings of TTYnnn:, it
does not seem acceptable to prevent it. So, the security hole must be closed
by fixing the closing of multiply opened TTYs.
Solution: In routine TTYCLZ, call a new routine (TTYSCN) which will scan all
open JFNs to see if any exist for the TTY that is being closed. If one exists,
the routine will return +1 and the dynamic data block will not be deallocated.
Otherwise, TTYSCN will return +2, the dynamic data will be deallocated and
the TTY will be marked as no longer owned by the job. In either case,
the TTY will be marked as closed.
[End of TCO 6.2100]
TCO-number: 6.2102
Written-by: GRANT Creation-date: 18-Jun-84 14:10:38
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: MEXEC
Related-QAR: 706050
Problem: Network users (both ARPANET and DECnet) can host into the system
after "Shutdown complete". This is a security violation.
Diagnosis: The shutdown code disallows many things but forgets about incoming
virtual terminal logins.
Solution: Add SF%MCB and SF%NVT to the bits in FACTSW being turned off.
[End of TCO 6.2102]
TCO-number: 6.2103
Written-by: TGRADY Creation-date: 20-Jun-84 13:25:06
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: MEXEC
Problem:
Users not yet logged-in attempt to attach to a detached job, and get
a 'Wheel or Operator priveleges required' error message.
Diagnosis:
In the ATACH% JSYS, the local job number of the object job is passed to
GETJI%, instead of the global job number. Occasionally, this is a valid
job number, but for the wrong job. This causes a CAPX1 error return, since
ATACH% thinks the user is attempting to attach a batch job.
Solution:
Use the global job number in the call to GETJI%.
[End of TCO 6.2103]
TCO-number: 6.2104
Written-by: TBOYLE Creation-date: 20-Jun-84 13:39:28
Edited-by: TBOYLE Edit-date: 20-Jun-84 13:48:12
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: JSYSA MEXEC
Problem:
Session end times are always inaccurate (too early) except
the last one (at LOGOUT time) if CACCT% is used. Session start times
can at times be inaccurate (too early) if CACCT% is used and no
Job 0 checkpoint operation occured since the last CACCT%.
The following problems can occur after system crashes occur:
Incomplete session start times can be slightly early if no Job 0
checkpoint has occurred (time recorded is the time of ^C and not of
actual login.) Incomplete session start time can at times be
inaccurate (too early) if CACCT% was used and no Job 0 checkpoint
operation occured since the last CACCT%.
Diagnosis:
When session records are written for session changes, the
checkpoint record is used specially. System accounting fails to
initialize the session start and session end time in this record
before writing to SYSTEM-DATA.BIN for the previous session. This
addresses the first and second problem. After the session record is
written, the checkpoint record serves as information for the next
session. System accounting fails to initialize the session start
time. This addresses the fourth problem. At login, the actual session
start time is not initialized until after the USAGE call for login is
performed. This results in the session start time to be incorrect in
the checkpoint record. This addresses the third problem.
The problem with the session start times has not been too
noticable because the checkpointing operation happens to initialize
the value at each checkpoint interval (a kludge.) These fixes will
insure that the start and end times are accurate at all times.
Solution:
Fix the problems as described.
[End of TCO 6.2104]
TCO-number: 6.2105
Written-by: LEACHE Creation-date: 22-Jun-84 17:20:40
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: Monitor
Routines-affected: BOOT MTBOOT
Problem: The monitor will soon have a PDVOP.
Diagnosis: The PDVOP will generate an EXE-directory entry that is unknown to
BOOT, causing BOOT to declare the EXE-file format to be bad.
Solution: Teach BOOT to ignore this entry.
[End of TCO 6.2105]
TCO-number: 6.2106
Written-by: GLINDELL Creation-date: 24-Jun-84 15:22:00
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: STG
Problem:
The 6.1 monitor will use a PDV to point to the symbol table.
In order for EDDT/MDDT to be release-independent, add a variable
MONPDV that points to the monitors PDV.
If MONPDV is zero (always in 6.0) then EDDT/MDDT will get the
symbol table address the 'old' (i.e. current) way. If MONPDV is
non-zero (6.1 and later) then EDDT/MDDT uses MONPDV as a pointer
to the monitors PDV.
[End of TCO 6.2106]
TCO-number: 6.2107
Written-by: MCINTEE Creation-date: 25-Jun-84 14:32:56
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: TTYSRV
Problem: SKDPF1 bughlt
Diagnosis: Scheduler test SALWAT referencing nonexistent address
Solution: SALWAT claims to be expecting line number in T2, but code indicates
that T2 should have dynamic data block address in T2.
Routine SALLIN (which did the MDISMS) passes dynamic data block address in the
left half of T1. Unfortunately, dynamic data block addresses are now 30 bit
addresses. Also, SALLIN locks the TTY before the MDISMS, unlocks it afterwards, and
assumes that the dynamic data will still exist. However, unlocking it may
cause it to be deallocated.
Change SALWAT to expect line number in T1, and to convert it to dynamic
data. (If no dynamic data, return success).
Change SALLIN to put line number in left half of T1 when MDISMSing.
Also, do not lock/unlock TTY around MDISMS, but instead recheck for dynamic
data after MDISMS returns.
[End of TCO 6.2107]
TCO-number: 6.2110
Written-by: PAETZOLD Creation-date: 26-Jun-84 19:01:58
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: FORK
Problem:
ILMNRF BUGHLTs from TFRKSR in FORK during a TFORK JSYS.
Diagnosis:
wrong index register in FKEFR test.
Solution:
use the correct one.
[End of TCO 6.2110]
TCO-number: 6.2111
Written-by: GRANT Creation-date: 29-Jun-84 10:22:02
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: NSPSRV
Related-QAR: 706017
Problem: OPENF% on a filespec of the form SRV:n-name may either succeed
or fail erroneously.
Diagnosis: The OBJSRC coroutine OPNUNQ expects ACVAR W1 to be intact but
it isn't. Thus, random comparisons are made when testing for the
uniqueness of the string.
Solution: In the routine SRCOPN, which calls OBJSRC with OPNUNQ as the
coroutine, add another TRVAR location which can be used by OPNUNQ.
[End of TCO 6.2111]
TCO-number: 6.2114
Written-by: TGRADY Creation-date: 2-Jul-84 13:44:30
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: MEXEC
Problem:
SYSTAT shows all users in TI state...whether they are or not.
Diagnosis:
TTY2GL routine in GETJI% is returning bad data. Instead of returning
the owning job number and waiting fork number, it is returning the
owning global job number and local job number. SYSTAT takes this to mean
there is always a fork waiting for input from the terminal.
Solution:
Typographical error. Change TTY2GL:+8 lines from HLR T1,T2 to HRR T1,T2.
[End of TCO 6.2114]
TCO-number: 6.2118
Written-by: GROSSMAN Creation-date: 5-Jul-84 16:39:00
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: FORK
Problem: 1) Trap a JSYS (via TFORK)
2) Change the trapped fork's PC using SFORK%
3) Untrap the fork with bit UT%TRP set in T1
4) The monitor starts the (formerly) trapped fork in user mode at the PC
of ITRAP
Diagnosis: The code in UTFRK% that deals with the UT%TRP bit never considered
the fact that PFL and PPC (for the trapped process) might contain a user mode
PC and flags. The code just put the address of ITRAP into PPC, and never
changed PFL to contain the proper flags. When the trapped fork finally ran,
PPC pointed to ITRAP, and PFL contained user mode flags, so the user's
program was started at the address of ITRAP.
Solution: If you are doing the UTFRK% JSYS, and the bit UT%TRP is on:
1) If PFL indicates monitor mode, just put ITRAP into PPC, and you are done.
2) If PFL indicates user mode,
a) SETZM SLOWF so that JSYS context appears to be setup
b) Copy PFL into UPDL+1 and UPDL+3
c) Copy PPC into UPDL+0 and UPDL+2
d) Setup PFL to contain MONENV (flags for monitor environment)
e) Setup PPC with the address of ITRAP
This soultion assumes that MPP (stack fence) for the trapped fork points to
UPDL+3. This is a safe assumption since the JSYS trap code ensures that
MPP is setup in this manner before the trap is issued.
[End of TCO 6.2118]
TCO-number: 6.2119
Written-by: LEACHE Creation-date: 5-Jul-84 16:39:06
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: Monitor
Routines-affected: PAGUTL
Related-QAR: 706089
Problem: VBOOT's physical pages (currently 771-777) are being permanently
placed on the special-memory queue, and they are unavailable for use by
the monitor.
Diagnosis: This was a temporary side-effect of recent BOOT work that
was supposed to disappear after some experimentation with keeping BOOT
around after loading the monitor.
Solution: Repeat zero the code at PGRI2-n, causing PGRI2 to place VBOOT
pages on the replaceable queue. For now, leave the code at PGRIGR alone.
The code at both of these locations will be needed for dump-on-bugchk.
[End of TCO 6.2119]
TCO-number: 6.2120
Written-by: MCCOLLUM Creation-date: 5-Jul-84 17:08:11
Edited-by: MCCOLLUM Edit-date: 5-Jul-84 17:11:37
Edit-checked: No Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: JSYSA
Related-QAR: 706103
Problem:
NOSKTR bughlts.
Diagnosis:
A call to GL2LCL is performed when doing an ACCES% JSYS, function AC%CON, to
connect another job to a specified directory. If the call to GL2LCL fails
because the specified job does not exist, an ITERR is performed without
calling USTDIR to unlock the mapped directory. This results in trying to
return to the user CSKED and NOINT.
Solution:
If the call to GL2LCL fails, call USTDIR to unlock the mapped directory before
trying to return an illegal instruction trap to the user.
[End of TCO 6.2120]
TCO-number: 6.2121
Written-by: TBOYLE Creation-date: 6-Jul-84 16:33:58
Edited-by: TBOYLE Edit-date: 6-Jul-84 16:40:22
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: MEXEC
Problem: ILUK4 crashes, loss of accounting data and/or charges for
the wrong user in an incomplete session entry and possibly other types
of crashes related to JSB trashing.
Diagnosis: USAGE function for login will establish the Job's checkpoint slot
in the checkpoint file based on the global job number. System checkpointing
uses local job numbers. If the checkpoint file was new, crashes will occur
because the length fields in uninitialized slots will bash the JSB mapped
in the following page by Job 0.
Solution: UCKSET routine needs to convert the job number in the session
to a local number before mapping the checkpoint page.
[End of TCO 6.2121]
TCO-number: 6.2122
Written-by: SHTIL Creation-date: 10-Jul-84 13:45:07
Edited-by: SHTIL Edit-date: 13-Jul-84 10:47:54
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: APRSRV MTIME
Problem:
There is a plan to mesure various system performence time
parameters with maximum granularity.
Diagnosis:
The MTIME routine in APRSRV, which is the only time source in the
system performance area, does RDTIME and rounds the time to the tens of
microseconds,loosing accuracy.
Solution:
Let MTIME go the usual way because of the intensive use of the old
time format. In addition store the time base in microseconds in CX for
future possible use.
[End of TCO 6.2122]
TCO-number: 6.2124
Written-by: LOMARTIRE Creation-date: 12-Jul-84 11:26:54
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: DIRECT
Related-SPR: 15114
Problem: It is possible for any user to copy a file to any directory which has
a deleted file in it as long as the user has DP%RD access to the directory.
Diagnosis: During the GTJFN% call used to acquire a JFN for the destination
file, a call is made to routine VERLKH to obtain the version number of
the file. If the destination file is deleted, then this routine clears the
deleted bit and sets the non-existent bit in the FDB. This effectively
recreates this file in the directory. So, if the user knows of deleted files
in a directory, he can undelete them and overwrite them with any of his own
files by simply having the destination of the copy be the deleted file.
Solution: Before clearing FBDEL and setting FBNXF, call DIRCHK and check for
DP%CF (create files) access to the directory. If this access does not exist,
return a GJFX35 error (directory access privileges required).
[End of TCO 6.2124]
TCO-number: 6.2125
Written-by: MOSER Creation-date: 12-Jul-84 13:33:51
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: FORK PROLOG
Problem: Various strange bugs and races. One very common scenario is:
@RESET
@DISMOUNT STR TAM:
?Illegal while JFNS assigned
Waiting a few minutes betewwn the RESET and DISMOUNT virtually guarantees
that the problem will not happen. The problems usually effect batch jobs where
subsequent commands are "typed" quickly by BATCON.
Timesharing users are more likely to see REL file open errors from
MACRO when recompiling the same program after a ^C.
Diagnosis: The KFORK Jsys is Asyncronous. It causes the requested forks
to be suspended and then sets their PC to KSELF but it may return to the
user before any forks actually die. These forks may not have relenquished
control of various resources at the time that the KFORK succeeds.
Solution: Make KFORK syncronous. After suspending the forks mark that fork
as "waiting to die" in FKSWP. Keep a list of these forks and after causing them
to be killed wait for the death to occur. Each fork clears the flag, FKKL%,
after relenquishing all resources BUT before waiting for the share counts on
the PSB and JSB to go to zero. Thus a fork is guaranteed to "die" in finite
time.
[End of TCO 6.2125]
TCO-number: 6.2126
Written-by: TGRADY Creation-date: 12-Jul-84 17:04:42
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: MEXEC SCHED TAPE
Problem:
Three GETOK% functions return job numbers as arguments. They currently
are returning job indices instead of global job numbers
Diagnosis:
.GOATJ - Attach job
.GOCLS - Set Scheduler class
.GOMTA - MT: access
All return the wrong thing for job number, everyone else looks ok.
Solution:
Change MEXEC, SCHED, and TAPE to supply the right argument.
[End of TCO 6.2126]
TCO-number: 6.2127
Written-by: HAUDEL Creation-date: 13-Jul-84 13:37:07
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PHYM78
Problem: Channel,controller,and unit information is not displayed with
the TM8AEI bugchk.
Diagnosis: No code to do so.
Solution: Add additional data items to the TM8AEI bugchk
[End of TCO 6.2127]
TCO-number: 6.2130
Written-by: HAUDEL Creation-date: 17-Jul-84 13:12:13
Edited-by: HAUDEL Edit-date: 7-Aug-84 13:51:25
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: TTYSRV
Related-QAR: 706074
Problem: Front-end gets reloaded for no apparent reason and there is no
entry in the ERROR.SYS file.
Diagnosis: There is a line printer attached to a TTY line and the line printer
spooler is running under JOB 0. If the line printer is put offline ( to get
a listing) and it is left offline long enough, the Monitor will reload the front
end. The test routine that the Monitor sets up, J0TCOT, is based upon the
job number. Only JOB 0 uses this test routine and it assumes that when
output is blocked, the output is blocked on the CTY. J0TCOT reloads the
front end.
Solution: Use the J0TCOT test, only if the line number is that of the CTY and
the job number is 0. Otherwise, use the TCOTST test. Add a bugchk to the
J0TCOT test to indicate that the Monitor reloaded the front end. This bugchk
may not be printed on the CTY, but it will be written to ERROR.SYS.
[End of TCO 6.2130]
TCO-number: 6.2131
Written-by: SHTIL Creation-date: 18-Jul-84 10:10:24
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: VERACT
Related-TCO: 6.2094
Related-SPR: 20108
Problem: The fix described in TCO 6.2094 breaks LOGIN JSYS !!!
Diagnosis: LOGIN JSYS calls VERACT before it fills in USRMAM field in
JSB which is needed by VERACT.
Solution: Check in VERACT whether the job is logged in and use the
appropriate data base.
[End of TCO 6.2131]
TCO-number: 6.2134
Written-by: MCLEAN Creation-date: 19-Jul-84 11:14:09
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: TAPE
Related-SPR: 19599
Problem: ACJ is not consulted for labeled tape access.
Diagnosis: no code
Solution: add code complements of G. Scott.
[End of TCO 6.2134]
TCO-number: 6.2141
Written-by: MOSER Creation-date: 20-Jul-84 16:10:24
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: SYSERR
Problem: No resident free space. No BUGxxx messages on CTY.
Diagnosis: SYSERR fork has died and free space is full of old syserr blocks.
Solution: Use MONBK facility for SYSERR fork. Transfer to SEBINH on errors
issue a SEBINT BUGCHK additional data LSTERR and PC. Reset JSYS context
and restart SYSERR processing.
[End of TCO 6.2141]
TCO-number: 6.2142
Written-by: MCCOLLUM Creation-date: 20-Jul-84 17:02:35
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PAGEM
Problem:
Calling MRPAC with a section number that does not exist in T1 causes ILFPTE
crashes.
Diagnosis:
MRPAC calls FPTA to convert the page number to a page ID. FPTA has been changed
since 5.1 to crash if the given section does not exist.
Solution:
Make MRPAC check for an existent section before calling FPTA.
[End of TCO 6.2142]
TCO-number: 6.2145
Written-by: HAUDEL Creation-date: 25-Jul-84 09:54:10
Edited-by: HAUDEL Edit-date: 27-Jul-84 13:02:18
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PHYM78
Related-SPR: 20267
Problem: NOIORB bughlts from PHYM78
Diagnosis: A TM78 is sending an unexpected "REWIND STARTED" interrupt to the
Monitor. Once the PHYM78 code determines that attention interrupt it has
received is a "REWIND STARTED" one, it calls SETIRB to set up P4 with
the IORB address. Since the Monitor has not requested a REWIND, there is
no IORB and thus the NOIORB bughlt.
This unexpected "REWIND STARTED" interrupt is happening on a system with
dual ported TM78s and TU78s.
Solution: Add a check in the PHYM78 code to determine if there is
an IORB on the position wait queue when a "REWIND STARTED" interrupt
is received. If there is not, issue a buginf and dismiss the interrupt
without any further action.
[End of TCO 6.2145]
TCO-number: 6.2146
Written-by: TGRADY Creation-date: 25-Jul-84 17:10:10
Edited-by: TGRADY Edit-date: 25-Jul-84 17:10:31
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: JSYSA
Related-QAR: 706080
Problem:
ACJ's can get random nonsense for user number in the GETOK information.
Diagnosis:
ALOCRS uses the global job number for an index into JOBDIR. This hardly
ever works.
Solution:
Use the local index (from JOBNO) to index into JOBDIR.
[End of TCO 6.2146]
TCO-number: 6.2147
Written-by: GROSSMAN Creation-date: 26-Jul-84 16:29:21
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: RH2INI
Problem: PHYH2 does too much for NISRV.
Diagnosis: NISRV does not need a CDB, or any other PHYSIO related data structures.
Solution: Don't create channel blocks for KLNI's. Also, simplify NISRV
initialization so that it is more in line with PHYKLP initialization.
[End of TCO 6.2147]
TCO-number: 6.2148
Written-by: GROSSMAN Creation-date: 26-Jul-84 17:10:37
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: STG
Problem: Too many interrupt level stacks.
Diagnosis: Engineer brain damage.
Solution: Get rid of NISRV's interrupt level stack. Allocate more room
in PI6STK to accomodate NISRV.
[End of TCO 6.2148]
TCO-number: 6.2149
Written-by: MOSER Creation-date: 28-Jul-84 16:59:19
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PAGEM
Problem: You can map a section to itself.
Diagnosis: Inadequate checking for loops. This was found by Rob Gingell
at CWR.
Solution: Move loop check to MSETM3.
[End of TCO 6.2149]
TCO-number: 6.2151
Written-by: GLINDELL Creation-date: 28-Jul-84 19:34:10
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: JSYSA
Problem:
Approximately every 95th username associated with an account definition
returns invalid when verified.
Diagnosis:
When there are many usernames specified for an account, several pages
may be needed to describe the account. However, the first account block
on each new page is ignored.
Solution:
In JSYSA @SCNAC0+20, branch to the right location after finding a null
account block and mapping the next account file page.
[End of TCO 6.2151]
TCO-number: 6.2152
Written-by: PAETZOLD Creation-date: 29-Jul-84 10:05:08
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: monitor
Routines-affected: PHYSIO
Problem:
UPDPDV causes a SKDPF1 if system does not have a KLIPA.
Diagnosis:
Contrary to popular belief the TDOA instruction is not the opposite of the
TDZA instruction.
Solution:
Change code at UPDPD1 to use a SKIPA.
[End of TCO 6.2152]
TCO-number: 6.2153
Written-by: GLINDELL Creation-date: 30-Jul-84 13:46:21
Edited-by: GLINDELL Edit-date: 30-Jul-84 13:49:35
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: FORK
Problem:
The PDVOP% jsys functions .PONAM, .POVER and .POLOC fails to find
a PDV in section 0 if the user is running in a non-zero section.
Diagnosis:
More confusion between section-0 and section-local addresses.
Solution:
Set the flag PM%EPN ("extended page number") when calling FKHPTN
in routine GETWRD at GET2+2.
[End of TCO 6.2153]
TCO-number: 6.2154
Written-by: MCCOLLUM Creation-date: 30-Jul-84 17:16:17
Edited-by: MCCOLLUM Edit-date: 1-Aug-84 14:18:22
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: GETSAV
Related-QAR: 706150
Problem:
NOSKTR bughlt.
Diagnosis:
PMAP in GET% JSYS without ERJMP while CSKED and NOINT.
Solution:
Add ERJMP after PMAP%. The code will clean up and return to user properly if
the routine doing the PMAP returns +1 with error code in T1.
[End of TCO 6.2154]
TCO-number: 6.2155
Written-by: MURPHY Creation-date: 30-Jul-84 17:46:20
Edited-by: MURPHY Edit-date: 31-Jul-84 11:56:09
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: TTYSRV
Problem: RFMOD returns incorrect values for wakeup bits. If SFMOD
is done with only TT%WKF on, subsequent RFMOD will indicate
TT%WKP and TT%WKA on also. If a program does RFMOD/SFMOD to
save and restore mode word, effect will be to cause wakeup on
everything.
Diagnosis: Routine TTRMOD computes wakeup bits from full break
mask. ESC is considered to be in all character classes, so
ESC on because of TT%WKF will cause WKP and WKA to be set
also.
Solution: Don't consider ESC to be in alphanumeric or punctuation
character sets for purposes of computing wakeup bits in mode
word.
[End of TCO 6.2155]
TCO-number: 6.2157
Written-by: TBOYLE Creation-date: 1-Aug-84 14:39:34
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: SCHED
Related-QAR: 706100
Problem: MCLNSK BUGHLTS. MCENTR detected CRSKED nonzero at JSYS entry.
Diagnosis: It is difficult to tell what happened at this point. The
real cause seems to be a PSI while CRSKED and OKINT. It would have
been better to BUGHLT there.
Solution: Change PSINSK from a BUGCHK into a BUGHLT. When a PSINSK
occurs, we are certain to crash soon anyway, so we better crash then
so that we can find the problem.
[End of TCO 6.2157]
TCO-number: 6.2158
Written-by: TBOYLE Creation-date: 1-Aug-84 17:34:07
Edited-by: TBOYLE Edit-date: 1-Aug-84 17:34:25
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: TTYSRV
Related-SPR: 19580
Related-QAR: 706073
Problem: RESCHK BUGHLTs during sendall.
Diagnosis: A test on TTSAL (send-all in progress) is tested incorrectly
during calls to CFOBF. It incorrectly calls CLRSAL when it should not.
The crash does not occur all the time because CLRSAL aborts if other
SEND-ALL parameters indicate that it would not be the last user of
the buffer. Certain states, however, cause the uneccesary crash.
Solution: correct the check on whether a sendall is in progress.
Change from a JN to a JE.
[End of TCO 6.2158]
TCO-number: 6.2159
Written-by: HAUDEL Creation-date: 2-Aug-84 10:57:27
Edited-by: HAUDEL Edit-date: 2-Aug-84 11:27:29
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PHYM78
Problem: PITRAPs.
Diagnosis: The TM78 code has an interrupt condition table that is used to
determine how to handle an interrupt. This table has flags in the
left half and either flags or a dispatch address in the right half.
After an entry from this table is put into an AC, a JRST (AC) instruction
is used to get to the dispatch code.
In this case, a READ OPPOSITE interrupt occured and the corresponding
entry in the TM78's interrupt condition table had bit 6 set and a dispatch
address in the right half. This is a global index when used by the JRST (AC)
instruction. Thus, a PITRAP because of an illegal section number.
Solution: Only use the right half of the READ OPPOSITE dispatch
table entry
[End of TCO 6.2159]
TCO-number: 6.2160
Written-by: LOMARTIRE Creation-date: 2-Aug-84 12:57:06
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: GETSAV
Related-QAR: 706163
Problem: Typing SRV: to the EXEC hangs the job.
Diagnosis: The EXEC is trying to do a GET% of SRV:.EXE and is NOINT. The
monitor is waiting in scheduler test CHKCON for the SRV: connection to be
opened.
Solution: As in other similar cases, do not allow a GET% on SRV:. If one is
done, return a GETX1 error (?Bad .EXE file format).
[End of TCO 6.2160]
TCO-number: 6.2163
Written-by: HAUDEL Creation-date: 7-Aug-84 13:47:06
Edited-by: HAUDEL Edit-date: 7-Aug-84 13:54:41
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: JSYSA
Related-QAR: 706149
Problem: Unable to dismount a structure and MOUNTR hangs.
Diagnosis: MOUNTR hangs in an MSTR% which is waiting for the STRLK
lock to become unlocked. The STRLK is locked because the code for the
PPNST% locks it, but fails to unlock it.
Solution: Add a call to ULKSTR after the call to CNVSTR in the PPNST% code.
[End of TCO 6.2163]
TCO-number: 6.2164
Written-by: PAETZOLD Creation-date: 7-Aug-84 22:26:21
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: monitor
Routines-affected: tcpjfn
Problem: :
;TIMEOUT attribute in TCP GTJFN specification trashes location 20 of the
monitor.
Diagnosis: :
No index register in STOR in ATTTIM.
Solution: :
Index off of TCB like we always should have.
[End of TCO 6.2164]
TCO-number: 6.2165
Written-by: PAETZOLD Creation-date: 8-Aug-84 14:25:46
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: monitor
Routines-affected: ipipip
Problem: :
Bad checksums on some ICMP error packets.
Diagnosis: :
forgeting to zero checksum part of message in ICMER9 before calling
ICMCKS.
Solution: :
Zero CMCKS,(CPKT) before calling ICMCKS.
[End of TCO 6.2165]
TCO-number: 6.2166
Written-by: LEACHE Creation-date: 8-Aug-84 15:23:43
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: Monitor
Routines-affected: JSYSF
Related-QAR: 706015
Problem:
CRDIR% fails unnecessarily.
Diagnosis:
The uniqueness check for the PPN fails to allow for the case of
doing a CRDIR for an existing directory (as in a DUMPER restore).
Solution:
Skip the uniqueness check if the PPN in the CRDIR arg block matches
the PPN of the directory.
[End of TCO 6.2166]
TCO-number: 6.2167
Written-by: LEACHE Creation-date: 8-Aug-84 16:16:19
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: Monitor
Routines-affected: STG
Related-QAR: 706019
Problem: VK100 terminals display junk in response to ^U and ^W to TEXTI.
Diagnosis: Erase-to-end-of-screen function for VK100 is not defined
correctly in STG.
Solution: Fix it.
[End of TCO 6.2167]
TCO-number: 6.2168
Written-by: PAETZOLD Creation-date: 8-Aug-84 17:06:38
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: monitor
Routines-affected: STG
Problem:
PI6STK undefined when PCDPN or PTPN on.
Diagnosis:
Someone played with the conditionals for KNIN got confused.
Solution:
Fix the confusion.
[End of TCO 6.2168]
TCO-number: 6.2169
Written-by: GROSSMAN Creation-date: 10-Aug-84 17:09:23
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: APRSRV STG
Problem: ILLUUO's during monitor startup.
Diagnosis: NISRV tries to get interrupts before the interrupt vectors are setup.
Solution: Set up the interrupt vectors earlier. The routine PIINIT is now
split into two parts. The first part (called PVINIT), just sets up the vectors
in the EPT. The second part (called PSINIT) actually turns on the rest of the
PI system. PIINIT goes away.
PVINIT is called very early during system initialization. PSINIT is called
much later (it's almost the last thing).
[End of TCO 6.2169]
TCO-number: 6.2171
Written-by: TBOYLE Creation-date: 11-Aug-84 00:23:50
Edited-by: TBOYLE Edit-date: 11-Aug-84 00:47:15
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: MEXEC
Related-QAR: 706057
Problem:
MDDJFN BUGHLT and potentially other crashes or wierdness due to
carrier off action.
Diagnosis:
JOBCOF saves the T registers but it uses a few others. This is not
good. In the MDDJFN case, The value of DEV was changed when calling LDTACH
calling TTYDAS calling CHKDES which returns information in DEV. When the
user reconnected, GETFDB crashed checking the directory of a non-exitant
device.
Solution:
Do an ACSAV to save all the registers for our sanity.
The real problem may well lie in the fect that some routines return
or change information in preserved registers such as JFN, DEV, STS.
But c'est la vie.
[End of TCO 6.2171]
TCO-number: 6.2172
Written-by: LEACHE Creation-date: 13-Aug-84 16:37:19
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: BOOT
Problem: On a 2-pass load, BOOT can sometimes fail to restore the IO
channels correctly.
Diagnosis: If the channel has suffered a register-access error prior
to entering the channel-restore code, the restore will fail, causing
PH2PIM or ILMNRF bughlts when the swappable monitor has been loaded.
Solution: Reset the channel before attempting to restore it.
[End of TCO 6.2172]
TCO-number: 6.2173
Written-by: MELOHN Creation-date: 15-Aug-84 11:14:00
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: FILMSC
Problem: Merge of M61: and M60: FILMSC
Solution: New routines put under FTNSPSRV
[End of TCO 6.2173]
TCO-number: 6.2174
Written-by: TGRADY Creation-date: 15-Aug-84 16:38:57
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: ENQ
Problem:
ILMNRF or ILPSEC BUGHLT's, random results from ENQDMP.
Diagnosis:
Improper handling of ENQ AC's in ENQDMP. A local job number in T2 is
EXCHanged with T1 before calling LCL2GL to translate it into a global
job number. Unfortunately, after returning from the call, the results
are not EXCHanged back to where the rest of ENQDMP expects them to be.
Results are fairly random.
Solution:
After the call to LCL2Gl, swap the ac's back where they belong. Also,
make sure the argument to LCL2GL isn't a -2 or -3 which would indicate
a different type of lock is present. (ENQ capability or Wheel/OPR).
[End of TCO 6.2174]
TCO-number: 6.2176
Written-by: GROSSMAN Creation-date: 15-Aug-84 18:27:13
Edited-by: GROSSMAN Edit-date: 15-Aug-84 18:44:27
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: STG MEXEC
Problem: NISRV needs to do stuff in Job 0 context.
Diagnosis: The code doesn't exist.
Solution: Put a call to KNIJB0 into MEXEC (CHKR). Put a dummy definition of
KNIJB0 into STG in case NISRV isn't loaded.
[End of TCO 6.2176]
TCO-number: 6.2179
Written-by: LEACHE Creation-date: 17-Aug-84 15:32:18
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: Monitor
Routines-affected: BOOT
Problem:
BOOT cannot load long files.
Diagnosis:
No code to do so.
Solution:
Add the code.
[End of TCO 6.2179]
TCO-number: 6.2180
Written-by: PRATT Creation-date: 20-Aug-84 09:16:05
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: COMND
Related-QAR: 706162
Problem: COMND% will sometime trash the user's T4 when parsing a date.
Diagnosis:
COMND% tries to protect against trashing user T4 but fails to take in to
account the case of a valid parse of the date and then a request for help.
Solution:
Make sure the user's T4 gets restored before handling any requests for help.
At CMTADH add two line to restore T4.
[End of TCO 6.2180]
TCO-number: 6.2182
Written-by: PRATT Creation-date: 20-Aug-84 13:12:44
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: COMND
Related-SPR: 17658
Problem:
COMND jsys function .CMQST (quoted string) does not handle defaults
if the user types crlf.
Diagnosis: No code
Solution: Add the code.
[End of TCO 6.2182]
TCO-number: 6.2185
Written-by: PAETZOLD Creation-date: 21-Aug-84 10:28:31
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: monitor
Routines-affected: tcptcp
Problem:
Hung TCBs eventually render TCP useless after many days.
Diagnosis:
Solution:
Detect and flush hung TCBs.
[End of TCO 6.2185]
TCO-number: 6.2186
Written-by: TBOYLE Creation-date: 21-Aug-84 12:54:22
Edited-by: TBOYLE Edit-date: 21-Aug-84 12:59:20
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: DSKALC
Related-QAR: 706210
Problem:
CHECKD causes ILMNRF on REBUILD command for multi-pack structures.
Diagnosis:
There are two places in DSKALC where the contents of UDBSTR, passed to
CFS subroutines, is used as an index into STRTAB. Since UDBSTR holds
the STRTAB index in the right half and the UNIT within the structure
in the left half, this code is only half correct.
A problem arises for multi-pack structures, where the LH of UDBSTR is
non-zero, causing indexing into STRTAB by <1,,X>, <2,,X>, <3,,X>, and
so on, and results in an ILMNRF bughlt.
Solution:
Fix calls to the routines CFFBBS, CFGBBS in DSKALC to pass only the RH
of UDBSTR by using HRRZS.
[End of TCO 6.2186]
TCO-number: 6.2189
Written-by: PRATT Creation-date: 22-Aug-84 14:26:08
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: COMND
Related-SPR: 15611
Problem:
If a program has a default filespec for any of the file parsing functions
of COMND and the user types: /? (perhaps thinking that switches are
possible), the default filespec is taken, no other fields are parsed,
and no error message is returned.
Diagnosis:
When the "/" (or any other character which is not normally part of a
filespec) is parsed, it delimits the filespec field and the default
is placed into both the atom buffer and the main command buffer overwriting
the unparsed characters in the command buffer.
Solution:
After the GTJFN call has completed, check to see if a default was taken.
If so, and it was taken because a carriage return was typed, only place
the filespec in the atom buffer. If the default was taken because of
an escape or ^F, place the filespec in both buffers.
[End of TCO 6.2189]
TCO-number: 6.2190
Written-by: PAETZOLD Creation-date: 22-Aug-84 19:44:19
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: GTJFN
Related-QAR: 706124 706125
Problem:
DSK* does not work when PS: is not named PS:
Diagnosis:
Solution:
When using DSK*: change DSK*: device string to be the first mounted structure.
These days the first structure is usually not named PS:.
This is basicly the same fix that Chris Johnson came up with except that
GNJFN3 is used to make enough room for the full structure name (6 chars plus
null) if the block has been trimmed.
[End of TCO 6.2190]
TCO-number: 6.2191
Written-by: PAETZOLD Creation-date: 22-Aug-84 19:50:14
Edited-by: PAETZOLD Edit-date: 22-Aug-84 19:57:24
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: monitor
Routines-affected: ENQ IPCF JSYSA MEXEC mstr
Related-QAR: 706137
Problem:
Code is wrong. Various randomness with jobs including hangs and
crashes when mapping JSBs of other jobs.
Diagnosis:
Race condition where a job may disappear during random SETJSB calls
because we are not NOSKED during the mapping process.
Solution:
Change some calls to MAPJSB from SETJSB. MAPJSB will go NOSKED while
mapping the JSB and then return OKSKED. The share count on the JSb will
prevent the job from logging out after the MAPJSB call (until CLRJSB).
[End of TCO 6.2191]
TCO-number: 6.2192
Written-by: PAETZOLD Creation-date: 22-Aug-84 20:34:48
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: JSYSF
Related-QAR: 706138
Problem:
@DELETE *.*,
@@KEEP 1 **
Does not work for TMP files with low generations.
Some programs (eg. my friend MM) do not create TMP files with generations
of 100000+JOBNO. The files have normal generations (ie. 1,2,3,....N,N+1).
Diagnosis:
Code at DELNF3 is overly protective of TMP files with low generations.
Solution:
Treat TMP files with generations .lt. 100000 the same as normal files.
[End of TCO 6.2192]
TCO-number: 6.2193
Written-by: PAETZOLD Creation-date: 22-Aug-84 20:41:49
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: FORK
Related-QAR: 706139
Problem:
IDFOD2 BUGCHKs and other problems including fork lock snafus due to
fork being OKINT while FKLOCK set.
Diagnosis:
RFSTS calling CLRLFK to reset PSB mapping when SETLF1 was never called
after unassigned relative fork handles are passed to RFHJFK.
Solution:
At RFSLN2 P1 will be -1 if SETLF1 was not called. Do not call CLRLFK
if this is true.
[End of TCO 6.2193]
TCO-number: 6.2194
Written-by: HAUDEL Creation-date: 23-Aug-84 11:50:56
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: IO COMND
Related-QAR: 706153
Problem: MONNEJ bugchks.
Diagnosis: No ERJMPs after some jsyses in IO.MAC and COMND.MAC
Solution: Add ERJMPR [ITERX] after the following jsyses
COMND.MAC COLNC+6/ RFMOD
GETWTH+2/ MTOPR
CMCOUT+2/ BOUT
CMUSO1+2/ BOUT
CURUP+6/ MTOPR
CURUP+11/ MTOPR
IO.MAC .ESOUT+1/ DOBE
.ESOUT+2/ RFPOS
[End of TCO 6.2194]
TCO-number: 6.2196
Written-by: MOSER Creation-date: 23-Aug-84 17:00:05
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: MSTR PHYSIO
Problem: The Galaxians need a way to uniquely distinguish units in a
structure.
Solution: Return the HOMMID code in the .MSRNU/.MSRUS function of
MSTR. Offset will be .MSMID.
[End of TCO 6.2196]
TCO-number: 6.2198
Written-by: GRANT Creation-date: 24-Aug-84 07:03:17
Edited-by: GRANT Edit-date: 24-Aug-84 07:04:19
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: NSPSRV
Related-SPR: 19772
Problem: When using a series of SOUT% to transfer data over a DECnet link,
the final few bytes sometimes don't get sent.
Diagnosis: The CLOSF code doesn't make all the necessary checks to insure all
data gets sent.
Solution: In routine CLZDI, if it isn't an abort close, make sure all bytes
get sent.
[End of TCO 6.2198]
TCO-number: 6.2199
Written-by: HAUDEL Creation-date: 24-Aug-84 13:42:48
Edited-by: HAUDEL Edit-date: 24-Aug-84 13:44:30
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: DTESRV
Related-QAR: 706130
Problem: Sometimes the terminal lines hang after the CTY has run out
of paper or after some other cause of a front end reload.
Diagnosis: The exact cause is unknown. However, there is a possible cause
in DTESRV. The current code ignores a failure return after a call to
run SETSPD.
Solution: Add a new bughlt, under the DTESW conditional assembly switch,
to trap this problem and hopefully gather some useful data.
[End of TCO 6.2199]
TCO-number: 6.2200
Written-by: GRANT Creation-date: 27-Aug-84 08:25:01
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: DSKALC
Problem: DEC has gone decimal.
Diagnosis: When starting the monitor at location 143, channel, controller, and
unit are accepted as input from the user and also output by the monitor in
octal.
Solution: In routine FSIDI2, call FSIDEC instead of FSIOCT; in routine FSICFG,
call FSIDTY instead of FSIOTY.
[End of TCO 6.2200]
TCO-number: 6.2201
Written-by: TGRADY Creation-date: 27-Aug-84 09:52:35
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: JSYSA MEXEC
Problem:
Mismatched use of Global and Local job indices when handling USAGE%
records. USAGE file records are indexed by local job index, and
contain the global job number, but not the local job index. The
Checkpoint process screws up by treating this global job number is
an index.
Diagnosis:
See QAR 706198. He says it better than I can.
Solution:
TCO 6.2121 tried to address this problem, but did so incorrectly. This
TCO supersedes (and in fact removes) that edit. Store the local job
index in the header of the USAGE% record, and use that as an index into
the USAGE% file.
[End of TCO 6.2201]
TCO-number: 6.2202
Written-by: TGRADY Creation-date: 27-Aug-84 10:28:11
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: SCHED
Problem:
User mode program's extended PSI level table gets smashed, resulting
in ILMNRF's.
Diagnosis:
DEBRK code does a XCTU [DMOVE Q1,@T1] without an ERJMP after it.
Solution:
Do an ERJMP. Clear the FKPSI1 flag in FKINT to indicate that we're
no longer in the PSI handler, and ITRAP with the last JSYS error.
[End of TCO 6.2202]
TCO-number: 6.2203
Written-by: LEACHE Creation-date: 27-Aug-84 10:38:45
Edit-checked: No Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: Monitor
Routines-affected: FREE
Related-QAR: 706204 706181
Problem: Freespace bugs
(1) Pool-check routine is called before pool is locked, sometimes
generating spurious BUGCHKs.
(2) Sometimes a block smaller than requested is returned to user.
Diagnosis:
(1) As above
(2) Pool-traversal code is jumping to wrong label on end of list.
Solution:
(1) Don't call the pool-check routine until after pool is locked.
(2) Jump to correct label when end of list is encountered during
pool traversal.
[End of TCO 6.2203]
TCO-number: 6.2204
Written-by: TBOYLE Creation-date: 27-Aug-84 16:42:54
Edited-by: TBOYLE Edit-date: 27-Aug-84 17:01:35
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: TTYSRV
Related-QAR: 706053
Problem:
Hung job, possible ILMNRF.
Diagnosis:
When doing a sendall to a single line the code at SALLI2(TTYSRV)
may block when the sendall pointer is not free for the destination
terminal. When this happens, scheduler test SALWAT is entered
with incorrect data -- an 18 bit address for the dynamic data.
SALWAT takes the address of the terminal's dynamic data. This is
a no no, since the DD is now in section 11, but the passed address
is only a halfword quantity. This results in references to the
current PC section by SALWAT, which may or may not point to an
existent page.
Solution:
Pass the Terminal number to SALWAT. Have SALWAT convert it to
the dynamic data pointer with STADYN.
[End of TCO 6.2204]
TCO-number: 6.2206
Written-by: TBOYLE Creation-date: 29-Aug-84 13:55:55
Edited-by: TBOYLE Edit-date: 29-Aug-84 14:59:50
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: JSYSF
Related-QAR: 706154
Problem:
When CHFDB is called by a normal user to modify information which
requires wheel or operator privileges, the result is the error message
"Write or owner access required." This is the wrong error message.
It is also misleading because it can happen when the user does have
write or owner access.
Diagnosis:
If write/owner is required and the user isn't we go to check if
WHEEL/OPER is required. When this fails "Write or owner required"
is the right answer. However, if only WHEEL/OPER will allow the
specified change, we end up in the same error path and give an
incorrect error.
Solution:
It is uneccessary to turn this code into a massive decision tree.
The final routine that checks to see if WHEEL/OPER is required
can be fixed to return the correct error by checking to see if
write or owner access were required. If either access were not
required, then we will return "Wheel/Operator required." Otherwise
we return "Write/Owner access required."
[End of TCO 6.2206]
TCO-number: 6.2207
Written-by: LEACHE Creation-date: 29-Aug-84 16:48:37
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: Monitor
Routines-affected: BOOT
Problem: BOOT sometimes prints out error messages with null directory names.
Diagnosis: The output routine is fetching the byte pointer from the wrong
location.
Solution: Get it from the correct location.
[End of TCO 6.2207]
TCO-number: 6.2208
Written-by: TBOYLE Creation-date: 29-Aug-84 17:24:05
Edited-by: TBOYLE Edit-date: 30-Aug-84 12:44:26
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: FILINI
Related-QAR: 706004
Problem:
Upon initially booting V6 and using as the public structure a
structure which was used under pre-V6 monitors, the system appears
to hang.
Diagnosis:
During system initialization, FILINI tests for the presence of the
PPN extension to the INDEX-TABLE.BIN of the public structure by
determining if the first page of the necessary area exists. If it
does not, FILINI will set the "initialize index-table" bit in the
start-up flags word and later re-initialize the index-table. This
reinitialization can take a long time on structures with a large
number of directories and create the impression that the system is
malfunctioning.
Solution:
When FILINI discovers that the INDEX-TABLE needs to be initialized,
output a message [INDEX-TABLE BEING INITIALIZED FOR PPN SUPPORT].
It should also be noted in the installation guide that if a site
desires non public structures to have their PPN's properly retrofitted
for system directories that they will have to run CHECKD to reconstruct
the index table.
[End of TCO 6.2208]
TCO-number: 6.2209
Written-by: GLINDELL Creation-date: 29-Aug-84 17:29:11
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: MAGTAP TAPE
Related-SPR: 16186
Problem:
MTOPR% function .MOIEL (Set error logging for tape) returns
error "File is not open".
Diagnosis:
This function should not require the JFN to be opened.
Solution:
Add bits in dispatch tables (MTMTAB in MAGTAP, and MTMTOP in TAPE)
that allow the function to be executed while the JFN is not opened.
[End of TCO 6.2209]
TCO-number: 6.2211
Written-by: PAETZOLD Creation-date: 30-Aug-84 10:15:54
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: monitor
Routines-affected: MEXEC
Problem:
ILLUUOs, OPOPACs, ILMNRFs and lots of other stuff after a job which is
detached via JOBCOF is reattached to.
Diagnosis:
KIMUPC (and KIMUFL) are getting smashed by a TLINK jsys performed in LDTACH.
Since JOBCOF works mostly by simulating a JSYS call this is not good. If
the job is attached we will return to the middle of LDTACH and everything
falls apart after that.
Solution:
Save KIMUFL and KIMUPC on the stack and restore them if we ever decide to
return from the simulated JSYS.
[End of TCO 6.2211]
TCO-number: 6.2212
Written-by: TGRADY Creation-date: 30-Aug-84 10:44:43
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: JSYSA
Problem:
If a user attempts to login, but fails due to a wrong password, invalid
account, or almost any reason, the user is given user group access rights,
and can use the Info Mail command. The user should get a message 'Mailbox
protected', and not see if someone else has unread mail.
Diagnosis:
The LOGIN JSYS gets the user groups for the user number specified in the
LOGIN call, and copies them into the user's JSB before checking the
password, or account specified in the call. If the password or account
is wrong, the user still has user group access rights.
Solution:
Move about 13 lines of code that sets up the user groups to later in the
JSYS, after the account has been verified after label LOGI1. At this point
the user-specified arguments have all been checked, and the user won't be
getting an error.
[End of TCO 6.2212]
TCO-number: 6.2213
Written-by: EVANS Creation-date: 30-Aug-84 12:25:58
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: Yes
Program: MONITOR
Routines-affected: TAPE
Related-SPR: 18851
Problem: MTU% outputs a confusing error message.
Diagnosis: The message "Device is not on line" is used when a volume is
determined to be invalid.
Solution: Use the same message as is used in another place in the code
when a volume is invalid - "No such device" .
[End of TCO 6.2213]
TCO-number: 6.2214
Written-by: TGRADY Creation-date: 31-Aug-84 14:15:43
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: JSYSA MEXEC
Problem:
CRJBX1 errors from CRJOB, and wrong job number returned from CRJOB for
created job. Probably random jobs being logged out too.
Diagnosis:
CRJONJ and the JOBONT table aren't always handled properly. CRJONJ should
contain the job numbers of the creating job and the created job, in the
left and right halves respectively. JOBONT should always contain the
global job number of the creating job for jobs in the table. The JOBONT
table is indexed using the local job index of the inferior jobs.
Solution:
Fix up JSYSA and MEXEC to always use the contents of CRJONJ as a global job
number, as well as the JOBONT table. Also, be sure to use only global job
numbers in calls to the LGOUT% JSYS in SJLGO1 (in MEXEC).
[End of TCO 6.2214]
TCO-number: 6.2215
Written-by: PRATT Creation-date: 5-Sep-84 12:53:59
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: COMND
Related-QAR: 706115
Problem:
"DIR -<esc>" fails even though there are matching files
Diagnosis:
Too make a long story short, COMND is losing the state of the CM%ESC
flag because of the line continuation code.
Solution:
Preserve the flags ac over the call which clears the flag after checking
the dash.
[End of TCO 6.2215]
TCO-number: 6.2216
Written-by: TGRADY Creation-date: 7-Sep-84 13:22:13
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: ENQ
Problem:
ENQC% JSYS functions 1 and 2 (Dump ENQ database, and set quota) won't
work if the user specifies a -1 for a job number.
Diagnosis:
Previous edit to implement global job numbers broke the way the ENQOK
routine checks for a -1. It gets the value using a HRRZ instruction,
but tests for a fullword -1.
Solution:
Change a CAMN T1,[-1] to a CAIN T1,-1. Another milestone for software
reliability.
[End of TCO 6.2216]
TCO-number: 6.2217
Written-by: LOMARTIRE Creation-date: 12-Sep-84 08:36:07
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: JSYSA
Related-SPR: 18546
Problem: When creating a new file using PMAP% to map from process pages to file
pages, PMAP% will not create a long file unless the PM%WR bit is set. It will
create short files without this bit set.
Diagnosis: The routine PMAP0 calls CPMAPX in order to convert the destination
ID (in this case a JFN) to OFN,,page number. The conversion will be successful
for the first 512 pages since a new page table is not needed. However, on the
513th page, a new page table is needed. If PM%WR is not specified in the
access bits, then it is assumed that no new page tables should be created. So,
the conversion will fail with a LNGFX1 error (Page table does not exist and
file is not open for write).
Solution: The PM%WR access bit was never intended to be used in the case of
process to file PMAP. However, PMAP0 does not know this. Since, for the first
512 pages, the page table exists, the user is granted PM%WT automatically.
Therefore, in the case of the destination being a file, add PM%WT to whatever
the user has specified as access bits (except in the delete case where creating
of new sections is illegal).
[End of TCO 6.2217]
TCO-number: 6.2219
Written-by: MOSER Creation-date: 13-Sep-84 16:10:18
Edited-by: MOSER Edit-date: 13-Sep-84 16:54:10
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: GETSAV
Problem: SSAVE saves all PDVAs in the .EXE file without regard to the
range of saved pages. These PDVA can be propigated by PA1050 and LINK.
Diagnosis: SSAVE coded that way.
Solution: Only write PDVAs within the range of the pages saved to the .EXE
file.
[End of TCO 6.2219]
TCO-number: 6.2220
Written-by: MOSER Creation-date: 14-Sep-84 16:28:17
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: GETSAV
Problem: GET of a file which contains -1 in the first word will crash the
system. Often with CRKBUG but this depends on the file. The dump has a TOTALLY
trashed PSB. The ever popular locations such as MPP, TRAPSK, CRSKED etc are
totally destroyed.
Diagnosis: If the first word of an EXE file is -1 the monitor does a get of a
"zero compressed" file. Basically this file consists of IOWDs ie. -COUNT,,ADDR-1
The monitor does a SIN to read the data into a window page in the PSB but in
this case the count of the SIN becomes 0. SIN uses 0 to mean "read until byte
matching AC4". The monitor checks for a "too large" SIN but it compares
positive and negative numbers in the wrong way.
The SIN usually doesn't terminate (AC4 has garbage because GET doesn't know
that it is doing the wrong kind of SIN) until trashing the entire PSB
with stuff from the .EXE file and finalle the SIN goes ECSKED after
CRSKED is trashed.
Solution: Check for an impossible count for the SIN, in this case anything
non negative is bad and give a GETX1 error.
[End of TCO 6.2220]
TCO-number: 6.2221
Written-by: MOSER Creation-date: 14-Sep-84 16:32:44
Edited-by: MOSER Edit-date: 14-Sep-84 16:33:41
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: FORK
Problem: PDVOP% creates pages when the PDVA points to a
non-existent page.
Diagnosis:
Solution: Check page for existance. Return ARGX06 (Invalid page number)
if page does not exist.
[End of TCO 6.2221]
TCO-number: 6.2223
Written-by: TBOYLE Creation-date: 20-Sep-84 13:24:17
Edited-by: TBOYLE Edit-date: 20-Sep-84 13:34:12
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: NSPSRV
Problem:
Jobs that accumulate a working set larger than available
memory tend to hang.
Diagnosis:
When the working set becomes larger than available memory, the
only time it will run is when its priority is such that it is the
first person put into the balance set by AJBALS. The problem is that
NSPTSK is a JP%SYS fork which is always higher priority. This would
not be a problem because it does not always run, however, it is
artificially kept in the balance set because it dismisses with hold
time of 1.5 sec, and always wakes up once a second. It therefore is
always in the balance set and always the first in the list.
Solution:
There is no good reason for NSPTSK to dismiss with a 1.5
second hold time, especially in this situation. Change it to dismiss
without any hold time. NSPTSK doesn't do as much as it used to on each
wakeup anmore anyway.
[End of TCO 6.2223]
TCO-number: 6.2225
Written-by: GRANT Creation-date: 24-Sep-84 16:56:01
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: MEXEC
Problem: TOPS-20 uses too much paper.
Diagnosis: BUGxxx uses 6 lines of paper; this is wasteful. Also, during
stand alone debugging, this is very time consuming.
Solution: As a first step toward saving trees, create the location SAVTRE
and have it govern the way in which BUGxxx are output. If SAVTRE is non-zero,
BUGxxx are output on a single line and the CTY is assumed to be an LA120;
the default will be the old (and wasteful) format.
[End of TCO 6.2225]
TCO-number: 6.2226
Written-by: HAUDEL Creation-date: 25-Sep-84 11:56:00
Edited-by: HAUDEL Edit-date: 25-Sep-84 11:57:39
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PHYKLP
Problem: Incorrect message length calculation for messages send
in the "high density" format.
Diagnosis: Code does not get the status word (.PKSTS)
for the check of the formatting mode.
Solution: Add one line of code that gets te status word.
[End of TCO 6.2226]
TCO-number: 6.2232
Written-by: MCLEAN Creation-date: 30-Sep-84 20:03:59
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PHYSIO
Problem: Serial numbers printed on problem messages are strange.
Diagnosis: Some clown in Rel 5 changed PNUM without looking at all
the callers!
Solution: PNUM is called by UNIOCT AND UNIDEC to print a single number.
The problem is that PNUM assumes that the number in T1 is what is to be
printed and it also assumes that the number is OCTAL. UNIDEC has broken
up the number into multiple Decimal Digits and passes each to
PNUM to be printed. You now have any 8's or 9's printed as 11 or 12
so a serial number of 980 will be printed as 12110. I have added
a new entry to PNUM call DNUM for use by UNIDEC/UNIOCT.
[End of TCO 6.2232]
TCO-number: 6.2238
Written-by: TBOYLE Creation-date: 8-Oct-84 02:12:50
Edited-by: TBOYLE Edit-date: 8-Oct-84 04:35:50
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: TTYSRV TTPHDV
Related-SPR: 18368
Problem:
MTOPR JSYS function .MORSP (and hence INFORMATION TERMINAL
command) for a non-autobaud remote line shows the same speed even when
speed has been changed using the TERMINAL SPEED command, or MTOPR JSYS
function.
Diagnosis:
The Monitor enforces the restoring of the speed of a non-autobaud
remote line to its original setting. It uses TTSPWD for this and
hence makes it difficult to find out its real speed if the speed has
been changed.
Solution:
Rewrite the TTSSP2 routine that handles the setting of line
speeds. TTSPWD will be used to contain the current line speed at all
times. A new cell, TTSVPD, in the dynamic data block will be used to
hold the initialization speed. TTYASO will setup this cell when
calling TTSETF for a LONG block. TTYDED will restore TTSPWD for a
non-autobaud remote line when it is deassigned. Include logic in
TTSSP2 to handle the various cases of setting TTSPWD and TTSVPD
properly. Several cases for handling state transitions (remote and
autobaud) for lines have been corrected.
[End of TCO 6.2238]
TCO-number: 6.2239
Written-by: PAETZOLD Creation-date: 8-Oct-84 13:26:57
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: monitor
Routines-affected: anpcfs
Problem:
Address space in DECNET/ARPANET Monitor.
Diagnosis:
Solution:
Turn off card punches and plotters.
[End of TCO 6.2239]
TCO-number: 6.2240
Written-by: TBOYLE Creation-date: 10-Oct-84 04:43:26
Edited-by: TBOYLE Edit-date: 10-Oct-84 04:47:17
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: IO
Related-QAR: 706228
Problem:
If you do a SOUT% to memory and the destination byte pointer
is a 7-bit OWGBP you don't get the normal terminating null after the
byte string. It works to local byte pointers.
Diagnosis:
APPNUL checks to see if we are dealing with an ASCII byte pointer
to see if a null should be appended. The was not taught to expect the case
of a 7-bit (ASCII) OWGBP.
Solution:
Now it does.
[End of TCO 6.2240]
TCO-number: 6.2241
Written-by: GLINDELL Creation-date: 10-Oct-84 15:16:04
Edited-by: GLINDELL Edit-date: 11-Oct-84 09:57:18
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: SCHED
Problem: Spurious KEEP ALIVE CEASED by KFORK jsys.
Diagnosis: The scheduler is entered at HLTFK1 near the very end of
a KFORK. The last parts of a fork are cleaned up by the scheduler.
This includes deletion of the UPT. However, the scheduler doesnt
set its own UPT until a few instructions later, and in between comes
fork garbage collection which scans CST's and may take a long time.
During this time the monitor is running witout a valid UPT, and
therefore cannot take page faults. If any interrupt level or any
hardware page fault references the UPT in this window, a page fault
loop will occur and KEEP ALIVE CEASED.
Solution: Move the call to SETPSK to set the scheduler UPT to before
the deletion of the user UPT, so that there will be no window.
[End of TCO 6.2241]
TCO-number: 6.2244
Written-by: TBOYLE Creation-date: 12-Oct-84 05:33:34
Edited-by: TBOYLE Edit-date: 12-Oct-84 06:04:46
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: JSYSF
Related-QAR: 706222
Problem:
The WILD% jsys does not work when one of the arguments supplied is an
indexed byte pointer, such as those created for pointers to STKVAR's
or TRVAR's. Anybody using POINT 7,FOOBAR where FOOBAR is a STKVAR or
TRVAR will produce an indexed bytepointer
Diagnosis:
The code at .WILD(JSYSF) which fetches bytes from the user address space
uses the wrong type of PXCT. XCTBMU (XCT 1,) is used instead of XCTBU
(XCT 3,). The result of using this incorrect PXCT is that the monitor
ACs are used during the effective address calculation.
Although we do not support indexed byte-pointers, the fact is that
there are a great many JSYSs that use XCTBU and the result is that
indexed bytepointer arguments work fine. WILD% is one of the few where
it fails. In fact, this QAR was the result of confusion resulting from
A STCMP% JSYS working, and WILD% on string compare failing.
Solution:
At labels WLDCH1 and WLDCH2 replace the XCTBMU's with XCTBU's.
[End of TCO 6.2244]
TCO-number: 6.2245
Written-by: MOSER Creation-date: 15-Oct-84 12:44:14
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: SCHED PAGEM PROLOG STG GLOBS
Problem: TOPS-20 is not responsive enough to interactive users. Most users are
forced to compete with compute bound processes for the CPU. Scheduler overhead
is too high. When the system is lightly loaded jobs may take too long to
execute.
Diagnosis: SCHED needs to be changed.
Solution: Rewrite SKDJOB, NEWST and a few other routines in SCHED. A complete
description of changes can be found in R60SPC:SCHED-CHANGES.MEM.
[End of TCO 6.2245]
TCO-number: 6.2246
Written-by: HAUDEL Creation-date: 17-Oct-84 10:49:36
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: MEXEC
Related-QAR: 706242
Problem: MONNEJ bugchks from LOGTIM+11
Diagnosis: No ERJMP after BOUT
Solution: Add ERJMP .+1 after BOUT.
[End of TCO 6.2246]
TCO-number: 6.2247
Written-by: TGRADY Creation-date: 17-Oct-84 11:52:14
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: MEXEC
Problem:
ATACH% Jsys prints local job number instead of global job number on
user terminal.
Diagnosis:
Code wasn't changed to print the right number. No other side effects
except user confusion.
Solution:
Change code around ATACH7 and ATACH4 to put the global job number on
the terminal (in calls to DETMS1 and ATAMSG).
[End of TCO 6.2247]
TCO-number: 6.2249
Written-by: HAUDEL Creation-date: 17-Oct-84 13:44:56
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: MEXEC
Problem: MONNEJs
Diagnosis: No ERJMPs after some JSYSes
Solution: Add some ERJMPs.
[End of TCO 6.2249]
TCO-number: 6.2250
Written-by: HAUDEL Creation-date: 17-Oct-84 15:01:47
Edited-by: HAUDEL Edit-date: 17-Oct-84 15:02:49
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: MEXEC
Related-QAR: 706212
Problem: MONNEJ bugchks
Diagnosis: No ERJMP after a ODTIM%
Solution: Add an ERJMP after the ODTIM%
[End of TCO 6.2250]
TCO-number: 6.2251
Written-by: TBOYLE Creation-date: 17-Oct-84 15:18:26
Edited-by: TBOYLE Edit-date: 17-Oct-84 16:47:58
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: TTYSRV
Problem:
1. If terminal is XOFFed, terminal hangs permanently if program
is run to disable XON/XOFF.
2. If terminal is XOFFed, terminal and job hangs if logged out
remotely.
3. CTYSTK code will not be able to XON the CTY if it was XOFFed
4. etc, etc, lots of other cases.
Diagnosis:
RSX20F now controls action of XON and XOFF with regard to flow
control. This means that the input buffer code must take care not to
send messages to the front-end to fiddle with the XON/XOFF state. If
it did, there would be race conditions. To this end, a bit TTXFF (force)
was invented. Direct manipulation of the XON/XOFF state will not be
made unless this bit is set. This bit is not being set in several key
places where XON/XOFF needs to be overided. The cases are with STPAR
where we must restart the line if the XON/XOFF processing is being disabled.
Similarly we must overide at TTYDED and at J0TC60, (the CTYSTK code.)
Solution:
Invent a new routine TTXONF. This routine restarts a line
from a page stop or command stop and also sends the message to the
front-end if necessary. Use TTXONF in the proper places.
Manipulation of TTXFF was in error at TTCBF7 (flush buffers)
and the CTYSTK code should test for both cases of page-stop and
command-stop. "That is all."
[End of TCO 6.2251]
TCO-number: 6.2252
Written-by: LOMARTIRE Creation-date: 18-Oct-84 13:03:30
Edited-by: LOMARTIRE Edit-date: 24-Oct-84 16:28:18
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: APRSRV STG GLOBS
Related-TCO: 6.1769 6.1768
Problem: Release 6 does not continue after a power fail.
Diagnosis: One problem is that a KPALVH usually results first while the system
is looping waiting for the front end to indicate that the power is gone (via an
interrupt at location 70). Another problem is that PWRRST is not insured of
being in section 0. This will cause problems when IORST is called because
paging will be reset and the system will hang. A third problem is that
BUGxxx's are being performed while paging is off and this hangs the system.
The fourth problem is that SYSRST (which starts out in section 0 because it
also calls IORST) is still in section zero when it calls TTRSET. TTRSET will
try to reference the dynamic data blocks which are now in section 11. This
will result in a SKDPF1. TCOs 6.1768 and 6.1769 attempted to solve these
problems but were insufficient to solve the problem in 6.
Solution: First remove TCO 6.1769. TCO 6.1768 has already been removed.
Make the following changes to APRSRV:
1. Reduce the loop count at SCHPF0 from ^D10000000 to ^D5000000.
This is plenty long enough (well over a second).
2. XCT KEPALV at SCHPR2 before issuing SPWRFL BUGCHK. Also, set
a new word, SPWFFL, to -1 to indicate that the power fail
was spurious.
3. In PIAPR, set SPWFFL to zero when we get a power fail
interrupt.
Also, make the following changes to STG:
1. Add the word SPWFFL following PWRDWN.
2. In PWRRST: Remove the PWRRES BUGCHK and place this later on
in SYSRST. Also, if the power fail is not spurious, set
SPWFFL to 0. Turn on paging before issuing PWRFL BUGHLT.
Jump to section 0 upon entry to PWRRST. Turn on paging
before entering secondary protocol.
3. In SYSRST: If we are processing on behalf of a powerfail,
do not issue PWRRES BUGCHK if SPWFFL is -1. In this case,
the SPWRFL BUGCHK has already been issued. If SPWFFL is
not -1, issue PWRRES. Jump to section 1 once paging has
been turned back on. This will insure that SYSRST is in
section 0 only as long as it needs to be.
[End of TCO 6.2252]
TCO-number: 6.2254
Written-by: LEACHE Creation-date: 18-Oct-84 15:36:54
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: Monitor
Routines-affected: FREE STG PROLOG
Problem:
Debugging freespace problems is much easier with a history buffer.
Diagnosis:
As above.
Solution:
Add a history buffer for each of the 3 extended swappable freespace
pools.
[End of TCO 6.2254]
TCO-number: 6.2255
Written-by: GLINDELL Creation-date: 22-Oct-84 15:41:48
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: STG
Problem: MDDT stack is too short
Solution: Increase NDDTPG (number of pages for MDDT in PSB) from 2 to 3.
This will increase the PSB size with one page, that is swappable.
[End of TCO 6.2255]
TCO-number: 6.2256
Written-by: MOSER Creation-date: 22-Oct-84 17:18:11
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: MEXEC
Problem: TCO 6.2059 causes CRJOB caller to wait for the created job to
become attached before returning to the caller. This was to allow the error
code from the GET of the EXEC to be returned to the caller. The problem only
occurs when CJ%WTA is specified.
Diagnosis: As above.
Solution: Allow caller to continue before the GET of the EXEC if CJ%WTA is
specified.
[End of TCO 6.2256]
TCO-number: 6.2259
Written-by: LEACHE Creation-date: 24-Oct-84 18:56:54
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: Monitor
Routines-affected: FREE
Related-QAR: 706224
Problem: Swappable freespace manager does not protect itself completely
against returned blocks with bad blocksizes.
Diagnosis: As above
Solution: Verify that the block-length is reasonable before adding it
into the pool count.
[End of TCO 6.2259]
TCO-number: 6.2261
Written-by: LOMARTIRE Creation-date: 26-Oct-84 12:44:40
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: GTJFN
Related-SPR: 20339
Problem: If a logical name path has an inaccessible or unmounted disk
specified, the user will receive a STRX09 (?Prior structure mount required)
error. These directories should be bypassed and the correct error should be
GJFX24 (%File not found).
Diagnosis: This only occurs when the last definition in the logical name string
results in a STRX09 error. The code which expands the device does not know to
return GJFX24 in this case.
Solution: Have the code at DFDV0A return GJFX24 if the call to SETDEV to
expand the device field of the logical name fails.
[End of TCO 6.2261]
TCO-number: 6.2262
Written-by: DMCDANIEL Creation-date: 26-Oct-84 15:57:20
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: monsym LINEPR DTESRV JSYSF
Problem: Layered products got confused between old JS%DEV (3 bits) and new
JS%DEV (2 bits).
Solution: Make JS%DEV be 3 bits again and obsolete. Add JS%DVN (2 bits).
[End of TCO 6.2262]
TCO-number: 6.2263
Written-by: MOSER Creation-date: 26-Oct-84 21:51:20
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: APRSRV
Problem: There are still more problems with byte pointers.
HISTORY: Using a byte pointer which contains 77 in bits 0-5 is illegal. It
is illegal in that the monitor is told by the microcode that a UUO was trapped.
For the user this was no big deal we checked for opcode 0 (No not the real
opcode because the version 5 microcode gave us a 0) and blew the user away with
an illegal instruction trap.
The monitor case was tricky and KIMXCT was born. This routine tried to figure
out if the monitor was doing a byte instruction (including tracing the XCT
chain). If this was the case then KIMXCT tried to interrupt the user if it was
"safe" if it wasn't safe then we either did nothing or bughalted.
In release 6 there are 2 apparent bugs.
1. User illegal byte instructions are now NO-OPS
2. The monitor can loop forever (but not necessarily crash) given a bad
byte pointer in some Jsyses.
Diagnosis: The first problem is caused by a new "feature", the microcode
returns the true opcode of the failing byte instruction. The monitor believes
that this is a KA floating point instruction and does the wrong stuff.
The second problem is that KIMXCT can't deal with ERJMPs after byte instructions
this does the NO-OP case and loops forever in the Jsys code.
Solution: KIMXCT can be rewritten to always cause an error interrupt to be
ququed for the user without the NO-OP and BUGHLT case. Also we can check
for ERJMP instructions and take them.
The KA floating point code will chack opcodes more carefully and
return the correct error to the user.
[End of TCO 6.2263]
TCO-number: 6.2264
Written-by: SHTIL Creation-date: 29-Oct-84 14:09:47
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: TAPE PRSNAM PRSEXT
Related-SPR: 17640
Problem:
TOPS-20 does not successfully transfers files from an
ANSI-labelled tape written under RT11. The data from the tape is
transferred OK, but the filetypes are offen lost.
Diagnosis:
RT11 always writes 10 characters in the file identifier field of
the HDR1 label - a six character name, a dot and a three character
extention. It pads name and extention on the right with blanks if
necessary. When TOPS 20 reads the blanc, it ceases parsing the name. Thus,
if one has RNO.DOC, RNO.TXT, RNO.MAC etc. on a tape, all appear to be
called RNO..100.
Solution:
Change the parsing code in PRSNAM and PRSEXT in TAPE, by making
them skip padding blancs in the file name.
[End of TCO 6.2264]
TCO-number: 6.2265
Written-by: LEACHE Creation-date: 29-Oct-84 14:33:53
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: Monitor
Routines-affected: FREE
Problem: The swappable freespace manager is supposed to enforce minimum
block sizes, but fails to do so.
Diagnosis: This feature was not fully implemented.
Solution: Implement it.
[End of TCO 6.2265]
TCO-number: 6.2266
Written-by: PAETZOLD Creation-date: 30-Oct-84 09:40:01
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: IPIPIP
Problem:
None observed but code is wrong. Possible ILMNRFs etc...
Diagnosis:
Non immediate reference to error code SQX1 in IPIPIP.
Solution:
Make it a MOVEI.
[End of TCO 6.2266]
TCO-number: 6.2267
Written-by: PAETZOLD Creation-date: 30-Oct-84 10:14:24
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: monitor
Routines-affected: MEXEC
Problem:
Crashes from JOBCOF.
Diagnosis:
CX not getting saved.
Solution:
SAVE CX before ACSAV smashes it.
[End of TCO 6.2267]
TCO-number: 6.2268
Written-by: PAETZOLD Creation-date: 6-Nov-84 10:34:15
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: TTANDV
Problem:
ILMNRFs from CHKTVT.
Diagnosis:
bad arg check. original bbn bug.
Solution:
range check using nlines.
[End of TCO 6.2268]
TCO-number: 6.2269
Written-by: PAETZOLD Creation-date: 6-Nov-84 19:29:34
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: monitor
Routines-affected: params
Problem:
INTNFB and INTWTB are 32. times too large.
Diagnosis:
NTWBWD calculation in PARAMS is wrong.
Solution:
The calculation is actually ok but needs angle brackets because NDG removes
them.
this was found by STU.
[End of TCO 6.2269]
TCO-number: 6.2270
Written-by: GRANT Creation-date: 7-Nov-84 10:33:36
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PHYKLP
Problem: Wrong decision made during KLIPA CRAM parity error processing.
Diagnosis: Routine CPEDON assumes T1 contains the latest CSR; it doesn't.
Solution: In CPEDON, get the latest CSR from the CDB.
[End of TCO 6.2270]
TCO-number: 6.2271
Written-by: MOSER Creation-date: 7-Nov-84 12:49:13
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PHYMVR PHYSIO GLOBS MSCPAR
Problem: There are potentially more combinations of Channel, Kontroller and
Unit number than can be minimally encoded in 12 bits. The MSCP server cannot
uniquely identify all possible units. It is possible to encode all possible
combinations of connected CKUs since this is about much less than all potential
CKUs.
Diagnosis: As above.
Solution: Invent "relative" unit numbering. Assign unit relative unit numbers
based on the position of the UDB address in the KDBUDB table. This cuts the
potential number of RP20s from 256 to 16 and allows encoding CKU in 12
bits. It will no longer be possible to translate between server unit number
and true CKU for disks with Kontrollers. Relative unit numbering is implemented
through ADVCKS, CHKCKS and FNDCKS routines in PHYSIO the old ADVCKU, CHKCKU and
FNDCKU still operate on "absolute" unit numbers.
[End of TCO 6.2271]
TCO-number: 6.2272
Written-by: GRANT Creation-date: 7-Nov-84 13:28:58
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: phyklp
Related-QAR: 706258
Problem: Strange things happen after KLPHNG BUGINF.
Diagnosis: Not enough clean up when we declare he port hung.
Solution: Clean response queue and all command queues before reloading the
port.
[End of TCO 6.2272]
TCO-number: 6.2274
Written-by: PALMIERI Creation-date: 7-Nov-84 15:57:58
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: Yes
Program: MONITOR
Problem:
[End of TCO 6.2274]
TCO-number: 6.2277
Written-by: GRANT Creation-date: 8-Nov-84 12:28:42
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: NSPSRV
Problem: Extraneous instructions in critical code paths.
Diagnosis: Code was added to facilitate non-PC section freespace.
Solution: This is not going to be used in this release, so remove the code.
[End of TCO 6.2277]
TCO-number: 6.2278
Written-by: GRANT Creation-date: 9-Nov-84 13:23:15
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: MEXEC
Problem: Extraneous characters in BUGxxx message.
Diagnosis: Addition of SAVTRE got things out of order for the normal output.
Solution: Remove outputting of quotes from routine LOGBUG and put it in
routine LOGNAM.
[End of TCO 6.2278]
TCO-number: 6.2279
Written-by: SHTIL Creation-date: 13-Nov-84 14:53:06
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: monitor
Routines-affected: TAPE prsnam
Related-SPR: 17640
Problem:
TOPS-20 does not successfully transfer files from an ANSI-labelled
tape written under RT11. The data from the tape is transferred OK, but the
filetypes are often lost.
Diagnosis:
RT11 always writes 10 characters in the filename field of the HDR1
label- a six-character name, a dot, and a three-characters extention. It
pads name and extention on the right with blancs if necessary. When
TOPS-20 reads a blanc, it ceases parsing the name.
Solution:
Change the PRSNAM ROUTINE in TAPE so it changed a blanc by zero in
the filename field.
[End of TCO 6.2279]
TCO-number: 6.2280
Written-by: DMCDANIEL Creation-date: 14-Nov-84 15:51:56
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: MONSYM
Problem: Undefined global symbols for SNA.
Solution: Add new symbols QU%TAB, QU%NXL, QU%RCL.
[End of TCO 6.2280]
TCO-number: 6.2281
Written-by: DMCDANIEL Creation-date: 26-Nov-84 15:14:54
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: MONSYM
Problem: Need symbol .PVEXP for future release of some software.
Solution: Add symbol .PVEXP, value = 2, obsolete symbol .PVSTR.
[End of TCO 6.2281]
TCO-number: 6.2283
Written-by: SHTIL Creation-date: 7-Dec-84 11:08:34
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: monitor
Routines-affected: JSYSA
Related-TCO: 6.1265
Related-QAR: 706329
Problem: TCO 6.1265 was never installed.
Diagnosis:
Solution: Do it.
[End of TCO 6.2283]
TCO-number: 6.2284
Written-by: SHTIL Creation-date: 9-Jan-85 10:23:06
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: monitor
Routines-affected: PHYSIO
Related-SPR: 20127
Problem:
The monitor when trying to recognize a new (never before
used) tape will place an event log in the SYSTEM:ERROR.SYS file when
trying to read the HDRs. However, the error is marked with the volume ID
of the last tape that was mounted on the drive.
Diagnosis:
The UDBVID field is not zeroed after the tape has been
unloaded, and is used in the future when creating a SYSERR entry.
Solution:
Change LOGUNL in PHYSIO so it clears UDBVID.
[End of TCO 6.2284]
TCO-number: 6.2285
Written-by: SHTIL Creation-date: 10-Jan-85 09:08:15
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: monitor
Routines-affected: TAPE
Related-SPR: 20191
Problem:
When copying files having same name and extention, but with
differents generation numbers from an ANSI-labelled tape, every second
file on the tape is skipped. Especially, the problem exists when one
issues the command COPY TAP:*.* .
Diagnosis:
If the file has exectly the same name as the previous one, then
TAPE assumes that it is on the previous file and skips ahead to the next
file.
Solution:
Check the tape position before skipping the file. Skip only if it
is the same as the last position.
[End of TCO 6.2285]
TCO-number: 6.2294
Written-by: PALMIERI Creation-date: 12-Apr-85 13:47:45
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: Monitor
Routines-affected: NSPSRV
Problem: 36 bit byte does not work correctly when pushing data to a 6.1 system
Diagnosis: NSPSRV expects that the other TOPS20 system will use a byte size
of 252 which is 28 modulo 9 when in 36 bit byte mode. This is not true
when connected to a 6.1 system. A 6.1 system will vote 559 and a
6.0 system will vote 252 (4 less than the usual 256). NSPSRV takes
the minimum of 256 (its default blocksize) or the default of the
other system. If the other system is 5.1/6.0 it votes 252 and that
is used. If it is 6.1 then 256 is chosen. When in 36 bit byte mode
NSPSRV must use a blocksize that is modulo 9. 256 is not. This
results in corrupted data over the wire.
Solution: Have NSPSRV check the byte size and default to 252. It already
does this but does not rememeber it. Have it remember 252 in the
logical link block and use it intead of 256.
[End of TCO 6.2294]
TCO-number: 6.1.1000
Written-by: MCINTEE Creation-date: 24-Feb-83 10:03:57
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Problem:
Diagnosis:
Solution:
[End of TCO 6.1.1000]
TCO-number: 6.1.1003
Written-by: GUNN Creation-date: 20-Jul-83 12:21:32
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: Yes
Program: MONITOR
Routines-affected: LLMOP STG MONSYM
Problem: Digital Network Architecture (DNA) Phase IV requires
minimum subset Low Level Maintenance OPeration (LLMOP) support
for Ethernet.
Diagnosis: Need to add code to TOPS-20 Monitor to implement
part of the LLMOP functions.
Solution: Add new module LLMOP and code in various other
modules to implement Ethernet Loopback Protocol Server,
Remote Console Protocol Server, and LLMOP% JSYS as interface
to Ethernet Loopback Requestor and Remote Console Requestor.
[End of TCO 6.1.1003]
TCO-number: 6.1.1004
Written-by: GLINDELL Creation-date: 28-Nov-83 11:15:44
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: SCJSYS MONSYM STG PROLOG GLOB
Problem:
There is a need for a way to set and read link parameters and quotas
for a logical link.
Diagnosis:
Not needed before.
Solution:
Add 4 new MTOPR functions: set/read link parameters, and set/read link
quotas.
[End of TCO 6.1.1004]
TCO-number: 6.1.1007
Written-by: GLINDELL Creation-date: 12-Jun-84 16:37:36
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: scjsys
Problem: DECnet X25 object numbers do not have names defined
Diagnosis: Not needed before
Solution: Add names/object numbers X25GAT/31, X29SRV/34 and X25HST/36
[End of TCO 6.1.1007]
TCO-number: 6.1.1008
Written-by: GLINDELL Creation-date: 3-Jul-84 13:46:57
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: jntman
Problem:
DECnet startup is slow when there are many nodes to define. Engineering
net currently has more than 2000 nodes defined.
Diagnosis:
Solution:
Add a new function to the NODE% jsys that allows a table of node names
and numbers to be inserted into the monitor. The SETNOD program will use
this function.
[End of TCO 6.1.1008]
TCO-number: 6.1.1009
Written-by: PAETZOLD Creation-date: 18-Jul-84 19:14:10
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: monitor
Routines-affected: PHYSIO PHYH2 STG pagutl
Problem: :
Low on address space. However need to support 4 meg of memory.
Diagnosis: :
Need to move more stuff out of PC section.
Solution: :
Move CST5.
[End of TCO 6.1.1009]
TCO-number: 6.1.1010
Written-by: PRATT Creation-date: 30-Jul-84 11:17:48
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: STG GLOBS IPNIDV ANAUNV IPIPIP IMPDV
IPFREE MNETDV MONSYM PARAMS TTYSRV TTANDV
TTPHDV
Problem: Can't transmit TCP/IP over Ethernet
Diagnosis: No code
Solution: Write the code
In addition, changes are needed to TTYSRV, and TTANDV
so that TTANDV can assemble independently of TTYSRV.
[End of TCO 6.1.1010]
TCO-number: 6.1.1011
Written-by: GROSSMAN Creation-date: 17-Aug-84 20:22:49
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: Yes
Program: MONITOR
Routines-affected: MONSYM STG
Problem: User's can't do Ethernet functions directly.
Diagnosis: No interface.
Solution: Add the NI% JSYS. The functions come later.
[End of TCO 6.1.1011]
TCO-number: 6.1.1021
Written-by: GLINDELL Creation-date: 10-Oct-84 16:03:40
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: APRSRV globs JSYSA LDINIT MEXEC PAGEM
pagutl PROLOG STG
Problem: Merge 6.1 address space changes.
[End of TCO 6.1.1021]
TCO-number: 6.1.1022
Written-by: PRATT Creation-date: 12-Oct-84 06:49:46
Edited-by: PRATT Edit-date: 25-Oct-84 13:51:36
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: JSYSA TTYSRV LATSRV TTANDV TTPHDV MONSYM
Problem:
There is no jsys which provides a means for finding out
the originating node for a given job coming into the 20
from a network.
Diagnosis: No code
Solution:
Add a new jsys call NTINF% which will be a generic network
information jsys. The new standard jsys calling sequence
will be used for passing arguments.
Given the terminal number, job #, or -1 (for self), function
.NWRRH will return the remote hostname for the job.
[End of TCO 6.1.1022]
TCO-number: 6.1.1024
Written-by: PAETZOLD Creation-date: 17-Oct-84 20:34:25
Edited-by: PAETZOLD Edit-date: 17-Oct-84 21:31:06
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: monitor
Routines-affected: MNETDV
Problem:
No way to return list of Internet addresses for the system.
Diagnosis:
Oversight.
Solution:
Add function .GTHLA to the GTHST% JSYS. Calling sequence (simliar to
conventions for this JSYS) is:
1/ .GTHLA
3/ Destination Address
4/ Count of items to return
Non skip return indicates error (ARGX24 only possible)
skip return indicates success. T4 contains count of items returned.
[End of TCO 6.1.1024]
TCO-number: 6.1.1026
Written-by: PRATT Creation-date: 20-Oct-84 17:55:06
Edited-by: PRATT Edit-date: 22-Oct-84 12:37:12
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: COMND
Related-QAR: 706037
Problem:
We have a way of retrieving the last command if it had an error
but have no way to retrieve it if that command completed sucessfully.
Diagnosis: No code
Solution: Add the code which allows ^H to retrieve the last
command without the confirmation character.
[End of TCO 6.1.1026]
TCO-number: 6.1.1030
Written-by: PRATT Creation-date: 1-Nov-84 14:14:57
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: ANAUNV STG GLOBS MNETDV IPIPIP
Problem: No way to run TCP/IP over the CI
Diagnosis: No code
Solution:
Create a new module called IPCIDV which interfaces
Multinet to SCA.
Change MNETDV so that it accepts an IPCI device
Change ANAUNV to build an NCT for IPCI
Change IPIPIP to call CIPSRV from the Internet fork
Change STG to define storage for IPCIDV
[End of TCO 6.1.1030]
TCO-number: 6.1.1032
Written-by: PRATT Creation-date: 5-Nov-84 16:30:19
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PROLOG STG GLOBS TTYSRV TTPHDV TTANDV
TTYDEF
Problem:
TTYSRV/TTYDEF can't be compiled in the normal M61: area
for Arpanet monitors or any other monitor which would turn
off LAT, or CTERM.
Also, we still have lots of references to line types which
don't exist, such as the DZ, DC, and RP line types.
Diagnosis:
TTYDEF.MAC contains conditonal assembly for Arpanet, LAT, CTERM
and NRT. TTYSRV uses TTYDEF.UNV to find out which line types
to assemble into the TDCALL's and other things. What results is a
TTYSRV.REL which may or may not have any one of the particular
line types turned on even though the monitor is built with the
corresonding device dependent code. BADTTY buglhts usually result.
Further complications can occur when assembling the device
dependent modules with an unknown TTYDEF.UNV.
Solution:
Remove traces of the DC, DZ, and RP line types and the
KCFLG conditional code. Save the code for historical reasons
in a module called TTDZKC.
Update the line type values in PROLOG
Change the names of some local routines within TTYSRV which the
NRT and FE code references because they are already globally
defined elsewhere in the monitor.
Remove the TDCALL macros from TTYDEF and rewrite them so they
always assemble the device specific code. Dummy symbols will
be defined within STG if the device specific code is not loaded.
Move some storage that was defined within TTYSRV to STG
Move the FE line code to a module called RSXSRV.MAC
Move the NRT code to a module called NRTSRV.MAC
Make TTANDV.MAC become TVTSRV.MAC
Make a bunch of symbols global.
Add the LOADMODULES for the new device specific modules
Turn on the device specific code based on the global
flags used for each network or device.
[End of TCO 6.1.1032]
TCO-number: 6.1.1033
Written-by: GLINDELL Creation-date: 6-Nov-84 17:10:38
Edited-by: GLINDELL Edit-date: 6-Nov-84 17:20:17
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: Yes
Program: MONITOR
Routines-affected: sclink
Problem: In a large network, there will be a lot of 'node online'
and 'node offline' messages. What the operator is probably interested
in seeing is if any nodes go offline that people have open links to.
Diagnosis:
Solution: Remove the 'node online' and 'node offline' code from GALAXY.
Make SCLINK generate 'link broken' messages.
When SCLINK discovers that a user link is broken, the node in question
will be added to an offline table. Every 10 seconds the table will be
checked, and an operator message will be generated if the table was
non-empty. The message format will be (approximately)
15:22:03 -- Message from monitor --
User links to the following DECnet nodes were broken:
KL2102 GIDNEY CLOYD
If there are more than 5 nodes, only the first 5 will be typed out followed
by 'and more'.
The operator will be able to suppress typeout of these messages by
DISABLE OUTPUT-DISPLAY (OF) DECNET-LINK-MESSAGES
[End of TCO 6.1.1033]
TCO-number: 6.1.1035
Written-by: PALMIERI Creation-date: 7-Nov-84 15:20:44
Edited-by: PALMIERI Edit-date: 7-Nov-84 16:11:28
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: ROUTER DNADLL D36COM SCLINK JNTMAN D36PAR
Problem: Can't send buffers larger than 576 on the Ethernet or the CI.
Diagnosis: No code
Solution: Add code to select a receive blocksize based on the circuit
type. Create DECnet buffers that are as large as the largest receive
blocksize. The default size is 576 bytes and a larger or smaller
blocksize may be selected in CONFIG.CMD. Provide a routine for the
session control to determine the largest blocksize that it can use on
transmit for a given logical link. Large buffers can only be used to
adjacent nodes which support large blocksizes. If large buffers are
in use over a circuit and the circuit fails another path to the
adjacent node may be selected. If the new circuit has a smaller
blocksize than the previous the link will be aborted.
[End of TCO 6.1.1035]
TCO-number: 6.1.1036
Written-by: PAETZOLD Creation-date: 7-Nov-84 18:33:24
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PROLOG
Problem:
XNENT and XRENT need to be able to define global symbols.
Diagnosis:
They do not do this now.
Solution:
Add an optional argument to the macro. If it is set to a non null string
("G" is recommended) then make the symbol internal.
[End of TCO 6.1.1036]
TCO-number: 6.1.1037
Written-by: PAETZOLD Creation-date: 9-Nov-84 11:13:28
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PROLOG
Problem:
No easy way to call into msec1 from xcdsec.
Diagnosis:
Solution:
add a new macro called callx which is just like xcall except that it does
not do a EA.ENT.
[End of TCO 6.1.1037]
TCO-number: 6.1.1038
Written-by: GROSSMAN Creation-date: 9-Nov-84 13:02:56
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: STG
Problem: Too much scheduler overhead
Diagnosis: LV8CHK does a CALL R 50 times a second.
Solution: Remove the CALL R in LV8CHK. Actually, it is really a CALL NISCH.
Since PHYKNI does not need a scheduler level entry point, NISCH was redefined
to be R.
[End of TCO 6.1.1038]
TCO-number: 6.1.1039
Written-by: PAETZOLD Creation-date: 9-Nov-84 18:17:12
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: monitor
Routines-affected: SCHED
Problem:
MRETN to monitor context from XCDSEC causes previous caller ACs to not be
restored correctly.
Diagnosis:
MRETN is running in XCDSEC also (in this case). Microcode problem causes
the BLT to restore ACs to fail.
Solution:
Force monitor into section one at MRETN1.
[End of TCO 6.1.1039]
TCO-number: 6.1.1040
Written-by: PRATT Creation-date: 9-Nov-84 18:30:50
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: CTHSRV
Problem:
Setting the pause/unpause characters on a system you are
CTERM'd, can generate a confusing message from the cterm-server
and also mess up the echoing of those characters.
Diagnosis:
There were actually a few problems:
The CTHPPC routine sends a message to tell the host to
change it's local echoing for the pause/unpause characters.
After entering the routine, by mistake, the code tries to save the
characters twice and unfortunately does it wrong both times.
The 1st time it is saved in the wrong AC, and the 2nd time
it picks up the characters out of a smashed AC.
This produced weird characters which were sent to the
cterm-server program on the other system and exercises
a bug there as well.
Solution:
Save the characters in the right AC before they are smashed.
[End of TCO 6.1.1040]
TCO-number: 6.1.1041
Written-by: PAETZOLD Creation-date: 11-Nov-84 11:39:33
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: IPIPIP IPFREE IPNIDV IPCIDV TCPTCP TCPCRC
TCPBBN TCPJFN IMPANX IMPDV MNETDV ANAUNV
TVTSRV STG
Problem:
Address space.
Diagnosis:
Not enough.
Solution:
Move ARPANET code to XCDSEC. Move almost all of it. Some of the TCOPR%
JSYS code remains in MSEC1, TVTSRV remains in MSEC1 but calls into XCDSEC.
This frees up 37 pages in MSEC1.
[End of TCO 6.1.1041]
TCO-number: 6.1.1045
Written-by: GROSSMAN Creation-date: 12-Nov-84 17:09:02
Edited-by: GROSSMAN Edit-date: 13-Nov-84 01:27:51
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: FORK JSYSA NIPAR NISRV MONSYM NIUSR
PHYKNI
Problem: No NI% JSYS code.
Diagnosis: Code not written.
Solution: Write the code.
Note that a new KNILDR is required. Also note that the new ERRMES.BIN
should be put up.
[End of TCO 6.1.1045]
TCO-number: 6.1.1046
Written-by: GROSSMAN Creation-date: 12-Nov-84 23:36:57
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: nisrv
Problem: Closing of an NISRV portal occasionally results in a KNIBER BUGHLT.
Diagnosis: Overly paranoid programmer. KNIBER (KNI Bad Error Return) happens
whenever PHYKNI gives an unexpected error return to NISRV.
Solution: There is no need for such paranoia, pass the error upwards and
let the caller deal with the problem (the problem is usually a memory
allocation failure).
[End of TCO 6.1.1046]
TCO-number: 6.1.1047
Written-by: GROSSMAN Creation-date: 13-Nov-84 00:00:42
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: phykni
Problem: Various and sundry fixes in preparation for NI% JSYS:
1) PHYKNI can now abort commands for a channel that isn't running. This
causes the command to be returned (via the callback mechanism) with the
error code UNCAB%. This means that a portal can now be closed even
though the channel is dead.
2) A mousetrap has been put in to help track down the spurious KNISTP's
that people have been seeing. This will cause a KNICRS (Can't Read
Station Info) BUGCHK to print out if PHYKNI is unable to queue up a
command to the port to see if it's alive.
3) KNISTP was fixed so that it will really stop the KLNI. This allows
KNILDR to dump and reload it. (Unfortunately, KNILDR has a bug which
currently prevents this from happening).
4) Fix PXCT bug in FIXBSD when dealing with user mode addresses.
5) Make sure that Receive Failure Bit mask is 0 if Receive Failure count
is 0.
6) Fix race in NISTP.
[End of TCO 6.1.1047]
TCO-number: 6.1.1048
Written-by: GROSSMAN Creation-date: 13-Nov-84 00:15:06
Edited-by: GROSSMAN Edit-date: 13-Nov-84 00:21:00
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: NIPAR
Problem: KLNI state symbols in the monitor do not correspond with NI%
state symbols in MONSYM.
Symbols aren't global.
TABENT macro cannot deal with arguments that expand to multiple lines of
macro.
Diagnosis:
Solution: Make all UNS.xx symbols in the monitor correspond with .NISxx
symbols in MONSYM.
Make all definitions in NIPAR be global to avoid confusion if values should
happen to change.
Rewrite TABENT and friends. Now you can generate a table with LOADs and
STORs as arguments.
[End of TCO 6.1.1048]
TCO-number: 6.1.1051
Written-by: GROSSMAN Creation-date: 13-Nov-84 16:48:19
Edited-by: GROSSMAN Edit-date: 13-Nov-84 16:51:15
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PHYKNI
Problem: Programs using NISRV can get hung if KNILDR never completes reload
of the KLNI.
Diagnosis:
Solution: Time out KNILDR. If KNILDR doesn't complete in 15. seconds, then
a KNIRTO BUGCHK will occur. We will also put the port in the "Can't Reload"
state, and all portals will be informed that the KLNI is now OFF.
[End of TCO 6.1.1051]
TCO-number: 6.1.1052
Written-by: GROSSMAN Creation-date: 13-Nov-84 22:55:33
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: APRSRV
Problem: EA.ENT much too slow.
Diagnosis: The routine $EAENT was written in the stone age of extended
addressing.
Solution: Take advantage of new inventions (like XJRST). This considerably
simplifies switching from section 0 to section 1.
[End of TCO 6.1.1052]
TCO-number: 6.1.1054
Written-by: GROSSMAN Creation-date: 15-Nov-84 14:06:27
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: MONSYM NIUSR
Problem: NI% JSYS symbols conflict with other symbols in the monitor.
Solution: Change prefix of Buffer Descriptor blocks from BD to BX. Change
prefix of NI% JSYS argument block from NI to EI.
Change a spec. Change 7 programs.
[End of TCO 6.1.1054]
TCO-number: 6.1.1055
Written-by: MELOHN Creation-date: 16-Nov-84 19:26:05
Edited-by: MELOHN Edit-date: 17-Nov-84 16:24:02
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: JSYSA SETSPD GLOB LATSRV
Problem: Need SETSPD command and corresponding SMON% to set default LAT state
at startup time.
Diagnosis: No Code.
Solution: Add new SMON function to set LAT initial startup state. Change SETSPD
to set this state (default is LAT ON). Users can set LAT state off, and then use
LCP commands (LATOP%) to set groups, IDs, etc, before turning LAT on. Most users
will ignore this command, and LAT will come by default, with LAT group 0
enabled.
[End of TCO 6.1.1055]
TCO-number: 6.1.1056
Written-by: PRATT Creation-date: 18-Nov-84 13:23:53
Edited-by: PRATT Edit-date: 18-Nov-84 13:30:27
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: COMND
Related-QAR: 706236
Problem:
COMND returns NPXAMB (ambiguous) when given a FDB list of
.CMSWI followed by any other function if the user types
"/<ESC>".
COMND should just beep and continue parsing.
Diagnosis:
CMAMBT gets called when an escape is seen and there is no data
in the atom buffer. It then checks for another FDB in the list
and if it finds one, attempts to parse using the new one. Since a
"/" was already typed the next FDB in the list will probably not
be able to parse causing the error return.
Solution:
Check to see if we have a prefix character. If so, do not
try to parse the next FDB, just beep and continue trying
to parse this field.
[End of TCO 6.1.1056]
TCO-number: 6.1.1059
Written-by: MELOHN Creation-date: 19-Nov-84 15:26:59
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: TTYSRV CTHSRV
Problem: Detaching a job from a CTERM terminal leaves the terminal in a
wierd state, where only the escape sequence and control C do anything.
Diagnosis: The TDCALL for detaching a CTERM terminal does a front end request
which doesn't do much for a non-front end terminal.
Solution: Change the TDCALL to work just like NRT and LAT terminals, which
don't do FE requests.
[End of TCO 6.1.1059]
TCO-number: 6.1.1061
Written-by: GROSSMAN Creation-date: 20-Nov-84 00:57:44
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PHYKNI
Problem: DECnet and LAT do not survive KLNI reloads.
Diagnosis: State mappings in PHYKNI are incorrect.
Solution: Rewrite SETSTA. Make it table driven.
[End of TCO 6.1.1061]
TCO-number: 6.1.1062
Written-by: HAUDEL Creation-date: 21-Nov-84 08:01:49
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PAGUTL
Problem: Monitor code moved to extended sections and the "keep"
bit is not set for machines that have the MCA25.
Diagnosis: No code to do so.
Solution: Add code. The "keep" bit will now be set for RSCOD,RSDAT,
RSVAR,XRCOD,and XRVAR. The CSTs will also have the "keep" bit set.
[End of TCO 6.1.1062]
TCO-number: 6.1.1064
Written-by: GROSSMAN Creation-date: 28-Nov-84 13:44:13
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: NISRV
Problem: NISRV is dependant upon D36COM.
Diagnosis: NISRV uses D36COMs memory manager.
Solution: Use the memory manager in FREE (ie: ASGRES/RELRES).
[End of TCO 6.1.1064]
TCO-number: 6.1.1067
Written-by: GROSSMAN Creation-date: 3-Dec-84 13:40:02
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: NITEST
Problem: NITEST uses DNGWDS.
Solution: Make it use ASGRES.
[End of TCO 6.1.1067]
TCO-number: 6.1.1072
Written-by: GROSSMAN Creation-date: 5-Dec-84 00:33:22
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: Yes
Program: MONITOR
Routines-affected: NISRV PHYKNI
Problem: 1) Unused code in NISRV.
2) Error responses not handled appropriately.
Solution: 1) Remove unused code.
2) Dispatch on various error types instead of using catchall KNISCE. We
now have:
KNIBLV (Halt) - Buffer length violation
KNIIEC (Halt) - Illegal error code
KNICCF (Chk) - Carrier check failed
KNICDF (Chk) - Collision detect check failed
KNIFTL (Chk) - Frame too long
KNIRFD (Chk) - Remote failure to defer
KNIFTS (Halt) - Frame too short
KNIDOV (Chk) - NIA buffer overrun
Some of these errors are also passed up to the user in the form of an NISRV
error code. Some errors that used to be reported via KNISCE now just get
passed up to the user (such as Queue length violations).
[End of TCO 6.1.1072]
TCO-number: 6.1.1074
Written-by: GUNN Creation-date: 6-Dec-84 14:58:47
Edited-by: GUNN Edit-date: 8-Jan-85 17:01:49
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: Yes Hardware-related: No
Program: MONITOR
Routines-affected: IPCF FREE
Related-SPR: 18886 20473
Problem: @RETRIEVE *.* command on directory with large number of files
(300+) may encounter random failures for some files. For example;
@RETRIEVE *.*
F001.DAT.1 [OK]
F002.DAT.1 [OK]
...
F213.DAT.1 [OK]
F214.DAT.1 Archive system request not completed
F215.DAT.1 [OK]
F216.DAT.1 Archive system request not completed
F217.DAT.1 Archive system request not completed
F218.DAT.1 [OK]
...
@
Diagnosis: The ARCF% JSYS function .ARRST sends an IPCF
packet to QUASAR for each file to be retrieved. The PID QUASAR uses to
receive its IPCF packets is not quota controlled. Any sender has the
potential to 'flood' QUASAR, especially under conditions where
QUASAR might not be able to receive and process its packets in a
timely fashion. It is possible under these conditions for all of the
IPCF free space to be used up temporarily until QUASAR receives the
packets and releases the space.
The routine ARCMSG in IPCF is responsible for sending packets
to QUASAR for the archive functions. It calls the common routine
MESTOR to send the packets. MESTOR can fail in two cases which are
potentially recoverable, if the receivers PID is over quota (IPCFX7),
or the call to ASGIPC fails to get free space for the packet.
Currently, ARCMSG doesn't return error information to its caller.
There is code that attempts to protect against over quota failures by
going OKINT and DISMS'ing until the receiver has gone back under
quota, but this code has the potential of leaving the caller NOINT.
Solution: Make ARCMSG return an error code in T1 on failure. Have
ARCMSG pass up the error code from ASGIPC or MESTOR failures. Add a
mechanism to RELIPC to flag when free space is again available and
have callers (particularly code at ARRFR in JSYSF) of ARCMSG go OKINT
and DISMS until the recoverable conditions have changed and try again.
[End of TCO 6.1.1074]
TCO-number: 6.1.1076
Written-by: MCCOLLUM Creation-date: 7-Dec-84 16:38:41
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: COMND
Problem:
MONNEJ bugchks
Diagnosis:
Missing ERJMPs after MTOPRs in COMND
Solution:
Add ERJMPs
[End of TCO 6.1.1076]
TCO-number: 6.1.1079
Written-by: PAETZOLD Creation-date: 11-Dec-84 13:13:27
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: monitor
Routines-affected: mnetdv
Problem:
ATNVT% referencing section 1 stuff from 6 without proper care.
Diagnosis:
EBD.
Solution:
Use an XJRST when referencing TVTJFN.
[End of TCO 6.1.1079]
TCO-number: 6.1.1080
Written-by: GROSSMAN Creation-date: 11-Dec-84 14:38:33
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: NIPAR
Problem: Bit masks returned by Read Channel Counters funtion of NISRV
are undefined.
Solution: Define the bits. They live in the fields CCRFM and CCSFM (receive
and send failure masks).
[End of TCO 6.1.1080]
TCO-number: 6.1.1081
Written-by: GROSSMAN Creation-date: 11-Dec-84 14:50:32
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: NISRV
Problem: If the .NICLO function of NISRV fails, the portal that was being
closed can no longer be used in any way (such as re-trying the .NICLO
function).
Diagnosis: When .NICLO closes a portal, it sets the "closing" flag for that
portal. This flag prevents people from doing anything with the portal while
it is being closed. Unfortunately, when an error occurred during a close,
the "closed" flag was not being reset, and therefore nobody could play with
the portal anymore.
The most common error that occurs during an close is a resource error.
Usually, this happens during system startup, or heavy Ethernet traffic.
Solution: Clear the "closing" flag when giving an error back to the user.
[End of TCO 6.1.1081]
TCO-number: 6.1.1082
Written-by: GROSSMAN Creation-date: 11-Dec-84 15:20:01
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: NIUSR
Problem: The NI% JSYS:
1) Buffer status is not being returned upon completion of xmits and rcvs.
2) ^C can't get out of a blocking receive.
3) Random user ?Ill mem refs from programs that use the NI% JSYS.
Diagnosis: 1) Oops
2) Wrong check in the receive complete and transmit complete scheduler tests.
3) User was putting a receive buffer on a copy on write page. The receive
buffer code lock the page down. The user then attempts to modify the page,
which causes the monitor to attempt to give the user his own copy of the
page. Unfortunately, the page is locked down (by NIUSR) and PAGEM refuses
to do the copy on write. This eventually turns into an ?Illegal write ref...
Solution: 1) Write the code.
2) Check FKPS1 instead of FKPS0 inside the scheduler test.
3) Attempt to write a byte into the user's receive buffer. If the page is
copy on write, he will get his own private writeable copy of the page and
all is well. If the page is not writeable, he will get an illegal write
reference trap of some sort. If the page is writeable, no problem.
[End of TCO 6.1.1082]
TCO-number: 6.1.1086
Written-by: GRANT Creation-date: 13-Dec-84 07:01:34
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: phyklp scampi
Problem: Poorly coordinated BUGxxx.
Diagnosis: SCA and CI-20 device driver don't handle the closing of a virual
circuit in the same manner when it comes to outputting stuff on
the CTY.
Solution: Remove SCACVC. Make SCATMO a BUGINF rather than a BUGCHK.
Create KLPCVC (closed virutal circuit). Change KLPNUP to KLPOVC
(opened virtual circuit).
Now, whenever TOPS-20 opens a virtual circuit you will get a KLPOVC
and whenever TOPS-20 closes a virutal circuit you will get a KLPCVC.
[End of TCO 6.1.1086]
TCO-number: 6.1.1087
Written-by: HAUDEL Creation-date: 13-Dec-84 10:09:26
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: MONSYM
Problem: DIAG% functions for the Reading and Writing of maintenance data
do not have any entries in MONSYM.
Diagnosis: Entries never added.
Solution: Add .DGWMD and .DGRMD to Monsym.
[End of TCO 6.1.1087]
TCO-number: 6.1.1088
Written-by: MELOHN Creation-date: 13-Dec-84 15:24:47
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: latsrv
Problem: If LAT-STATE is OFF in config file and user attempts to connect
to host before the first multicast message is sent out, system crashes with
SKDPF1.
Diagnosis: If a start message is recieved from a LAT server and the LAT
circuit state is off, routine HMSTRT calls LCLHLT to shut down the circuit.
Since no circuit yet exists, we get a SKDPF1.
Solution: Re-arrange the checks in HMSTRT so that we don't bother checking
any circuit related parameters if the circuit doesn't exist yet.
[End of TCO 6.1.1088]
TCO-number: 6.1.1089
Written-by: MELOHN Creation-date: 13-Dec-84 16:02:12
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: CTHSRV
Related-TCO: 6.1.1058
Problem: System crashes with ILMNRF before TCO 6.1.1058, and MCLNSK after.
Diagnosis:
(courtesy of Gunnar Lindell)
1. User is running on a CTERM line and does a jsys that will affect the
PSI system, for instance ATI or STIW.
2. Since the PSI system will be affected, the fork lock is acquired.
As a consequence, the job goes CRSKED.
3. TTYSRV is called by the jsys to process the function. TTYSRV gets
the terminal lock (LCKTTY). As a consequence, the job goes NOINT.
4. The connection with the remote host is broken some time after that
ULKTTY was called, and before (6).
5. TTYSRV calls CTHSRV to process the function (CTHSPS for instance).
The first thing CTHSRV does is to lock the CTERM database (LOKCDB).
6. LOKCDB will check if the link state is RUN. It wont be, since the
connection was broken. So LOKCDB will decide to 'blow the link away'.
It does this by calling MSGREL (in CTHSRV). MSGREL queues up a
'carrier off' PSI. It wont of course take effect yet, since the job
is still NOINT.
7. After calling MSGREL, LOKCD0 goes on to call ULKTTY, and this is
where the roof falls in. ULKTTY will do an OKINT, this will let
the carrier off interrupt in. That will trap to FLOGO1. There
a jsys entry is simulated by calling MCENTR. SInce we are still
CRSKED (from the fork lock) we bughlt MCLNSK!
Solution: Remove call to ULKTTY at LOKCD1. There should be no reason
to ever have to unlock the TDB on error, since the caller who locked
the TDB in the first place will unlock it as well. This also fixes the
case where if we fail for some reason to get the CDB, an ULKBAD BUGCHK
occurs, since we tried to unlock the TTLOK twice.
[End of TCO 6.1.1089]
TCO-number: 6.1.1090
Written-by: HAUDEL Creation-date: 17-Dec-84 08:40:19
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: SCSJSY SCHED MONSYM
Problem: Possible "race condition" errors in SCSJSY.MAC
Diagnosis: Code not written to handle such conditions.
Solution: Change code in SCSJSY, change the way SCSJSY code is
called from SCHED, and change/delete some error codes in MONSYM.
[End of TCO 6.1.1090]
TCO-number: 6.1.1091
Written-by: GRANT Creation-date: 17-Dec-84 10:19:41
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: phymsc STG globs
Problem: Too many CI-related BUGxxx.
Diagnosis: Many CI-related BUGxxx were created for debugging purposes but aren't
necessary during normal operation.
Solution: Create the cell CIBUGX; the default for its contents is zero. If
CIBUGX is non-zero you will get more CI-related BUGxxx.
[End of TCO 6.1.1091]
TCO-number: 6.1.1092
Written-by: TBOYLE Creation-date: 17-Dec-84 15:41:52
Edited-by: TBOYLE Edit-date: 18-Dec-84 12:13:14
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: MEXEC EXECSU TTYSRV
Problem:
Jobs lying around in LOGOUT or Not logged in EXEC jobs. This
happens on LAT, CTM, NRT and also FE lines.
Diagnosis:
Along the process of LOGOUT somebody usually does an unconditional
block like a DOBE in the EXEC's case after printing "Autologout" and a
call to TTDOBE in the hangup code.
We should not do this because the final rundown in LGOUT% JSYS
trys SOBE's for 15 seconds and the gives up so that LOGOUT can proceed.
Solution:
Remove DOBE in AUTOL6 and remove CALL TTDOBE in the TTHNGU code.
Move the CFOBF to be after the 15 seconds rundown so that FE lines
don't have the previous guys logout message hanging around in them.
[End of TCO 6.1.1092]
TCO-number: 6.1.1095
Written-by: HAUDEL Creation-date: 19-Dec-84 12:58:27
Edited-by: HAUDEL Edit-date: 19-Dec-84 13:04:16
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PHYSIO
Related-SPR: 20000
Problem:
I/O could fail to restart if the tape "rewind timer" mechanism
set the tape status to indicate BOT and there are IORBs queued
to the device via the UDBTWQ of the UDB.
Diagnosis:
The "rewind timer" mechanism did not include a way for this
to happen.
Solution:
Have the "rewind timer" code set US.OIR when it sets US.BOT.
[End of TCO 6.1.1095]
TCO-number: 6.1.1096
Written-by: LOMARTIRE Creation-date: 21-Dec-84 08:54:26
Edited-by: LOMARTIRE Edit-date: 21-Dec-84 08:55:43
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PHYKLP JSYSA MONSYM GLOBS CFSSRV
Problem: There is no way to obtain the names of the HSC nodes to which we have
open connections.
Diagnosis: No function to do this.
Solution: Add a function to the CNFIG% JSYS. This function, .CFHSC, will
return the node names of any HSCs to which we have an open VC. The argument
block returned is identical in format to the one returned by the .CFCND
function (return all CFS nodes).
[End of TCO 6.1.1096]
TCO-number: 6.1.1097
Written-by: GRANT Creation-date: 28-Dec-84 09:32:43
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PHYMVR SCAMPI GLOBS STG
Problem: It is difficult to debug in a multi-CPU configutation because various
CI-related timers go off and cause connections to close.
Diagnosis: There is no nice way of turning off these timers.
Solution: Create the cell CITIMR and make it non-0 if you are debugging and
want to stop on breakpoints without having the other node(s)
time you out.
[End of TCO 6.1.1097]
TCO-number: 6.1.1099
Written-by: GRANT Creation-date: 30-Dec-84 06:36:21
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PHYPAR
Problem: It is difficult to find the device unit number, given a CDB, KDB,
and UDB.
Diagnosis: The data structures are not always interpretted the same and the
definitions in PHYPAR don't provide much help.
Solution: Enhance definitions of UDBSLV and CDBUDB.
[End of TCO 6.1.1099]
TCO-number: 6.1.1100
Written-by: PAETZOLD Creation-date: 31-Dec-84 13:04:31
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: monitor
Routines-affected: ipcidv
Problem:
Low order octet of the local internet address defined for the internet
CI interface must agree with the CI node number. it is however easy to
do this wrong.
Diagnosis:
Solution:
in CIPRST generate a CIPBAD BUGINF if the address is wrong and do not
initialize the multinet interface.
[End of TCO 6.1.1100]
TCO-number: 6.1.1101
Written-by: PAETZOLD Creation-date: 1-Jan-85 13:53:09
Edited-by: PAETZOLD Edit-date: 2-Jan-85 11:20:39
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: monitor
Routines-affected: GTJFN
Problem:
Most JFN informational JSYSi (eg. DVCHR, JFNS) do not work with DSK*: JFNs.
Diagnosis:
GTJFN is overzealous is trimming free space blocks and is overtrimming
the device name block when DSK*: is used.
Solution:
Make STRDEV fix up FILOPT(JFN) to make sure enough space is reserved for
a full device name.
[End of TCO 6.1.1101]
TCO-number: 6.1.1108
Written-by: GRANT Creation-date: 4-Jan-85 08:08:58
Edited-by: GRANT Edit-date: 4-Jan-85 08:18:25
Edit-checked: Yes Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: phyklp STG globs
Related-QAR: 706372
Problem: If you have a broken CI-20 it may be impossible to boot your
system because you may always get a KLPNRL BUGHLT.
Diagnosis: If TOPS-20 decides to reload the port during startup (after its
initial attempt), a KLPNRL is pretty much guaranteed. There
needs to be a clean way to boot the system and have it ignore
the port so you can run SPEAR and find out what the problem is.
Solution: Create the cell NOKLIP. If it contains a non-0 value at system
startup, the port will be reset and then ignored by TOPS-20.
[End of TCO 6.1.1108]
TCO-number: 6.1.1109
Written-by: GROSSMAN Creation-date: 4-Jan-85 08:44:28
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: NISRV PHYKNI
Problem: 1) Disabling multicasts would hose the monitor over.
2) Promiscuous & Unknown modes of operation did not work.
3) NISRV too slow.
4) Unused code.
5) KNIRTO BUGCHKs
6) KLNI variables not be handled properly after a restart.
Solution: 1) Throw out the disable multicast code and start over.
3) Implement a memory cache for all memory required by transmits or receives.
When blocks on the cache aren't used for a minute or more, return them to
the resident free space pool.
4) Remove unused code.
5) KNIRTO timer was too small. Increase it from 15. to 30. seconds.
6) Implement a validity flag for each KLNI variable we maintain. When the
KLNI gets restarted, ensure that all valid variables get set in the KLNI.
In addition, add a cell called TOTINT which contains the cumulative run time
NISRV spends at interrupt level. This time is in the same format as that
returned by RDTIME.
[End of TCO 6.1.1109]
TCO-number: 6.1.1110
Written-by: LEACHE Creation-date: 4-Jan-85 13:51:52
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: Monitor
Routines-affected: STG
Problem:
(1) Symbols created in KDDT user mode get lost.
(2) Symbol-table growth in user mode causes the table
to cross a section boundary, causing section 36 to be
mapped.
Diagnosis:
(1) Symbol table pointers not being correctly managed by the
pre and post KDDT code in STG.
(2) Symbol table being BLT'ed into the low end of section 37
instead of the high end.
Solution:
(1) Manage the symbol table pointers correctly.
(2) Move the symbol table to the high end of section 37 while in
KDDT user mode.
[End of TCO 6.1.1110]
TCO-number: 6.1.1111
Written-by: MCCOLLUM Creation-date: 4-Jan-85 15:00:39
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: MEXEC
Problem:
Job 0 JFNs can be released by a fork other than the one that originally got it.
Diagnosis:
Solution:
Set bit GJ%ACC in the GTJFN call at USGOPN
[End of TCO 6.1.1111]
TCO-number: 6.1.1112
Written-by: MCCOLLUM Creation-date: 4-Jan-85 15:39:13
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: MEXEC
Problem:
GETAB% returns the local job index rather than the global job number
when an entry from the DEVUNT table is requested. Any program which
attempts to use this job number will get unexpected results.
Diagnosis:
GETAB% returns the value directly from the LH of DEVUNT and does not
convert it to a global job number first.
Solution:
If the LH of the DEVUNT entry is .GE. zero, call LCL2GL and return
the global job number to the user.
[End of TCO 6.1.1112]
TCO-number: 6.1.1113
Written-by: GROSSMAN Creation-date: 5-Jan-85 15:53:46
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: NISRV STG PHYKNI
Problem: NISRV wastes lots of paper by printing too many BUGxxxs.
Diagnosis: KNIFQE (Free Queue Empty), and KNIDMD/KNIDM1 are nice to have for
debugging purposes. However, they are not good for production situations.
Solution: Create a cell called NIBUGX that will enable the extraneous BUGxxxs
if it contains non-zero. It will default to 0.
In addition, move LOADMODULE of NITEST into STG, and make it's loading dependant
upon the DEBUG conditional.
[End of TCO 6.1.1113]
TCO-number: 6.1.1114
Written-by: GRANT Creation-date: 6-Jan-85 20:03:51
Edited-by: GRANT Edit-date: 7-Jan-85 08:16:55
Edit-checked: Yes Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: STG params
Related-QAR: 706369
Problem: SAVTRE facility noreadily accessible to non-source site.
Diagnosis: Must poke with DDT to turn it on.
Solution: Create symbol SAVTRF and define it as an NDG in PARAMS. This way
you can override it with your PARAM0.
[End of TCO 6.1.1114]
TCO-number: 6.1.1115
Written-by: HAUDEL Creation-date: 7-Jan-85 08:29:18
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: MEXEC
Related-QAR: 706387
Problem: MONNEJ's when job logs out.
Diagnosis: No ERJMP after some JSYSes in the Monitor.
Solution: Add the ERJMPS.
[End of TCO 6.1.1115]
TCO-number: 6.1.1116
Written-by: GRANT Creation-date: 7-Jan-85 08:31:03
Edited-by: GRANT Edit-date: 7-Jan-85 09:03:06
Edit-checked: Yes Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: mstr PHYSIO
Related-QAR: 706408
Problem: OPR>SHOW STATUS DISK incorrectly claims a disk is dual-ported
to another KL when the other port is actually the front end.
Diagnosis: MSTR% returns incorrect MS%2PT bit value. When the front end
started sending us its disk configuration packet which causes the U1.FED
bit to get set in the UDB, the MSTR% support routines were never updated.
Solution: In PHYSIO's GETSTR routine, add the check for U1.FED and don't
return MS%2PT if it is on. Also, in MSTR, eliminate the check for the disk
being part of PS:; it's not longer needed.
Note: Although not part of this QAR's problem, we need to check for
don't-care disk, too.
[End of TCO 6.1.1116]
TCO-number: 6.1.1118
Written-by: MCCOLLUM Creation-date: 7-Jan-85 16:22:37
Edited-by: MCCOLLUM Edit-date: 11-Jan-85 15:13:09
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: JSYSF
Problem:
ARCF% function .ARGST is too slow.
Diagnosis:
The ARCF% code updates the directory on disk even though .ARGST is a read-only
function.
Solution:
For ARCF% function .ARGST, don't update the directory. Updating the directory
slows this function down by 100%.
[End of TCO 6.1.1118]
TCO-number: 6.1.1119
Written-by: MCCOLLUM Creation-date: 8-Jan-85 14:09:39
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: TTYSRV
Related-QAR: 706399
Problem:
Failing TTMSG's can leave a process NOINT.
Diagnosis:
Error returns from routine SALLIN neglect to go OKINT.
Solution:
Add OKINTs in error returns.
[End of TCO 6.1.1119]
TCO-number: 6.1.1120
Written-by: TBOYLE Creation-date: 8-Jan-85 14:54:53
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PHYMSC
Related-QAR: 706362
Problem: CHANS displays cylinder and sector as huge negative numbers
on MSCP disks.
Diagnosis: PHYMSC forgets to turn off the physical bit before
computing UDBPS1 and UDBPS2.
Solution: Turn off the IRBPAD bit in the area of MSCS6A.
[End of TCO 6.1.1120]
TCO-number: 6.1.1121
Written-by: LOMARTIRE Creation-date: 9-Jan-85 10:49:16
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: GTJFN
Related-SPR: 20453
Related-QAR: 706323
Problem: ILMNRF while processing a parse-only JFN in GTJFN.
Diagnosis: RECDIR is attemping to parse the directory name and finds that it
cannot find the directory. DIRLUK will return no match but will not return an
updated byte pointer.
For parse-only JFNs, RECDIR assumes a no match return from DIRLUK is ambiguous
and "updates" FILOPT with the new byte pointer. This destroys FILOPT.
This eventually leads to an ILMNRF.
Solution: Still treat the match as ambiguous but do not update FILOPT for "no
match" returns from DIRLUK in RECDIR.
[End of TCO 6.1.1121]
TCO-number: 6.1.1122
Written-by: GROSSMAN Creation-date: 9-Jan-85 10:58:06
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: Yes
Program: MONITOR
Routines-affected: NISRV PHYKNI
Problem: Various and sundry fixes:
1) Move NISRV to section 6. This frees up 6 section 0/1 pages from the
bootable monitor.
2) Fix hung KLNI detector (KNISTP generator) so that resource errors don't
result in spurious KNISTPs.
3) Fix SBD code in KNIJB0 (runs KNILDR).
4) Re-write GETCOR so that memory is no longer 4 word aligned. Alignment is
not necessary on KL10s.
[End of TCO 6.1.1122]
TCO-number: 6.1.1125
Written-by: GRANT Creation-date: 9-Jan-85 14:41:06
Edited-by: GRANT Edit-date: 9-Jan-85 14:46:31
Edit-checked: Yes Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PHYP4 phymsc
Related-QAR: 706405
Problem: TOPS-20 has wrong drive serial number.
Diagnosis: While TOPS-20 remained running, a disk had its HDA replaced.
Once we have a UDB, we never reread the serial number.
Solution: Whenever get an online interrupt (Massbus) or online an
MSCP disk, get the DSN again and put it in the UDB.
[End of TCO 6.1.1125]
TCO-number: 6.1.1126
Written-by: MOSER Creation-date: 10-Jan-85 16:53:41
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PHYMVR
Problem: Too many Bugchks.
Diagnosis: Some are useless.
Solution: Remove MSSGON and only do MSSSHT when it is interesting.
[End of TCO 6.1.1126]
TCO-number: 6.1.1127
Written-by: LOMARTIRE Creation-date: 10-Jan-85 16:56:44
Edited-by: LOMARTIRE Edit-date: 20-Mar-85 10:48:07
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: APRSRV
Related-TCO: 6.1.1279
Related-SPR: 20429
Problem: ILLUUO from a bad argument passed to GTJFN.
Diagnosis: Code in GTJFN processes the user's byte pointer by placing a XCTBU
of an ILDB on to the stack and then doing an XCT -2(P). If the byte pointer is
bogus, then this will result in the KIMXLP trace of the XCT to go to -2(P) to
try to find the next instruction. However, since the stack is now changed,
this will produce random results.
Solution: Once KIMUO4 has determined that an XCT caused the UUO, continue the
search from the trapping instruction which is passed in in T2. This will avoid
extra iterations and the confusion that XCT -2(P) causes.
[End of TCO 6.1.1127]
TCO-number: 6.1.1128
Written-by: MOSER Creation-date: 10-Jan-85 17:31:07
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PHYMVR
Problem: MSSNUT BUGHLT.
Diagnosis: When a drive is write locked the MSCP driver may ask the server to
online the disk with the UF.WPR bit set. The server will reject this but it
uses the wrong length message to do so. The sanity check catches this and
crashes.
Solution: Use the right lenght after SETUID fails.
[End of TCO 6.1.1128]
TCO-number: 6.1.1129
Written-by: GRANT Creation-date: 11-Jan-85 08:51:07
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: diag
Problem: DFPTA diagnositc (CI/NI port selector) failures due to DIAG%
returning "Diagnostic owns the channel" error.
Diagnosis: The diagnostic is trying to assign RH20 channel 0 and the monitor
is checking to see that there are no disks dual-ported to another KL. But,
it fails to test for offline, which would allow the DIAG% to succeed.
Solution: In DIAG.MAC's DGUDPT routine, check for disk offline (US.OFS)
before proceeding to the dual-ported type checks.
[End of TCO 6.1.1129]
TCO-number: 6.1.1132
Written-by: LOMARTIRE Creation-date: 14-Jan-85 11:05:04
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: JSYSF
Related-SPR: 20490
Problem: Edit 2612 to RCUSR% causes LCKDIR BUGHLTs.
Diagnosis: The edit was done incorrectly and introduced a path which caused the
LCKDIRs under certain RCUSR% combinations.
Solution: Rewrite the patch correctly. If a user specifies RC%STP but the
user name does not contain wild cards, fail and return RC%NMD in the
flags.
[End of TCO 6.1.1132]
TCO-number: 6.1.1133
Written-by: LEACHE Creation-date: 15-Jan-85 08:30:58
Edited-by: LEACHE Edit-date: 15-Jan-85 09:27:47
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: Monitor
Routines-affected: JSYSA DISC GLOBS
Related-SPR: 13064 15605 17743 17832 18333
Problem:
Disc allocation (as returned by INFO DISK) is often wrong for SYSTEM
directory.
Diagnosis:
When an OFN is acquired for the accounting file, the value supplied
in the call to ASGOFN is supposed to be the remaining allocation for the
directory, but the value 377777,,0 is erroneously used. This causes the
EXEC to display incorrect (sometimes negative) values in the INFO DISK
command.
Solution:
Get the current remaining allocation for directory SYSTEM and use
that value in the call to ASGOFN.
[End of TCO 6.1.1133]
TCO-number: 6.1.1134
Written-by: LEACHE Creation-date: 15-Jan-85 09:10:25
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: Monitor
Routines-affected: DISC
Related-SPR: 15605 17743 17832 18333
Problem: Disk allocation (as displayed by INFO DISK) is always wrong for
ROOT-DIRECTORY.
Diagnosis: Assigning an OFN for ROOT-DIRECTORY presents a chicken-and-egg
problem: the directory allocation is required to get the OFN, but an OFN
is required to get the directory allocation. The monitor attempts to solve
this by specifying the value 377777,,0 in the call to ASGOFN. This will
cause the INFO DISK command to report erroneous values.
Solution: In routine ASROFN, acquire the first OFN for ROOT-DIRECTORY
using a recognizably unique value for the directory allocation. On the
next OFN assignment for ROOT-DIRECTORY, fetch the true allocation and
call ADJALC to adjust the allocation remaining for the directory.
[End of TCO 6.1.1134]
TCO-number: 6.1.1136
Written-by: GROSSMAN Creation-date: 15-Jan-85 13:55:49
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: GLOBS LLMOP NISRV PHYKNI SYSFLG
Problem: Too many references to KNIN throughout the monitor. Customers
should be able to control KLNIness by changing the definition of KNIN in
PARAMS. Therefore, the only references to KNIN should be in STG.
Solution: Remove many unneeded references to KNIN.
[End of TCO 6.1.1136]
TCO-number: 6.1.1137
Written-by: GROSSMAN Creation-date: 15-Jan-85 14:23:11
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PHYKNI
Problem: NISRV crashes the monitor when it can't find KNILDR.
Diagnosis: The routine KNIJB0 (which is in section 0/1) was trying to call a
routine in section 6. Unfortunately, it it ended up calling HSYS, in section
0/1 and crashed the monitor.
Solution: Move most of KNIJB0 to section 6. Leave the entry point in section
0/1.
[End of TCO 6.1.1137]
TCO-number: 6.1.1138
Written-by: GROSSMAN Creation-date: 16-Jan-85 15:52:43
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: NIUSR
Problem: There is no interlock mechanism to prevent multiple jobs from
playing with the KLNI.
Solution: Create a new NI% JSYS function called .EIGET, which will acquire
ownership of the KLNI. Only the "owner" of a KLNI is allowed to alter it's
state or set it's address. If there is no owner, anybody will be allowed to
do these functions.
[End of TCO 6.1.1138]
TCO-number: 6.1.1139
Written-by: MOSER Creation-date: 16-Jan-85 16:36:03
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: CFSSRV PHYMVR PHYSIO
Problem: SKED too high. Jobs get dismissed and rescheduled too much. Scheduler
thrashes when system is IO bound.
Diagnosis: Routines flag running the scheduler by setting PSKED which forces
DISMSJ. PSKD1 is more approprate - it means "there may be a scheduling event but
don't dump the current fork".
Solution: Set PSKD1 instead of PSKED where appropriate.
[End of TCO 6.1.1139]
TCO-number: 6.1.1140
Written-by: GROSSMAN Creation-date: 16-Jan-85 16:50:27
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: NIUSR STG
Problem: GLFNFs and various other scheduler weirdness...
Diagnosis: NIUSR was calling the scheduler at interrupt level to request a
PSI (PSIRQ). It works most of the time, but the scheduler isn't interlocked
with respect to interrupt level, so races can occur.
Solution: Make a routine that gets called in LV8CHK whenever interrupt level
needs a PSI to be generated.
[End of TCO 6.1.1140]
TCO-number: 6.1.1141
Written-by: GROSSMAN Creation-date: 16-Jan-85 17:10:26
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: NIUSR
Problem: NI% JSYS too slow.
Diagnosis: It calls ASGRES and RELRES for every packet it transmits or receives.
Solution: Make a cache for transmit and receive memory. Search the cache first,
and call ASGRES only if no blocks are found.
[End of TCO 6.1.1141]
TCO-number: 6.1.1142
Written-by: MOSER Creation-date: 17-Jan-85 13:38:20
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: SCHED
Problem: SUMNR1 BUGCHKs when running the "new" scheduler.
Diagnosis: There is now a path through the code that can change the working
set size of a fork in the balance set. Previously this was impossible. The
path is Balance set wait satisfied calls NEWST which gives a big boost and
calls NEWST which calls NEWWSS which calls ADJWSS.
Solution: Make ADJWSS fix SUMBNR if FKIB% is on in FKSWP.
[End of TCO 6.1.1142]
TCO-number: 6.1.1143
Written-by: LOMARTIRE Creation-date: 17-Jan-85 15:52:54
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: GTJFN
Related-SPR: 20532
Problem: If GTJFN% is performed on a filespec whose device field is a
system-wide logical name, and the first entry in that system-wide logical name
is a job-wide logical name, the files pointed to by the job-wide logical name
are not found. However, a job-wide logical name anywhere except first in the
system-wide logical name works correctly.
Diagnosis: If during the logical name evaluation (done in CHKLNM), a
system-wide logical is found, the SAWSLN bit is set. Then, until we step to
the next entry in the logical name definition, we will only search the
system-wide logical name table. So, for a system-wide logical of:
A: => ONE:, TWO:
with job-wide logicals of:
ONE: => PS:LOGIN.CMD
TWO: => PS:LOGOUT.CMD
a DIR of A: will not find PS:LOGIN.CMD (since ONE: is the first entry in a
system-wide logical but it is not a system-wide logical itself). However,
the file pointed to by TWO: will be found since TWO: is the second entry in
the system-wide logical name.
Solution: In CHKLNM, ignore the setting of SAWSLN when deciding whether to
search job-wide then system-wide logicals or just system-wide logicals. This
will make system-wide logicals perform correctly regardless of the placement of
the individual entries. Namely, job-wide will be searched first, then
system-wide.
[End of TCO 6.1.1143]
TCO-number: 6.1.1145
Written-by: LOMARTIRE Creation-date: 17-Jan-85 16:04:06
Edited-by: LOMARTIRE Edit-date: 17-Jan-85 16:07:30
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: FILMSC
Related-SPR: 20459
Problem: A fork is assigned a controlling terminal and goes into TCITST on
that terminal line. Now, the fork is frozen, is assigned a new controlling
terminal, and is resumed. It will still be in TCITST on the old terminal line.
Diagnosis: TCOs 6.1526 and 6.2031 handle the case where a job controlling
terminal is changed in the above manner. However, there is no code to handle
the case of a fork controlling terminal.
Solution: Add code in TTYIN2 (after the job controlling terminal check) to
check if the JFN is for the fork's controlling terminal. If it is, place the
line number in the left half of DEV.
[End of TCO 6.1.1145]
TCO-number: 6.1.1146
Written-by: PAETZOLD Creation-date: 19-Jan-85 16:18:39
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: monitor
Routines-affected: niusr
Problem:
SKDPF1s from NIUSR.
Diagnosis:
EBD.
Solution:
.NIOFF needs to be resident as well NIJJIF.
[End of TCO 6.1.1146]
TCO-number: 6.1.1147
Written-by: MAYO Creation-date: 21-Jan-85 10:00:52
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: JSYSF
Related-SPR: 19735
Problem: ARCF% discard function doesn't clear AR%WRN. REAPER checks
AR%WRN to see if it should delete archived files. So, if a user
retrieves a file, keeps it a while, gets a warning from REAPER that
the file will soon expire and be deleted, and decides to keep it by
discarding archive information, he will be very suprised in a few weeks
when REAPER expires and deletes the file anyway.
Diagnosis: ARCF% discard doesn't clear enough FDB bits.
Solution: Have it clear AR%WRN.
[End of TCO 6.1.1147]
TCO-number: 6.1.1149
Written-by: LEACHE Creation-date: 22-Jan-85 14:41:54
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: CRYPT
Related-QAR: 706373
Problem: CHKPEV always returns failure for customer encryption algorithms.
Diagnosis: Wrong flavor of test instruction.
Solution: Simplify the routine and the bug goes away.
[End of TCO 6.1.1149]
TCO-number: 6.1.1150
Written-by: MELOHN Creation-date: 22-Jan-85 21:08:27
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: CTHSRV
Problem: The CTERM fork runs every 100ms whether or not it has anything to
do. SYSDPY seems to indicate that it is using .3 seconds of runtime every
minute even when are are no users of CTERM.
Diagnosis: The CTERM would run MUCH less often if it had a scheduler test
that woke up when there was something for the CTERM fork to do.
Solution: Add scheduler test CTMTST, and make the CTERM fork MDISMS with it
until it has something to do.
[End of TCO 6.1.1150]
TCO-number: 6.1.1152
Written-by: PAETZOLD Creation-date: 22-Jan-85 22:03:58
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: monitor
Routines-affected: phykni
Problem:
KPALHVs from NISRV looping in NIDPT2 when a portal is closed and the
monitor has arpanet code and the ethernet cable has a UNIX based system
on it and the TOPS-20 system in question has had very little ethernet
IP traffic in the last several minutes before the portal is closed.
Diagnosis:
A UNIX system sends various ethernet multicast messages with the IP
protocol type. TOPS-20 does not enable this multicast address and a
KNIDMD/KNIDM1 combination will result. After this event the buffer and
its CM block will once again be placed on the free queue without a
callback to the client.
At this point we decide to close the portal. NIDPT goes into a loop at
NIDPT2 to NIDPT1 attempting to release all buffers back to the client.
These buffers have never had IO performed on them (since they were
queued) and may still have the multicast address set in the CM block.
At this point MSGAVA will once again generate a KNIDMD/KNIDM1
combination and requeue the block back onto the free queue. We now have
a loop trying to remove this block from the free queue.
After attempting to do this many tens of thousands of times we finally
crash with a KPALHV.
Solution:
Make sure the destination ethernet address of a buffer coming out of
the NIDPT2 loop has a clear address without any multicast bits set.
The reason this problem was never reproducable on the CHIP/ETHER
systems is that there is no UNIX system on the private ethernet but
there is on the public ethernet.
[End of TCO 6.1.1152]
TCO-number: 6.1.1153
Written-by: GRANT Creation-date: 23-Jan-85 16:11:36
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PHYSIO
Problem: Unusual events can occur with don't-care disks and no one is notified.
Diagnosis: When a don't-care mismatch occurs (drive and disk are not the same
status) we treat the disk under standard access rules but say nothing about
what was discovered.
Solution: Add PHYDCU and PHYDCD BUGCHKs and PHYDCR BUGINF.
PHYDCU is for standard disk on don't-care drive; PHYDCD is don't-care disk on
standard drive; PHYDCR means we are treating the disk as don't-care.
[End of TCO 6.1.1153]
TCO-number: 6.1.1154
Written-by: HAUDEL Creation-date: 23-Jan-85 16:15:52
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: JSYSF
Related-QAR: 706126
Problem: MONNEJ bugchk.
Diagnosis: No ERJMP after a RPACS jsys in JSYSF.
Solution: Add and ERJMPR.
[End of TCO 6.1.1154]
TCO-number: 6.1.1155
Written-by: WAGNER Creation-date: 24-Jan-85 14:17:07
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: CFSSRV
Problem: CFS Hashing algorithm uses non-prime numbers.
Diagnosis: Theoretically primes are better
Solution: Make HSHLEN prime (either ^D509 or ^D251, based on CFSSCA)
[End of TCO 6.1.1155]
TCO-number: 6.1.1156
Written-by: HAUDEL Creation-date: 24-Jan-85 16:00:17
Edited-by: HAUDEL Edit-date: 19-Feb-85 16:51:33
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: SCHED
Related-QAR: 706331
Problem: Cannot use the .SKSCJ (set job class) function of the SKED% for the
calling job with privs disabled.
Diagnosis: The code sets up the job number in T1 and then uses T2 in testing
job number.
Solution: Change CAMN T2,JOBNO to CAMN T1,JOBNO at SKDSJC+16 in SCHED.MAC.
[End of TCO 6.1.1156]
TCO-number: 6.1.1157
Written-by: GROSSMAN Creation-date: 28-Jan-85 10:15:50
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: STG NIUSR
Problem: Entry into NIJJIF too slow.
Diagnosis: XCT is slower than SKIPE.
Solution: Replace XCT of CALL NIJJIF with SKIPE flag followed by CALL NIJJIF.
[End of TCO 6.1.1157]
TCO-number: 6.1.1158
Written-by: PAETZOLD Creation-date: 28-Jan-85 15:22:33
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: IMPANX IPNIDV IPCIDV
Problem:
Interrupt context code (eg. device drivers) for internet often request service
by the internet fork by incrementing INTFLG. If the system is in the null
job the scheduler will not notice this for a while. This causes extra
latency on unloaded systems.
Diagnosis:
Solution:
AOS PSKD1 as well as INTFLG.
[End of TCO 6.1.1158]
TCO-number: 6.1.1159
Written-by: PAETZOLD Creation-date: 28-Jan-85 15:52:00
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: TTYSRV TVTSRV
Problem:
TVT output performance could be faster and could make better use of networking
resources.
Diagnosis:
Currently monitor assumes TVTs are slow speed.
Solution:
Make monitor believe they are fast.
[End of TCO 6.1.1159]
TCO-number: 6.1.1160
Written-by: PAETZOLD Creation-date: 28-Jan-85 16:37:25
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: monitor
Routines-affected: ipfree
Problem:
None observed but code is wrong. DEFSTR for USIZE in IPFREE has a 36 bit
field ending on bit 17.
Diagnosis:
Solution:
Make it a 18 bit field.
[End of TCO 6.1.1160]
TCO-number: 6.1.1161
Written-by: PAETZOLD Creation-date: 28-Jan-85 17:15:28
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: monitor
Routines-affected: tcpjfn
Problem:
It is possible for the monitor to leave a TCP: JFN in a locked state if
you attempt to use TCOPR% on a TCP: JFN that is no longer associated
with a TCB. The problem is caused by using the RETERR macro without
first making sure that the JFN is indeed unlocked. The problem occurs
in two places in TCPJFN.MAC.
Diagnosis:
EBD.
Solution:
Fix it.
[End of TCO 6.1.1161]
TCO-number: 6.1.1162
Written-by: GROSSMAN Creation-date: 29-Jan-85 14:27:57
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PHYKNI NIPAR MONSYM
Problem: The "SET PORT NI AVAILABLE" command to OPR doesn't restart the KLNI
as advertised.
Diagnosis: OPR is trying to put the KLNI into the RUN state. Unfortunately,
the KLNI may contain bad ucode. The monitor doesn't know this, and just starts
the KLNI anyway. Usually, a KNIPER results, sometimes death is the result.
Solution: Create a new state called the "Reload Requested" state (.EISRR).
Setting the KLNI into this state causes KNILDR to run and reload the KLNI.
This state may only be set if the current KLNI state is not RUN.
[End of TCO 6.1.1162]
TCO-number: 6.1.1163
Written-by: MCCOLLUM Creation-date: 29-Jan-85 15:35:25
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: FORK
Problem:
PTAIC bughlts
Diagnosis:
The code around KSEF1 SETOMs the entry in the SYSFK table before routine
CLNZSC is called to delete the user's non-zero sections. CLNZSC does an
SMAP% JSYS to delete any non-zero sections using .FHSLF as a process handle.
Routine FKHPTX attempts to translate .FHSLF by looking in the SYSFK table
and gets the -1 put there by KSEF1. A string of incorrect references based
on this -1 eventually causes SETCPT to try to map in a page table for the
section using a bogus SPT index. A reference to this page table by SECPTR
causes the crash.
Solution:
Do not clear the entry in SYSFK until after the non-zero sections are
successfully deleted by CLNZSC.
[End of TCO 6.1.1163]
TCO-number: 6.1.1164
Written-by: GRANT Creation-date: 31-Jan-85 07:48:54
Edited-by: GRANT Edit-date: 31-Jan-85 07:50:45
Edit-checked: No Document: Yes TCO-tested: Yes
Maintenance-release: Yes Hardware-related: No
Program: MONITOR
Routines-affected: phyp2 PHYSIO
Related-QAR: 706360
Problem: RP20s don't have drive serial numbers and the current method of faking
them doesn't work very well.
Diagnosis: Using CHECKD to put a number in the disk's homeblock is a nuisance
for the system manager and also causes some special case RP20 code in the
monitor which seems needless and appears to be bug-prone.
Solution: When an RP20's UDB is created, the monitor will make up a drive
serial number by adding the unit number to 8000 (decimal) and placing it in
the UDB. Then whenever a serial number is required, the RP20 is guaranteed
to have one, just like any other disk.
The scheme implies a restriction, namely, all RP20s connected to systems in
a cluster must have unique unit numbers.
[End of TCO 6.1.1164]
TCO-number: 6.1.1165
Written-by: GRANT Creation-date: 31-Jan-85 13:08:46
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: phyp2
Problem: Homeblocks don't get checked when an RP20 comes online.
Diagnosis: No code.
Solution: Before calling PHYONL, set US.CHB.
[End of TCO 6.1.1165]
TCO-number: 6.1.1166
Written-by: MOSER Creation-date: 31-Jan-85 15:25:53
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: STG GLOBS PROLOG CFSSRV LINEPR DISC
PAGUTL
Problem: The monitor is too slow. Especially when accessing long files
randomly.
Diagnosis: Management of OFN resources is not done optimally. Since
many Jsyses use OFNs any improvement in this area can potentially
speed up the system significantly. Long files are especially bad since they
contain many OFNs.
Solution: Change OFN assignment to use a hash and link algorithm. Change
OFNJFN to do a single compare instead of a costly search for long files.
Change all ASxOFN callers to conform to the new sequence. Most of the
changes are outlined in the OFN-MANAGMENT-PERFORMANCE.MEM spec.
[End of TCO 6.1.1166]
TCO-number: 6.1.1167
Written-by: TBOYLE Creation-date: 31-Jan-85 15:50:45
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PHYP2
Problem: RP20's never get bad blocks into the BAT BLOCKS.
Diagnosis: PHYP2 never properly handled the CLASS 5 ERROR.
CLASS 5 is for DX20 requested command retry. This happens
on all data errors. In IBM land, when a data error occurs,
the drive requests the channel to retry the transfer several
times before reporting an error. i.e. the channels perform
error recovery.
We have always ignored the CLASS 5 ERROR. The microcode as of
edit 17 also gives us this error under some specific conditions
which we will need to check for.
Solution: Change the CLASS 5 error handler to look for appropriate
data errors and flag them properly for BAT BLOCK processing. Errors
that are not due to data are carefully checked for and left as
device errors.
[End of TCO 6.1.1167]
TCO-number: 6.1.1169
Written-by: GROSSMAN Creation-date: 2-Feb-85 11:11:25
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: GLOBS STG PHYH2 PHYKNI DIAG
Problem: Diagnostics DFPTA, and DFNIE do not work with the KLNI.
Diagnosis: They were trying to do DIAG% functions to read and write the channel
logout areas. These functions would fail because there was no CDB for the
channel the KLNI uses (channel 5).
Solution: Create a CDB and dispatch table for the KLNI. Fill it in with the
bare minimum of information needed to support DIAG and keep PHYSIO off my
back. In addition, move the initialization of the KLNI from PHYH2 to PHYSIO
(by modifying PHYCHT in STG). Also, put some checks into various DIAG functions
so that programmers cannot attempt to do disk type stuff to the KLNI.
[End of TCO 6.1.1169]
TCO-number: 6.1.1170
Written-by: GROSSMAN Creation-date: 2-Feb-85 11:37:59
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: Yes
Program: MONITOR
Routines-affected: PHYKNI
Problem: The KNISTP BUGCHK does not print the micro PC if the KLNI is still
running.
Solution: Stop the KLNI just before doing the BUGCHK. This will help detect
microcode loops.
[End of TCO 6.1.1170]
TCO-number: 6.1.1171
Written-by: PAETZOLD Creation-date: 3-Feb-85 15:13:15
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: monitor
Routines-affected: PHYH2
Problem:
ILLGO BUGHLTs on systems with 4096K.
Diagnosis:
Channels talk to physical memory. At the end of a transfer the logout
area contains the address+1 of the last word written (or read). This is
a modulo 22 bit address. ie. when writing to page 17777 of memory the
logout area will have a zero.
The code at CKERR2 fetches the logout address and decrements it. However
this results in a minus one and not 17777. The CAME then fails and we get
an ILLGO.
Solution:
Insert an ANDX to retain only the desired bits (and simulate modulo 22 bit
addressing).
[End of TCO 6.1.1171]
TCO-number: 6.1.1172
Written-by: PAETZOLD Creation-date: 3-Feb-85 16:33:01
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: monitor
Routines-affected: DSKALC
Problem:
assembly errors from dskalc.
Diagnosis:
hosers.
Solution:
Change OFNPTT symbol to OFPTT to avoid conflict with new stuff in PROLOG.
[End of TCO 6.1.1172]
TCO-number: 6.1.1173
Written-by: GLINDELL Creation-date: 5-Feb-85 09:55:22
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: sclink ntman router
Problem: LOOP NODE does not work
Diagnosis: Never tested
Solution: Fix it
[End of TCO 6.1.1173]
TCO-number: 6.1.1174
Written-by: GLINDELL Creation-date: 5-Feb-85 10:18:38
Edited-by: GLINDELL Edit-date: 5-Feb-85 10:20:05
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: FORK
Related-QAR: 706220
Problem:
It is common practice to set T3 to -1 in the EPCAP% jsys. This will
enable all possible capabilities. When the EPCAP% asks the ACJ for
permission, it passes the unmodified T3 to ACJ. When the ACJ sees
the -1 it is impossible to make a decision since the actual bits to
be enabled cannot be distinguished.
Diagnosis:
Solution:
If the user passes -1 in T3, then calculate the bits the user
is actually trying to enable.
[End of TCO 6.1.1174]
TCO-number: 6.1.1175
Written-by: TBOYLE Creation-date: 5-Feb-85 13:35:17
Edited-by: TBOYLE Edit-date: 5-Feb-85 13:43:13
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PHYP2
Problem: SPEAR does not report all of the extended status bytes for
RP20 device/data errors.
Diagnosis: Although there is room for them in the SYSERR block,
the monitor does not fill them all in.
Solution: Fix PHYP2 to use all 80 status bytes. Chage SNSNUM, and
fix the calculation for number of words based on SNSNUM. We will
use 20 words.
[End of TCO 6.1.1175]
TCO-number: 6.1.1176
Written-by: GLINDELL Creation-date: 5-Feb-85 15:17:56
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: JSYSA
Related-QAR: 706380
Problem:
Can't delete section zero pages from code in non-zero section.
Diagnosis:
PMAP% code ignores PM%EPN if it's the "delete process page" function.
Solution:
At PMAP0 + a few, if it's the delete option, read the users value of
PM%EPN before calling FKHPTX.
Note: the documentation for PMAP% should be changed. It currently
states that PM%EPN cannot be used with "delete process pages" (case IV)
in the documentation. As of this TCO, this restriction has been
removed.
[End of TCO 6.1.1176]
TCO-number: 6.1.1177
Written-by: GLINDELL Creation-date: 5-Feb-85 17:11:05
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: SYSERR
Related-QAR: 706428
Problem:
The bug description is trashed when looking at bug entries with SPEAR.
Diagnosis:
18-bit arithmetic for 30-bit values.
Solution:
Single instruction patch at SEBCP3 to use a 1-word global bytepointer.
[End of TCO 6.1.1177]
TCO-number: 6.1.1180
Written-by: GRANT Creation-date: 7-Feb-85 08:28:52
Edited-by: GRANT Edit-date: 7-Feb-85 08:34:53
Edit-checked: Yes Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PHYSIO
Problem: Wrong CI wire information in PDB on disk.
Diagnosis: When a pack gets moved from one drive to another, the PDB is cleared,
the new drive serial number is set along with our node's info. But, a bad
SKIP instruction was preventing the current CI wire status from getting set.
Solution: In routine CLRPDB, change SKIPGE to SKIPL so CALL to PTHSTS occurs.
[End of TCO 6.1.1180]
TCO-number: 6.1.1181
Written-by: GROSSMAN Creation-date: 7-Feb-85 14:31:21
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PHYKNI
Problem:
Support new KLNI microcode version number format. There are now major and
minor version numbers, and an edit number. NISRV will not start the KLNI
if the major and minor version do not exactly match the expected values.
The expected values are in UVCMAJ for the major version number, and UCVMIN
for the minor version number. If the microcode version does not match the
values in UCVMAJ and UCVMIN, a KNIVER BUGxxx will result. The data items
are:
1) Bad major version
2) Bad minor version
3) Expected major version
4) Expected minor version
[End of TCO 6.1.1181]
TCO-number: 6.1.1183
Written-by: GRANT Creation-date: 8-Feb-85 17:09:17
Edited-by: GRANT Edit-date: 8-Feb-85 17:12:55
Edit-checked: Yes Document: Yes TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PHYMVR MONSYM
Problem: Booting a system with NOKLIP patched to contain a non-zero value causes
SETSPD to produce the error MSCPX1 (No MSCP server in current monitor) for each
ALLOW command in CONFIG.
Diagnosis: The error code is being returned from the monitor to SETSPD for each
SMON%. The error is misleading since it's the same one you get if you build a
monitor without the MSCP server module PHYMVR.MAC.
Solution: Create a new error code MSCPX4 whose meaning is "MSCP server not
currently running" and have PHYMVR return it instead of MSCPX1 when the server
has not been initialized, which is the state it is in if the system is not
using a CI.
[End of TCO 6.1.1183]
TCO-number: 6.1.1184
Written-by: GRANT Creation-date: 11-Feb-85 08:37:55
Edited-by: GRANT Edit-date: 11-Feb-85 09:36:58
Edit-checked: Yes Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PHYSIO phyklp
Problem: TOPS-20 refuses to access a disk when TOPS-10 is run on one of the
KLs in the cluster which once ran TOPS-20.
Diagnosis: TOPS-20 assumed that 1) systems on the CI don't change their node
numbers, 2) there are no VAXes on the CI, and 3) a KL on the CI must be
running TOPS-20.
Solution: Add logic to handle the following cases: 1) node x was once a KL
but is now an HSC or VAX, and 2) TOPS-20 and TOPS-10 can be run
interchangeably on a KL in the cluster.
[End of TCO 6.1.1184]
TCO-number: 6.1.1185
Written-by: GLINDELL Creation-date: 11-Feb-85 11:31:05
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: JSYSA
Related-QAR: 838001
Problem:
All accounts that have an /EXPIRATION date set in ACCOUNTS-TABLE.BIN
will get "Account has expired" independent of what the expiration date
was set to.
Diagnosis:
Someone changed CHKEXP to CALL LGTAD instead of doing a GTAD% jsys.
That was a good idea, but unfortunately LGTAD does not preserve T2/B.
Solution:
Save T2 over the call to LGTAD.
[End of TCO 6.1.1185]
TCO-number: 6.1.1187
Written-by: GRANT Creation-date: 12-Feb-85 07:07:25
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PHYSIO
Problem: Disk forced offline when it should be accessible.
Diagnosis: Bring up a system not on a CI and have a MASSBUS disk dual-ported
to another system. TOPS-20 will refuse access to the disk; this is the
desired action. However, single-porting the disk should cause TOPS-20 to
allow access to the disk but it doesn't due to a bug which didn't get the
forced-offline bit cleared.
Solution: At location UPDBYE, ANDCAM the U1.OFS bit into the status word.
[End of TCO 6.1.1187]
TCO-number: 6.1.1188
Written-by: WAGNER Creation-date: 12-Feb-85 09:56:16
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: SCHED
Problem: DDMP AND CHKR CHECKED TOO OFTEN IN SKDLV8
Diagnosis: NO NEED TO CHECK EVER 20 mS
Solution: MOVE THE CHECKING TO CLK2CL, AND CHECK EVERY 10 S.
[End of TCO 6.1.1188]
TCO-number: 6.1.1189
Written-by: GRANT Creation-date: 12-Feb-85 10:20:51
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PHYSIO
Problem: Logic of code too difficult to follow.
Diagnosis: Routine names are confusing and routines do more than one
logical function.
Solution: Move some code so that CHKPDB, CLRPDB, and RSTPDB, actually
check, clear, and reset the PDB, respectively.
[End of TCO 6.1.1189]
TCO-number: 6.1.1190
Written-by: MELOHN Creation-date: 12-Feb-85 14:26:19
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: LATSRV
Problem: PLUTOs running LAT V1.1 software can occasionally crash at
PC 000002 when a user disconnects from a TOPS-20 host.
Diagnosis: The PLUTO crashed with an invalid stop message. What
happens is this: when the number of slots on a TOPS-20 host is
decreased to 0, the spec says the circuit should be stopped. Both
TOPS-20 AND the server try to send a stop circuit message to close the
circuit. If the server's message arrives after we have cleared the
circuit database but before the server itself receives the TOPS-20
generated stop message, TOPS-20 generates a second, bogus stop message
which crashes the server.
Solution: Don't send the stop message to the server when the number
of slots becomes zero. As part of a more general fix, a host timer
will be implemented such that if the server doesn't stop the circuit
within the keep-alive-timer * 2, TOPS-20 will send the stop circuit
message itself.
[End of TCO 6.1.1190]
TCO-number: 6.1.1191
Written-by: MELOHN Creation-date: 12-Feb-85 14:37:06
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: LATSRV
Problem: Posideons (DECserver-100) occasionally get -207- protocol
violation messages, which stop the affected slot. Pluto based LAT
users see a "node stopped circuit" message.
Diagnosis: The slot multiplexor routine can be called to send a "must
reply NOW" message to the server. In the case that there is no slot
data to be sent to the server, the slot formatting routine is
bypassed. This does not correctly zero the number of slots in the
message, and therefore a valid message with an invalid number of slots
is sent to the server.
Solution: Zero the number of slots in the main loop of the slot
multiplexor routine, not during slot formatting.
[End of TCO 6.1.1191]
TCO-number: 6.1.1192
Written-by: MELOHN Creation-date: 12-Feb-85 14:57:01
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: LATSRV
Problem: Clearing all LAT service names with LCP crashes the monitor
with SKDPF1.
Diagnosis: The multi-cast building routine assumes that there is at
least one service offered in the multi-cast message. If that service
is deleted, the routine attempts to load a byte from a garbage
location.
A LAT host by definition must offer at least one service, so it should
not be possible for the user to clear all offered services.
Solution: Fix the multi-cast building routine to check to make sure
there is at least one service before rebuilding the multi-cast
message. Change the LATOP% jsys to return LATX07 (Invalid or unknown
LAT service name) if the user attempts to clear the last service name
offered.
[End of TCO 6.1.1192]
TCO-number: 6.1.1193
Written-by: PALMIERI Creation-date: 12-Feb-85 16:18:17
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: GLOB STG
Problem: DECnet called unnecessarily from LV8CHK before it is initialized.
LV8CHK calls to DECnet are into section 1 when calls to section 6 would
require less code in the DECnet modules and be somewhat faster.
Diagnosis: No code
Solution: Check D36IFG in LV8CHK before calling DECnet. Make calls to
DECnet be of the form: CALL @[XCDSEC,,ADDRESS]
[End of TCO 6.1.1193]
TCO-number: 6.1.1194
Written-by: LOMARTIRE Creation-date: 13-Feb-85 12:06:26
Edited-by: LOMARTIRE Edit-date: 13-Feb-85 14:18:04
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: CFSSRV MSTR
Related-TCO: 6.1.1195
Problem: The current error codes returned on a failing structure mount request
are not very descriptive and do not imply what the cause of the failure was.
Diagnosis: CFS will vote in order to gain the requested access to the
structure. If the vote fails, there is no way to determine why we were told
NO.
Solution: Implement a way for a reason code to be passed back when a CFS node
desides to say NO to an incoming vote. Have the voting node interpret this
reason code and transform it into a meaningful TOPS-20 error code. Currently,
only the structure resource handling routines will do this. Below are the
error codes which will be returned. Note that some are new and others are just
new text on an already existing error code.
MSTX44 - Mount type refused by another CFS processor
MSTX45 - Structure naming or drive serial number conflict in CFS cluster
MSTX47 - Shared access denied; already set exclusive in CFS cluster
MSTX48 - Exclusive access denied; access conflict in CFS cluster
MSTX49 - Structure naming conflict in CFS cluster
[End of TCO 6.1.1194]
TCO-number: 6.1.1196
Written-by: LOMARTIRE Creation-date: 13-Feb-85 12:20:29
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: SCAPAR
Problem: SC.IDL gets called too often from the scheduler.
Diagnosis: The constant used to determine the interval between calls is being
calculated incorrectly.
Solution: Fix the calculation. Instead of the timing being once every 3
milliseconds, it will be once every 160 (decimal) milliseconds.
This will result in SC.IDL being called roughly half as often.
[End of TCO 6.1.1196]
TCO-number: 6.1.1197
Written-by: WAGNER Creation-date: 13-Feb-85 13:45:53
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: SCHED
Problem: BGND includes time that is actually idle.
Diagnosis: New code tries some background tasks before running the NUL job.
Because of the way the code was written, the time that it spends
doing this is charged to BGND.
Solution: Modify RDSIVL to not accumulate time if flag BKIDLF is set. This
way time is charged to whichever idle is appropriate for the time
that we spend doing background tasks before running the NUL job.
[End of TCO 6.1.1197]
TCO-number: 6.1.1198
Written-by: GRANT Creation-date: 13-Feb-85 14:32:53
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: phyklp
Problem: Over zealous sending of REQUEST-IDs.
Diagnosis: When a virtual circuit is closed TOPS-20 tries madly to
re-establish the connection by sending REQUEST-IDs once a second to the
node which went away. This doesn't seem necessary.
Solution: In the once-a-second checker, remove the code which checks for
closed virtual circuits. Communication will be resumed by more standard
methods when the node reappears.
[End of TCO 6.1.1198]
TCO-number: 6.1.1200
Written-by: LOMARTIRE Creation-date: 14-Feb-85 15:52:01
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: CFSSRV
Problem: With the new DSA disks, the HDA can be replaced during timesharing and
the drive serial number of the drive changes. This causes a lot of problems
with CFS since now this structure may be know by another "name" since CFS uses
the serial number as root of one of the structure resources.
Diagnosis: CFS was not coded to handle this case.
Solution: Whenever PHYSIO detects the case of a serial number change, it will
update the UDB of the disk and call CFSDSN in order to update the structure
resource. The old resource block will be unlinked, updated, and relinked.
[End of TCO 6.1.1200]
TCO-number: 6.1.1201
Written-by: GRANT Creation-date: 18-Feb-85 11:09:38
Edited-by: GRANT Edit-date: 18-Feb-85 11:17:32
Edit-checked: Yes Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PHYSIO
Problem: The UDBs for all HSC-based disks contain the wrong value for the
high-order word of the drive serial number.
Diagnosis: Since non-HSC-based disks only have a 1-word DSN, TOPS-20 makes
up the high-order word to fill in the UDB. It was not correctly making the
distinction between HSC and non-HSC disks and, thus, smashing the high-order
word of the HSC-based disks' UDBs.
Solution: In routine PHYDUA, fix the index register to be P1 instead of P3
so the CDB status word is correctly obtained.
[End of TCO 6.1.1201]
TCO-number: 6.1.1202
Written-by: GROSSMAN Creation-date: 18-Feb-85 22:14:03
Edited-by: GROSSMAN Edit-date: 20-Feb-85 09:39:12
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: NIUSR MONSYM
Problem: Implement Read Channel Counters.
Diagnosis:
Solution:
[End of TCO 6.1.1202]
TCO-number: 6.1.1203
Written-by: GROSSMAN Creation-date: 18-Feb-85 22:50:03
Edited-by: GROSSMAN Edit-date: 20-Feb-85 09:48:36
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: NIUSR
Problem: Programs doing blocking transmits with the NI% JSYS wake up too
frequently.
Diagnosis: The scheduler test for blocking transmits always succeeds because
an AC was not being set up.
Solution: Setup the AC before using it.
[End of TCO 6.1.1203]
TCO-number: 6.1.1204
Written-by: GROSSMAN Creation-date: 18-Feb-85 23:10:53
Edited-by: GROSSMAN Edit-date: 20-Feb-85 09:57:12
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PHYKNI
Problem: PHYKNI treats KLNI CRAM parity error 7777 as an unplanned CRAM
parity error, when in reality it is planned (ie: intentional).
Diagnosis: PHYKNI treats KLNI CRAM parity errors in the range 7750-7775
(inclusive) as Planned CRAM Parity Errors. Unfortunately, the microcoders
are now using 7777 as a PCPE. So, now the rules are: all parity errors
between 7750 and 7777 (inclusive), but excluding 7776 are Planned, and
must be treated special.
Solution: Follow the rules stated above.
[End of TCO 6.1.1204]
TCO-number: 6.1.1205
Written-by: GROSSMAN Creation-date: 18-Feb-85 23:34:05
Edited-by: GROSSMAN Edit-date: 20-Feb-85 10:05:49
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PHYKNI
Problem: Code wrong at NIDPT + a few.
Diagnosis: The code was expecting a temp AC to be preserved across a
subroutine call. In reality, the code worked correctly, but it was just
pure luck. Don't depend on luck.
Solution: Use a more permanent AC.
[End of TCO 6.1.1205]
TCO-number: 6.1.1206
Written-by: PALMIERI Creation-date: 19-Feb-85 10:21:45
Edited-by: PALMIERI Edit-date: 19-Feb-85 16:50:13
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: DATIME
Problem: IDTIM fails when asked to suppress inputting of date and time
Diagnosis: IDTNCS subroutine called by IDTIM notices that inputting of date
and time are suppresed and attempts to return the current date and time.
After doing the ODCNV it forgets that time input is suppressed and returns
what it thinks it input for time which is garbage. IDTIM then calls IDCNV
to convert the date and time to internal format and notices the garbage
time and returns an error in T1 when IDTIM expects it in T2.
Solution: Return current time when inputting of time is suppressed.
Look for error code in correct AC.
[End of TCO 6.1.1206]
TCO-number: 6.1.1207
Written-by: LOMARTIRE Creation-date: 19-Feb-85 10:21:58
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: CFSSRV
Problem: If a structure is mounted by one system but not another,
and it is moved, then no other system will be able to mount the structure
until it is dismounted.
Diagnosis: PHYSIO calls CFS at CFRDSN in order to allow CFS to update the
structure tokens with the new drive serial number. However, it calculates
the new HSHCOD value for the structure name token wrong. So, this system will
always refuse any mount requests for the structure because the HSHCOD values
won't match.
Solution: Correctly calculate HSHCOD.
[End of TCO 6.1.1207]
TCO-number: 6.1.1208
Written-by: HAUDEL Creation-date: 19-Feb-85 11:49:50
Edited-by: HAUDEL Edit-date: 19-Feb-85 16:53:10
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Related-QAR: 706364
Problem: CHECKD's "REBUILD" command fails if the DSKBTTBL file does
not exist.
Diagnosis: Thd DSKAS% tries to get a JFN on an existing DSKBTTBL
file and if the file is not found, it does not try to
write a new one. Even if the DSKAS% does find an existing DSKBTTBL file,
it does not seem to do anything with the contents.
Solution: If the DSKAS% fails to get a JFN because the file does not
exist, JRST to the code that writes a new DSKBTTBL.
[End of TCO 6.1.1208]
TCO-number: 6.1.1209
Written-by: GROSSMAN Creation-date: 19-Feb-85 11:58:07
Edited-by: GROSSMAN Edit-date: 20-Feb-85 10:11:12
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PHYKNI
Problem: The KLNI sometimes doesn't restart after a continuable error. It
just hangs in the INIT state.
Diagnosis: Sometimes when the KLNI gets an error, there are items left on the
response queue. When the KLNI gets restarted, it never gets an interrupt
to tell it to look at the response queue. This happens because the interrupt
is generated only if a response is put onto an empty response queue.
Solution: Clean up (empty out) the response queue during error processing.
[End of TCO 6.1.1209]
TCO-number: 6.1.1210
Written-by: GROSSMAN Creation-date: 19-Feb-85 12:19:47
Edited-by: GROSSMAN Edit-date: 20-Feb-85 10:12:36
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: NIUSR MONSYM
Problem: Implement Read Portal Counters.
Diagnosis:
Solution:
[End of TCO 6.1.1210]
TCO-number: 6.1.1213
Written-by: PALMIERI Creation-date: 19-Feb-85 17:30:54
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: Ntman
Problem: No entry in line parameter table for TOPS20 specific parameter
RECEIVE BUFFER SIZE (2500)
Diagnosis: Never put in
Solution: Add it
[End of TCO 6.1.1213]
TCO-number: 6.1.1214
Written-by: MELOHN Creation-date: 19-Feb-85 18:54:58
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: LATSRV
Problem: TOPS-20 provided host services with "Dynamic" ratings never change.
Diagnosis: Code to set the rating based on the load average was not
being called regularly. The formula 255-INT(15-minute load average) should be
more flexible to provide a better indication of how loaded a system is.
Solution: Rewrite the DYNRAT routine to use the formula
255-INT(4*(15-minute load average)), add a cell to the host node
database to contain the host's current rating, and check to see if
this rating needs to be updated each time the multi-cast message is
sent out.
[End of TCO 6.1.1214]
TCO-number: 6.1.1215
Written-by: PALMIERI Creation-date: 20-Feb-85 14:21:22
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: Monitor
Routines-affected: STG DNADLL GLOBS
Problem: Too many instructions executed in LV8CHK if DECnet doesn't have
anything to do. D36IFG flag check every time through LV8CHK.
Diagnosis: LV8CHK calls DNADLL every time to see if something to do. LV8CHK
always checks the DECnet intialized flag.
Solution: Have LV8CHK check DNADLL's queue any only call it if something to
do. Remove check of D36IFG since all callee's do the right thing is DECnet
is not initialized.
[End of TCO 6.1.1215]
TCO-number: 6.1.1216
Written-by: MELOHN Creation-date: 22-Feb-85 12:08:43
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: LATSRV
Problem: Stop circuit messages from the server are not acted upon by
the TOPS-20 Host code.
Diagnosis: Routine HMSTOP checks incoming stop messages using the
Remote ID field when it should be using the Local ID field.
Solution: Use the Local circuit ID field instead.
[End of TCO 6.1.1216]
TCO-number: 6.1.1217
Written-by: GROSSMAN Creation-date: 22-Feb-85 17:09:10
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PHYKNI
Problem: Not setting an NIA20's Ethernet address (via the SETSPD command
ETHERNET), results in the system using a 0 address.
Diagnosis: PHYKNI was getting the Ethernet address from a location that
doesn't get initialized if the SETSPD command is never issued.
Solution: Initialize the address only if we have a valid address to use.
[End of TCO 6.1.1217]
TCO-number: 6.1.1218
Written-by: WAGNER Creation-date: 25-Feb-85 08:30:52
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: JSYSA
Related-QAR: 706379
Problem: NIN% only handles radices up to decimal 10
Diagnosis: Code overly restrictive
Solution: Make code able to accept radices up to decimal 36. NOUT% can handle
these, so no changes there. Change MONSYM to report IFIXX1 based on new range.
[End of TCO 6.1.1218]
TCO-number: 6.1.1219
Written-by: WAGNER Creation-date: 25-Feb-85 11:25:28
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: JSYSF
Related-QAR: 706383
Problem: User with infinite quota can create inferiors with negative quotas.
Diagnosis: Poor check made, assumption is that normal return from CKLIQ means
infinite quota, but it can also mean negative.
Solution: Make the jump conditional upon quota being non-negative.
[End of TCO 6.1.1219]
TCO-number: 6.1.1222
Written-by: LOMARTIRE Creation-date: 27-Feb-85 10:12:51
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: GTJFN
Related-SPR: 17125
Problem: G1%NLN (no long names) does not work when recognition is used.
Diagnosis: When the field is recognized, there is no check for the length
of the field which is being returned.
Solution: Before the field which was recognized is output, check the length
of the field. If it is too large, return the appropriate error; either
GJFX41 or GJFX42. Note that this is only done for recognition of file names
and extensions (from routines DEFNAM, DEFEXT, RECNAM, RECEXT).
[End of TCO 6.1.1222]
TCO-number: 6.1.1223
Written-by: MELOHN Creation-date: 27-Feb-85 21:10:30
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: LATSRV
Problem: If a LAT server crashes, TOPS-20 doesn't find out until the
server comes back and the first person tries to reconnect to the host.
This first person sees the banner followed immediatly by "node stopped
circuit", at which time all TTYs on that server are detached and
JOBCOFed. The person has to connect again in order to establish a new
circuit on the host, and the period between the time the server
crashes and the first person attempts to re-connect can be weeks,
during which time all of the users on that server remain connected and
can be charged for TTY connect time.
Diagnosis: A keep-alive timer needs to exist on the host side of the
LAT circuit to detect those times when the server does not or cannot
send its normal keep-alive message. If a reasonable number of server
keep alive intervals has passed without a message from the server, it
is safe to assume that the server has passed away and the circuit
should be stopped.
Solution: Implement such a timer, initially based on 6 times the
server keep-alive timer number of seconds. Stop the circuit if no
messages have been received from the server within that interval.
[End of TCO 6.1.1223]
TCO-number: 6.1.1225
Written-by: PAETZOLD Creation-date: 28-Feb-85 09:42:47
Edited-by: PAETZOLD Edit-date: 6-Mar-85 16:08:49
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: IPNIDV
Problem:
ILULK2 BUGHLTS from NISRV and IPIPIP.
Diagnosis:
This is a catch all BUGHLT for problems in the TCP/IP Ethernet buffer
handling stuff.
Caused by a race in the NIPSTO (start output routine).
Solution:
Use NTOB in the NCT as an interlock for NIPSTO so that all other
callers will stay away from this routine. This is OK since the current
possessor of the interlock will queue all linked buffers to NISRV
anyways. Initial code in NIPSTO should be PIOFF instead of NOSKED. Also
reset NBQUE field of buffers in NIPQUE when dequeueing them.
Add IPNDSW debuging code. This code links all send and receive buffers
given to NISRV and BUGHLTs (IPNMIS and IPNHIT) on any discrepancies.
Other causes of ILULK2s during the interim period of these changes were
caused by bugs induced by the debuging code. There are no known ILULK2
problems in the TCP/IP at this time.
[End of TCO 6.1.1225]
TCO-number: 6.1.1227
Written-by: LOMARTIRE Creation-date: 4-Mar-85 07:57:31
Edited-by: LOMARTIRE Edit-date: 12-Mar-85 10:45:17
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: MEXEC
Related-TCO: 6.1.1247
Problem: CFSVFL BUGHLTs
Diagnosis: The starting of CFS at system startup is very timing dependent
and is subject to variations to timing changes elsewhere in the monitor.
Recently, something has changed in the system startup timing that causes the
system not to be fully "joined" to the cluster when we try to mount our PS.
This can result in confusion since we may obtain the wrong access. This will
eventually result in a CFSVFL BUGHLT. One reason we were not fully joined is
that SCA usually is stuck on buffers due to MSCP connections being established
before we join the cluster. A temporary fork is around to help solve this
problem but it is started too late to be of help once we call CFSJYN.
Solution: TEFORK is the temporary fork used at system startup to insure that
the SCA buffers are replenished. Move it after the call to PPDINX and before
the call to IPACHK. In this way, SCA has been initialized and we have a TEFORK
ready to call SC.ALM whenever needed.
[End of TCO 6.1.1227]
TCO-number: 6.1.1228
Written-by: MOSER Creation-date: 5-Mar-85 10:31:50
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: TTYSRV
Problem: Still more ITRLGOs. This one is from TTYSRV when the ACJ refuses to
allow line speed changes.
Solution: ERJMP .+1 after MTOPR in TTCKSP.
[End of TCO 6.1.1228]
TCO-number: 6.1.1229
Written-by: WAGNER Creation-date: 5-Mar-85 10:48:46
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: FORK
Related-QAR: 838045
Problem: Performance Issues
Diagnosis: SETJSB doesn't check to see if it needs to do mapping before doing
it. Mapping is expensive.
Solution: Lets see if we need to spend the effort first.
[End of TCO 6.1.1229]
TCO-number: 6.1.1231
Written-by: PALMIERI Creation-date: 5-Mar-85 13:48:03
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: Monitor
Routines-affected: DTESRV GLOBS STG
Problem: Too many BUGINFs when MCB DTE is initialized or rebooted.
Diagnosis:
Solution: Add DTBUGX which when zero suppresses BUGINFs DTESUI, DTETPR, DN20ST
for MCB DTEs only. Default is non-zero. Place DTEWAT BUGINF under
FTDEBUG.
[End of TCO 6.1.1231]
TCO-number: 6.1.1232
Written-by: HAUDEL Creation-date: 5-Mar-85 14:32:35
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: SCAPAR MONSYM
Problem: SCA's connection management symbols are not available to
the users of the SCS%.
Diagnosis: The connection management symbols are defined in SCAPAR and
not in MONSYM.
Solution: Define new symbols in MONSYM and have the symbols in
SCAPAR point to those in MONSYM.
[End of TCO 6.1.1232]
TCO-number: 6.1.1233
Written-by: GLINDELL Creation-date: 5-Mar-85 15:01:44
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: nrtsrv cthsrv
Related-QAR: 838026
Problem:
NRT and CTERM does not do the right thing when
^ESET NO LOGINS DECNET-TERMINAL is set. NRT tests
for 'remote terminals' instead of for 'decnet terminals'
while CTERM doesn't test anything at all. Also, NRT
returns the wrong reason code 'node shutting down' instead
of 'access not permitted'.
Diagnosis:
Solution:
Test SF%MCB for both NRT and CTERM. Use disconnect reason
code RSNACR (access not permitted).
[End of TCO 6.1.1233]
TCO-number: 6.1.1234
Written-by: GLINDELL Creation-date: 5-Mar-85 15:37:39
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: JSYSA
Related-QAR: 838052
Problem:
Any user can get any password on a system that is not using password
encryption. This bug is also in all 4.1 and 5.1 systems. Also, this
can be done in a finite time, more exactly proportional to 128 times
the number of characters in the password.
Diagnosis:
Check password code in JSYSA is not defensive enough. Monitor uses
one address when reading bytes that match the correct password, another
address when reading bytes that did not match. Clever usage of address
break will use this fact.
Solution:
Use the one and same address whether good or bad bytes are read.
The address break will not reveal anything that way. Code affected
is at CHKPS3 and CHKPS5.
[End of TCO 6.1.1234]
TCO-number: 6.1.1236
Written-by: PALMIERI Creation-date: 6-Mar-85 10:19:10
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: Monitor
Routines-affected: SCJSYS D36PAR
Problem: Random BUGHLTs when privileged user continually opens the maximum
number of logical links
Diagnosis: Port database in SCJSYS is built to accommodate maximum number
logical links and is indexed by link number. However link numbers
are assigned by the lower layer (SCLINK) when the logical link
is opened and numbers greater than maximum logical link value
may be assigned. This occurs because SCLINK does not immediately
release an SLB for a logical link but instead puts it on a
queue to be released later. The user is told that the link is
closed and may then open another. If that happens before the
SLB for the previous link is released the link number cannot be
reused. SCLINK expands its database and can then assign a link
number that exceeds maximum links. This number is given to SCJSYS.
This causes SCJSYS to index off the end of its port database and
trash memory it does not own.
Solution: Add a table of pointers to the port database indexed by port number.
Make this table maximum links times 2 for unprivileged users and
maximum links plus 10 for privileged users. If the link number
assigned exceeds the size of the indirect table close the link
and return MONX07 error to user. The indrect table facilitates
not having to build the port database until the port is opened.
[End of TCO 6.1.1236]
TCO-number: 6.1.1238
Written-by: MCCOLLUM Creation-date: 6-Mar-85 14:54:28
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: MANY
Problem:
There are nearly 400 undocumented BUGxxx's in the monitor as well as a few
hundred improperly documented BUGxxx's.
Diagnosis:
Same.
Solution:
Document all the BUGxxx's that are not under DEBUG=1 and fix all the improperly
documented BUGxxx's so the documentation people can distribute BUGS.MAC.
[End of TCO 6.1.1238]
TCO-number: 6.1.1239
Written-by: PAETZOLD Creation-date: 6-Mar-85 16:11:00
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: monitor
Routines-affected: STG
Problem:
Should be able to turn off the IPNIN and IPCIN code even though it is not
a supported configuration. This is possible in 5.4.
Diagnosis:
oversight.
Solution:
Key the IMPANX and IMPDV loadmodules off of ANXN under control of NETN.
Also create an dummy for IMPCHK when ANXN is off and NETN is on.
[End of TCO 6.1.1239]
TCO-number: 6.1.1241
Written-by: GROSSMAN Creation-date: 7-Mar-85 16:09:39
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: LLMOP
Problem: COMMMS BUGHLTs when running DFNIS (sometimes called RMTCON).
Diagnosis: ^C'ing out of DFNIS at the wrong moment leaves some buffers laying
around. When the fork gets reset, these buffers get returned to the memory
manager. Unfortunately, NISRV still has pointers to the buffers, and
eventually returns them to LLMOP. LLMOP then tries to return them to the
memory manager again, resulting in a COMMMS BUGHLT.
Solution: Create an "ABORT" bit for requests. When LLMOP tries to clean up
the request buffers, it first see's if the request has completed, if it has,
it returns the buffer immediately, otherwise, it just sets the "ABORT" bit.
Eventually, NISRV returns the buffer. If the abort bit is on, the buffer
is just released with no further ado.
[End of TCO 6.1.1241]
TCO-number: 6.1.1242
Written-by: PRATT Creation-date: 7-Mar-85 19:13:44
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: IPCF
Problem:
1) Must be whopr to use the QUEUE jsys.
2) IP%MON is not being cleared when it should which would
allow a user to set the "sent by monitor" bit.
Diagnosis:
1) The VALARG routine was checking 3 fields including
the field IP%CFC for a non-zero value when the user
wasn't priv'd. The new .IPCCG value (sent on behalf
of the QUEUE jsys) doesn't need privs. All the old values do.
2) Typo in the code
Solution:
1) Check IP%CFC for .IPCCG after checking the status of
IP%CFP, and IP%CFM.
2) Change the T1 to a P1
[End of TCO 6.1.1242]
TCO-number: 6.1.1244
Written-by: GLINDELL Creation-date: 7-Mar-85 22:19:11
Edited-by: GLINDELL Edit-date: 7-Mar-85 22:22:26
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: POSTLD
Related-QAR: 838076
Problem:
Illegal memory read in POSTLD if the monitor PDV is missing.
This should only happen if a bad .CCL file is used to link the
monitor.
Diagnosis:
POSTLD needs to find the monitor PDV in order to locate the symbol
table. The .POLOC function of PDVOP% is used. If there is no name
with the requested name, then the PDVOP% will return with a 0 PDVA
and a 0 count of items returned. However, when I wrote the code
I thought the PDVOP% would generate an error if no matching PDV
was found. Since this is not the case, POSTLD will pick up a 0
for the PDVA and after that it's downhills.
Solution:
Check for 0 items returned after the PDVOP%, and if no PDV is found,
issue an appropriate error message and abort POSTLD.
Also, add some information on how to debug POSTLD in a comment at the
top of the module.
[End of TCO 6.1.1244]
TCO-number: 6.1.1245
Written-by: GRANT Creation-date: 11-Mar-85 07:46:45
Edited-by: GRANT Edit-date: 11-Mar-85 10:00:03
Edit-checked: Yes Document: Yes TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: cfssrv MEXEC phymvr globs PROLOG STG
Problem: Jobs gets hung when another system in the cluster is shutdown for PM.
Diagnosis: The MSCP server is invisible to the operator on the system going
down and to users on the other systems who have structures mounted through the
MSCP server. The software provides no help in this siutation.
Solution: When a system is going to cease timesharing, check to see if it has
any disks onlined by other systems through its MSCP server. If so, warn the
operator that the other systems must be checked for possible structure
dismounting instructions. On the other systems, check for any structures
mounted through the MSCP server of the system going down. If there are any,
warn the operator about the other system's pending shutdown and list the
structures that should be dismount.
[End of TCO 6.1.1245]
TCO-number: 6.1.1247
Written-by: LOMARTIRE Creation-date: 12-Mar-85 10:45:16
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: CFSSRV MEXEC
Related-TCO: 6.1.1227
Problem: CFSVFL BUGHLTs at system startup.
Diagnosis: TCO 6.1.1227 tried to solve this problem but only fixed part of
the problem. There still must be a more deterministic way to insure that
we have joined with all existing TOPS-20 systems.
Solution: Add code to routine CFSJYN which will make this routine return
only once we are sure that we have completely joined the cluster. We will
wait until we have a CFS connection to every TOPS-20 system to which we have
at least one open path. The extra DISMS in MEXEC after the CALL CFSJYN is
now no longer needed.
[End of TCO 6.1.1247]
TCO-number: 6.1.1250
Written-by: MELOHN Creation-date: 12-Mar-85 18:46:38
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: LATSRV
Problem: When bias knob 20 set set, LAT ends up retransmitting up to
40% of all of its messages. This means more work for LATSRV, the
server, and more unnecessarily retransmitted messages on the Ethernet.
Also, LCP displays the circuit retransmit timer is in seconds,
when it is actually in scheduler cycles. Quite a difference.
Diagnosis: The LAT host retransmit timer was designed based on the
assumption that a scheduler cycle happens every 20ms. This is not a
valid assumption when the bias knob is set or when the system is very
idle and the LAT scheduler routine is run as part of the idle loop.
Solution: Change the retransmit timer to be based on TODCLK, like the
keep alive timer. Change the LATOP% jsys to expect the retransmit
timer value in milleseconds, just like the various circuit timers in
the server.
[End of TCO 6.1.1250]
TCO-number: 6.1.1251
Written-by: MELOHN Creation-date: 12-Mar-85 18:51:56
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: LATSRV
Problem: Various LATOP% parameters default to bogus values. The Host
number which is supposed to be settable via the NODE command in SETSPD
isn't.
Diagnosis: The defaults grew out of the values used in standalone. No
code existed to set the host number.
Solution: Make the default values and ranges more realistic. Read the
host number from RTRADR at LATINI time.
[End of TCO 6.1.1251]
TCO-number: 6.1.1252
Written-by: MELOHN Creation-date: 12-Mar-85 18:58:57
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: LATSRV
Problem: Users report being "dropped" by the LATBOX but there is no
evidence that anything was wrong, other than a stopped session at the
user's terminal.
Diagnosis: When an illegal message type is received, a LATIMT BUGCHK
is recorded and the circuit terminated. If the first part of the
message is readable, but the slot data in the message is garbaged, the
circuit is stopped, but no BUGCHK issued. LATIMT should probably be a
BUGINF anyway.
Solution: Make the LATIMT a BUGINF. Add a new BUGINF LATIST which
will print out when a user is dropped due to an illegal slot within a
seemingly legal message.
[End of TCO 6.1.1252]
TCO-number: 6.1.1253
Written-by: MCCOLLUM Creation-date: 13-Mar-85 14:27:38
Edited-by: MCCOLLUM Edit-date: 13-Mar-85 14:41:07
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: DISC
Related-QAR: 838064
Problem:
GTFDB3 crashes when renaming files.
Diagnosis:
When renaming a file to itself, RNAMF% should return a RNMX10 (Source file
is not closed) error. There is a coding error in this path that prevents
RNAMF% from performing the check that determines if the file is indeed
open. It wrongly assumes that the file is not open and proceeds to trash
the FDB of the already existent file. A last second sanity check call to
GETFDB finds this and causes the crash.
Solution:
Fix the coding error and allow RNAMF% to return RNMX10.
[End of TCO 6.1.1253]
TCO-number: 6.1.1255
Written-by: PALMIERI Creation-date: 13-Mar-85 15:38:12
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: Monitor
Routines-affected: SCJSYS
Related-QAR: 838043
Problem: Previous DECnet monitors allow a program to do an implied connect
accept by doing a SOUT/SOUTR after the OPENF on a DECnet link.
6.1 does not.
Diagnosis: No code
Solution: Add code to wait for connect and accept it if SOUT/SOUTR is done
and the link is in connect wait/connect received state.
[End of TCO 6.1.1255]
TCO-number: 6.1.1256
Written-by: PAETZOLD Creation-date: 13-Mar-85 16:37:40
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: Yes
Program: monitor
Routines-affected: STG
Problem:
Channel detected write parity errors from the last quadword of memory.
Diagnosis:
Hardware design problem in the KL10.
Solution:
Add conditional assembly in STG to force NMAXPG down by one page if MAXCOR
is set for 4.0 Meg.
[End of TCO 6.1.1256]
TCO-number: 6.1.1258
Written-by: PALMIERI Creation-date: 13-Mar-85 16:51:31
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: Monitor
Routines-affected: D36COM SCLINK
Related-QAR: 838082
Problem: 36 bit byte mode does not work from 6.1 to 5.1 or 6.1 to 6.1.
Diagnosis: If segment size of message falls somewhere in a full word other
than at the end, the rest of the bytes of the word may not be sent.
Solution: Send a maximum of segment size modulo 9 bytes in a message. Send
any remaining bytes in the following message.
[End of TCO 6.1.1258]
TCO-number: 6.1.1260
Written-by: PALMIERI Creation-date: 13-Mar-85 17:03:39
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: Monitor
Routines-affected: ROUTER
Problem: Loop node does not work when ROUTER is an endnode.
Diagnosis: The routing algorithm choses the destination as the next hop for
the NI but since we are always the destination when
performing loop node we fail to get the message back since
the NI cannot receive its own transmitted messages.
Solution: If message is destined for ourselves send it to the designated
router if there is one. If not send it to ourselves and never get
it.
[End of TCO 6.1.1260]
TCO-number: 6.1.1263
Written-by: WAGNER Creation-date: 14-Mar-85 13:46:34
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: MONSYM
Related-SPR: 20644
Problem: DOCUMENTATION FOR .SKRJP FUNCTION OF SKED% IS WRONG, AND MISSING SOME
SYMBOLS
Diagnosis: SEE ABOVE
Solution: CORRECT THE DOCUMENTATION, AND IMPLEMENT 2 NEW SYMBOLS: .SACSH, AND
.SACLU
[End of TCO 6.1.1263]
TCO-number: 6.1.1264
Written-by: MELOHN Creation-date: 14-Mar-85 15:35:39
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: LATSRV
Problem: The third service offered by a TOPS-20 host to a PLATO does
not appear on the PLATO list of available services.
Diagnosis: The Multi-cast change flags were not being set when a new
service was added. Apprently VMS doesn't set them either, but the
PLATO allows the second service to be added without setting the change
flags so as not to upset VMS while the third or more service must have
the change flags set. *yuk*
Solution: Set the change flags whenever we add a new service, up to
the maximum number of services offered.
[End of TCO 6.1.1264]
TCO-number: 6.1.1265
Written-by: MELOHN Creation-date: 14-Mar-85 15:52:31
Edited-by: PRATT Edit-date: 14-Mar-85 16:33:03
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: STG
Related-TCO: 6.1.1268
Related-QAR: 838073
Problem: Need more customer defined terminal types.
Diagnosis: If we reserve a new block for DEC as well, customers who
need larger amounts of terminals than we can to build in can add them
at the end without worrying about DEC coming along some day and using
the slots for our new terminal types.
Solution: Add more - 10 reserved for customers, 10 for DEC.
[End of TCO 6.1.1265]
TCO-number: 6.1.1267
Written-by: MELOHN Creation-date: 14-Mar-85 16:31:12
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: TTYSRV TTYDEF NRTSRV
Related-QAR: 838078
Problem: System halted with COMMMS. There were 13 SCLSBJ and 2
NVTPCL BUGCHKs queued on SEBQOU.
A user on terminal 31 was set hosted (.MOSNH had been issued). TTNUS
was set in the terminal's dynamic data but the contents of TTULL was
101 (octal) and not the address of a NRB. This discrepancy caused the
BUGHLT and BUGCHKs when MCSRV tried to service the line.
Diagnosis:
After careful scrutiny we noticed that TTLMAX and TTULL share the same
word in the dynamic data. TTLMAX is the maximum of TTLINE, the line
counter. TTULL is the address of the NET USER logical link. The
comment lines in TTYDEF tell us the assumption is TTLMAX will not be
in use when SET HOST is in effect. Unfortunately there is no code in
TTYSRV to support this assumption.
The value in TTULL at the time of the crash was the same as the value
in TTLINE, indicating that routine INCLIN(TTYSRV) had recently
deposited the value. INCLIN is called for example by the BOUT% JSYS
(TCO->TCOY->TTCO1 (via CHITAB dispatch)) when a ^J is being output to
the terminal.
Another way for TTLMAX to get set (and TTULL to get zapped) is by the
MTOPR function .MOSLM which directly stores into TTLMAX.
Since the SET HOST (.MOSNH) function does not freeze any processes in
the job, or prevent non job output, it is possible for the value in
TTULL to get lost.
The careful reader would have immediately noticed that under versions
6.0 and 5.1 TTULL was also overlayed on the TTLMAX word. Correct, but
now the field for the escape character (TTUEC) is 774000,,0 whereas
under previous versions it was 177,,0. This change has been made to
accomodate a 29 (?) bit address for the field TTULL, which is
allocated out of extended resident free space.
This means that under versions 6.0 and before the test at INCLIN would
invariably prevent the store of a new value in TTLMAX. However, with
the new position of TTUEC a user supplying an escape character of "@"
or greater causes the value in TTLMAX to be negative! This negative
value of TTUEC and TTULL then gets overwritten by the code at INCLIN.
Of course our user was an extremist, he supplied tilde (code 176) for
his escape character.
Solution: Solution:
Forget about saving a word in the dynamic data, nobody will notice
because the system will be crashing. Instead increase the dynamic
data and seperate TTLMAX and TTULL.
Change the lines in TTYDEF (changes are in lowercase):
TTLMAX==34 ;MAXIMUM OF TTLINE
DEFSTR TTULL,TTLMAX,35,29 ;NET USER LOGICAL LINK
; - WHEN TTLMAX NOT IN USE
DEFSTR TTUEC,TTLMAX,6,7 ;NET USER ESCAPE CHAR
:
:
TTDDLN==37 ;DEFAULT DYNAMIC DATA SIZE
to be:
TTLMAX==34 ;MAXIMUM OF TTLINE
:
:
ttlnuw==37 ; net user word
defstr ttull,ttlnuw,35,29 ; net user logical link
defstr ttuec,ttlnuw,6,7 ; net user escape char
:
:
ttddln==40 ; default dynamic data size
[End of TCO 6.1.1267]
TCO-number: 6.1.1271
Written-by: PRATT Creation-date: 14-Mar-85 23:00:19
Edited-by: PRATT Edit-date: 14-Mar-85 23:13:22
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: JSYSA
Problem:
Any user supplying bad length arguments to the QUEUE% jsys can
cause a ILLUUO bughalt.
Diagnosis:
The Queue jsys code was trying to verify the users arguments and
found an error. It took the error return which tried to clean up
by releasing free space used for building an IPCF packet.
Unfortunately we hadn't gotten the free space yet which happens
later on in the code. The QUMSG location had garbage in it and
when we tried to release that, we die a horible death.
Solution:
In QUVERF, change the two error conditions before the call to ASGPGS
to generate an illegal instruction trap. After the call, use RETBAD
so we can return and clean up the free space used.
[End of TCO 6.1.1271]
TCO-number: 6.1.1272
Written-by: GRANT Creation-date: 15-Mar-85 08:18:30
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PHYSIO
Problem: Impossible to figure out the algorithm for homeblock checking.
Diagnosis: Routine UPDPDB is too hard to read.
Solution: Restructure the code. No logic changes intended.
[End of TCO 6.1.1272]
TCO-number: 6.1.1273
Written-by: GRANT Creation-date: 18-Mar-85 10:05:38
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: phyklp
Problem: Occasional problems with CI wires going from good to bad and from
bad to good.
Diagnosis: There is a problem in the KLIPA (to be ECOed) which is
aggrevate by frequent loopback. TOPS-20 sends 2 loopbacks per second.
Solution: Change TOPS-20 to send only 1 loopback per second; this should
not deminish the monitor's ability to detect real problems.
[End of TCO 6.1.1273]
TCO-number: 6.1.1275
Written-by: GROSSMAN Creation-date: 18-Mar-85 15:12:10
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: LLINKS
Problem: Invalid DECnet event 3.0 from LLINKS.
Diagnosis: An NSP Disconnect Confirm message with a bad reason code was
being handled incorrectly.
Solution: Make LLINKS follow the NSP version 4.0 spec in this regard.
Note that if VMS followed the spec in this regard, this problem would not
have occurred.
[End of TCO 6.1.1275]
TCO-number: 6.1.1276
Written-by: PALMIERI Creation-date: 18-Mar-85 16:56:29
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: Monitor
Routines-affected: GTJFN
Problem: Wildcard for nodename not permitted for network parse-only JFN.
Diagnosis: Code is too restrictive.
Solution: Remove restriction and allow wildcard in nodename.
[End of TCO 6.1.1276]
TCO-number: 6.1.1277
Written-by: MELOHN Creation-date: 19-Mar-85 17:30:33
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: TTYSRV
Problem: Users on VT2xx terminals in VT2xx, 7-bit mode see garbage
when hosting via NRT to a remote 20.
Diagnosis: Parity checking is enabled for NRT (and all other line
types). VT200 in 7-bit control mode use the 8th bit not for parity but
for 8-bit characters.
Solution: Parity is for farmers, not for NRT, CTERM, or LAT lines.
Remove the TRZ(TRO) to clear/set parity in PARTBL:.
[End of TCO 6.1.1277]
TCO-number: 6.1.1278
Written-by: GROSSMAN Creation-date: 20-Mar-85 09:40:01
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: NIUSR
Problem: The Read Portal Counters function of the NI% JSYS does not convert
global job numbers to local indexes.
Diagnosis: Oops!
Solution: Add a call to GL2LCL to the portal locating routine.
[End of TCO 6.1.1278]
TCO-number: 6.1.1279
Written-by: LOMARTIRE Creation-date: 20-Mar-85 10:48:07
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: APRSRV GTJFN
Related-TCO: 6.1.1127
Problem: ILLUUO BUGHLTs.
Diagnosis: TCO 6.1.1127 attempted to solve the cause of ILLUUOs from passing a
bad byte pointer to GTJFN. The changes were made to KIMXLP under a false
assumption.
Solution: Remove the code added to KIMXLP by TCO 6.1.1127. Instead, rewrite
GTJFN so that it does an XCT Q1 not an XCT -2(P) since P is not preserved when
we are in KIMXLP.
[End of TCO 6.1.1279]
TCO-number: 6.1.1280
Written-by: MELOHN Creation-date: 20-Mar-85 14:55:44
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: LATSRV
Problem: LCP show server Quack does not display the location string
of server Quack.
Diagnosis: Recent additions to the LAT circuit database were made at
the end of the CB BEGSTR. Unfortunetly the LATOP% jsys BLTs the last
half the the CB to user context as the return for the get server
information function.
Solution: Move the new cells to a more appropriate place in the CB.
Add the warning to the CB that the data structures in the last half of
the BEGSTR are returned as part of the jsys, and should not be changed
without corresponding changes to the LATOP code.
[End of TCO 6.1.1280]
TCO-number: 6.1.1281
Written-by: MOSER Creation-date: 21-Mar-85 11:15:03
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: MEXEC
Problem: When a job is logged out because of a carrier off action the wishes
of the ACJ are ignored. If the ACJ refuses logout the job is logged out anyway!
Diagnosis: Coded that way. This is inconsistent with regular logout
using the LGOUT Jsys where the ACJs wish is honored.
Solution: If the ACJ denies the request to logout wait 1 minute and ask it
again.
[End of TCO 6.1.1281]
TCO-number: 6.1.1282
Written-by: LOMARTIRE Creation-date: 21-Mar-85 16:13:30
Edited-by: LOMARTIRE Edit-date: 17-Apr-85 14:27:20
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PAGUTL STG GLOBS
Related-TCO: 6.1.1328
Problem: PITRAP BUGHLTs
Diagnosis: During the lookup of a resource block in HSHLOK, one of the
pages which is referenced is no longer in core. Since CFS locks all it's pages
down, and never unlocks them, someone else is unlocking the page. We need a
diagnostic patch which will catch the culprit.
Solution: In the routine MULK1, check to see if the page to be unlocked is
a page from CFSSEC. If so, die with an ILULK5 BUGHLT. This feature is
controlled by the location CFUNLF. When zero, this checking will be done.
When non-zero, it will not. CFUNLF is zero by default.
[End of TCO 6.1.1282]
TCO-number: 6.1.1283
Written-by: GROSSMAN Creation-date: 21-Mar-85 23:18:52
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PHYKNI
Problem: KNISTP BUGCHK's
Diagnosis: Keep alive timer for KLNI was implemented wrong. Every five
seconds, KLNI is checked for activity within the last 10 seconds. If
there has been no activity in the last 10 seconds, NISRV gives the KLNI
a command. This means that on an idle system, the KLNI is processing
a command every 10 seconds. If the keep alive routine in NISRV determines
that it hasn't heard from the KLNI in 15 seconds, it generates a KNISTP
BUGCHK, and reloads the KLNI.
Due to variability in the second level clocks from the scheduler, the
KLNI keep alive routine may be called in such a manner that it won't queue up
a command to the KLNI for about 15 seconds. This results in a KNISTP BUGCHK.
Solution: Halve the minimum activity interval. Ie: if the KLNI has done nothing
in the last 5 seconds, give it a command. This allows a large margin of
error for level 2 clock drift.
[End of TCO 6.1.1283]
TCO-number: 6.1.1284
Written-by: GRANT Creation-date: 22-Mar-85 06:45:40
Edited-by: GRANT Edit-date: 12-Aug-85 11:50:19
Edit-checked: No Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: MEXEC scampi phyklp PROLOG globs STG
SCSJSY
Related-QAR: 838136 838142
Problem: SCAEBD BUGHLT (Error while doing Buffer Defferal)
Diagnosis: Two systems are simultaneously running CHECKD at system startup.
Facts to remember: 1) MSCP server doesn't open a listener until after CHECKD
finishes, 2) MSCP continuously tries to connect to another 20's MSCP server
once the virtual circuit is open. These are both the desired actions. However,
during the time MSCP's connection attempts fail, many SCA connect blocks are
marked for reaping but the fork which does the reaping doesn't get started
until after CHECKD finishes! This deadly embrace causes SCA to use up the
entire section's worth of buffers for the connect attempts, thus producing the
SCABSF (Buffer Section Full) BUGCHK and finally the SCAEBD BUGHLT.
Solution: What was once TEFORK (temporary fork) will now live on through the
life of the system. It gets started immediately after starting the CI20 and
will handle SCA buffer creation, SCA connect block reaping, and (while we're
at it) loading/dumping of the CI20. The fork will be called CIFORK and usually
will be sitting in the scheduler test CITEST waiting for any of the bits in the
flag word CIFRKF to get set. There are bits for each of the 3 actions CIFORK
performs.
Comments: This eliminates SCA's use of DDMP to do SCA buffer creation. Also,
moving loading/dumping of the CI20 away from Job 0 may eliminate some of the
KLPNRL BUGHLTs you get due to the deadly embraces that occur, but it is not
a 100% cure; that is planned for Release 7.0.
[End of TCO 6.1.1284]
TCO-number: 6.1.1285
Written-by: GROSSMAN Creation-date: 25-Mar-85 10:50:56
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: NISRV PHYKNI
Problem: Spurious KLNI Reload Timeouts, resulting in KNIRTO BUGCHK's. Sometimes
KLNI is not started because of this.
Diagnosis: Reload timeouts being performed wrong. Timing starts whenever the
reload request is made. During system startup, the reload request happens
almost immediately, KNILDR doesn't run until CHKR gets around to it. If the
startup procedures take too long, KNIRTO's result. Usually, they are spurious
and have not effect onthe KLNI, but sometimes, they cause the KLNI to be
shut down.
Solution: Get rid of KNIRTO. Don't time out KNILDR. When CHKR (via KNIJB0)
runs KNILDR, check the state of the KLNI after KNILDR completes. If the
KLNI isn't running, shutdown the KLNI and issue a KNIRLF (Reload Failed)
BUGCHK.
This can happen if KNILDR dies while reloading a KLNI, or if someone put a
bogus program that just happens to be called KNILDR up on SYSTEM:.
[End of TCO 6.1.1285]
TCO-number: 6.1.1286
Written-by: LOMARTIRE Creation-date: 25-Mar-85 11:20:50
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PHYSIO MSTR MONSYM
Related-QAR: 706407
Problem:
Whenever a cluster change occurs, the monitor is going to force all dual
ported disks offline while it goes through a homeblock check on them. This
causes MOUNTR to print out that the "previously mounted structure is no longer
mounted". This can be confusing since this homeblock check is temporary and
should be transparent to the user.
Diagnosis:
If a .MSRUS function of MSTR% is done during the time that TOPS-20 has
forced the disk offline, MS%OFL will be returned. MOUNTR interprets this as a
true physical offline when, in fact, the disk is still online but it is just
temporarily inaccessible.
Solution:
The monitor needs a way to return the status of a disk which it has forced
offline in a way other than MS%OFL. Invent a new bit, called MS%IAC, which will
be returned whenever the disk is U1.OFS (forced offline). This bit is returned
in additon to whatever other bits are appropriate (such as MS%OFL). Now, MOUNTR
can test for MS%IAC and take more desirable actions under this special
situation.
[End of TCO 6.1.1286]
TCO-number: 6.1.1287
Written-by: MCCOLLUM Creation-date: 25-Mar-85 15:01:51
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: FORK
Problem:
CFORK% returns illegal instruction trap for certain resource exhaustion
problems. CFORK% is documented as returning +1 and error code in AC 1
for all error types.
Diagnosis:
As above.
Solution:
Change an ITERR to a RETERR.
[End of TCO 6.1.1287]
TCO-number: 6.1.1288
Written-by: LOMARTIRE Creation-date: 26-Mar-85 08:51:11
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: FORK
Related-QAR: 706305
Problem:
The RT%DIM bit of the RTIW% JSYS has no effect. The deferred terminal
interrupt mask is always returned regardless of the setting of the RT%DIM bit.
Diagnosis:
There was never any code to check for the RT%DIM bit.
Solution:
Add code to check to see if the user specified RT%DIM before placing the
mask in T3.
[End of TCO 6.1.1288]
TCO-number: 6.1.1289
Written-by: LOMARTIRE Creation-date: 26-Mar-85 11:15:10
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: JSYSA
Related-QAR: 706307
Problem:
GTDIR% returns illegal memory write error, yet argument block and all
addresses are writeable
Diagnosis:
The range checking code is off by one.
Solution:
Decrement the value of Q2 (the argument block length) before the
comparisons so that it reflects the highest value to be returned.
[End of TCO 6.1.1289]
TCO-number: 6.1.1292
Written-by: LOMARTIRE Creation-date: 28-Mar-85 09:34:19
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: GTJFN
Related-SPR: 19910
Problem:
If there are files (such as A.A.2, B.A.2, C.A.2) which have been deleted
but not expunged with a higher generation number than those of the same name
(such as A.A.1, B.A.1, C.A.1) a command like COPY *.A.0 (TO) NUL: will only
copy the first file; A.A.1.
Diagnosis:
GNJFN% always has VERLUK look for deleted files even if the GTJFN% call
did not consider them. So, B.A.1 and C.A.1 will not be found because the
higher, deleted, versions will be found first. Then, when GNJFN% notices that
the file is deleted, it attempts to find the next one. Of course, there is no
next one, so the GNJFN% fails.
Solution:
In GNJFN1, check the flags passed to GNJFN% which reflect the original
GTJFN% call. If GJ%GND (deleted files were not considered) is set, do not set
IGDLF (ignore the deleted bit). This way, deleted files will be found only if
they were originally requested.
[End of TCO 6.1.1292]
TCO-number: 6.1.1293
Written-by: GROSSMAN Creation-date: 28-Mar-85 09:57:21
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: APRSRV STG GLOBS
Problem: BUGHLT code can lose valuable PI information if no SYSERR blocks are
available. BUGHLT code also loses state of PI system ON/OFF bit.
Diagnosis: BUGH0 (in APRSRV) does a PIOFF before saving any PI information.
This loses the state of the PI system ON/OFF bit.
Solution: When a BUGHLT occurs:
1) Save the current CONI PI, in PISV1.
2) Turn off the PI system (PIOFF).
3) Acquire the bug lock (AOSE BUGLCK).
4) Copy PISV1 to PISAV.
In case a recursive BUGHLT occurs, only PISV1 will be disturbed. PISAV will
contain the PI status from the original BUGHLT.
[End of TCO 6.1.1293]
TCO-number: 6.1.1294
Written-by: GROSSMAN Creation-date: 28-Mar-85 15:06:19
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: LLMOP
Problem: LLMOP% JSYS does not accept a service password in the Reserve
Console (.RCRSV) function.
Diagnosis: Code never implemented.
Solution: Write the code.
[End of TCO 6.1.1294]
TCO-number: 6.1.1295
Written-by: LOMARTIRE Creation-date: 28-Mar-85 15:25:18
Edited-by: LOMARTIRE Edit-date: 28-Mar-85 15:27:42
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: DIRECT
Related-QAR: 838071
Problem:
TCO 6.2005 was never installed in either 6.0 or 6.1. It attempts to solve
the problem of receiving "?No such directory name" during directory name field
recognition when a file of the same name exits.
Diagnosis:
Solution:
Install it.
[End of TCO 6.1.1295]
TCO-number: 6.1.1296
Written-by: MCCOLLUM Creation-date: 29-Mar-85 15:24:51
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: GTJFN
Problem:
RELBAD BUGHLTs.
Diagnosis:
When attempting to perform recognition on a file name and the default device
name in the GTJFN block is DSK*:, routine DEFDEV will call STRDVD to translate
DSK*: to the public structure name. STRDVD alters the byte pointer in FILOPT
when it changes the free space block to accomdate longer strings. In this case,
however, other routines depend upon the old value in FILOPT and assume it
will not change over the call to DEFDEV.
Solution:
Since the new value in FILOPT is only in use during the call to DEFDEV, save
the value of FILOPT before calling DEFDEV. Restore FILOPT to its initial
state after the call to DEFDEV is completed.
[End of TCO 6.1.1296]
TCO-number: 6.1.1297
Written-by: TBOYLE Creation-date: 29-Mar-85 15:58:02
Edited-by: TBOYLE Edit-date: 1-Apr-85 16:06:05
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PAGEM
Problem: PTNON0 BUGHLTS. The application was 1022.
Diagnosis: PMAP to change another forks address space crashes
because the code in MSETPT does not remain NOSKED between
the removing of page-table entries and the adding of new ones.
In this case, the target fork intervened and faulted a private
page.
Solution: Be NOSKED during the release and set page-table entry
process. Swap pages in beforehand to prevent NOSKED page-faults.
This is also a significant improvement over going OKSKED in the middle
of critical code to prevent NOSKED page-faults!
We will include this change for 6.1 to solve 1022's invocation
of these PTNON0's. However, we must plan to revamp this code
during the next release because several of these routines have
races and also racy methods of preventing NOSKED page-faults.
[End of TCO 6.1.1297]
TCO-number: 6.1.1298
Written-by: GROSSMAN Creation-date: 30-Mar-85 09:33:49
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: LLMOP
Problem: KPALVH's, ILMNRF's and many other BUG.'s sometime after receiving
an LLMOP Request Counters message.
Diagnosis: When LLMOP receives a Request Counters message, it generates an
internal request block and puts it on a request queue. It then asks NISRV
for the desired counters. When NISRV returns the counters sometime later,
LLMOP completes the request, and deallocates the request block.
Unfortunately, LLMOP never removed the request block from the request queue,
and it now has a stale pointer to some memory it used to own.
In any case, somebody else eventually acquires the deallocated memory, and
it's downhill from there. In one particular case, the memory was picked up
by SCLINK, and LLMOP's request queue ended up pointing at SCLINK's logical
link list. LLMOP then tried to find something on the request queue, and
got lost, resulting in a KPALVH.
Solution: Don't queue the request. There was never any reason to do so, as
LLMOP kept track of th request block by storing it's address in UNRID of
the NISRV arg block.
[End of TCO 6.1.1298]
TCO-number: 6.1.1299
Written-by: GROSSMAN Creation-date: 30-Mar-85 11:24:15
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: LLMOP
Problem: Lost memory when using LLMOP functions .RCRSV, .RCREL, and .RCRBT.
Diagnosis: Each of these functions allocates an LLMOP request block, and
never returns it.
Solution: Set the 'abort' bit in the request block for each of these functions.
When the transmit complete interrupt happens, this will cause the block to
be deallocated.
[End of TCO 6.1.1299]
TCO-number: 6.1.1300
Written-by: PAETZOLD Creation-date: 31-Mar-85 13:07:39
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: monitor
Routines-affected: tcptcp
Problem:
TCP hangs up. Lots of FLKTIMs. TCPHLK is locked.
Diagnosis:
Solution:
BUFHNT: needs to check for a null buffer.
[End of TCO 6.1.1300]
TCO-number: 6.1.1301
Written-by: PAETZOLD Creation-date: 31-Mar-85 13:16:34
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: monitor
Routines-affected: tcpjfn
Problem:
;LOCAL-HOST and ;FOREIGN-HOST GTJFN attributes do not work.
Diagnosis:
Solution:
HSTHST is returning results in T1 and not T2 like it is supposed to.
[End of TCO 6.1.1301]
TCO-number: 6.1.1302
Written-by: PAETZOLD Creation-date: 31-Mar-85 13:27:24
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: IPNIDV
Problem:
ARPBFL BUGCHKs and eventual ARP shutdown.
Diagnosis:
IPDWNS BUGINFs cuased by among other things carrier failures on the NI.
Eventually we run out of ARP buffers and an IPABFL results.
Solution:
ARPCDS transfers to CDSERR on a send failure but forgets to release the
ARP buffer. Fix up ARPCDS to do the correct thing and make it display
the real error code instead of the NISRV dispatch address for ARP service.
[End of TCO 6.1.1302]
TCO-number: 6.1.1303
Written-by: PAETZOLD Creation-date: 2-Apr-85 08:17:31
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: monitor
Routines-affected: ipipip
Problem:
resource problems in the tcp/ip code. specifically ipiblp and knifqe
buginfs.
Diagnosis:
At times of high load the internet fork is not running fast enough.
Solution:
Use jobbit to set the priority of the internet fork up. The code used to
be this way but was changed a while back as an expiriment. the expirament
failed.
[End of TCO 6.1.1303]
TCO-number: 6.1.1304
Written-by: WAGNER Creation-date: 2-Apr-85 10:55:22
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: SCHED
Related-SPR: 20483
Problem: SKDIDL overflows into SKDTM0 after 95 hours, 26 minutes, 37 seconds
of idle time.
Diagnosis: SKDIDL is kept in HP time units, only so many can fit. We convert
these to mS and put them in SKDTM0. But a conversion of overflowed
garbage is still garbage.
Solution: Check for impending overflow, correct down by a constant, remember
that constant. Convert to mS where it is subsequently used, add
back in that converted constant. Since SKDIDL is only used to be
converted to mS anyway, and only in one place (two if class scheduling)
it is more effecient this way (one compare each load average update)
than if we changed all the calculations to use double word arithmetic.
Besides, the compare only succeeds every 95 hours, etc.
[End of TCO 6.1.1304]
TCO-number: 6.1.1308
Written-by: PAETZOLD Creation-date: 5-Apr-85 15:04:37
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: monitor
Routines-affected: ipipip
Problem:
ILULK2 BUGHLTs from RCVGAT in IPIPIP when a system has multiple network
interfaces and the system is a gateway and an interface is down and a
gateway client sends packets to be forwarded on the interface which is down.
Diagnosis:
The packet first comes into RCVGAT. RCVGAT checks for a full length
buffer and unlocks the buffer accordingly. Since the buffer was a
receive buffer received from a hardware interface it is full length.
The destination address is not for the local host so the packet is to
be forwarded. The packet is now given to another interface to forward.
Unfortunatly the target interface is down.
GWYLUK is called to find another interface for the packet. GWYLUK
returns an interface which is currently up. It is determined that the
local host is indeed the gateway and the packet is forwarded to SNDLCL.
SNDLCL locks down the packet again. But uses the actual length of the
data and not the length of the buffer. This is usually OK because
SNDLCL is not usually sending out recieve buffers.
RCVGAT gets the packet again and unlocks it. RCVGAT unlocks the whole
buffer but SNDLCL only locked the data portion. If the buffer crosses a
page boundary (probability .5) an ILULK2 will result.
Solution:
Change SNDLC4 to lock the whole buffer if the buffer is full size. This
appears to be a day one BBN problem.
[End of TCO 6.1.1308]
TCO-number: 6.1.1309
Written-by: GRANT Creation-date: 5-Apr-85 20:09:29
Edited-by: GRANT Edit-date: 6-Apr-85 12:30:59
Edit-checked: No Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: scampi
Problem: KPALVH, SCASCQ, and KLPNOM BUGHLTs. There were probably others
but we've lost track.
Diagnosis: A packet was appearing on 2 of the CI port's queues at the same
time, leading to massive confusion. The results were CI-related BUGHLTs
of various flavors.
Solution: When CIFORK was created SCAMPI was made to set a bit whenever it
needed buffers allocated or connect blocks reaped. Newly-added code caused
a buffer to get returned when it shouldn't have been. This was caused by
incorrectly skipping over a RET.
[End of TCO 6.1.1309]
TCO-number: 6.1.1310
Written-by: GRANT Creation-date: 8-Apr-85 07:42:47
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: phyklp
Problem: Can't test CI microcode's NO-ANSWER feature which is used by
diagnostics.
Diagnosis: No code.
Solution: Add a routine which does the SET-COUNTER function to set the
NO-ANSWER bit. This is never called by the standard system; it is only used
for debugging the micorcode.
[End of TCO 6.1.1310]
TCO-number: 6.1.1312
Written-by: PALMIERI Creation-date: 8-Apr-85 14:08:51
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: Monitor
Routines-affected: SCPAR SCJSYS
Problem: COMMMS BUGHLTs
Diagnosis:
SCJSYS is releasing SAB blocks twice. If a link blocks as a result of
a SOUT/SOUTR the SAB it was using is entered into the "active" slot of
the SAB indirect table. If the fork runs at a higher priority level
before the output completes the monitor will notice the incomplete
output and attempt to complete it. If it succeeds, the SAB will be
returned to the monitor free space pool. After the higher priority's
output completes the blocked lower priority will be wakened. It still
has a pointer to the now released SAB in its ACs and may attempt to
release it a second time, resulting in a COMMMS BUGHLT.
Solution:
Keep an indirect "active" slot for each PSI level (normal,1,2,3).
Only attempt to complete blocked output that is at the current PSI
level. Do not return a SAB to its "normal" (not active) slot if the
SAB indirect table pointer (PSBSAB) is zero.
[End of TCO 6.1.1312]
TCO-number: 6.1.1313
Written-by: PALMIERI Creation-date: 8-Apr-85 16:01:14
Edited-by: PALMIERI Edit-date: 8-Apr-85 16:05:50
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: Monitor
Routines-affected: SCLINK
Related-QAR: 838176
Problem: 36-bit byte mode does not send all bytes.
Diagnosis: SCLINK tries to determine if all bytes in users buffer will fit
into a message. AC P1 is used as a flag to indicate more to send.
If SCLINK thinks all bytes will fit into a segment but the copy
routine does not, SCLINK does not notice.
Solution: Update P1 after user's data is copied.
[End of TCO 6.1.1313]
TCO-number: 6.1.1314
Written-by: PALMIERI Creation-date: 9-Apr-85 11:16:45
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: Monitor
Routines-affected: SCJSYS
Problem: DECnet free space used up
Diagnosis: SCJSYS not releasing port indirect tables
Solution: Change SKIPN to SKIPE in RELSJB
[End of TCO 6.1.1314]
TCO-number: 6.1.1316
Written-by: MELOHN Creation-date: 9-Apr-85 15:16:07
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: CTHSRV
Problem: When SET HOSTing from VMS to TOPS-20 several of the initial
characteristics sent out by TOPS-20 are ignored by VMS.
Diagnosis: VMS does not correctly handle an init and a
characteristics CTERM message in the same foundation common data message.
Solution: Provide characteristics in smaller spoonfulls for VMS by
putting each CTERM message in it's own common data foundation message
type.
[End of TCO 6.1.1316]
TCO-number: 6.1.1317
Written-by: MELOHN Creation-date: 9-Apr-85 15:44:25
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: CTHSRV
Problem: System crashes when user CTERMs in and HOSTs out.
Diagnosis: CTHOOE, the TDCALL which determines out-of-band echoing
for CTERM terminals, is in swappable code. It is called at scheduler
level when the .MOSNH MTOPR% is being used. *BAM*
Solution: Put CTHOOE is RESCD.
[End of TCO 6.1.1317]
TCO-number: 6.1.1318
Written-by: TBOYLE Creation-date: 11-Apr-85 15:56:19
Edited-by: TBOYLE Edit-date: 11-Apr-85 15:59:07
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: FORK
Problem: SPLFK% can cause a job to run out of fork handles if
another fork obtains handles on either of the forks used in the
call that exercises the new SPLFK% with suicide option.
This can occur if you ^C out of LINK when it has two forks and do
an INFORMATION FORK, and it also happens by just using LINK with
Rutgers "WATCH" program running with the "program-watch" option.
Diagnosis: Part of the code must exchange the Job-wide data on
the two forks so that one becomes the other. The Job-fork-handle
share counts should not, however, be exchanged. This is because
other forks have relative fork handles that will point to the
new forks and they must remain the same so that the Job-fork-handles
can be properly released.
Solution: Add code to insure that the share counts (FKHCNT) remain
the same after the splice with suicide option.
[End of TCO 6.1.1318]
TCO-number: 6.1.1319
Written-by: PAETZOLD Creation-date: 12-Apr-85 11:28:53
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: IPCIDV
Problem:
TCP/IP on the CI does not initialize.
Diagnosis:
Job zero startup has changed around and internet is usually not initialized
when IPCIDV tries to initialize. This is possible and IPCIDV handles the
situation. However it handles it wrong and marks the interface desired
state to be down.
Solution:
Change a jrst into a ret at CIPRST+1.
[End of TCO 6.1.1319]
TCO-number: 6.1.1320
Written-by: LEACHE Creation-date: 14-Apr-85 14:39:22
Edited-by: LEACHE Edit-date: 14-Apr-85 17:00:07
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: Monitor
Routines-affected: BOOT
Related-SPR: 19606
Problem: BOOT does not always reload all DX20's on the system. Also,
BOOT will often unnecessarily reload some DX20's more than once.
Diagnosis: Lost in the dawn of history is the reason why BOOT specifically
avoids reloading tape DX20's. The unnecessary reloadings are an artifact
of the design of pre-DX20 BOOT.
Solution: Make each invocation of BOOT (whether manual or auto-reload)
load each DX20 on the system exactly once.
[End of TCO 6.1.1320]
TCO-number: 6.1.1321
Written-by: LEACHE Creation-date: 14-Apr-85 14:47:11
Edited-by: LEACHE Edit-date: 14-Apr-85 17:12:37
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: Monitor
Routines-affected: BOOT CHECKD DSKALC PROLOG
Related-SPR: 19084
Problem: BOOT will abort an auto-reload if it gets a dump error.
Diagnosis: This change was made in V5 so that if the dump was important
the dump could be attempted again. This is acceptable behaviour on a
development system, but not on a production machine where the most important
thing is to get the system back up.
Solution: Create a home-block cell for storing BOOT parameters and modify
CHECKD to read and write these parameters. Define a parameter that, when
set, will cause BOOT to halt when dump errors are encountered during an
auto-reload. The default behaviour has been changed to proceed on dump
errors.
The CHECKD command ENABLE BOOT-PARAMETERS will set and clear the parameters.
SHOW BOOT-PARAMETERS will display the settings.
The first bit in the parameter-word controls whether BOOT will read the
remaining flags or not. If the first bit is set, then BOOT will read the
remaining flags (only 1 of which is defined: halt-on-dump-errors). When
BOOT encounters an enabled parameter word it will change its prompt to
[*BOOT ...] to indicate on the console that it is reading parameters that
may change its behaviour.
[End of TCO 6.1.1321]
TCO-number: 6.1.1323
Written-by: GLINDELL Creation-date: 16-Apr-85 21:03:45
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: SCLINK STG
Related-QAR: 838204
Problem:
Remember the TCO last week about the number of nodes growing
on the Enet? Well, you can forget it now. Instead of having
a static maximum size of the database, make it dynamic.
Diagnosis:
Solution:
Instead of allocating a chunk of memory at initialization time,
get a page at a time when needed instead. Use ASGVAS.
[End of TCO 6.1.1323]
TCO-number: 6.1.1324
Written-by: GROSSMAN Creation-date: 16-Apr-85 23:10:33
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: LLMOP
Problem: Remote console programs, and NCP's TRIGGER NODE command eventually stop
working.
Diagnosis: LLMOP loses track of the number of receive buffers it has posted for
the Remote Console protocol type. It gets into a state where it beleives that
it has two receive buffers posted, when in reality, it has none posted.
This was caused by the use of a bizarre mutation of the INCR/DECR macros.
Solution: Change all occurances of the INCRF and DECRF macros into INCR and DECR
macros as appropriate. Delete definitions of INCRF and DECRF to prevent
future abuse.
[End of TCO 6.1.1324]
TCO-number: 6.1.1325
Written-by: GRANT Creation-date: 17-Apr-85 13:01:01
Edited-by: GRANT Edit-date: 17-Apr-85 13:09:20
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PHYSIO
Problem: If a cluster system gets hung during startup, the console message on
the other systems is not informative, namely, " %Problem Drive Dual
Ported to Unknown System ".
Diagnosis: It doesn't tell you what the problem is.
Solution: Change the message to, " %Drive forced offline because a running
system hasn't joined the cluster ".
[End of TCO 6.1.1325]
TCO-number: 6.1.1326
Written-by: PALMIERI Creation-date: 17-Apr-85 13:24:40
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: Monitor
Routines-affected: SCJSYS
Related-QAR: 838190
Problem: No interrupt if connect is rejected.
Diagnosis: If connect initiate is rejected interrupt is given on the data
channel rather than the connect channel.
Solution: Give interrupt on the connect channel.
[End of TCO 6.1.1326]
TCO-number: 6.1.1327
Written-by: LOMARTIRE Creation-date: 17-Apr-85 13:56:11
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: CFSSRV
Problem:
PITRAP BUGHLTs.
Diagnosis:
The routine CFCARV is not correctly calculating which page to lock down.
If the old page has been completely used and a new page is being acquired, then
page N+2, not N+1 is locked down. Thus, the next page which will be used is now
unlocked.
Solution:
First, ask Tom Moser for help. Then, change a ADDI T1,PGSIZ to ADD
T1,CFNXSZ.
[End of TCO 6.1.1327]
TCO-number: 6.1.1328
Written-by: LOMARTIRE Creation-date: 17-Apr-85 14:27:20
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PAGUTL STG GLOBS
Related-TCO: 6.1.1282
Problem:
TCO 6.1.1282 is no longer needed. The PITRAP problem has been found.
Diagnosis:
Solution:
Remove it.
[End of TCO 6.1.1328]
TCO-number: 6.1.1329
Written-by: GLINDELL Creation-date: 17-Apr-85 15:56:49
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: SCLINK
Problem:
It is possible to redefine the executor name after DECnet has
initialized. This does not cause any problems except perhaps
user confusion. However, the philosophy and documentation says
that it is not allowed to change either the executor name or
address.
Diagnosis:
The 'add node' routine SCTAND in SCLINK checked if the user
was changing the executor address, but not if the name was
changed.
Solution:
When not finding the node name to add in the database, see if
the node address is in the home area. If so, clear out any
ADRTAB entry that there may be.
[End of TCO 6.1.1329]
TCO-number: 6.1.1330
Written-by: GRANT Creation-date: 17-Apr-85 17:23:08
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: phymsc
Problem: MSCP tries to connect to TOPS-10 systems.
Diagnosis: MSCP tries to connect to HSC50s and KL10s.
Solution: Change MSCP to attempt connections based on software type, not
hardware type. Try to connect to systems who run either "HSC" or
"T-20", as indicated in their start packets.
[End of TCO 6.1.1330]
TCO-number: 6.1.1331
Written-by: GLINDELL Creation-date: 18-Apr-85 11:56:49
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: D36COM
Problem:
ILMNRF's when generating a 3.0 event caused by a bad incoming
'disconnect initiate' DECnet message.
Diagnosis:
DNCM2B is called to copy the disconnect data from the message block
into a disconnect block. Doing so, it resets the index pointer in the
MSD from T6 to T3 and leaves it that way. The poor event code later
tries to read the message again to create the event, and uses the T3
that was left in the MSD as index pointer instead of the correct T6.
Solution:
Restore the index AC used before saving the update byte pointer in
DNCM2B.
[End of TCO 6.1.1331]
TCO-number: 6.1.1332
Written-by: GLINDELL Creation-date: 19-Apr-85 14:26:49
Edited-by: GLINDELL Edit-date: 19-Apr-85 15:24:30
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: CIDLL
Problem:
ZERO LINE CI-0-0 COUNTERS produced amusing results.
Diagnosis:
DECnet does not maintain any CI line counters. CIDLL therefore
returned error code NF.FNS which means "function not supported"
when asked to zero these counters. This caused great consternation
in NMLT20.
Solution:
Make CIDLL return "NF.NDP" which means 'function succeeded but
no data present to return' when asked to do something to the
CI line counters. This will be more to NMLT20's taste.
Also fix NMLT20 to handle an error return from the ZERO COUNTER
call.
[End of TCO 6.1.1332]
TCO-number: 6.1.1333
Written-by: PAETZOLD Creation-date: 22-Apr-85 09:44:58
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: IPIPIP
Problem:
asniq jsys checks for sc%nwz put does not check for sc%whl.
Diagnosis:
Solution:
make wheel and operator good enough as well as sc%nwz.
[End of TCO 6.1.1333]
TCO-number: 6.1.1334
Written-by: LOMARTIRE Creation-date: 23-Apr-85 08:34:04
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PHYMVR
Problem:
MSSCFS BUGCHKs.
Diagnosis:
During startup, the system is careful to insure that the system has joined
the cluster before allowing it to serve any of it disks with the MSCP server.
However, this is not the case if we are already up, connections are broken, and
then reestablished. In this case, we have already allowed access to the disks.
If the MSCP connection is established before the CFS one, then the server could
be handed a queued up IORB from the other system before CFS has started. This
should not cause any problems since CFS has already arbitrated the I/O request,
but the BUGCHK is not very reassuring.
Solution:
First change MSSCFS into a BUGHLT to try to trap any real problems. Next,
reject any connect requests to the server if we have not or are not in the
process of establishing a CFS connection. The MSCP driver will repeat the
attempt later so, eventually, we should get a connection established.
[End of TCO 6.1.1334]
TCO-number: 6.1.1335
Written-by: GRANT Creation-date: 23-Apr-85 08:46:53
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PHYSIO
Related-QAR: 838025
Problem: If you have an RP06 with both its port to the same KL, you can't
switch from Port A to Port B while working is going on.
Diagnosis: %Problem on device ....... messages result. TOPS-20 won't use
the newly selected port.
Solution: The code which searches for a second path to the same disk wrongly
establishes the primary and secondary paths. In some cases it was
setting the primary path to be the side which is now offline. Fix
the code so it always has an active port as the primary path.
[End of TCO 6.1.1335]
TCO-number: 6.1.1336
Written-by: GROSSMAN Creation-date: 23-Apr-85 17:01:05
Edited-by: GROSSMAN Edit-date: 23-Apr-85 17:03:47
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: MONSYM NIUSR
Problem: No way for user's to find out the Ethernet address of the local
node via the NI% JSYS.
Diagnosis: OOPS.
Solution: Return the Physical address (the current address), and the
Hardware address in the .EIRCI (Read Channel Info) function.
[End of TCO 6.1.1336]
TCO-number: 6.1.1337
Written-by: GROSSMAN Creation-date: 23-Apr-85 17:27:21
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: NIUSR NISRV
Problem: SMON% code for setting Ethernet address in wrong module.
Diagnosis: The code belongs in NIUSR, but NIUSR didn't exist when the code
was written.
Solution: Move the code from NISRV to NIUSR.
[End of TCO 6.1.1337]
TCO-number: 6.1.1339
Written-by: PALMIERI Creation-date: 24-Apr-85 10:09:43
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: Monitor
Routines-affected: STG FREE
Related-QAR: 838215
Problem: DECnet swappable free space is available but never used in 6.1.
Diagnosis: Pre 6.1 needs it but it is always configured regardless of setting
of FTNSPSRV.
Solution: Add FTNSPSRV around parameter that makes it size non-zero.
[End of TCO 6.1.1339]
TCO-number: 6.1.1341
Written-by: GROSSMAN Creation-date: 24-Apr-85 13:03:26
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: NIUSR
Problem: Ill mon refs if bad byte pointers given to NI% JSYS.
Diagnosis: No ERJMPx after some PXCT's.
Solution: Put ERJMPs after all PXCTs that can occur while NOINT.
[End of TCO 6.1.1341]
TCO-number: 6.1.1342
Written-by: GROSSMAN Creation-date: 24-Apr-85 13:40:04
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: NISRV NIUSR NIPAR
Problem: When the NI% JSYS returns monitor portal ID's to the user, these
ID's are just NISRV's portal block addresses. There are a number of
problems with this:
1) User portal ID's are only a halfword, but monitor portal ID's
are fullwords.
2) If the user passes a portal ID to the NI% JSYS, it shouldn't
be an address, because he might pass a bad address.
3) Monitor addresses are ugly looking ID's to pass back to a user.
Solution: Have NISRV generate a unique 'external' ID for all portals that
are opened. Now, each portal will have a unique 9 bit code associated
with it. This code can then be returned to the user as the portal ID.
Also, create a new NISRV function which will translate 'external' portal
ID's to real portal ID's.
The 'external' portal ID will now be returned by the NU.RPI (read portal
info) function of NISRV.
[End of TCO 6.1.1342]
TCO-number: 6.1.1343
Written-by: PALMIERI Creation-date: 25-Apr-85 16:11:15
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: Monitor
Routines-affected: JNTMAN
Problem: SYSDPY gets wrong information as to whether task is active (DCN) or
passive (SRV).
Diagnosis: JNTMAN doesn't understand the new way to access port blocks.
Solution: Teach JNTMAN about the port indirect table.
[End of TCO 6.1.1343]
TCO-number: 6.1.1346
Written-by: GROSSMAN Creation-date: 29-Apr-85 14:28:36
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PAGEM
Problem: IDFOD2 BUGCHK'S, PAGLCK BUGHLT'S sometime later on. Seem to be
related to doing word searches in MDDT.
Diagnosis: MDDT gets bad information from the MRPAC% JSYS, and touches
CXBPGA. This causes the page to be created with the section 6 map as
it's owner, instead of the currently running process. When the process
gets destroyed, it attempts to deassign the page, and a PAGLCK results.
Solution: Add a check to the MRPAC% JSYS to explicitly check for section
XCDSEC and the special pages, and treat them as process private pages.
[End of TCO 6.1.1346]
TCO-number: 6.1.1347
Written-by: GROSSMAN Creation-date: 29-Apr-85 14:36:41
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PAGEM
Problem: MDDT hangs when doing word searches in section 6 (XCDSEC).
Diagnosis: MDDT touches a page that is not mapped into section 6, but is
mapped into section 0/1. The test for page ownership in FPTA incorrectly
claimed that the page was owned by section 0/1, and paged in the wrong
page. PAGEM eventually restarts the faulting instruction, and the faults
ocurrs again and again ad nauseum.
Solution: Fix the page ownership test for XCDSEC pages (FTPAXC) to claim
that all pages between NRCOD and NRCODZ (within section 6) are owned by
the XCDSEC map. All other pages in section 6 are owned by the section 0/1
map.
[End of TCO 6.1.1347]
TCO-number: 6.1.1348
Written-by: GROSSMAN Creation-date: 29-Apr-85 14:54:05
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: LLMOP
Problem: LLMOP% remote console loses buffers, eventually, it stops working
altogether.
Diagnosis: When LLMOP receives a message with an error from NISRV, it neglects
to update it's outstanding receive buffer count (SVBPC). Eventually when it
calls PSTBUF to setup more receive buffers, PSTBUF doesn't queue up any
because SVBPC is too high. Eventually, all receive buffers are lost and
no more messages come in for the remote console protocol type.
Solution: Re-arrange the routine LLMRCX (the common receive processing
routine for all LLMP protocol types). Ensure that SVBPC gets decremented
for all buffers received back from NISRV. Also, keep seperate counts for
the receipt of unsupported messages, and bad messages.
[End of TCO 6.1.1348]
TCO-number: 6.1.1350
Written-by: LOMARTIRE Creation-date: 30-Apr-85 15:52:12
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: MEXEC
Related-QAR: 838042
Problem:
When a system in a CFS cluster automatically reloads, the cluster-wide
time may be set backwards by some amount as dictated by the reloading machine.
Diagnosis:
The startup code in MEXEC sets the system time before joining the cluster
by obtaining the time from the front end. This time may actually lag the
cluster-wide time by a large amount. Depending on the seqequence of CFS
connections at startup, this bogus time may propogate to other machines.
Solution:
Do not set the system time until after we have joined the cluster. Prefer
the cluster time to that supplied by other sources. The ordering will be as
follows:
1. the cluster time
2. the front-end
3. the person at the console
[End of TCO 6.1.1350]
TCO-number: 6.1.1351
Written-by: GLINDELL Creation-date: 30-Apr-85 16:11:31
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: NTMAN
Related-QAR: 838253
Problem:
SHOW LOOP NODES returns a node number for the loop node names.
Loop node names do not have node numbers. This causes a funny-looking
display in NCP.
Diagnosis:
Loopback code in NTMAN calls NMXS2A (convert sixbit to ascii) and
thinks NMXS2A returns +1. It doesn't, it returns +2 always.
Solution:
Change NMXS2A to always return +1. This will fix another case
in NTMAN when a routine didn't expect NMXS2A to return +2. That
case is more interesting - although I haven't seen any problems
with it - every time NTMAN was asked to convert a node number to
a name (often) it would fall through to the code on the next page.
It didn't seem to do any harm though.
[End of TCO 6.1.1351]
TCO-number: 6.1.1354
Written-by: GROSSMAN Creation-date: 2-May-85 09:53:16
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: MEXEC
Problem: Programs doing CRJOB JSYS can hang permanently.
Diagnosis: The job that is being created by the CRJOB JSYS (hereafter
called the 'object' job) can be logged out before being completely created.
If this happens, the object job never gets to setup CRJANS (the CRJOB answer
cell), and the job that did the CRJOB JSYS hangs forever waiting for CRJANS
to become non-zero.
Although, there is a relatively small window between the time of the job's
creation, and it's setup of CRJANS, this window can be lengthened quite
a lot by an ACJ that takes a long time when monitoring LOGINs.
Solution: Have the logout code at FLOGO check to see if this job is the
object of a CRJOB. If it is, ensure that CRJANS gets set to -1 to wake up
the program doing the CRJOB.
[End of TCO 6.1.1354]
TCO-number: 6.1.1355
Written-by: GROSSMAN Creation-date: 2-May-85 17:12:46
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PHYKNI
Problem: KNIIPT BUGHLTs.
Diagnosis: When closing an NISRV portal, a resource failure (from ASGRES)
can occur. This error gets passed back up to the user, who may then
optionally try closing the portal again. Unfortunately, PHYKNI was not
cleaning up properly after the failure. When the user re-tried the close
(somewhat later), a sanity check failed, and a KNIIPT BUGHLT resulted.
Solution: Re-do some code so that the resource failure cannot occur in the
routine NIDPT.
[End of TCO 6.1.1355]
TCO-number: 6.1.1359
Written-by: WAGNER Creation-date: 6-May-85 11:22:49
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PAGUTL
Problem: PMCTL% returns "page available" status, even if page number requested
is greater than physical memory.
Diagnosis: Code was dreaming, comparing against maximum possible, not against
what we can actually afford.
Solution: Make check against reality, in this case NHIPG instead of MAXCOR.
[End of TCO 6.1.1359]
TCO-number: 6.1.1360
Written-by: TBOYLE Creation-date: 6-May-85 14:30:21
Edited-by: TBOYLE Edit-date: 6-May-85 14:49:02
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: DSKALC
Problem: Unecessary pages marked in the batblocks. Extra entries
present that could have been a single entry.
Diagnosis: Disks that have sectors/page equal to one (HSC, RP20)
allocate BAT entries as if there were 4 sectors per page. Also, a
miscalculation of sector rounding causes a bad page to be entered as
a separate entry even if an entry for the next page exists in the
batblocks. It should alter the existing entry to include the new bad page.
Solution: Use SECPAG based on the UDB to properly add pages to
existing and new pages to the batblocks around the code in DOPAIR.
[End of TCO 6.1.1360]
TCO-number: 6.1.1363
Written-by: GROSSMAN Creation-date: 6-May-85 15:43:08
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: TTYSRV
Problem: ILMNRFs, potential core trashing when doing sendalls.
Diagnosis: The routine ASGSHT was smashing T2 on error returns. The caller
expected T2 to contain the line number upon return from ASGSHT. It then used
the bad T2 to zero an entry in TTACTL. In this case, we were very lucky,
because we tried to zero write protected memory.
Solution: Make ASGSHT preserve T2 even for error returns.
[End of TCO 6.1.1363]
TCO-number: 6.1.1364
Written-by: GROSSMAN Creation-date: 6-May-85 15:53:54
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PHYKNI
Problem: Systems without KLNI's get messages at startup indicating that the
KLNI is being reloaded. In addition, the reload fails, and a KNIRTO BUGCHK
results.
Diagnosis: When I moved the KLNI initialization from PHYH2 to PHYSIO, I
lost the check for KLNIness. So, no matter what happens to be in RH slot
5, NISRV will pounce on it and do lots of nasty things. This is generally
not a problem if there is nothing in RH slot 5. However, if there is an
RH20 in slot 5, chaos would result.
Solution: Put the check for KLNIness back into NIINI.
[End of TCO 6.1.1364]
TCO-number: 6.1.1365
Written-by: GLINDELL Creation-date: 6-May-85 16:35:32
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: SCLINK
Problem:
COM* bug* when doing SHOW KNOWN NODES in NCP.
Diagnosis:
The buffer to return 'known nodes' was allocated based on a symbol
that is not guaranteed to be kept up to date. When the latest round
of node name tables came around, node numbers that were higher in value
than the symbol used occurred.
Solution:
Don't try to be smart - always set up a buffer big enough for the highest
possible node number (1023). The memory allocated is only 1 bit per node.
[End of TCO 6.1.1365]
TCO-number: 6.1.1366
Written-by: TBOYLE Creation-date: 6-May-85 17:03:51
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PHYPAR PHYP2
Problem: OVRDTA, DXBEWC, Hung Jobs and of course, headaches.
Diagnosis: There is a class of servo errors that seem to wedge
the DX20. On an unrecoverable error (seemingly a servo track
error.) The DX20 remains locked to one drive. A hang occurs
when an attempt is made to transfer to a different drive.
If another transfer to the same drive occurs successfully,
the error is reset. This will usually happen right away because
the monitor will write the errant page to the batblocks so
as to never use the bad page again and the error will
usually be reset. There is a problem window however.
Solution: Include a new bit in the UDB to watch for an overdue
transfer that occurs twice. When it happens restart the microcode,
this will reset the world. This is ok, because PHYSIO will retry
pending transfers. It will also recover from this error so that
processing may proceed.
In the event that there are other forms of errors that hang the DX20,
this TCO will guard against them from killing the system. Since they
all seem to happen with unrecoverable errors, we can be content
because they will be marked bad and not used again.
[End of TCO 6.1.1366]
TCO-number: 6.1.1369
Written-by: TBOYLE Creation-date: 7-May-85 16:32:44
Edited-by: TBOYLE Edit-date: 7-May-85 16:37:38
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PHYP2
Problem: Bad pages used over and over again on RP20's.
Diagnosis: The error handler is not catching all possible media
and HDA weakened errors. The error handler is mostly biased toward
considering errors that are not clean data errors as device errors.
There are, however, numerous nasty errors such as weak or defects on
servo track, bad formatting, etc. There are also media errors
where the information returned is incomplete because these errors
cause the microcode to have head pains. Since all these errors are
flagged as device errors, they never make it into the BAT blocks.
Solution: Bias the error handler toward media errors. Pick out the
controller, DCU errors, parity errors, etc. and flag them as retriable
device errors. Treat all others as data errors. If they do not succeed
after the many retries, this will insure that they are put into the
BAT blocks.
[End of TCO 6.1.1369]
TCO-number: 6.1.1370
Written-by: MELOHN Creation-date: 7-May-85 17:47:30
Edited-by: MELOHN Edit-date: 14-May-85 16:55:51
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: CTHSRV CTERMD
Related-TCO: 6.1.1390
Problem: SKDPF1/SKDCL1 in LOKWAI+a few.
Diagnosis: Problems with the CTERM interlock scheme between the
CTERM fork, which runs at process level, and TTYSRV TDCalls which want
to mung around in the CDB.
If someone other than the CTERM fork wants the CTERM lock, their
TDB is unlocked and they wait in scheduler test LOKWAI for the CTERM
lock. With the TDB unlocked, Bad Things can happen to the TDB, and if
TDB goes away, LOKWAI will blow up. If the DECnet link goes away first,
LOKWAI returns to LOKCDB, which returns to its caller with the TDB
still unlocked. When the caller tries to unlock the unlocked TDB,
ULKBADs can happen. It is really a bad idea for CTERM to unlock
something it didn't lock in the first place.
Solution: Do NOT try to unlock the TDB while waiting around for the
CDB lock.
[End of TCO 6.1.1370]
TCO-number: 6.1.1371
Written-by: MELOHN Creation-date: 7-May-85 17:55:24
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: CTHSRV CTERMD
Problem: CTERM gets wedged such that it will not accept any new
connections and its current connections are hung.
Diagnosis: Another problem with the CTERM interlock scheme between the
CTERM fork, which runs at process level, and TTYSRV TDCalls which want
to mung around in the CDB.
Many error conditions (DECnet link gone, CTERM protocol error, etc)
decide to "blow the link away". As part of this process, the CDB is
deallocated. If however the CTERM line requires service, the CTERM
fork (which is always given the CTERM lock) will hang trying to mung
the deallocated CDB.
Solution: Add a new state for the CDB - .STDEL. Instead of "blowing
the link away", put the CDB in this state and tell the CTERM fork to
dispose of it as part of its service routine.
[End of TCO 6.1.1371]
TCO-number: 6.1.1372
Written-by: GROSSMAN Creation-date: 9-May-85 09:30:03
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PHYKNI
Problem: ILMNRF's, ILLUUO's, and various other assorted problems.
Diagnosis: A bad KLNI microcode resulted in the generation of an error
response which was unknown. The error code was used to index into a
dispatch table. Unfortunately, the entry for the error code had no IFIW,
and subsequently caused PHYKNI (in section 6) to jump somewhere into
section 0, resulting in total chaos.
Solution: Add IFIW's to all the dispatch words in the error dispatch table.
Now, if we get an unknown error code a KNIIEC BUGHLT will result.
[End of TCO 6.1.1372]
TCO-number: 6.1.1373
Written-by: LOMARTIRE Creation-date: 9-May-85 15:28:59
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: DSKALC MSTR
Problem:
If a structure which was previously mounted is re-created, MOUNTR will
refuse to mount it due to an ambiguous ID. The ID for the disk is found in
UDBMID and is returned to MOUNTR via an MSTR%.
Diagnosis:
Whenever a homeblock is created, a new media ID is written on it. This ID
is not placed in the UDB (or SDB) and this causes confusion.
Solution:
Make CRTHOM and MAKHOM smarter and have them update UDBMID and SDBPUC when
a new media ID is created and written on the homeblocks.
[End of TCO 6.1.1373]
TCO-number: 6.1.1374
Written-by: LOMARTIRE Creation-date: 9-May-85 15:33:49
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: CFSSRV
Related-QAR: 838252
Problem:
CFRECN BUGHLTs as a result of a large configuration.
Diagnosis:
Currently, the delay time set by CFS is not large enough to handle a large
configuration. These sites will experience a CFRECN whenever their port dies
due to the amount of time it takes to reestablish all the required connections.
Solution:
Make the delay a function of the configuration size. Wait 10 seconds to
reload the CI microcode (very generous) and 5 seconds per node on the CI.
[End of TCO 6.1.1374]
TCO-number: 6.1.1375
Written-by: LOMARTIRE Creation-date: 9-May-85 16:33:26
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: CFSSRV
Problem:
When two systems are coming up simultaneously, they will always have
different times.
Diagnosis:
When both systems are waiting in "Enter date and time:", the system with the
larger serial number is supposed to broadcast it's time to the systems on the
CI with a lower serial number. However, the routine is missing an index
register in a key place and so we never broadcast to any one.
Solution:
Add the index register in routine BRDTIM. Note that a bug still exists if
you proceed the higher numbered system first. In this case, the lower one will
proceed second and it will not broadcast to the higher. Once again a time
mismatch. However, the solution to this one is left until later.
[End of TCO 6.1.1375]
TCO-number: 6.1.1376
Written-by: GROSSMAN Creation-date: 9-May-85 16:58:49
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: STG PHYKNI GLOBS
Problem: Undefined global symbols when KNIN=0. The symbols DLLUNI, LLMRSJ,
LLMRSF, NIJKFK, and LLMINI are all undefined at LINK time when STG is
compiled with KNIN=0.
Diagnosis: Oops. Several misspellings. Now, DLLUNI will return an error
code of UNIFC% (invalid function code) if NISRV is not loaded.
[End of TCO 6.1.1376]
TCO-number: 6.1.1377
Written-by: GRANT Creation-date: 12-May-85 08:34:47
Edited-by: GRANT Edit-date: 12-May-85 08:41:02
Edit-checked: No Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: MEXEC phyklp
Related-QAR: 838252
Problem: KLPNRL BUGHLTs
Diagnosis: Any number of deadly embraces can occur when there is heavy CI
activity and TOPS-20 tries to reload the CI microcode. These are all
related to the monitor's having to read in IPALOD and run it.
Solution: At system startup, read the CI microcode into resident memory.
Then, whenever the monitor needs to reload the CI, it can simply do the
DATAOs itself.
[End of TCO 6.1.1377]
TCO-number: 6.1.1378
Written-by: GRANT Creation-date: 12-May-85 08:52:10
Edited-by: GRANT Edit-date: 12-May-85 08:53:38
Edit-checked: No Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: phyklp
Problem: None observed, but code is wrong.
Diagnosis: At system startup, code currently does a CONO KLP,400000 and then
does a CONI to verify that the thing in RH slot 7 is really a KLIPA.
If an RH20 were in slot 7, it just got its PIA zapped.
Solution: Verify KLIPAness before shooting it.
[End of TCO 6.1.1378]
TCO-number: 6.1.1379
Written-by: GRANT Creation-date: 12-May-85 09:01:36
Edited-by: GRANT Edit-date: 12-May-85 09:05:46
Edit-checked: No Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: phyklp
Problem: Unnecessary BUGCHKs, namely, KLPNMG and KLPNDG.
Diagnosis: PHYKLP outputs a BUGCHK if it is called to remove a buffer from an
empty free queue. This is unnessary since it gets a buffer from the SCA
pool and returns that to the caller; if this should fail, the caller
will do whatever it feels necessary, including BUGxxxing.
Solution: Put KLPNMG and KLPNDG under CIBUGX control.
[End of TCO 6.1.1379]
TCO-number: 6.1.1380
Written-by: PAETZOLD Creation-date: 12-May-85 13:54:19
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: monitor
Routines-affected: mnetdv STG
Problem:
Normal NIC supplied host table no longer fits.
Diagnosis:
This time the file has grown to a point larger than the code driving the
existing data structures are capable of handling. Most hosts now have
multiple addresses.
Solution:
Make HOSTN twice as large as NHOSTS. Fix code in MNETDV that assumes
all table are of the same length. Also make the initialization code
that used to be a loop using setzm's use blt's.
[End of TCO 6.1.1380]
TCO-number: 6.1.1381
Written-by: GLINDELL Creation-date: 13-May-85 11:07:00
Edited-by: GLINDELL Edit-date: 13-May-85 11:20:08
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: SCJSYS JSYSF
Related-QAR: 838154
Problem:
SWJFN% jsys does not work properly with DECnet JFN's.
Programs that do SWJFN% involving DECnet JFN's get spurious IO data
errors (IOX5). Job which run such programs will eventuallu get DCNX5
(No more logical links available) errors upon trying to create such
links.
Diagnosis:
Not all cells of the JFN blocks are swapped. One of the cells it does
not swap is the cell that contains the index of the DECnet-36 channel
represented by a DECnet JFN.
Solution:
Have SWJFN% swap all cells of a JFN block, removing the list of cells
to be swapped in favour of a simple loop swapping all cells. Also call
a routine in SCJSYS to reevaluate the channel numbers for the swapped
JFN's.
Thank you Rob Gingell for analysis and suggested fix.
BTW, SWJFN% can never have worked for any devices that use the new IO
byte pointer stuff (Arpanet?). This will hopefully fix that as well.
[End of TCO 6.1.1381]
TCO-number: 6.1.1382
Written-by: PALMIERI Creation-date: 13-May-85 11:57:51
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: Monitor
Routines-affected: SCJSYS
Related-QAR: 838222
Problem: Can't get JFN on "SRV:" or "SRV:objectid.taskname".
Diagnosis: Code doesn't parse network JFNs correctly. Also doesn't
allow non-privileged user to open generic TASK.
Solution: Rewrite the SRV parsing code.
[End of TCO 6.1.1382]
TCO-number: 6.1.1384
Written-by: GLINDELL Creation-date: 13-May-85 17:23:42
Edited-by: GLINDELL Edit-date: 13-May-85 17:30:11
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: LLINKS
Problem:
No problem, except that we could be a little nicer and not exercise
a RSX DECnet bug.
Diagnosis:
Currently we send a 'flow off' when our local buffer resources are
completely depleted. It is likely that we will drop incoming messages
that were already under way on the floor. This is ok, the other end
should retransmit these. However, unless we are congested we may as
well keep an extra few messages around. The "goal" concept in LLINKS
was supposed to address this, but it was never fully implemented.
Solution:
Implement a static goal, defined by the value of NSGOAL (currently 8).
Unless the system is congested, the following will now happen if messages
come in faster than we can process them:
1) Green zone: we accept messages up to the user's quota and put them on
the user's queues.
2) If more messages come in than fits in the user's quota, then we send
a 'flow off' and enter yellow zone. We continue to accept messages
up till NSGOAL.
3) If we run out of NSGOAL, we enter red zone and drop all incoming messages.
If the system is already globally congested, then we skip yellow zone and
go directl to red zone.
Also, remove all the old 'goal' stuff and put it under feature switch
FTGOL in LLINKS. Leave the data fields in the ELB and SLB in case we want
to change again, but these fields should probably be removed before SDC.
[End of TCO 6.1.1384]
TCO-number: 6.1.1385
Written-by: GLINDELL Creation-date: 13-May-85 17:36:57
Edited-by: Edit-date: 13-May-85 17:37:30
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: LLINKS
Problem:
None observed, but we could send ACK's faster.
Diagnosis:
LLINKS used the concept of "buffer-rich" sublinks in order to delay
sending ACK's till clock level, hoping that more messages would come
in and therefore making it possible to ack more than one message.
However, in NSP 4.1, the ACK DELAY concept takes over this function
and removes the need for "buffer-rich" sublinks. Indeed, when we do
get a message that actually requests an ACK, then we should ack immediately
and not defer it.
Solution:
Remove "buffer-rich" code and put it under feature switch FTBFR.
Leave the data structures in in case we want to put it back. However,
the BFR subfield of the ES structure should probably be removed before
SDC ship.
[End of TCO 6.1.1385]
TCO-number: 6.1.1387
Written-by: NICHOLS Creation-date: 14-May-85 11:37:34
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: LLINKS
Problem: When LLINKS receives a DECnet Link Service message from
a remote system using No Flow Control, it rejects the message if the
FCVAL field is non-zero. The Phase IV+ architecture may make use
of non-zero values here.
Diagnosis: LLINKS is older than Phase IV+
Solution: Remove the check.
[End of TCO 6.1.1387]
TCO-number: 6.1.1390
Written-by: MELOHN Creation-date: 14-May-85 16:55:51
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: CTHSRV
Related-TCO: 6.1.1370
Problem: ULKBADs whenever logging in on CTERM TTYs since TCO 6.1.1370 added.
Diagnosis: I removed the global case of locking and unlocking the
TDB, however a few cases remained which fool around with TLOCKing.
None of these seems to be necessary since CTERM, LAT, and NRT TDBs are
marked as non-deletable and so the TLOCK count is meaningless.
Solution: Remove the rest of the TLOCK/ULKTTYs from CTHSRV.
[End of TCO 6.1.1390]
TCO-number: 6.1.1391
Written-by: PALMIERI Creation-date: 15-May-85 22:07:12
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: Monitor
Routines-affected: ROUTER
Problem: NMLT20 can hang in SHOW CIRCUIT NI-0-0 COUNTERS
Diagnosis: NMLT20 is dismissed while NISRV asks port to return counter data.
If the port dies and cannot be restarted the counters may never be
returned. NISRV will not respond to the read counters request until
the portal is closed.
Solution: Whenever NISRV reports that the port has died close the DECnet
portal which will cause NISRV to return an error to the read counters
request and this will be enough to satisfy the scheduler test and get
NML running again.
[End of TCO 6.1.1391]
TCO-number: 6.1.1392
Written-by: PALMIERI Creation-date: 15-May-85 22:19:32
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: Monitor
Routines-affected: ROUTER
Problem: Protocol initialization to MCB DTE often fails and is never retried.
Diagnosis: First attempt to restart MCB protocol after reload of KL succeeds
and Router is told that the line is okay to use. However, the first
message that Router tries to queue to DTESRV fails because the MCB
has terminated protocol. (Don't know why it does this). Router
then notifies NMLT20 of the termination and closes that circuit
waiting for the next pass through the once a second code to reopen it.
If NMLT20 attempts to restart protocol before the next second DECnet
will not act on a protocol up since the circuit is closed. NMLT20 will
not try again and the circuit will never come up.
Solution: Add TOPS20 specific event 96.7 which will notify NMLT20 that Router
is attempting to use the circuit. NML will then re-initialize MCB
protocol.
[End of TCO 6.1.1392]
TCO-number: 6.1.1393
Written-by: LOMARTIRE Creation-date: 16-May-85 12:06:18
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PAGEM
Related-QAR: 838336
Problem:
Code is wrong in NWRBS. This could cause DDMP to hang in WTFOD.
Diagnosis:
A SKIPN is done over a TMNN macro which expands to 2 instructions.
Solution:
Add an IFSKP.
[End of TCO 6.1.1393]
TCO-number: 6.1.1394
Written-by: LOMARTIRE Creation-date: 16-May-85 12:16:27
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: GTJFN
Related-QAR: 838295
Problem:
File extension recognition/completion does not work when wildcards are
specified in the filespec.
Diagnosis:
It appears that routine ENDALZ was rewritten to use IFSKPs and friends. In
the process a semi-colon was mistakenly inserted in the mask field of a TXNN
instruction. This causes the instruction not to skip when it should. So instead
of returning ambiguous, it completes the field with a bogus extension.
Solution:
Remove the semi-colon.
[End of TCO 6.1.1394]
TCO-number: 6.1.1395
Written-by: LOMARTIRE Creation-date: 16-May-85 12:29:32
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PAGUTL
Related-QAR: 838294
Problem:
When an OPENF% is done on a system which has no more OFNs, the user may
receive a garbage error code.
Diagnosis:
When failing, the correct error code is not always setup.
Solution:
Fix routine BGCTYP to always return OPNX10.
[End of TCO 6.1.1395]
TCO-number: 6.1.1396
Written-by: NICHOLS Creation-date: 16-May-85 21:18:15
Edited-by: NICHOLS Edit-date: 16-May-85 21:31:43
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: LLINKS
Problem: Hung DECnet link
Diagnosis:
This node sends a message to another node which is using No Flow Control. The
remote node cannot accept the message yet and sends back a Link Service OFF
message. Then this node's application asks for a synchronous disconnect,
which requires that all outstanding messages be ACKed before the Disconnect
Initiate message is sent. LLINKS puts the logical link into Disconnect
Initiate state to prevent the application from sending any more messages. If
the remote node never sends a Link Server ON message, LLINKS will wait forever
to send the Disconnect Initiate message and close the logical link.
Normally such a hung link is detected by sending Link Service messages with
zero data requests and then timing out the ACK. LLINKS was only doing this
"pinging" for links in the RUN state.
Solution:
Check for logical link inactivity in DI state as well as RUN state.
[End of TCO 6.1.1396]
TCO-number: 6.1.1397
Written-by: MCCOLLUM Creation-date: 17-May-85 15:08:44
Edited-by: MCCOLLUM Edit-date: 17-May-85 15:09:17
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: FORK
Related-QAR: 838213 838214
Problem:
CFORK does not clean up on certain resource exhausted errors.
Diagnosis:
If CFORK gets a resource exhaustion error after it has assigned a system
and job wide fork handle, it returns to the user without killing the
newly created fork.
Solution:
Kill the newly created fork when resource exhaustion errors are
encountered
[End of TCO 6.1.1397]
TCO-number: 6.1.1398
Written-by: MELOHN Creation-date: 17-May-85 18:03:16
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: TTYSRV
Problem: LAT lines are considered "local".
Diagnosis: No LAT line type was set up; concensus was that they should be
grouped with remote lines, not local lines.
Solution: make them remote lines; change remote line message from
?LOGGING IN ON DATASETS IS NOT ALLOWED to
?LOGGING IN ON REMOTE TERMINALS IS NOT ALLOWED.
[End of TCO 6.1.1398]
TCO-number: 6.1.1399
Written-by: MOSER Creation-date: 20-May-85 13:37:42
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PAGUTL
Problem: OFNBDB BUGHLTs when running CFS with the OFN performance mods.
Diagnosis: This is a long file/CFS bug. The problem arises because the
OFN database SPTO4 disagrees with the data provided by a caller of ASNOFN.
Examination of the dump reveals that the caller expects to assign an ofn for
second level index block 0 in a long file. The system data reflects the fact
that the OFN currently exists and is a regular index block in a long file. When
a file goes from short to long the OFN database is updated and so this is
unexpected.
Under CFS the problem can arise when:
- Users G and C running on systems G and C respectivly each open the same
file when it is short.
- User G extends the file so it goes long (correctly updating G's local data)
- User P running on C now opens the same file again (it is long since G
extended it but C's database does not know)!
Solution: Expect this to happen and update SPTO4 when it does instead of
crashing. OFNBDB will remain for other real errors.
[End of TCO 6.1.1399]
TCO-number: 6.1.1401
Written-by: MCCOLLUM Creation-date: 20-May-85 14:23:38
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: JSYSA
Related-QAR: 838367
Problem:
The BREAKI BUGINF provides that structure index of the structure under
"attack". Since the index is a dynamically assigned value, after-the-fact
analysis of this BUGINF can be difficult.
Diagnosis:
Same.
Solution:
Change the value provided in the additional data to the sixbit structure
name.
[End of TCO 6.1.1401]
TCO-number: 6.1.1402
Written-by: MCCOLLUM Creation-date: 20-May-85 14:47:38
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: MONSYM
Related-QAR: 838366
Problem:
Customers need reserved error codes in MONSYM to support local additions
to TOPS-20.
Diagnosis:
Solution:
Reserve a block of 1000 (octal) error codes from 6000 to 6777 for
customer use.
[End of TCO 6.1.1402]
TCO-number: 6.1.1403
Written-by: MELOHN Creation-date: 23-May-85 15:13:48
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: LATSRV
Problem: SET TER NO PAU COMMAND resulted in the LAT server clearing
input flow control but not output flow control. Likewise setting TER
PAU COMMAND did not reset output flow control.
Diagnosis: The XON/XOFF characters in the DATA_B slot were shifted
incorrectly in the slot data information.
Solution: Flush the shifting in favor of canned message which
supplies the correct input and output flow control characters.
[End of TCO 6.1.1403]
TCO-number: 6.1.1405
Written-by: MCCOLLUM Creation-date: 24-May-85 12:13:46
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: scsjsy
Problem:
SCSFR1 BUGCHKs.
Diagnosis:
When SCSKIL is called to close the CI connections of a fork, an SCSFR1
BUGCHK will result if the fork number provided is not the current fork.
Currently this can only occur when a CLZFF% JSYS is performed given as
an argument a fork handle other than the current fork.
Solution:
If the fork number passed to SCSKIL does not match the current fork,
let the caller get away with it, but don't do any actual work. Note
that this is not the proper solution, but will do for now. The correct
solution would be to make SCSKIL close the CI connections of any fork
that is an inferior of the current fork.
[End of TCO 6.1.1405]
TCO-number: 6.1.1406
Written-by: MCCOLLUM Creation-date: 24-May-85 13:36:03
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: ALL MODULES AND UTILITIES
Problem:
The copyrights need updating.
Diagnosis:
Solution:
Do it.
[End of TCO 6.1.1406]
TCO-number: 6.1.1407
Written-by: PALMIERI Creation-date: 24-May-85 15:03:50
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: Monitor
Routines-affected: ROUTER
Related-QAR: 838359
Problem: Partial routing update loss event does not show correct highest
address.
Diagnosis: No code to search for highest address so garbage is displayed.
Also the rest of message causing the update loss is not being pro-
cessed and some routing information may be lost.
Solution: Process all of message and remember highest address.
[End of TCO 6.1.1407]
TCO-number: 6.1.1408
Written-by: PALMIERI Creation-date: 24-May-85 15:10:46
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: Monitor
Routines-affected: DNADLL
Problem: DECnet is in a funny state if it tries to use the Ethernet when the
physical address is not DECnet's.
Diagnosis: Code to check for DECnet address is commented out.
Solution: Enable the checking and and robustness to it.
[End of TCO 6.1.1408]
TCO-number: 6.1.1409
Written-by: GRANT Creation-date: 28-May-85 09:29:50
Edited-by: GRANT Edit-date: 28-May-85 09:30:45
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: STG
Related-QAR: 838288
Problem: PHYICE and MSCTMU BUGCHKs.
Diagnosis: Not enough section 0/1 resident free space in the Units Pool.
Solution: Add another page.
[End of TCO 6.1.1409]
TCO-number: 6.1.1410
Written-by: NICHOLS Creation-date: 28-May-85 15:21:45
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: llinks
Problem: DECnet links hang if device drivers lose messages
Diagnosis: LLINKS waits for all output message blocks to be returned from
the lower layers before it will close a link. It now appears that there
are cases in which the KLIPAs can crash in such a way that the drivers
cannot return all the output messages reliably.
Solution: Allow links to close even if the out-in-router count is non-zero
and check all output done messages to see that the corresponding link block
is still active. For debugging purposes, a new switch FTORC can be set
non-zero to make links wait for output completion.
[End of TCO 6.1.1410]
TCO-number: 6.1.1411
Written-by: MOSER Creation-date: 28-May-85 15:57:47
Edited-by: MOSER Edit-date: 28-May-85 17:18:33
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: FORK STG GLOBS
Problem: FLKTIM does not actually time out the fork lock. It simply
reports the problem without unlocking. This is desirable when
debugging but is a problem for customers.
Diagnosis: We recode this every release and it is a BIG DRAG.
Solution: Fix this ONCE AND FOR ALL. The following rules now apply:
- DEBUG monitor - never unlock
- NON-DEBUG monitor and DBUGSW <> 0 - Never unlock
- otherwise (no debugging of any kind) unlock when FLKTIM occurs.
It may be desirable to change the timeout value from the current 2 minutes.
Make this a parameter, FLKTMV, in STG and set it to 2 minutes as the default.
[End of TCO 6.1.1411]
TCO-number: 6.1.1413
Written-by: GROSSMAN Creation-date: 28-May-85 16:57:30
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PHYKNI
Problem: NISRV's Read Portal Info function (NU.RPI) does not return list of
multicast addresses correctly for portals that have more than one multicast
enabled.
Diagnosis: Too complicated to explain, and not worth listening to.
Solution: An ADDI and a JUMPE in the correct places in NIRPI.
[End of TCO 6.1.1413]
TCO-number: 6.1.1414
Written-by: GROSSMAN Creation-date: 28-May-85 17:04:16
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: NISRV
Problem: Return Portal Info (NU.RPI) function of NISRV did not check
portal ID's correctly. It also was not returning the User ID.
Diagnosis: Oops. Forgot to set the FC.POR bit in the NISRV function dispatch.
[End of TCO 6.1.1414]
TCO-number: 6.1.1415
Written-by: GROSSMAN Creation-date: 28-May-85 17:31:42
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: NIUSR
Problem: The NI% JSYS didn't deal with global portal ID's correctly.
Also, the function NU.RPI did not return multicast address list in the
correct format.
Diagnosis: Designer brain damage. Monitor portal ID's are fullwords, and user
portal ID's are halfwords. I had to figure out some way to identify monitor
portals to users. Just returning the address was not good enough.
Solution: Invent an "external" portal ID for monitor portals. This ID is
created by NISRV, and is guaranteed to be unique. This id is also guaranteed
to fit into 18 bits. This ID is what the NI% JSYS will deal with when talking
about monitor based portals.
[End of TCO 6.1.1415]
TCO-number: 6.1.1416
Written-by: PALMIERI Creation-date: 29-May-85 15:07:04
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: Monitor
Routines-affected: SCJSYS
Related-QAR: 838141
Problem: If a user issues a SOUT/SOUTR before the connect confirm is received
on a DCN link SCJSYS calls SCLINK without waiting for the connect
confirm. Possible race condition if SCJSYS blocks in IMPWAT.
Diagnosis: No code to wait for connect confirm. IMPWAT does not revalidate
JFN before returning to caller.
Solution: Add routine WCCFRM to await the confirm before calling SCLINK with
the users buffer. Have IMPWAT call SCLFNU to revalidate the JFN be-
fore returning to caller.
[End of TCO 6.1.1416]
TCO-number: 6.1.1417
Written-by: GROSSMAN Creation-date: 29-May-85 15:34:09
Edited-by: GROSSMAN Edit-date: 30-May-85 14:25:39
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: APRSRV
Related-QAR: 838362
Problem: Names of BUGHLTs are messed up in ERROR.SYS if the BUGHLT occurs in
XCDSEC.
Diagnosis: The routine BUGH0 (BUGHLT processor) was using a HRRZ to fetch
the PC of the BUGHLT when passing it on to the SYSERR block generator.
Solution: Load the full PC by using the mask EXPCBT when calling BUGSTO.
[End of TCO 6.1.1417]
TCO-number: 6.1.1418
Written-by: GLINDELL Creation-date: 30-May-85 16:27:04
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: ntman
Problem:
Event block is not deallocated if user requested a signal and the
signal queue was full (very unlikely).
Diagnosis:
Solution:
Call DNFWDS to deallocate event block if signal queue is full.
Thank you Bill Davenport.
[End of TCO 6.1.1418]
TCO-number: 6.1.1419
Written-by: MOSER Creation-date: 31-May-85 15:59:30
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PAGEM
Problem: SKDPF1 when extended addressing (mapping sections indirect) and
working set preloading.
Diagnosis: Similar problem as TCO 6.2000. The monitor looks at entries in
the working set cache but may page fault on another forks PSB. What is
desired is to remove that page from the WSC. We crash trying to look at the
PSB that is swapped out.
Solution: Change PRELW1 to call FPTAXP and expect to get -1,,SPT indicating
SPX is not in core (or would cause a PF). If this is the case then delete the
page from the working set cache.
[End of TCO 6.1.1419]
TCO-number: 6.1.1420
Written-by: TBOYLE Creation-date: 3-Jun-85 11:31:21
Edited-by: TBOYLE Edit-date: 3-Jun-85 11:49:34
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: DIAG
Problem:
ILULK4 crashes when killing the diagnostic monitor D20MON
under certain circumstances.
Diagnosis:
When ports CI and NI are set unavailable, they are both
in maintenance mode. This situation confuses the DGFKIL routines
which heretofore did not expect such a situation. The routines
DGEXRL and DGUNLK don't check to see that the lock word is
no longer in use on the second call to release resources.
Further confusion resulted when making pointers out of -1.
Solution:
Add an additional paranoia check to the routines. Have them
check to see if the DIAG lock is no longer in use.
[End of TCO 6.1.1420]
TCO-number: 6.1.1421
Written-by: TBOYLE Creation-date: 3-Jun-85 11:50:24
Edited-by: TBOYLE Edit-date: 3-Jun-85 12:00:18
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PAGEM MONSYM
Problem:
Monitor hangs.
Diagnosis:
This TCO replaces TCO 6.1.1297 which was supposed to fix PTNON0
BUGHLTs. This new scheme was necessary because CFSWUP likes to go
OKSKED at times to get its work done when NOSKED is in its way. The
callers of CFSWUP are usually never aware of this behaviour.
Solution:
Work around the behaviour of CFSWUP. Remove the extra NOSKED
and OKSKED in MSETPT. Have SETPT0 inform its caller if the page-slot
set failed. Have caller in MSETPT retry if this happens. Teach
the other callers to SETPT0 to crash as they did before with PTNON0
when the page-slot set fails.
[End of TCO 6.1.1421]
TCO-number: 6.1.1423
Written-by: WAGNER Creation-date: 4-Jun-85 11:30:35
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: SCHED phymvr STG globs
Problem: MSCP server gets higher priority than it should. Party line says that
served disks are there for customer convenience, hence we should not
give them the priority that they get.
Diagnosis: We call MSSCHK to check for server requests within 20mS of the
Server requesting to be scheduled. Currently the server requests
this by AOSing SRVSKD, which the scheduler notices at the next
short cycle, and therefore will always check the server within
20 mS, removing the currently running fork more often than not.
Adding insult to injury, the server already has a mechanism to
be called when needed, but at the 100mS long cycle through CLK2.
This is done be SETZMing MSSTIM, which is noticed in the long
cycle, and MSSCHK is called at that time too!
We only need to call MSSCHK every long cycle, there is no need
to forcibly dismiss the currently running process within 20mS
because of a server request.
Solution: Get rid of the SRVSKD flag, replacing AOSes of it with SETZMs of
MSSTIM. This is done in a new routine MSSCZK (MSS Czech...).
This will make it check server requests only when other running have
been forcibly dismissed anyway.
Note: This has the pleasant side effect of reducing the overhead that
running DUMPER from another system to our served disks has on other
jobs on the poor server system. If the server system is standalone
no effect in DUMPER performance is seen.
[End of TCO 6.1.1423]
TCO-number: 6.1.1424
Written-by: GROSSMAN Creation-date: 5-Jun-85 10:23:00
Edited-by: GROSSMAN Edit-date: 5-Jun-85 10:44:20
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PHYKNI NIPAR
Related-QAR: 838380
Problem: Not enough information is returned when the NIA20 gets a planned CRAM
parity error.
Diagnosis: The KNIPPE BUGCHK was used for all planned CRAM parity errors. This
required that someone go look up the code returned by KNIPPE in order to fix the
problem.
Solution: Create a seperate BUGINF for each possible planned CRAM parity
error. Make the short text and the long text be fairly explicit about what's
going on, and also return the info that CSSE wants to see.
[End of TCO 6.1.1424]
TCO-number: 6.1.1425
Written-by: GROSSMAN Creation-date: 5-Jun-85 10:38:14
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: phykni
Problem: KNIIPF (Illegal PHYSIO Function) should be a BUGHLT. There is not
enough context saved by BUGCHKs to figure out the problem.
Also, start removing useless TOPS-10 conditionals from PHYKNI.
[End of TCO 6.1.1425]
TCO-number: 6.1.1426
Written-by: LOMARTIRE Creation-date: 5-Jun-85 12:52:18
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: DISC
Related-QAR: 838337
Problem:
Job can hang in CFSRWT when doing a RENAME. This happens when renaming the
dump file which is being examined by FILDDT.
Diagnosis:
OPNLNG calls ASNOFN without setting up the ACs it expects. This causes
ALOC1 to be screwed up which later confuses CFS.
Solution:
Call GASOG before calling ASNOFN at OPNLNG.
[End of TCO 6.1.1426]
TCO-number: 6.1.1428
Written-by: MELOHN Creation-date: 5-Jun-85 15:06:38
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: JSYSA
Related-QAR: 838321
Problem: Can't built monitor with LAHFLG=0
Diagnosis: SMON code to set LAT-STATE was not under LAHFLG conditional.
Solution: Put it under said conditional
[End of TCO 6.1.1428]
TCO-number: 6.1.1429
Written-by: MELOHN Creation-date: 5-Jun-85 16:22:09
Edited-by: MELOHN Edit-date: 5-Jun-85 16:24:47
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: TTYSRV CTHSRV CTERMD TTYDEF GLOBS
Related-QAR: 838331 838376 838309 838441
Problem: Wrapping lines, ^U, ^R, all work inconsistently with
CTERM. Programs that do multi-line TEXTI%, (like MS) lose track of the
current character position, and produce text that is garbled garbage.
Diagnosis: Both TOPS-20 and CTERM have two basic modes of doing
output to TTYs, binary mode and ascii mode. TOPS-20 uses several
different means of doing combinations of binary mode and ascii mode to
the same TTY. (example, the BLANK command in the EXEC, which puts out
the escape sequence to clear the screen in binary and then prints the
EXEC prompt in ascii). TOPS-20 also maintains the wrap count on the
line on the basis of how many ascii (non-binary) characters have been
output to the terminal. It is therefore critical to output characters
in the server in the same mode in which they were generated on the
host.
Originally CTHSRV set the mode of the message based on the value of
TT%DAM in the JFN mode word at the time when the output was to be sent
to the server. This didn't work because it is possible to output
binary characters to the TTY without changing the JFN mode word by
opening a JFN on the TTY with bytesize of 8. It turns out also that
the CTERM fork which moves the output from the TTY line buffers to the
CTERM message sent to the server runs asynchronously from the user
process which sets and clears the JFN mode word.
Edit 842 to CTHSRV recognized that the above couldn't work, and
therefore always put the message in binary mode. This worked for
normal output in most cases. Unfortunetly, the binary output did not
correctly update the current line and character position on the server
terminal, with the result that wrapping the line occurred at seemingly
random times, and control-R, control-U, and DELETE across line
boundaries produced incorrect results. These include the symptoms
described in QARs 838331, 838376, 838309, and 838441. In all of these
cases the line and character counts were only being updated when the
server echoed characters locally (since they were echoed in non-binary
mode). The line and character position was unaffected by the output
from the remote system, and therefore remained wheverever the last
character read and echoed from the terminal left off.
Solution: The only way to make the remote server do the right thing
is send it binary output in binary(transparent) mode, and non-binary
output in ascii mode. Since there are several ways to switch back and
forth between binary and non-binary mode to the TTY, the only
practical place to tell when we are in binary mode and when we are not
is in TCO, the first level output routine in TTYSRV. I propose to put
markers in the output stream for cterm terminals only that signal when
the output mode is switching between ascii and binary, and between
binary and ascii mode. CTHSRV, when it copies characters from TTY
line buffers to CTERM messages will look for these markers, set the
tranparent bit in the CTERM message as approporate, and segment the
message such that it contains only binary or only ascii mode data.
To implement this I have added TTOASC and TTOBIN markers to the output
markers in TTYDEF; TT%BIN to the TDB which tells whether the terminal
is in binary mode or not, and CH%BIN to the CDB which tells whether
the last message sent to the server was in binary mode or not. This
last flag is necessary since the output markers only signal the
transition between modes, so the mode must remain sticky between
different cterm output messages.
[End of TCO 6.1.1429]
TCO-number: 6.1.1431
Written-by: MELOHN Creation-date: 5-Jun-85 17:03:31
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: LATSRV
Problem: If you change the server name of a LAT server to a name
shorter than the original name, you get an extra character from the
old name at the end of the output of the NTINF% jsys.
Diagnosis: Routine MMVAZO doesn't work with non-ASCIZ strings.
Solution: Make it work right with strings not terminated with a null
byte. Fix UMVAZO to do the same.
[End of TCO 6.1.1431]
TCO-number: 6.1.1432
Written-by: PALMIERI Creation-date: 5-Jun-85 17:39:34
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: Monitor
Routines-affected: DNADLL
Problem: DECnet close of Ethernet portal causes DNDNCE bugchks.
Diagnosis: DNADLL gives NISRV a portal ID of zero. This happens because
the UN block that was used by DNADLL to open the portal is not the
one it uses to close the portal. DNADLL expects them to be the same.
Routine CHKADR was switching UN blocks in the process of opening a
portal.
Solution: Have CHKADR use the same UN block that the open portal routines
are using.
[End of TCO 6.1.1432]
TCO-number: 6.1.1433
Written-by: PALMIERI Creation-date: 5-Jun-85 21:02:18
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: Monitor
Routines-affected: GTJFN
Problem: Can't use wild cards in filename in parse only network JFNs.
Diagnosis: Code does not allow wildcards in filename.
Solution: Remove restriction for parse only network JFN.
[End of TCO 6.1.1433]
TCO-number: 6.1.1434
Written-by: PALMIERI Creation-date: 6-Jun-85 10:44:26
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: Monitor
Routines-affected: DNADLL
Problem: If received data on the Ethernet exceeds the size of the allocated
buffer a "frame too long" event is generated. This event does not
include the source and destination adresses of the oversize message.
Diagnosis: No code to supply the addresses.
Solution: Add necessary code.
[End of TCO 6.1.1434]
TCO-number: 6.1.1435
Written-by: PALMIERI Creation-date: 6-Jun-85 10:56:13
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: Monitor
Routines-affected: D36COM ROUTER JNTMAN
Problem: Big buffers on the Ethernet not as big as they could be.
Diagnosis: Too many bytes reserved for Routing and who knows what overhead.
Solution: Make an accurate computation of overhead and subtract it from
the Ethernet maximum of 1504 not 1498.
[End of TCO 6.1.1435]
TCO-number: 6.1.1436
Written-by: MOSER Creation-date: 6-Jun-85 20:53:14
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: APRSRV
Problem: Wrong Bughlt info. Bogus dumps. TRAPPC points to BUGH5+5.
Diagnosis: Monitor does a LOAD FKJSB but FX is garbage.
Solution: Have a good FX.
[End of TCO 6.1.1436]
TCO-number: 6.1.1437
Written-by: PAETZOLD Creation-date: 10-Jun-85 10:04:29
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: monitor
Routines-affected: STG
Problem:
nimaxh too low. customers are running bigge ethernets than we thought.
Diagnosis:
Solution:
increase ght size from 16. to 128.
[End of TCO 6.1.1437]
TCO-number: 6.1.1438
Written-by: LOMARTIRE Creation-date: 10-Jun-85 11:12:14
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PAGUTL
Problem:
Bad code at BGCTYP.
Diagnosis:
The routine is doing a GTAD% instead of calling LGTAD.
Solution:
Change it to call LGTAD to get the internal date.
[End of TCO 6.1.1438]
TCO-number: 6.1.1439
Written-by: PALMIERI Creation-date: 10-Jun-85 11:18:15
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: Monitor
Routines-affected: SCJSYS
Related-QAR: 838464
Problem: User gets message "No response from destination process" when ACJ
on the local system refuses network access.
Diagnosis: Wrong error code returned by DCN OPENF routine if ACJ refuses
network access.
Solution: Return correct error code in DCNOPN. This error was caused by
one of two incorrect error codes in the error conversion table.
Fix both of them.
[End of TCO 6.1.1439]
TCO-number: 6.1.1440
Written-by: PALMIERI Creation-date: 11-Jun-85 13:44:36
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: Monitor
Routines-affected: D36PAR D36COM
Related-QAR: 838296
Problem: Page faults while in the scheduler. Can be manifested by OKSKBG
BUGHLTs.
Diagnosis: DECnet-36 often backs up byte pointers with an ADJBP. This
can create byte pointers of the form 0410xx,,-1. If xx contains
the first address in a section an effective address will be
computed that is the last address in the previous section.
If this section is not mapped...the monitor will die somewhere.
Solution: In routines that adjust the byte pointer check to see if the pointer
is of the form 0410xx,,-1. If so change the byte pointer to
4410xx,,0.
[End of TCO 6.1.1440]
TCO-number: 6.1.1442
Written-by: MCCOLLUM Creation-date: 11-Jun-85 15:21:47
Edited-by: MCCOLLUM Edit-date: 11-Jun-85 15:28:59
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: GTJFN
Related-QAR: 838346 838418 838431
Problem:
RELBAD BUGHLTs.
Diagnosis:
When parsing a field of a file spec in GTJFN, the right half of FILTMP(JFN)
is used to store the address of the block of free space that contains the
text of the field currently being parsed. FILOPT(JFN) is used to hold a
byte pointer to the end of this string. If the field being parsed is after
the device field (e.g. the directory, file name or extension fields) and
the device field is defaulted to DSK*: or a logical name defined as DSK*:,
STRDVD is called to translate DSK*: to the name of the first structure in
STRTAB. In all cases this is the public structure. STRDVD allocates a new
block of free space if the structure name does not fit into the block of
free space which currently holds the string "DSK*". It then updates the
pointer in FILOPT(JFN). This is incorrect. FILOPT(JFN) should only be
updated if the field currently being parsed is the device field. The result
is that ENDTMP is eventually called to trim the block of free space pointed
to by the right half of FILTMP(JFN). It assumes FILOPT(JFN) contains the
pointer to the end of the string stored in this block, but it no longer
does and a a RELBAD BUGHLT results.
Solution:
There is an alternate entry to STRDVD (STRDEV) that is used when GTJFN is
currently parsing the device name field. Remember which entry point was
used and only update FILOPT(JFN) if the device field is currently being
parsed.
[End of TCO 6.1.1442]
TCO-number: 6.1.1443
Written-by: PAETZOLD Creation-date: 12-Jun-85 08:31:27
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: monitor
Routines-affected: FREE
Problem:
ILMNRF from job zero when shrinking a resident free space pool.
Diagnosis:
a bad byte pointer was being constructed due to an AC being trashed.
Solution:
restore the ac after destroying it. this fix thanks to bill schilitt
and debs.
[End of TCO 6.1.1443]
TCO-number: 6.1.1445
Written-by: MELOHN Creation-date: 12-Jun-85 14:58:07
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: LATSRV
Problem: LATIST BUGINFs
Diagnosis: LAT Slot dmultiplexor routine (LSDMUX) did not handle the
case where multiple start slots were received in the same message. It
also didn't always correctly adjust the byte pointer when an invalid
or unexpected slot was received.
Solution: Fix LSDMUX to parse slots on the basis of the slot size,
rather than assuming (sometimes incorrectly) how much data is left in
the slot and adjusting the byte pointer by that amount.
[End of TCO 6.1.1445]
TCO-number: 6.1.1446
Written-by: GRANT Creation-date: 12-Jun-85 17:24:02
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PHYKLP
Problem: Monitor doesn't handle another system running CI diagnostics very
well.
Diagnosis: When another system ACKs REQUEST-IDs but doesn't return IDRECs,
we continue to send STARTs.
Solution: Notice that REQUEST-IDs are no longer being answered and return
the state of the v.c. to closed.
[End of TCO 6.1.1446]
TCO-number: 6.1.1447
Written-by: MOSER Creation-date: 13-Jun-85 11:34:57
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PAGEM
Problem: Many engineers waste lots of time looking at bogus OKSKBG dumps.
Diagnosis: The real problem is a PF in the scheduler, SKDPF1, but the
code only detects this when CKSPFL is turned on. The PF handler
goes NOSKED using the macro but goes OKSKED by doing instructions. If
INSKED then NSKED gets erroneously decremented.
Solution: Allways check for SKDPF1 (this takes 1 instruction). Always
use NOSKED and OKSKED macros.
[End of TCO 6.1.1447]
TCO-number: 6.1.1448
Written-by: MOSER Creation-date: 13-Jun-85 11:45:35
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: FILMSC
Problem: ILMNRF.
Diagnosis: User does a BIN using .TTDES+line number. If the terminal
switches and the code rechecks then it can crash as it expects JFN
to contain an index into the JFN blocks not 400nnn.
Solution: Expect this and do the "right" thing. Note that the dumps I examined
the "right" thing is probably not what the user wants because the user
haas bad code but it is the logically correct action.
[End of TCO 6.1.1448]
TCO-number: 6.1.1449
Written-by: WAGNER Creation-date: 13-Jun-85 14:51:29
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: cthsrv STG
Related-QAR: 838315 838455
Problem: Doing CTERM host output uses 50-70% of CPU in scheduler, and 20-25%
gets charged to user doing the output. This is independant of baud
rate, and decreases only slightly on heavily loaded systems.
The result is that one user doing a large, non-blocking EXEC type
command (or a large SOUT% or it's friends) can effectively hog an
entire system.
Diagnosis: The CTERM output processing code does an MDISMS on a flag, CTMATN,
that gets set whenever there is output to do on a line (other conditions
also set this "attention" flag as well). The real problem is that we
are a JP%SYS process that is also CRSKED at the time of the MDISMS.
This causes us to get 200 mS of balance set hold time, negating the
effect of the wait for the MDISMS to get checked. The result is that
when we request CPU, we get it.
Solution: Implement a new flag, CTMWAG (CTerM Wait And Go), that gets set
when we want to do the output. Now OR this flag in with a SETZed
CTMATN at the scheduler short cycle (LV8CHK), so that if we have
output to do, we will notice it every 20mS at the most. This has
the additional benefit of treating CTERM output just like RSX20F
and NRT output (incidentally, the case of NRT output hogging the
system was fixed in a similar manner).
The results are quite noticable: the user only gets charged for
a more RSX20F and NRT-like 8%-12% CPU while doing the output.
The scheduler overhead is reduced from 50%-70% down to about 1%
on a standalone system. The actual throughput is down from roughly
1000 cps to 950 cps, a reduction of only 5%!
[End of TCO 6.1.1449]
TCO-number: 6.1.1451
Written-by: NICHOLS Creation-date: 17-Jun-85 10:15:44
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: D36COM
Problem: JSR BUGHLT in D36COM
Solution: Replace JSR BUGHLT with a real BUGHLT.
[End of TCO 6.1.1451]
TCO-number: 6.1.1452
Written-by: GROSSMAN Creation-date: 17-Jun-85 10:57:43
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PHYKNI
Problem: Symbols in PHYKNI that are related to SYSERR entries are wrong or
misleading.
Diagnosis: Wealth of confusion from CSSE error specs and SPEAR documents.
Solution: Change the symbol names to be more meaningful, also update the
appropriate figures.
[End of TCO 6.1.1452]
TCO-number: 6.1.1453
Written-by: GROSSMAN Creation-date: 17-Jun-85 11:08:02
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PHYKNI
Problem: NIA20 keep-alive routines do not always detect a dead KLNI.
Diagnosis: It is possible for the NIA20 to get messed up in such a way that
it no longer processes command queue entries. However, if there is a steady
stream of incoming datagrams, the NIA20 will be cause the KL to wake up and
process them. The incoming datagrams are treated just like regular command
responses. This fools PHYKNI into beleiving that the NIA20 is working just
fine, because it sees these responses frequently enough to keep the keep-
alive process happy. Unfortunately, the KLNI is not responding to commands
during this period, and things like transmits just hang forever.
Solution: Simplify the keep-alive process. ALWAYS give the KLNI a Read Station
Info command every five seconds. If that command is not processed within five
seconds, kill the KLNI and give a KNISTP BUGCHK.
[End of TCO 6.1.1453]
TCO-number: 6.1.1454
Written-by: MOSER Creation-date: 17-Jun-85 15:43:46
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: GLOBS IPCF
Problem: Global subroutine MTAMES is unused.
Solution: Remove it.
[End of TCO 6.1.1454]
TCO-number: 6.1.1455
Written-by: MELOHN Creation-date: 18-Jun-85 12:05:20
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: CTHSRV FILMSC GLOBS
Problem: COMND (and perhaps users) need a way to determine whether a
CTERM terminal supports the full CTERM implementation (like TOPS-20,
TOPS-10, DECnet-DOS, RSX) or just a limited, bug-filled implementation
(like VMS).
Diagnosis: The .MOCTM MTOPR% should return two different values; 1 if
the terminal in question is a True CTERM terminal, and 2 if the
terminal is a VMS CTERM terminal. Users may find this useful as well,
since many things don't work on VMS CTERM terminals, and will not
until VMS is fixed.
Solution: Do it.
[End of TCO 6.1.1455]
TCO-number: 6.1.1456
Written-by: LEACHE Creation-date: 18-Jun-85 13:12:30
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: Monitor
Routines-affected: STG
Problem: A few sites have insufficient IPCF or ENQ freepool space.
Diagnosis: Pools not large enough.
Solution: Increase size of pool allocation.
[End of TCO 6.1.1456]
TCO-number: 6.1.1457
Written-by: PALMIERI Creation-date: 18-Jun-85 15:34:45
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: Monitor
Routines-affected: STG DNADLL
Problem: Endnodes on the Ethernet may have more overhead than is desirable.
Diagnosis: Non-routing nodes on the Ethernet always enable to receive
multicast packets sent to the ID "All Routers". This allows
DECnet to eavesdrop on routing messages so a database can be main-
tained for INFO DECnet.
Solution: Only enable "all routers" multicast address in endnodes on the
Ethernet when variable EVSDRP is non-zero. The default value for
EVSDRP is -1.
[End of TCO 6.1.1457]
TCO-number: 6.1.1459
Written-by: MOSER Creation-date: 18-Jun-85 16:32:22
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: GTJFN
Related-QAR: 838488
Problem: GTJFN no longer returns GJFX39 (logical name loop detected) it returns
GJFX24 (file not found) instead.
Diagnosis: TCO 6.2261 caused this by always returning GJFX24 when SETDEV
fails.
Solution: Return GJFX24 if SETDEV returns STRX09 otherwise return the SETDEV
error.
NOTE: *****************************************************************
* THIS TCO DOES NOT IMPLY ANY "OWNERSHIP" OF GTJFN *
* I WILL DISAVOW ANY KNOWLEDGE OF THAT MODULE *
*****************************************************************
[End of TCO 6.1.1459]
TCO-number: 6.1.1460
Written-by: MOSER Creation-date: 19-Jun-85 09:35:44
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: DISC
Problem: JSR BUGHLT in DISC.
Solution: Make it a "real" BUGHLT, XTRAPT (long file has extra page table).
[End of TCO 6.1.1460]
TCO-number: 6.1.1461
Written-by: GROSSMAN Creation-date: 19-Jun-85 10:32:12
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: LLMOP MEXEC STG GLOBS
Problem: Ethernet system ID's generated by LLMOP did not contain correct
system time information.
Diagnosis: The system date and time was hardwired to be 23-Mar-1984 12:30:30.50.
This was probably done because the system ID message could be generated at
interrupt level. The date and time conversion routines are not available at
interrupt level so the programmer just fudged up some numbers.
Solution: Generate system ID's in CHKR. This way, LLMOP can use the date and
time conversion JSYSs to acquire the necessary values for the system ID message.
Now, when a Request ID message is received at interrupt level, a request gets
queued up to CHKR level, and job 0 gets run immediately. Also, periodically
(every 10 minutes) CHKR will call LLMOP to generate an unsolicited System ID
message.
[End of TCO 6.1.1461]
TCO-number: 6.1.1462
Written-by: GRANT Creation-date: 19-Jun-85 15:26:33
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PHYKLP
Problem: CIPDFQ BUGINFs after reloading the CI.
Diagnosis: TOPS-20 is not processing the response queue. This occurred
after a planned CRAM parity error; one action taken by TOPS-20
in the error processing is that of processing the response queue
and cleaning all the command queues. The routine KLPRQA is called
in this case just as it is during normal operation. During the
error processing case, the port has been disabled but by calling
KLPRQA we incorrectly enable the port for a small amount of time.
During this time the port is capable of putting packets on the
response queue.
Thus, when we finally reload and start the port, it finds the
response queue non-empty and never generates an interrupt.
Solution: Create a second entry point KLPRQC to be used when we want to
process the response queue without enabling the port.
[End of TCO 6.1.1462]
TCO-number: 6.1.1463
Written-by: MOSER Creation-date: 19-Jun-85 16:21:29
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PAGUTL
Problem: OFNBDB BUGHLT.
Diagnosis: The problem occurs when a file is going from short to long.
The following scenario reproduces the bug.
Users Moe and Larry both open STOOGES.DAT as a short file.
User Moe goes out for lunch while Larry extends the file long. When
Larry makes the file go long the following counts are in effect.
Super PT share count = 3 (1 long opener [Larry] and 2 second level PTs)
Share count on second level PT0 = 3 (Moe, Larry and extra count from Larry)
Now Larry closes the file (Moe is still at lunch) The Share count on Super
PT becomes 0 and the OFN is deassigned) The share count on the PT for file
section 0 is still non zero because of Moe (still at lunch).
Now enter Curly who also opens the file. He assigns a OFN for the
Super PT and gets a different one than Larry had. When Curly tries to
aquire an OFN for file section 0 he finds the one that Moe is holding
but the data in SPTO4 does not agree with the data provided by Curly
in the call. An OFNBDB results.
Solution: When assigning an OFN for a long file section 0 always use the
callers data. OFNBDB will still exist for other cases.
[End of TCO 6.1.1463]
TCO-number: 6.1.1464
Written-by: MELOHN Creation-date: 19-Jun-85 20:31:44
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: COMND CTERMD CTHSRV FILMSC TTYDEF TTYSRV
Problem: CTERM terminals do not "unwrap" successfully; that is, if
you create a long enough line to wrap, and then edit that line to be
only one line long again, the CTERM-SERVER loses the prompt that began
the line.
Diagnosis: In this case, the server must have a local copy of the
prompt in order to reprint the line successfully.
Solution: Add a pointer to the prompt string as an argument to the
.MOTXT MTOPR% (AC 4). Make TEXTI% and friends fill in this prompt
string with the users's ^R buffer pointer. Make CTHSRV send this
prompt to the server. Make the server know that the prompt is really
an ^R buffer, and load it into the TEXTI% on the remote system.
[End of TCO 6.1.1464]
TCO-number: 6.1.1465
Written-by: MELOHN Creation-date: 19-Jun-85 20:38:43
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: CTHSRV CTERMD
Problem: DECnet-DOS won't talk CTERM with us.
Diagnosis: Multiple problems; the LOKCDB routine has some code which
normal speed CTERM connections apprently never tested. The GETIMG
routine; which is supposed to parse a DNA image field doesnt work, and
always uses the defaults, which keep everyone but DOS happy. We treat
DOS, and any non-10-20 system like VMS and don't trust it to do
editing. DOS can do editing.
Solution: Fix problems, make CTERM assume that all implementations
handle the entire protocol with the exception of VMS.
[End of TCO 6.1.1465]
TCO-number: 6.1.1466
Written-by: PALMIERI Creation-date: 20-Jun-85 15:16:34
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: Monitor
Routines-affected: STG
Problem: No DECnet nodename if not defined in CONFIG.CMD.
Diagnosis: The default name is nulls.
Solution: Make the nodename and nodename count RSIs of TOPS20 and 6
respectivly.
[End of TCO 6.1.1466]
TCO-number: 6.1.1467
Written-by: GRANT Creation-date: 20-Jun-85 18:02:22
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: phyklp
Problem: Unnecessary CI command when CI microcode is reloaded.
Diagnosis: Now that CI microcode is loaded directly from the monitor we
get the version from the load file; we don't need to do the
READ-COUNTER command to find out the microcode verion anymore.
Solution: Remove the READ-COUNTER command from routine STRKLP, but have
routine LODUCD put the edit number in the CDB so the utilities
can find it. The entire version (major, minor, edit) is in
location UCDVER.
[End of TCO 6.1.1467]
TCO-number: 6.1.1468
Written-by: GRANT Creation-date: 21-Jun-85 12:38:20
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PHYSIO
Related-QAR: 838233
Problem: PHYTPD BUGINF description is misleading.
Solution: Chane name to PHYCPI (CI path ignored) and make the description
more informative.
[End of TCO 6.1.1468]
TCO-number: 6.1.1469
Written-by: PALMIERI Creation-date: 21-Jun-85 15:07:17
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: Monitor
Routines-affected: SCJSYS
Related-QAR: 838514
Problem: DECnet DCN write only logical links sometimes hang other end's
SRV link.
Diagnosis: A CLOSF% may complete "too soon" if the logical link is write
only. When the user issues a close a synchronous disconnect
call is issued to SCLINK. This causes a DI to be sent to the other
end of the link. If the DI can not go out immediately it is queued
up for transmission later. SCJSYS notices that the link is "write
only" and decides that it can remove the entire port database at this
time since there should not be any pending input from the network.
In cleaning up the link it issues a Release for the link to SCLINK.
If the DI is still on the queue to be transmitted it is discarded.
The other end of the link never gets the DI and must wait for
a "no confidence" on the link before cleaning up.
Solution: Don't check in DNETIN to see if the link is "write only".
Instead, always call SCLINK to read any pending data (there shouldn't
be any). If there is no data SCLINK will block until the DC arrives
which means the other end of the link has received and processed the
DI. The only need of the write only check was for the MTOPR function
READ LINK STATUS so make the check there.
[End of TCO 6.1.1469]
TCO-number: 6.1.1470
Written-by: MELOHN Creation-date: 21-Jun-85 17:33:49
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: CTHSRV
Problem: CTERM loses characters on input
Diagnosis: CTHSRV sent start read messages requesting more input
than the line buffer could hold.
Solution: Build start read messages with input length equal to TIMAX
minus TTICT, which is the remaining space in the line buffer. Defer
additional start reads until the line buffer has more than five bytes
free.
[End of TCO 6.1.1470]
TCO-number: 6.1.1472
Written-by: PALMIERI Creation-date: 24-Jun-85 14:38:02
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: Monitor
Routines-affected: ROUTER
Related-QAR: 838475
Problem: Setting cost on DTE circuits seems to have no effect on cost to
nodes whose path is over the DTE.
Diagnosis: Cost paramenter for other than first circuit is ignored when doing
routing updates.
Solution: When stepping through the circuits to build the routing vector
use the cost for that circuit when computing costs to nodes over that
circuit.
[End of TCO 6.1.1472]
TCO-number: 6.1.1473
Written-by: GRANT Creation-date: 25-Jun-85 13:19:13
Edited-by: GRANT Edit-date: 25-Jun-85 13:22:10
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: phyklp cfssrv PHYSIO
Problem: Current CI diagnostic strategy using NO-ANSWER doesn't work well.
Diagnosis: The CI microcode doesn't control the ACKing/NAKing of incoming
packets. So, the best it can do is not send back an IDREC even
though the REQUEST-ID has been ACKed. This isn't good enough because
the other system sees that the NO-ANSWER system is there because it
ACKed the packet. This results in KLPNOA BUGCHKs rather than simply
ignoring it.
Solution: Instead of faking non-existence, set the maintenance bit in the
port state field of the IDREC. This will alert the other systems.
[End of TCO 6.1.1473]
TCO-number: 6.1.1474
Written-by: LEACHE Creation-date: 25-Jun-85 13:58:34
Edited-by: LEACHE Edit-date: 25-Jun-85 14:06:59
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: JSYSA
Related-QAR: 838507 838509
Problem: Password expiration not working correctly.
Diagnosis: Leftover development code at LOGI2 is interfering with real
code at CHKPSW.
Solution: Remove bogus code.
[End of TCO 6.1.1474]
TCO-number: 6.1.1475
Written-by: MOSER Creation-date: 28-Jun-85 11:19:21
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: GETSAV
Problem: GET of some execute only programs fails.
Diagnosis: AC not always setup properly for calls to SREADF and CREADF.
Solution: Set up T1.
[End of TCO 6.1.1475]
TCO-number: 6.1.1476
Written-by: PALMIERI Creation-date: 28-Jun-85 15:07:10
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: Monitor
Routines-affected: LATSRV
Problem: COMMMS bughlt's as a result of memory being returned by LATSRV.
Diagnosis: If an attempt to post a buffer to NISRV fails the failure
reason is returned in T1. LATSRV originally had the buffer address
in T1 and never saved it. Instead it tries to return whatever T1
now points to.
Solution: Save buffer address in a STKVAR and retore it before calling
DNFWDS.
[End of TCO 6.1.1476]
TCO-number: 6.1.1477
Written-by: GRANT Creation-date: 29-Jun-85 22:21:24
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PHYKLP MEXEC
Problem: Running IPALOD by hand causes confusion.
Diagnosis: Now that the CI20 microcode is read into memory at system startup,
you can't load a different version without rebooting the system.
However, if you put a new IPALOD up and run it, it comes out and
says "Loading .......x.y(z)" indicating it loaded the new version
of the microcode when it actually reloaded the version that was read
in at system startup.
Solution: Make 2 entry points for IPALOD. When a user tries to run IPALOD
it will not say "Loading.....x.y(z)", but will say "Loading
microcode that was read in at system startup".
[End of TCO 6.1.1477]
TCO-number: 6.1.1478
Written-by: LEACHE Creation-date: 10-Jul-85 13:32:01
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: Monitor
Routines-affected: FORK
Problem: PDVOP% causes freespace damage, RELBAD's, ILMNRF's, etc.
Diagnosis: PDVOP function .POLOC causes recursive execution of PDVOP
with function .PONAM. The PDVOP code fails to reinitialize the datablock
size in the argblock, so that the 2'nd through n'th recursion has an
enormously high value (something like 1,,1) stipulated as the size of
a block that is really 8 words long. This usually causes no problem,
since the 8 word block is more than enough space to hold most program
name strings. However, bogus executions of PDVOP (such as recently
performed by the EXEC) can create PDV's containing program name strings
that exceed 8 words in length. The recursive PDVOP will then destroy
information in the freespace block adjacent to the PDVOP data block.
Solution: Reinitialize the blocksize value before each recursive execution
of PDVOP.
[End of TCO 6.1.1478]
TCO-number: 6.1.1479
Written-by: WAGNER Creation-date: 10-Jul-85 13:38:14
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: MONSYM
Problem: MONSYM is very large
Diagnosis: It is not purging unneeded storage.
Solution: Have it purge .ERCOD on the second pass since it is used as internal
symbol only.
[End of TCO 6.1.1479]
TCO-number: 6.1.1480
Written-by: MELOHN Creation-date: 10-Jul-85 16:50:04
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: LATSRV
Problem: ILMNRFs when PROs or VAXes acting as LAT servers with PO/S
or Oracle attempt to connect to TOPS-20 and any user does an NTINF% of them.
Diagnosis: These brain-damaged LAT implementations do not set the LAT
server name. In this case we should display the Hex hardware address
of the remote server, but the code to do this jumps to the wrong part
of the routine and the system trips because the appropriate ACs are
not set up.
Solution: Jump to the right place to correctly display the hardware
address of these "pseudo-lat-servers". Thanks to Peter Donahue for
helping find and exterminate this bug.
[End of TCO 6.1.1480]
TCO-number: 6.1.1481
Written-by: PALMIERI Creation-date: 15-Jul-85 15:01:04
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: Monitor
Routines-affected: CTHSRV
Problem: COMMMS BUGHLTs
Diagnosis: If CTHSRV fails is intialize a connect block when opening a SRV
connection is attempts to release the associated buffer, a pointer
to which is in the CDB. It uses P3 as a pointer to the CDB instead
of the correct AC CDB.
Solution: Change P3 to CDB.
[End of TCO 6.1.1481]
TCO-number: 6.1.1482
Written-by: PALMIERI Creation-date: 15-Jul-85 15:11:10
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: Monitor
Routines-affected: PHYKNI
Problem: KNIIPF BUGHLT if system power fails.
Diagnosis: PHYKNI believes that it should never receive a RESET CHANNEL
call from PHYSIO and BUGHLTs if it gets one. However this call
is executed as a result of a power failure.
Solution: Add routine KNIRSC to handle the reset channel call and stop and
request reload for all KLNIs.
[End of TCO 6.1.1482]
TCO-number: 6.1.1483
Written-by: MELOHN Creation-date: 15-Jul-85 15:39:11
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: latsrv
Problem: RESCHK BUGHLTs
Diagnosis: The header on a LAT transmit buffer was smashed. Examination of the
previous buffer revealed that it was a LAT circuit block. The code which clears
the counters at the end of the circuit block XBLTs one too many words and zeros
the first location of the next block of memory. We crash if we try to return
this block, since the check word has been cleared.
Solution: Fix the routine that clears the circuit counters to zero the correct
number of words.
[End of TCO 6.1.1483]
TCO-number: 6.1.1484
Written-by: MELOHN Creation-date: 15-Jul-85 15:42:21
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: latsrv
Problem: ILMNRF BUGHLT
Diagnosis: LAT server sends us an invalid Circuit block vector which we blithly
use to index into space.
Solution: Check all CB vectors sent from the server to see if they make sense.
If they do not, consider it an illegal message.
[End of TCO 6.1.1484]
TCO-number: 6.1.1485
Written-by: MELOHN Creation-date: 16-Jul-85 14:13:56
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: STG
Related-QAR: 838536
Problem: BADTTYs can occur if you build a monitor with LAHFLG turned off.
Diagnosis: NTTLAH should be set to zero if LAHFLG is turned off.
Solution: Do it.
[End of TCO 6.1.1485]
TCO-number: 6.1.1486
Written-by: MELOHN Creation-date: 16-Jul-85 14:17:55
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: LATSRV
Related-QAR: 838534
Problem: Stop reason code sent to servers is garbage when host gets a LATIST
BUGINF.
Diagnosis: Reason code is not set up after LATIST call.
Solution: Set up the code to be invalid slot/format error and return it to the
server.
[End of TCO 6.1.1486]
TCO-number: 6.1.1487
Written-by: MOSER Creation-date: 16-Jul-85 16:00:09
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: APRSRV
Problem: BOGUS dumps. PF in the Bughlt code. TRAPS0 shows PF occurred
trying to reference word 6,,0.
Diagnosis: The Bughlt code tries to store the previous context ACs using
a STPAC. macro. This does a XCTBMU (data from prev context into monitor) of
a BLT of the ACs. When previous context is monitor and the section is not
0/1 then this BLT references memory not the ACs. This is a bug in the microcode.
Solution: Do not do a STPAC. but do a PXCT of an XBLT. instead. This might
eventually get fixed in the u-code but for now this will work.
[End of TCO 6.1.1487]
TCO-number: 6.1.1489
Written-by: LOMARTIRE Creation-date: 18-Jul-85 13:37:25
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: JSYSF
Related-SPR: 20325
Problem:
Various races exist when KILLing a new directory being created. These
races can cause directories to be permanently damaged.
Diagnosis:
The CRDIR code will first completely build the new directory, then notice
that it should be deleted. During this deletion, an error may occur which
prevents CRDIR from finishing. This can leave the directory in an odd state.
Solution:
CRDIR already does a check to see if the directory it is going to work on
exists. If it does not exist, but CRDIR has been directed to delete it, simply
return and do nothing.
[End of TCO 6.1.1489]
TCO-number: 6.1.1490
Written-by: NICHOLS Creation-date: 18-Jul-85 14:55:36
Edit-checked: No Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: CIDLL
Problem:
Can't route DECnet messages through CI from VMS.
Diagnosis:
Maximum receive buffer size allowed does not account for the padding that CI
links use. TOPS-20 messages were routing over the CI because TOPS-20's
message segments are two bytes smaller than VMS's, to allow for two
seldom-used control bytes. VMS never uses those extra control bytes.
Solution:
Add 7 to the max receive buffer size CIDLL will allow to allow the maximum
padding.
[End of TCO 6.1.1490]
TCO-number: 6.1.1491
Written-by: NICHOLS Creation-date: 18-Jul-85 14:59:27
Edit-checked: No Document: No TCO-tested: Yes
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: LATSRV
Problem: Too many Illegal Slot Type messages.
Diagnosis:
There is a bug in the LAT-11 code which allows it to send a stop slot with
both the source and the destination slots set to zero. The architecture is
unclear about whether this is illegal or not.
Solution:
Make TOPS-20 ignore stop slot messages with both source and destination
slots set to zero.
[End of TCO 6.1.1491]
TCO-number: 6.1.1492
Written-by: MOSER Creation-date: 19-Jul-85 15:21:56
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PAGUTL LDINIT POSTLD STG APRSRV
Problem: Cannot have as many JFNs as in 5.1.
Diagnosis: There are 3 pages for JFN blocks as in 5.1 but the blocks are
larger consequently 64 JFNs will fit in 3 pages instead of 81.
Solution: Increase JFN block pages to 4. Because there are no free pages in
section 0/1 to accomplish this we need to find 1 page. Remove the SZCOD
PSECT and move all of it's code to RESCD.
[End of TCO 6.1.1492]
TCO-number: 6.1.1496
Written-by: MAYO Creation-date: 24-Jul-85 14:51:23
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: JSYSF
Related-SPR: 19052
Problem: ARCF% function .ARSST (set archive status) fails if FB%NOD
is set on a file. FB%NOD shouldn't allow a user, even a wheel, from
escaping system migration policies.
Diagnosis: The code at ARSST checks for FB%NOD. It shouldn't.
Solution: Remove the check.
[End of TCO 6.1.1496]
TCO-number: 6.1.1497
Written-by: WAGNER Creation-date: 25-Jul-85 09:35:22
Edited-by: WAGNER Edit-date: 25-Jul-85 15:19:34
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: DATIME
Problem: ODCNV% using Julian form can return dates off by one day in the
last week of April and the last week of October in some non-leap
years.
Diagnosis: ODCNV% calls a routing ODAYL to see if we should apply daylight
savings time to the date and time being converted. ODAYL calls a
routine NLSS (Next(?) LaSt Sunday) to get the internal form of the
last Sunday in April and October. Based on this comparison, we then
add or subtract the appropriate hour before finishing the Julian
date conversion. Unfortunately NLSS returns in all Non-leap years
in which April (or October) end on a Saturday, the date of May 1
(Or Nov 1) as the last Sunday in April (or October).
Problem was that the absolute maximum date for the last Sunday was
given as being in a leap year, and no check was made to see if that
in fact was the case in any call to NLSS. Because of it's algorithm,
the problem only shows when the month also happens to end on a
Saturday.
This is a day 1 bug.
Solution: Have routine NLSS return the correct day for daylight savings time
start and stop, by having it add a day if it is a leap year. In all
other cases use the values of DSTON and DSTOFF (which are now one
smaller than they were).
[End of TCO 6.1.1497]
TCO-number: 6.1.1498
Written-by: WAGNER Creation-date: 25-Jul-85 16:06:57
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: FORK
Problem: Several errors with GFRKH%
Diagnosis: 1. GFRKH% allows its users to get a handle on your superior by
specifying .FHSUP in AC2, and .FHSLF in AC1. This is in
direct conflict with documentation.
2. GFRKH% is too stupid to know how to do what needs to be done
when one asks it to get the "SELF" of "SUPERIOR" by putting
.FHSLF in AC2 and .FHSUP in AC1. This is because it doesn't
know that the SYSFK index for self (0) is a special case that
we should get from FORKN(handle) instead of the more general
FKPTAB(handle).
Solution: 1. Check for this condition and disallow it. With the fix to 2. the
functionality is still there, but no longer in contradiction to
documentation.
2. Ask Tom Moser for help. Easy after that. Just check to see if
SETLF0 returns 0 (indicating "SELF" of knower), if so get the
relative handle from FORKN instead of FKPTAB.
Incidentally, the fix for this problem eliminates 3 labels and
12 lines of code in .GFRKH%.
[End of TCO 6.1.1498]
TCO-number: 6.1.1499
Written-by: MAYO Creation-date: 25-Jul-85 16:23:26
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: JSYSF
Related-SPR: 18595
Problem: Using .ARDIS to clear offline tape info gives different
results if done as a result of one call to ARCF%, or two.
Diagnosis: You can specify clearing 1 (of 2) sets of offline pointer
data with an ARCF% call, or clear both sets with one call, depending
on what bits the caller passes. The result should be identical, but
if done as separate calls AR%PSZ, for example, doesn't get cleared.
Solution: Use common code whenever the result of clearing a tape pointer
results in both tape pointers being 0.
[End of TCO 6.1.1499]
TCO-number: 6.1.1500
Written-by: LOMARTIRE Creation-date: 26-Jul-85 08:27:14
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: CFSSRV
Problem:
Needless time spent voting on OFN tokens which we gave up but to which we
have never lost our access.
Diagnosis:
Need CFS file access token caching. This is part of the overall OFN
caching scheme.
Solution:
Add it. When ever a file access token is going to be removed from the hash
table, mark it as cached instead and keep it hashed. If a vote arrives for this
token, remove it immediately from the hash table and return a YES vote. If this
system attempts to acquire a token which has been cached, simply clear the
cached bit (HSHTAM) and continue as if this token already existed on the
system. A vote will now only be required if the access being asked for more
than what was in effect when the token was cached.
[End of TCO 6.1.1500]
TCO-number: 6.1.1501
Written-by: WAGNER Creation-date: 29-Jul-85 16:09:11
Edited-by: WAGNER Edit-date: 29-Jul-85 16:11:05
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: JSYSF
Related-SPR: 56
Problem: CRDIR% returns error when trying to create a subdirectory with
either directory or user group lists that are not in the parent
directory. This causes sites that utilize our suggested method of
central control of directories using subdirectories, much grief if
they happen to have many, many thousands of the beasts. It is much
manual work, and is very error prone. This has the effect of causing
all directories immediately inferior to <ROOT-DIRECTORY> have many
hundreds of entries for all possible directory and user group list
numbers. It also chews up disk space.
Diagnosis: Enforcement (sort of) of tree-like structure of directory and user
group lists. The CRDIR% Jsys will not allow one to create a
a subdirectory with group lists not in the parent directory, out of
a historical and hysterical fear of breaking Dumper. It should allow
this for those who want it and are prepared to enable to get it.
Solution: Have CRDIR% allow this functionality for Wheels and OPRs. This won't
harm Dumper because it needs to be enabled to use the CREATE function
anyway.
Note: This does not fix the more difficult case of non-enabled users
deleting group lists out of parent directories but not their
descendants, which is a seperate problem.
[End of TCO 6.1.1501]
TCO-number: 6.1.1502
Written-by: PALMIERI Creation-date: 31-Jul-85 13:56:44
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: Monitor
Routines-affected: ROUTER
Problem: Can't route out of the local area.
Diagnosis: Phase III nodes (MCBs) have no information for node zero in their
routing vector so we start at node 1. However, the loop counter still
thinks that it has to be large enough to look at element zero. The
result is that we look at the cell one past the end of the routing
data vector for the MCB and copy that one past the end of the main
routing vector which smashes the adjacency pointer for the area router
which is the information we need to route out of area.
Solution: Decrement the loop counter by one before starting through Phase III
routing vectors.
[End of TCO 6.1.1502]
TCO-number: 6.1.1503
Written-by: MELOHN Creation-date: 31-Jul-85 15:21:56
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: LATSRV
Problem: Edit 2092 to LATSRV broke flow control to DECserver 100s.
Diagnosis: DECservers don't restore the settings when returning to
local mode.
Solution: Retract the change made in 2092.
[End of TCO 6.1.1503]
TCO-number: 6.1.1504
Written-by: PRATT Creation-date: 5-Aug-85 16:37:30
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: SCHED
Related-SPR: 20684
Problem:
A combination of the monitor, exec, and batcon produces
a situation where the program name of a batch job is not
the same as what the batch job is really running. SYSTAT
and INFO BATCH report LOGOUT or the name of the last program
which the previously logged in job was running.
This can also be seen quite frequently for jobs which
log in after a MAISER or FTPSRT jobs log off.
Diagnosis:
The monitor is not clearing out the JOBPNM word for a
job when it gets logged out.
Solution:
In the halt job code just before we indicate that the
job is not in use, clear the job program name.
[End of TCO 6.1.1504]
TCO-number: 6.1.1505
Written-by: PRATT Creation-date: 6-Aug-85 11:22:33
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: COMND
Related-QAR: 838565
Problem:
Datatrieve project is having address space problems. Simple
changes to the COMND jsys would allow them to move large amounts
of buffer space and command state blocks to other sections.
Specifically, address for the command state block could be allowed
to have a 30 bit address and all byte pointers should allow OWGBPs.
Diagnosis:
The byte pointer "validator" and the "subtract 2 byte pointers" routines
only know about 7 bit local byte pointers.
The code that picks up the command state block address only picks up
18 bits worth of address.
Solution:
Change the appropriate routines. This does not effect documentation.
[End of TCO 6.1.1505]
TCO-number: 6.1.1506
Written-by: PRATT Creation-date: 6-Aug-85 16:35:15
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: COMND
Related-SPR: 15397
Problem:
Confusing prompts and help messages can get typed out
during the COMND jsys when a program tries to parse 2 fields
and the first field supplies a default in the FDB, and the 2nd
field does not.
If the user types a <cr>, the default for the 1st field is taken.
We then try to parse the next field. Since no default was supplied,
a no-parse error should be generated. This doesn't happen. Instead,
the COMND jsys reprompts the user and waits for more input. If the
user then types a question mark, he sees the help text for that
2nd field.
Diagnosis:
Too make a long story short, the code to detect if the user
has typed a <cr> at the prompt, doesn't realize that we have have already
parsed the first field of the command.
Solution:
Create a new flag called CMEEOC which gets set if we enter
the COMND jsys with the CM%EOC (end of command) flag set.
We will then know that a field has been parsed even though the
command buffer byte pointers haven't changed.
[End of TCO 6.1.1506]
TCO-number: 6.1.1508
Written-by: WAGNER Creation-date: 8-Aug-85 10:53:54
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: DSKALC
Problem: ASGBAD and ASGBPG BUGCHKS after formatting packs with errors that
are in the maintenance cylinders.
Diagnosis: During Bittable initialization after assigning the home blocks,
the BAT blocks must be marked in the new bittable. Unfortunately
there is no check to see if the address that we are passing to
DSKASA is a valid one. The check currently is only to see if it
is in Swap space.
Solution: Add a check to the code at TOPASG to not assign pages with errors
if they reside in the maintenance area. We won't ever use the pages
anyway.
[End of TCO 6.1.1508]
TCO-number: 6.1.1509
Written-by: PRATT Creation-date: 8-Aug-85 11:40:34
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: TTYSRV
Related-QAR: 838355
Problem: NTINF does not always return the correct error code.
Diagnosis:
The user supplied an invalid byte pointer which caused a BOUT jsys
to fail. BOUT does not return the error code in T1, I assumed it did.
Solution:
Change the ERJMP to an ERJMPR which will force the error code to T1.
[End of TCO 6.1.1509]
TCO-number: 6.1.1510
Written-by: PRATT Creation-date: 8-Aug-85 15:48:52
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: DISC
Related-SPR: 18505
Problem:
Strange results when users copy a file to LPT: and the source
filespec has funny characters in it.
Example: @COPY (FROM) FOO^V^V^V?.EXT (TO) LPT:
Diagnosis:
The EXEC defaults the output filespec to LPT:FOO^V^V^V?.EXT
and performs a GTJFN. The filename gets stored in the JFN block
without the quote characters and the result is FOO^V?.
When the EXEC performs the OPENF, the monitor, in the SPLOPN
code, must switch the name of the output file to
PS:<SPOOL>device-dir#-0-file.ext. It does this by building a new
filespec, SOUTing the filename and extension onto this new
string without regard to any special characters that were in the
old strings. The subsequent GTJFN can fail with illegal
character in filename errors.
However, in this particular example, things get even more
confusing. No error was generated because GTJFN took the ^V as a
quote character for the question mark and internally stored the
filename as LPT-dir#-FOO?. Later when we build a message for
GALAXY to print the file, the IPCF code makes the same mistake
as SPLOPN and concatenates the filespec string using SOUT,
without regard to the special characters. This passed an illegal
filespec to QUASAR, which used it for a GTJFN argument, and
caused it to crash with a CRS stopcode.
Solution:
Changing the code pass the special characters in the
filename all the way to GALAXY requires many modifications to
both DISC and IPCF. Also, GAXLAXY really doesn't care what the
filename is as long as it is correct in the create message.
Therefore, when building the string to write the file into
the spool area, remove all special characters by only allowing
upper case and numeric characters to be concatenated to the new
filespec string.
Also, clean up the code some. Its pretty horrible.
[End of TCO 6.1.1510]
TCO-number: 6.1.1511
Written-by: GRANT Creation-date: 12-Aug-85 08:55:50
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: phyklp
Problem: Powerfail/restart doesn't recover the CI.
Diagnosis: No code.
Solution: In routine KLPZAP, add code to stop and then restart the CI.
[End of TCO 6.1.1511]
TCO-number: 6.1.1515
Written-by: MELOHN Creation-date: 12-Aug-85 15:45:12
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: STG
Problem: Systems configured for 128 terminals that have only LAT
terminals run out of terminal pool at 113.
Diagnosis: Terminal pool is calculated based on the size of a TDB for
front end lines. Other line types, (like LAT) use more space per line
than do front end lines. A system with a large amount of non-front end
lines will run out of space in the terminal pool before ACTLNS number
of terminals exist.
Solution: Calculate terminal pool size based on the size of an
extended TDB, not a short one. The pool size will grow from 40*ACTLNS
to 44*ACTLNS.
[End of TCO 6.1.1515]
TCO-number: 6.1.1516
Written-by: LOMARTIRE Creation-date: 13-Aug-85 09:47:25
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: LOOKUP
Related-QAR: 838584
Problem:
Wild carded extension searches no longer work under certain circumstances.
Diagnosis:
At EXTFAI:, an attempt is made to return a GJFX19 error code.
Unfortunately, it places the code in F, instead of T1, so it clobbers the flags
word.
Solution:
Change the MOVEI GJFX19 to MOVEI T1,GJFX19.
[End of TCO 6.1.1516]
TCO-number: 6.1.1517
Written-by: WAGNER Creation-date: 13-Aug-85 10:48:12
Edit-checked: No Document: Yes TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: dskasa
Related-SPR: 19975
Problem: ASAASG BUGCHKs when creating structures with redundant Bat bloc
entries.
Diagnosis: After initializing the bittable, we then mark all Bat block entries
in the new bittable. We use routine DSKASG to do this. It notices
that we have already marked one (or more, if applicable) of the
Bat block entries and BUGCHKs, and then continues along.
Solution: Since the entry is already marked, and since there is no guaranteed
order to the bat block entries, it does not make sense to create a
whole new routine whose function is to detect this obscure case, since
we would only ignore the condition anyway. So, change the BUGCHK
information to include a mention that this somewhat obscure case
can also cause ASAASG BUGCHKs.
[End of TCO 6.1.1517]
TCO-number: 6.1.1518
Written-by: GRANT Creation-date: 13-Aug-85 10:51:49
Edited-by: GRANT Edit-date: 13-Aug-85 10:53:15
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PHYKLP
Problem: System doesn't recover from an unplanned CI CRAM parity error.
Diagnosis: After the basic recovery procedure the datagram free queue is left
empty since we choose not to believe anything when an unplanned error
occurs. This causes problems when the CI is restarted.
Solution: Stock the datagram free queue, just like at system start up.
[End of TCO 6.1.1518]
TCO-number: 6.1.1520
Written-by: LOMARTIRE Creation-date: 14-Aug-85 11:58:11
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: GTJFN
Related-SPR: 15670
Problem:
A parse-only GTJFN is done on a file and the directory is not specified.
Even though the connected directory is assumed, JFNS% will never output the
directory name for this JFN.
Diagnosis:
Special checks are made to skip updating the JFN block with the connected
directory if the JFN is parse-only.
Solution:
Restructure the code around DEFDI1 and DEFDI5 so that the connected
directory string will be placed in the JFN block.
[End of TCO 6.1.1520]
TCO-number: 6.1.1523
Written-by: LOMARTIRE Creation-date: 15-Aug-85 12:44:42
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: IO
Related-SPR: 17490
Problem:
DIRDNL and ULKSTZ BUGCHKs.
Diagnosis:
The CHKAC% JSYS has a call to GETFPD. GETFPD calls GETFDB. If this call
returns +1 (fails), then the code calls ULKMD0. But, if the GETFDB call fails,
the directory would not have been locked.
Solution:
Do not call ULKMD0 in the error return from GETFDB in GETFPD.
[End of TCO 6.1.1523]
TCO-number: 6.1.1524
Written-by: MOSER Creation-date: 15-Aug-85 14:14:19
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PAGEM PAGUTL DISC GLOBS PROLOG STG
CFSSRV
Problem: The monitor is SLOW, especially when accessing long files randomly.
Diagnosis: OFNs and CFS access tokens are deleted and recreated frequently,
in core pages are removed very often when accessing long files.
Solution: Cache OFNs while maintaining disk integrity. See
R61SPC:FILE-SYSTEM-CACHES.MEM for details.
[End of TCO 6.1.1524]
TCO-number: 6.1.1526
Written-by: TBOYLE Creation-date: 15-Aug-85 17:48:48
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PHYP2 PHYSIO
Related-QAR: 838572 838614
Problem: DDMPNR, KPALVH, Hung disks, etc.
Diagnosis: IORB retry code for RP20's done during release 6.0 can
fail forever and hang up disk traffic if an IORB simply won't work.
Solution: Change it back to if error recovery fails, the error is
marked hard device error and proceed.
[End of TCO 6.1.1526]
TCO-number: 6.1.1527
Written-by: PALMIERI Creation-date: 19-Aug-85 14:16:24
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: Monitor
Routines-affected: SCJSYS
Related-QAR: 838625
Problem: Connect attempt fails when using monitor generated unique tasknames.
Diagnosis: When opening a SRV device the indicated length of the taskname
in the connect block is always one greater than the actual length.
Solution: Decrement indicated length by one before passing it to SCLINK.
[End of TCO 6.1.1527]
TCO-number: 6.1.1528
Written-by: PALMIERI Creation-date: 19-Aug-85 14:18:37
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: Monitor
Routines-affected: SCJSYS
Problem: Unprivileged users cannot use object types above 127.
Diagnosis: Sense of the test for object types above and below 128 was
incorrect.
Solution: Reverse the test so unprivileged users can use the unrestricted
object types.
[End of TCO 6.1.1528]
TCO-number: 6.1.1530
Written-by: WAGNER Creation-date: 27-Aug-85 13:29:55
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: FREE
Related-QAR: 838626
Problem: Many BUGCHKS in FREE.MAC dealing with free space management are
actually BUGHLTS. This is as it should be, but someone forgot to
change the documentation of the BUGxxx's to reflect this.
Diagnosis: Woops.
Solution: Change the text to reflect the severity of the actual problem and
treat them as the BUGHLTs they actually are.
[End of TCO 6.1.1530]
TCO-number: 6.1.1531
Written-by: PRATT Creation-date: 28-Aug-85 14:47:26
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: TTYSRV
Related-SPR: 17825
Problem:
Line feeds are not incremented the line count for half-duplex ttys
Diagnosis:
The code is wrong. It checks for <cr> or <lf>. If it finds either,
it resets the character column counter to 0 and then does a RET.
It should only do this on <cr>.
In any case, the code specifically checks for <lf> 2 instructions later,
to bump the line count but we never got there.
Solution: Remove the check for <lf> and rely on the later check.
[End of TCO 6.1.1531]
TCO-number: 6.1.1532
Written-by: PRATT Creation-date: 28-Aug-85 15:41:21
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: EXEC
Routines-affected: EXECQU
Problem:
EXEC hangs when cancelling many mount request at the same time.
If the user later tries to control-C, the EXEC will loop for a long
time, if not forever, typing out a message saying it is discarding
IPCF messages.
Diagnosis:
The IPCFLS (packet flusher) code is called to flush the page that location
OLDIDX points to. After the page has been released, OLDIDX is not being
updated. The code later on, examines OLDIDX and determines it has a page
to flush. This happens over and over.
Solution:
Set OLDIDX to minus one after the message has been flushed.
This will fix the problem of looping with the error message,
however there is a larger problem with the EXEC hanging. This will be
fixed later.
[End of TCO 6.1.1532]
TCO-number: 6.1.1533
Written-by: EVANS Creation-date: 29-Aug-85 11:25:04
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: PHYM78
Problem: USAGE records for number of physical records read and written are zero
if the tape drive was a TU78.
Diagnosis: PHYM78 isn't updating the counter.
Solution: Make PHYM78 do the counting.
[End of TCO 6.1.1533]
TCO-number: 6.1.1534
Written-by: LOMARTIRE Creation-date: 29-Aug-85 12:49:41
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: CFSSRV
Related-TCO: 6.1.1330
Related-QAR: 838599
Problem:
CFS-20 will try to connect to TOPS-10 systems.
Diagnosis:
CFS checks the port type and will only attempt to connect to "KL10". This
is not good enough becuase TOPS-10 systems are also "KL10" ports.
Solution:
Make CFS smarter and have it connect only to "T-20" nodes. This is similar
to the change that was made to PHYMSC (TCO 6.1.1330).
[End of TCO 6.1.1534]
TCO-number: 6.1.1535
Written-by: LOMARTIRE Creation-date: 5-Sep-85 09:02:09
Edit-checked: No Document: No TCO-tested: No
Maintenance-release: No Hardware-related: No
Program: MONITOR
Routines-affected: CFSSRV JSYSF
Problem:
End of file is not being properly updated in a multi-node CFS environment.
Diagnosis:
There are three problems:
1. The only time that the EOF is broadcast is on a CLOSF% of a
file that has a window page setup and is open for write. This
does not include files updated via PMAP%. So, upon a close of
a PMAP% updated file, no EOF broadcast. However, CHFDB% will
have been done by the user to update the EOF in the FDB.
2. The broadcast routine is using a transaction value of -1 or 0
for all EOF braodcasts; -1 if the system currently has write
access and 0 otherwise. If the receiver of the broadcast gets
a transaction number of 0, it will ignore the message. Otherwise,
the receiver of the broadcast message will compare this
transaction number against the one it maintains. Since -1 is
never going to be greater than the one it has, the message will
always be ignored. Therefore, this broadcast message will
never be used!
3. The SIZEF% JSYS never asks the other cluster systems about the
EOF pointer but, instead, just uses whatever value is currently
in OFNLEN. This may not reflect what the real EOF is since this
system may not have done anything which would result in being
informed of an EOF change (such as a file access token vote).
Solution:
The three solutions are:
1. Make CHFDB% broadcast the EOF whenever the directory has
been updated.
2. Fix CFSBEF to use the real transaction number found in the
resource block for the OFN to be broadcast.
3. Make SIZEF% do a CALL CFSAWT (with read access only) in order
to acquire the current EOF (it will arrive in the voting
process). This is similar to what GETLEN does.
[End of TCO 6.1.1535]