Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 1 Jul 2009 17:20:07 +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 local_apic.c msi.c src/sys/amd64/include intr_machdep.h src/sys/amd64/isa atpic.c src/sys/i386/i386 intr_machdep.c io_apic.c local_apic.c msi.c src/sys/i386/include intr_machdep.h ...
Message-ID:  <200907011720.n61HKVL9040145@repoman.freebsd.org>

next in thread | raw e-mail | index | archive | help
jhb         2009-07-01 17:20:07 UTC

  FreeBSD src repository

  Modified files:
    sys/amd64/amd64      intr_machdep.c io_apic.c local_apic.c 
                         msi.c 
    sys/amd64/include    intr_machdep.h 
    sys/amd64/isa        atpic.c 
    sys/i386/i386        intr_machdep.c io_apic.c local_apic.c 
                         msi.c 
    sys/i386/include     intr_machdep.h 
    sys/i386/isa         atpic.c 
    sys/kern             kern_intr.c 
    sys/sys              priv.h 
  Log:
  SVN rev 195249 on 2009-07-01 17:20:07Z by jhb
  
  Improve the handling of cpuset with interrupts.
  - For x86, change the interrupt source method to assign an interrupt source
    to a specific CPU to return an error value instead of void, thus allowing
    it to fail.
  - If moving an interrupt to a CPU fails due to a lack of IDT vectors in the
    destination CPU, fail the request with ENOSPC rather than panicing.
  - For MSI interrupts on x86 (but not MSI-X), only allow cpuset to be used
    on the first interrupt in a group.  Moving the first interrupt in a group
    moves the entire group.
  - Use the icu_lock to protect intr_next_cpu() on x86 instead of the
    intr_table_lock to fix a LOR introduced in the last set of MSI changes.
  - Add a new privilege PRIV_SCHED_CPUSET_INTR for using cpuset with
    interrupts.  Previously, binding an interrupt to a CPU only performed a
    privilege check if the interrupt had an interrupt thread.  Interrupts
    without a thread could be bound by non-root users as a result.
  - If an interrupt event's assign_cpu method fails, then restore the original
    cpuset mask for the associated interrupt thread.
  
  Approved by:    re (kib)
  
  Revision  Changes    Path
  1.45      +20 -15    src/sys/amd64/amd64/intr_machdep.c
  1.34      +12 -6     src/sys/amd64/amd64/io_apic.c
  1.58      +3 -3      src/sys/amd64/amd64/local_apic.c
  1.13      +63 -17    src/sys/amd64/amd64/msi.c
  1.24      +1 -1      src/sys/amd64/include/intr_machdep.h
  1.25      +2 -2      src/sys/amd64/isa/atpic.c
  1.41      +20 -15    src/sys/i386/i386/intr_machdep.c
  1.38      +11 -5     src/sys/i386/i386/io_apic.c
  1.61      +3 -3      src/sys/i386/i386/local_apic.c
  1.13      +63 -17    src/sys/i386/i386/msi.c
  1.25      +1 -1      src/sys/i386/include/intr_machdep.h
  1.31      +2 -2      src/sys/i386/isa/atpic.c
  1.172     +23 -3     src/sys/kern/kern_intr.c
  1.37      +1 -0      src/sys/sys/priv.h



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