Number: 270 Date: 22-Mar-84 14':33':38 Submitter: le.pasa Source: Dering.pasa Subject: Control-D during SYSOUT({FLOPPY}) causes next SYSOUT({FLOPPY}) to be smashed Lisp Version: 13-Mar-84 Fugue.6 Description: ' Date': 21 Mar 84 16':21 PST' From': Dering.pasa' Subject': AR Sysout to Floppy can smash (FLOPPY.MODE)' To': Le.Pasa' cc': Dering.pasa,Roach.pa,Raim.pasa' Lisp-System-Date': 13-Mar-84 Fugue.6' Machine-Type': DLion' ' Thu,' ' Please submit the following as an AR':' ' I have tested (SYSOUT ''{FLOPPY}) and found that the problem with (FLOPPY.MODE) is somehow related to what files were loaded prior to making SYSOUT.' ' 1. Load a fresh sysout from fileserver.' 2. Start volume. At the prompt for an init file respond with {ROSE}<LISP>CURRENT>INIT.XSIS.' 3. (SYSOUT ''{FLOPPY})' 4. After SYSOUT completes (FLOPPY.MODE) returns PILOT.' 5. Load the newly created sysout on another machine on same net.' 6. Start Volume. The screen image comes up with no caret.' 7. (GETD ''FLOPPY.MODE) returns NIL.' 8. (SETQ MYLIST (READFILE ''{FLOPPY}RS232)) breaks with the error message ARG NOT LP. A BT! shows the following stack': ' ' ' ERROR' \LISPERROR' \DTESTFAIL' ERRORSET' \SFLOPPY.OPENHUGEFILE' \OPENFILE' OPENSTREAM' OPENFILE' INFILE' READFILE' \EVALFORM' \EVAL' PROG1' APPLY' SAVESETQ' \EVALFORM' \EVAL' EVAL' LISPX' ERRORSET' EVALQT' \REPEATEDLYEVALQT' \EVALFORM' ERRORSET' \MAKE.PROCESS0' T' ' ' 9. After (FLOPPY.RESTART) you can successfully do a READFILE from {FLOPPY}. (FLOPPY.MODE) returns =FLOPPY.MODE? PILOT.' ' When I did not load {ROSE}<LISP>CURRENT>INIT.XSIS' the definition of function FLOPPY.MODE remained intact. I used (SYSOUT ''{FLOPPY}) after loading {ROSE}<LISPUSERS>HISTMENU.DCOM and although the caret was missing from the new sysout READFILE and FLOPPY.MODE worked fine. I also made a third sysout loading HISTMENU from floppies instead of the fileserver. This sysout had a caret, and READFILE and FLOPPY.MODE worked. Incidentally those sysouts where I only loaded HISTMENU came up with FLOPPY in PILOT mode.' ' ' Judy ' --------------------------------------' ' Date': 22 Mar 84 10':28 PST' From': Dering.pasa' Subject': REVISED AR (SYSOUT ''FLOPPY)' To': Roach.PA' cc': Dering.pasa,Le.pasa,Raim.pasa' ' Kelly,' ' I have to revise my AR of 22-MAR -84. The smashed function FLOPPY.MODE is related to ↑D during a previous SYSOUT.' (Although two separate individuals repeated the INIT.XSIS test, we both had to abort our first (SYSOUT ''{FLOPPY}). Just another demonstration of the correlation/causality distinction.) ' ' The following sequence produces a sysout with FLOPPY.MODE undefined.' ' 1. Load a fresh sysout.' 2. (SYSOUT ''{FLOPPY})' 3. ↑D' 4. At this point (FLOPPY.MODE) returns SYSOUT and (GETD ''FLOPPY.MODE) returns a pointer to some compiled code. Reset FLOPPY.MODE to PILOT.' 5. (SYSOUT ''{FLOPPY})' 6. Load the newly created sysout on same machine.' 7. (GETD ''FLOPPY.MODE) returns NIL. (FLOPPY.MODE) returns' =FLOPPY.MODE ' PILOT' ' If you do a (FLOPPY.RESTART) after step 4, FLOPPY.MODE will be defined when you load your new sysout.' ' Judy' ----------------' Date': 23 Mar 84 14':18 PST' From': Masinter.pa' Subject': Re': Fugue.6 Delay' In-reply-to': Dering.pasa''s message of 1 Jan 01 10':27 PST' To': Dering.pasa' cc': LispSupport, Raim.pasa, LE.PASA, Roach.pa' ' Judy, AR#270 describes a problem of moderate impact. The impact is moderate because there is a simple workaround, namely, to call FLOPPY.MODE(PILOT) after performing SYSOUT({FLOPPY}). [LispSupport': please change Impact ← Moderate and add Workaround field].' ' ...' -----' Date': 23 Mar 84 16':54 PST' From': Dering.pasa' Subject': Re': Fugue.6 Delay' In-reply-to': Masinter.pa''s message of 23 Mar 84 14':18 PST' To': Masinter.pa' cc': Dering.pasa, LispSupport.pa, Raim.pasa, LE.PASA, Roach.pa' ' Larry,' ' Your suggestion of calling (FLOPPY.MODE ''PILOT) is not a workaround for the problem described in AR 270. See step 4 in PART 2 of the AR.' ' ' The workaround which is detailed in the disposition field of the AR is to do a (FLOPPY.RESTART) after the ↑D.' ' I classified this as serious because it appears that the only side-effect of the ↑D is to have to reset mode. But in any sysout created by a subsequent invocations of (SYSOUT ''{FLOPPY}) the definition of FLOPPY.MODE is smashed. To have to have the user call a function to reset all the floppy globals when SYSOUT function is interrupted seems to me to be a serious problem. Also, it would be nice to know if the same procedure is necessary if you abort other floppy functions, e.g. FLOPPY.TO.FILE.' ' ' ' Judy' -----' Date': 23 Mar 84 17':37 PST' From': Masinter.pa' Subject': Re': AR#270, SYSOUT({FLOPPY})' In-reply-to': Dering.pasa''s message of 23 Mar 84 16':54 PST' To': Dering.pasa' cc': Masinter.pa, LispSupport.pa, Raim.pasa, LE.PASA, Roach.pa' ' Judy, ' ' after our phone conversation, and re-reading your message, would it be adequate to call this AR' ' "Control-D during SYSOUT({FLOPPY}) causes next SYSOUT({FLOPPY}) to be smashed?"' ' Just to make sure I understand the circumstances, have you had any experience with the resulting sysout being bad after SYSOUT({FLOPPY}) if it was NOT preceded by a ↑D during a previous SYSOUT({FLOPPY}) ?????' ' -----' ' Date': 2 APR 84 11':53 PST' From': ROACH.PA' Subject': AR270 (GETD ''FLOPPY.MODE) = NIL' To': LISPSUPPORT, DERING.PASA' cc': ROACH' ' Judy,' I am unable to reproduce your problem. After moving a sysout off' of floppies to another Dlion, (GETD ''FLOPPY.MODE) is {CCODEP}#1,11000,' not NIL, and everything about FLOPPY.MODE seems to be working. The' ARG NOT LP error part of your message is a bug, and is being treated under' AR217.' ' Lispsupport,' Difficulty ← Impossible' Priority ← Unlikely' Status ← Incomplete' ' Kelly' ' -----' ' Date': 2 Apr 84 16':44 PST' From': Dering.pasa' Subject': Re': AR270 (GETD ''FLOPPY.MODE) = NIL' In-reply-to': ROACH.PA''s message of 2 APR 84 11':53 PST' To': ROACH.PA' cc': LISPSUPPORT.PA, DERING.PASA' ' ' Kelly,' ' I was able to reproduce the problem I described several times.' Were you using the March 13 Sysout? Did you do the required step of aborting a previous (Sysout ''{FLOPPY}) with a ↑D?' ' These steps are detailed on Part 2 of AR 270 dated 22 Mar 84.' ' ' Judy' ' -----' ' Date': 13 APR 84 12':48 PST' From': ROACH.PA' Subject': AR270 Diagnosed' To': LISPSUPPORT, DERING.PASA' cc': ROACH' ' Judy,' I''ve looked at your sysout and have found strong circumstantial' evidence tying this problem to AR176. With the help of Larry' Masinter, a connection between atom FLOPPY.MODE and a bad page in' memory clearly the creation of AR176 has been established. The reason' you get the interaction' ←(FLOPPY.MODE)' =FLOPPY.MODE' PILOT' is that there are now two atoms in the system with pname' "FLOPPY.MODE". The atom you type gets spelling corrected to the' original FLOPPY.MODE atom which is still defined as it always has' been. Other functions such as FLOPPY.DRIVE.EXISTSP, FLOPPY.COMPACT &' ARRAYTYPE also have become undefined in this sysout. Atom LAMBDA' suffers the same spelling correction pheonmena. In this sysout I see' that' (GETPROP ''FLOPPY ''FILEDATES) = ((" 3-Feb-84 17':14':05" ...))' which indicates that the sysout you were using has the version of' FLOPPY with the AR176 bug. AR176 has been corrected in the Mar 20' version of FLOPPY.DCOM on {PHYLUM}<LISPCORE>SOURCES>.' ' Lispsupport,' Status ← Fixed.' Kelly' ' Workaround: [JD':If you do a (FLOPPY.RESTART) after step 4, FLOPPY.MODE will be defined when you load your new sysout. 3/22/84] Test Case: Edit-By: Sannella.PA Edit-Date: 17-Aug-84 11':35':15 Attn: Assigned To: Roach.pa In/By: Disposition: [tl': edited 3/22/84 to add on Workaround comment] [tl':3/26/84 changed subject so it would be adequate to description of problem][mjs 3/26/84': changed Impact, subject, priority] System: Operating System Subsystem: DLion Floppy Machine: 1108 Disk: Microcode Version: Memory Size: File Server: Server Software Version: Difficulty: Hard Frequency: Everytime Impact: Moderate Priority: Unlikely Status: Closed Problem Type: Bug Source Files: