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

Paolo Pisati piso at FreeBSD.org
Sun May 6 17:02:51 UTC 2007


piso        2007-05-06 17:02:50 UTC

  FreeBSD src repository

  Modified files:
    sys/amd64/amd64      intr_machdep.c 
    sys/i386/i386        intr_machdep.c 
    sys/kern             kern_intr.c 
    sys/sys              interrupt.h 
  Log:
  Bring in the reminaing bits to make interrupt filtering work:
  
  o push much of the i386 and amd64 MD interrupt handling code
    (intr_machdep.c::intr_execute_handlers()) into MI code
    (kern_intr.c::ithread_loop())
  o move filter handling to kern_intr.c::intr_filter_loop()
  o factor out the code necessary to mask and ack an interrupt event
    (intr_machdep.c::intr_eoi_src() and intr_machdep.c::intr_disab_eoi_src()),
    and make them part of 'struct intr_event', passing them as arguments to
    kern_intr.c::intr_event_create().
  o spawn a private ithread per handler (struct intr_handler::ih_thread)
    with filter and ithread functions.
  
  Approved by: re (implicit?)
  
  Revision  Changes    Path
  1.31      +84 -0     src/sys/amd64/amd64/intr_machdep.c
  1.26      +85 -1     src/sys/i386/i386/intr_machdep.c
  1.144     +570 -6    src/sys/kern/kern_intr.c
  1.37      +21 -0     src/sys/sys/interrupt.h


More information about the cvs-src mailing list