[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

problem with ux400



    Date: Tue, 26 Jun 90 15:05:33 -0400
    From: steven@linc.cis.upenn.edu

    We've been having a problem with our ux400.
    Every so often, it pops into the cold load stream with the following error:

    --> Error in the dispatcher, using the cold load stream <--

    Trap: The second argument to the %32-BIT-DIFFERENCE instruction, #<DTP-PACKED-I
    NSTRUCTION- 77 37777777777>, was not a fixnum

    PROCESS::UDPATE-PROCESS-METERS
       Arg 0 (PROCESS::PROC): #<PROCESS::SIMPLE-PROCESS Main X Blinkers UNAGI:0.0 0
    (Genera on GLENSIDE) (0 500000) 1055205>
       Arg 1 (TIME): -2046770035
    s-A, <Resume>: Supply replacement argument
    s-B:           Return a value from the %32-BIT-DIFFERENCE instruction
    s-C:           Retry the %32-BIT-DIFFERENCE instruction
    s-D, <Abort>:  Restart process Main X Blinkers UNAGI:0.0 0 (Genera on GLENSIDE)


    It happens for different processes (e.g. Ethernet, Main X Screen) as well.
    Glenside is the name of our UX-400 board- it is embedded in Unagi, a 
    Sun 4/280.  We're running genera 8.0.
    We don't have the source for this function.
    Any ideas?

The source code isn't very enlightening.  %32-BIT-DIFFERENCE is only
called once, and the second argument is simply the value of the global
variable PROCESS::*PROCESS-START-TIME*.

I suspect some kind of hardware error.  That bogus argument,
#<DTP-PACKED-INSTRUCTION-77 37777777777> looks like something with all
its bits on (38 of the 40 bits in a word are evident from the numbers in
the printed rep, but I don't know the internal tag for
DTP-PACKED-INSTRUCTION offhand).  The only places where
*PROCESS-START-TIME* is assigned it is always assigned the value of
(SYS:%MICROSECOND-CLOCK), so perhaps this is returning the bogus value
(I don't have an I machine, so I'm not sure where this is implemented).

                                                barmar