Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 25 Jun 2009 18:13:46 +0000 (UTC)
From:      John Baldwin <jhb@FreeBSD.org>
To:        cvs-src-old@freebsd.org
Subject:   cvs commit: src/sys/amd64/amd64 intr_machdep.c io_apic.c msi.c src/sys/amd64/include intr_machdep.h src/sys/i386/i386 intr_machdep.c io_apic.c msi.c src/sys/i386/include intr_machdep.h
Message-ID:  <200906251814.n5PIEcWh049905@repoman.freebsd.org>

next in thread | raw e-mail | index | archive | help
jhb         2009-06-25 18:13:46 UTC

  FreeBSD src repository

  Modified files:
    sys/amd64/amd64      intr_machdep.c io_apic.c msi.c 
    sys/amd64/include    intr_machdep.h 
    sys/i386/i386        intr_machdep.c io_apic.c msi.c 
    sys/i386/include     intr_machdep.h 
  Log:
  SVN rev 194985 on 2009-06-25 18:13:46Z by jhb
  
  - Restore the behavior of pre-allocating IDT vectors for MSI interrupts.
    This is mostly important for the multiple MSI message case where the
    IDT vectors for the entire group need to be allocated together.  This
    also restores the assumptions made by the PCI bus code that it could
    invoke PCIB_MAP_MSI() once MSI vectors were allocated.
  - To avoid whiplash with CPU assignments, change the way that CPUs are
    assigned to interrupt sources on activation.  Instead of assigning the
    CPU via pic_assign_cpu() before calling enable_intr(), allow the
    different interrupt source drivers to ask the MD interrupt code which
    CPU to use when they allocate an IDT vector.  I/O APIC interrupt pins
    do this in their pic_enable_intr() routines giving the same behavior as
    before.  MSI sources do it when the IDT vectors are allocated during
    msi_alloc() and msix_alloc().
  - Change the intr_table_lock from an sx lock to a mutex.
  
  Tested by:      rnoland
  
  Revision  Changes    Path
  1.43      +38 -35    src/sys/amd64/amd64/intr_machdep.c
  1.33      +1 -1      src/sys/amd64/amd64/io_apic.c
  1.12      +35 -19    src/sys/amd64/amd64/msi.c
  1.22      +3 -0      src/sys/amd64/include/intr_machdep.h
  1.39      +38 -35    src/sys/i386/i386/intr_machdep.c
  1.37      +1 -1      src/sys/i386/i386/io_apic.c
  1.12      +35 -19    src/sys/i386/i386/msi.c
  1.23      +3 -0      src/sys/i386/include/intr_machdep.h



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200906251814.n5PIEcWh049905>