freebsd-skq/sys/i386/isa
jhb 76256698a1 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)
2009-07-01 17:20:07 +00:00
..
atpic_vector.s
atpic.c Improve the handling of cpuset with interrupts. 2009-07-01 17:20:07 +00:00
ccbque.h
clock.c Make algorithm a bit more bulletproof. 2009-06-23 23:16:37 +00:00
dpms.c
elcr.c
elink.c
elink.h
icu.h
isa_dma.c
isa.c
isa.h
nmi.c
npx.c Fix a few nits in the earlier changes to prevent local information leakage 2009-03-25 22:08:30 +00:00
pmtimer.c style(9) nit: remove unnecessary {} pair. 2008-10-28 04:32:41 +00:00
prof_machdep.c
spic.c
spicreg.h
vesa.c Add line width calculations for 15/16 and 24/32 bit modes in case 2009-06-09 00:54:57 +00:00