Index: sys/x86/include/intr_machdep.h =================================================================== --- sys/x86/include/intr_machdep.h +++ sys/x86/include/intr_machdep.h @@ -84,7 +84,7 @@ void (*pic_eoi_source)(struct intsrc *); void (*pic_enable_intr)(struct intsrc *); void (*pic_disable_intr)(struct intsrc *); - int (*pic_vector)(struct intsrc *); + u_int (*pic_vector)(struct intsrc *); int (*pic_source_pending)(struct intsrc *); void (*pic_suspend)(struct pic *); void (*pic_resume)(struct pic *, bool suspend_cancelled); @@ -140,18 +140,18 @@ #ifdef SMP void intr_add_cpu(u_int cpu); #endif -int intr_add_handler(const char *name, int vector, driver_filter_t filter, +int intr_add_handler(const char *name, u_int vector, driver_filter_t filter, driver_intr_t handler, void *arg, enum intr_type flags, void **cookiep, int domain); #ifdef SMP int intr_bind(u_int vector, u_char cpu); #endif -int intr_config_intr(int vector, enum intr_trigger trig, +int intr_config_intr(u_int vector, enum intr_trigger trig, enum intr_polarity pol); int intr_describe(u_int vector, void *ih, const char *descr); void intr_execute_handlers(struct intsrc *isrc, struct trapframe *frame); u_int intr_next_cpu(int domain); -struct intsrc *intr_lookup_source(int vector); +struct intsrc *intr_lookup_source(u_int vector); int intr_register_pic(struct pic *pic); int intr_register_source(struct intsrc *isrc); int intr_remove_handler(void *cookie); @@ -160,12 +160,12 @@ void intr_reprogram(void); void intrcnt_add(const char *name, u_long **countp); void nexus_add_irq(u_long irq); -int msi_alloc(device_t dev, int count, int maxcount, int *irqs); +int msi_alloc(device_t dev, int count, int maxcount, u_int *irqs); void msi_init(void); -int msi_map(int irq, uint64_t *addr, uint32_t *data); -int msi_release(int *irqs, int count); -int msix_alloc(device_t dev, int *irq); -int msix_release(int irq); +int msi_map(u_int irq, uint64_t *addr, uint32_t *data); +int msi_release(u_int *irqs, int count); +int msix_alloc(device_t dev, u_int *irq); +int msix_release(u_int irq); #ifdef XENHVM void xen_intr_alloc_irqs(void); #endif Index: sys/x86/isa/atpic.c =================================================================== --- sys/x86/isa/atpic.c +++ sys/x86/isa/atpic.c @@ -121,7 +121,7 @@ struct atpic { struct pic at_pic; int at_ioaddr; - int at_irqbase; + u_int at_irqbase; uint8_t at_intbase; uint8_t at_imen; }; @@ -129,7 +129,7 @@ struct atpic_intsrc { struct intsrc at_intsrc; inthand_t *at_intr, *at_intr_pti; - int at_irq; /* Relative to PIC base. */ + u_int at_irq; /* Relative to PIC base. */ enum intr_trigger at_trigger; u_long at_count; u_long at_straycount; @@ -142,7 +142,7 @@ static void atpic_eoi_slave(struct intsrc *isrc); static void atpic_enable_intr(struct intsrc *isrc); static void atpic_disable_intr(struct intsrc *isrc); -static int atpic_vector(struct intsrc *isrc); +static u_int atpic_vector(struct intsrc *isrc); static void atpic_resume(struct pic *pic, bool suspend_cancelled); static int atpic_source_pending(struct intsrc *isrc); static int atpic_config_intr(struct intsrc *isrc, enum intr_trigger trig, @@ -312,7 +312,7 @@ { } -static int +static u_int atpic_vector(struct intsrc *isrc) { struct atpic_intsrc *ai = (struct atpic_intsrc *)isrc; Index: sys/x86/x86/intr_machdep.c =================================================================== --- sys/x86/x86/intr_machdep.c +++ sys/x86/x86/intr_machdep.c @@ -221,11 +221,12 @@ int intr_register_source(struct intsrc *isrc) { - int error, vector; + u_int vector; + int error; KASSERT(intr_pic_registered(isrc->is_pic), ("unregistered PIC")); vector = isrc->is_pic->pic_vector(isrc); - KASSERT(vector < num_io_irqs, ("IRQ %d too large (%u irqs)", vector, + KASSERT(vector < num_io_irqs, ("IRQ %u too large (%u irqs)", vector, num_io_irqs)); if (interrupt_sources[vector] != NULL) return (EEXIST); @@ -249,7 +250,7 @@ } struct intsrc * -intr_lookup_source(int vector) +intr_lookup_source(u_int vector) { if (vector < 0 || vector >= num_io_irqs) @@ -258,7 +259,7 @@ } int -intr_add_handler(const char *name, int vector, driver_filter_t filter, +intr_add_handler(const char *name, u_int vector, driver_filter_t filter, driver_intr_t handler, void *arg, enum intr_type flags, void **cookiep, int domain) { @@ -306,7 +307,7 @@ } int -intr_config_intr(int vector, enum intr_trigger trig, enum intr_polarity pol) +intr_config_intr(u_int vector, enum intr_trigger trig, enum intr_polarity pol) { struct intsrc *isrc; @@ -329,7 +330,7 @@ intr_execute_handlers(struct intsrc *isrc, struct trapframe *frame) { struct intr_event *ie; - int vector; + u_int vector; /* * We count software interrupts when we process them. The @@ -453,7 +454,7 @@ MPASS(intrcnt_index + 2 <= nintrcnt); is->is_index = intrcnt_index; intrcnt_index += 2; - snprintf(straystr, MAXCOMLEN + 1, "stray irq%d", + snprintf(straystr, MAXCOMLEN + 1, "stray irq%u", is->is_pic->pic_vector(is)); intrcnt_updatename(is); is->is_count = &intrcnt[is->is_index]; Index: sys/x86/x86/io_apic.c =================================================================== --- sys/x86/x86/io_apic.c +++ sys/x86/x86/io_apic.c @@ -119,7 +119,7 @@ static void ioapic_eoi_source(struct intsrc *isrc); static void ioapic_enable_intr(struct intsrc *isrc); static void ioapic_disable_intr(struct intsrc *isrc); -static int ioapic_vector(struct intsrc *isrc); +static u_int ioapic_vector(struct intsrc *isrc); static int ioapic_source_pending(struct intsrc *isrc); static int ioapic_config_intr(struct intsrc *isrc, enum intr_trigger trig, enum intr_polarity pol); @@ -530,7 +530,7 @@ } } -static int +static u_int ioapic_vector(struct intsrc *isrc) { struct ioapic_intsrc *pin; Index: sys/x86/x86/msi.c =================================================================== --- sys/x86/x86/msi.c +++ sys/x86/x86/msi.c @@ -132,7 +132,7 @@ static void msi_eoi_source(struct intsrc *isrc); static void msi_enable_intr(struct intsrc *isrc); static void msi_disable_intr(struct intsrc *isrc); -static int msi_vector(struct intsrc *isrc); +static u_int msi_vector(struct intsrc *isrc); static int msi_source_pending(struct intsrc *isrc); static int msi_config_intr(struct intsrc *isrc, enum intr_trigger trig, enum intr_polarity pol); @@ -217,7 +217,7 @@ apic_disable_vector(msi->msi_cpu, msi->msi_vector); } -static int +static u_int msi_vector(struct intsrc *isrc) { struct msi_intsrc *msi = (struct msi_intsrc *)isrc; @@ -244,9 +244,9 @@ msi_assign_cpu(struct intsrc *isrc, u_int apic_id) { struct msi_intsrc *sib, *msi = (struct msi_intsrc *)isrc; - int old_vector; + u_int old_vector; u_int old_id; - int i, vector; + u_int i, vector; /* * Only allow CPUs to be assigned to the first message for an @@ -379,11 +379,11 @@ * Try to allocate 'count' interrupt sources with contiguous IDT values. */ int -msi_alloc(device_t dev, int count, int maxcount, int *irqs) +msi_alloc(device_t dev, int count, int maxcount, u_int *irqs) { struct msi_intsrc *msi, *fsrc; u_int cpu, domain, *mirqs; - int cnt, i, vector; + u_int cnt, i, vector; #ifdef IOMMU u_int cookies[count]; int error; @@ -493,7 +493,7 @@ } int -msi_release(int *irqs, int count) +msi_release(u_int *irqs, int count) { struct msi_intsrc *msi, *first; int i; @@ -561,7 +561,7 @@ } int -msi_map(int irq, uint64_t *addr, uint32_t *data) +msi_map(u_int irq, uint64_t *addr, uint32_t *data) { struct msi_intsrc *msi; int error; @@ -629,11 +629,11 @@ } int -msix_alloc(device_t dev, int *irq) +msix_alloc(device_t dev, u_int *irq) { struct msi_intsrc *msi; u_int cpu, domain; - int i, vector; + u_int i, vector; #ifdef IOMMU u_int cookie; int error; @@ -720,7 +720,7 @@ } int -msix_release(int irq) +msix_release(u_int irq) { struct msi_intsrc *msi; Index: sys/x86/xen/xen_intr.c =================================================================== --- sys/x86/xen/xen_intr.c +++ sys/x86/xen/xen_intr.c @@ -121,7 +121,7 @@ struct intsrc xi_intsrc; enum evtchn_type xi_type; int xi_cpu; /* VCPU for delivery. */ - int xi_vector; /* Global isrc vector number. */ + u_int xi_vector; /* Global isrc vector number. */ evtchn_port_t xi_port; int xi_virq; void *xi_cookie; @@ -139,7 +139,7 @@ static void xen_intr_eoi_source(struct intsrc *isrc); static void xen_intr_enable_intr(struct intsrc *isrc); static void xen_intr_disable_intr(struct intsrc *isrc); -static int xen_intr_vector(struct intsrc *isrc); +static u_int xen_intr_vector(struct intsrc *isrc); static int xen_intr_source_pending(struct intsrc *isrc); static int xen_intr_config_intr(struct intsrc *isrc, enum intr_trigger trig, enum intr_polarity pol); @@ -799,7 +799,7 @@ * * \return The vector number corresponding to the given interrupt source. */ -static int +static u_int xen_intr_vector(struct intsrc *base_isrc) { struct xenisrc *isrc = (struct xenisrc *)base_isrc;