cvs commit: src/sys/i386/isa intr_machdep.c src/sys/kern kern_intr.c src/sys/sys interrupt.h

Matthew Dillon dillon at crater.dragonflybsd.org
Tue Oct 25 17:58:58 PDT 2005


dillon      2005/10/25 17:55:20 PDT

DragonFly src repository

  Modified files:
    sys/i386/isa         intr_machdep.c 
    sys/kern             kern_intr.c 
    sys/sys              interrupt.h 
  Log:
  Redo the interrupt livelock code.  Simplify the frequency calculations
  and add a 1-second stabilization requirement before a livelock is removed.
  Fix a bug that prevented the code from actually limiting the interrupt rate
  properly.
  
  Greatly simplify ithread_done() and rename it to ithread_unmask().  It is
  no longer responsible for putting the interrupt thread to sleep.
  
  There is one issue left and that is the livelock code must re-enable the
  interrupt at the limit frequency in order to detect when the actual
  interrupt rate falls below the low water mark.  In a livelocked situation
  the actual interrupt rate will be about 2x the livelock limit because
  both the systimer interrupt and the livelocked interrupt will be running.
  
  Revision  Changes    Path
  1.34      +12 -0     src/sys/i386/isa/intr_machdep.c
  1.28      +123 -111  src/sys/kern/kern_intr.c
  1.12      +1 -1      src/sys/sys/interrupt.h


http://www.dragonflybsd.org/cvsweb/src/sys/i386/isa/intr_machdep.c.diff?r1=1.33&r2=1.34&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/kern/kern_intr.c.diff?r1=1.27&r2=1.28&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/sys/interrupt.h.diff?r1=1.11&r2=1.12&f=u





More information about the Commits mailing list