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

GC-DAEMON and nointerrupt mode?



    Date: 20 November 1979 12:49-EST
    From: Jon L White <JONL at MIT-MC>
    To:   RWK
    cc:   BUG-LISP
    Re:   GC-DAEMON and nointerrupt mode?

    Upon reconsideration, I'm thinking that the current status is ok,
    namely that the so-called "synchronous" interrupts should not
    fiddle with, nor care about, the state of nointerrupt.  these are:
    AUTOLOAD, ERRSET, *RSET-TRAP, GC-DAEMON, GC-OVERFLOW, and PDL-OVERFLOW.
    Thus it would be ok to write some code which first sets "nointerrupt"
    and then calls the GC - the "nointerrupt" would delay neither the
    GC-OVERFLOW nor the GC-DAEMON functions;  but GC-LOSSAGE is deferred
    until nointerrupt is null.
I agree that they should not care, i.e. should be run immediately.
However, GC-DAEMON *MUST* be able to look at the world before ANYBODY ELSE
does ANY consing.  The only way to do that is to inhibit interrupts when
it is invoked.  As near as I can figure, however, GC-DAEMON is unique in
this requirement.