PERFORCE change 100370 for review
Peter Wemm
peter at FreeBSD.org
Sat Jul 1 00:47:15 UTC 2006
http://perforce.freebsd.org/chv.cgi?CH=100370
Change 100370 by peter at peter_daintree on 2006/07/01 00:12:46
Eliminate apic_idt_to_irq(). A function call to do a one-line array
lookup is a bit excessive.
Affected files ...
.. //depot/projects/bike_sched/sys/i386/i386/local_apic.c#3 edit
.. //depot/projects/bike_sched/sys/i386/include/apicvar.h#2 edit
Differences ...
==== //depot/projects/bike_sched/sys/i386/i386/local_apic.c#3 (text+ko) ====
@@ -604,7 +604,7 @@
KASSERT(vector >= APIC_IO_INTS && vector != IDT_SYSCALL &&
vector <= APIC_IO_INTS + APIC_NUM_IOINTS,
("Vector %u does not map to an IRQ line", vector));
- isrc = intr_lookup_source(apic_idt_to_irq(vector));
+ isrc = intr_lookup_source(ioint_irqs[vector - APIC_IO_INTS]);
intr_execute_handlers(isrc, vector, &frame);
}
@@ -741,17 +741,6 @@
mtx_unlock_spin(&icu_lock);
}
-/* Map an IDT vector (APIC) to an IRQ (interrupt source). */
-u_int
-apic_idt_to_irq(u_int vector)
-{
-
- KASSERT(vector >= APIC_IO_INTS && vector != IDT_SYSCALL &&
- vector <= APIC_IO_INTS + APIC_NUM_IOINTS,
- ("Vector %u does not map to an IRQ line", vector));
- return (ioint_irqs[vector - APIC_IO_INTS]);
-}
-
#ifdef DDB
/*
* Dump data about APIC IDT vector mappings.
==== //depot/projects/bike_sched/sys/i386/include/apicvar.h#2 (text+ko) ====
@@ -176,7 +176,6 @@
u_int apic_alloc_vector(u_int irq);
void apic_enable_vector(u_int vector);
void apic_free_vector(u_int vector, u_int irq);
-u_int apic_idt_to_irq(u_int vector);
void apic_register_enumerator(struct apic_enumerator *enumerator);
void *ioapic_create(uintptr_t addr, int32_t id, int intbase);
int ioapic_disable_pin(void *cookie, u_int pin);
More information about the p4-projects
mailing list