cvs commit: src/sys/kern kern_intr.c

Bruce Evans bde at FreeBSD.org
Sat Jun 5 18:27:43 GMT 2004


bde         2004-06-05 18:27:28 UTC

  FreeBSD src repository

  Modified files:
    sys/kern             kern_intr.c 
  Log:
  Detect interrupt storms better.  The storm detection didn't work at all
  with an ASUS A7N8X-E motherboard in APIC mode, since storming interrupts
  don't repeat immediately.  Use DELAY(1) to wait a bit for them to repeat.
  This affects all systems.  Only delay for the first
  (10 * intr_storm_threshold) interrupts (per interrupt handler) so that
  this is only a pessimization while warming up.  Throttle after calling
  the sub-handlers instead of before so that the long delay given by
  throttling can be used instead of the DELAY(1) to detect storms after
  warming up.
  
  Reduced the throttling period from 1/10 second to 1/hz seconds so that
  throttling doesn't destroy performance so much.  Interrupts that are
  detected as storming are effectively handled by polling at a frequency
  of hz Hz.  On A7N8X-E's there is another hardware or configuration bug
  that makes the throttled frequency closer to 2*hz Hz.
  
  Revision  Changes    Path
  1.109     +50 -23    src/sys/kern/kern_intr.c


More information about the cvs-src mailing list