Changeset 623b49f1 in mainline for kernel/arch/ia32/src/smp/apic.c


Ignore:
Timestamp:
2007-01-29T19:22:04Z (18 years ago)
Author:
Martin Decky <martin@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
1004b37
Parents:
7d07bf3
Message:

fix signed/unsigned comparison and integer overflow

File:
1 edited

Legend:

Unmodified
Added
Removed
  • kernel/arch/ia32/src/smp/apic.c

    r7d07bf3 r623b49f1  
    147147{
    148148        io_apic_id_t idreg;
    149         int i;
     149        unsigned int i;
    150150
    151151        exc_register(VECTOR_APIC_SPUR, "apic_spurious", (iroutine) apic_spurious);
     
    173173       
    174174                if ((pin = smp_irq_to_pin(i)) != -1)
    175                         io_apic_change_ioredtbl(pin, DEST_ALL, IVT_IRQBASE+i, LOPRI);
     175                        io_apic_change_ioredtbl(pin, DEST_ALL, IVT_IRQBASE + i, LOPRI);
    176176        }
    177177       
     
    535535{
    536536        io_redirection_reg_t reg;
    537         int i, pin;
    538        
    539         for (i=0;i<16;i++) {
    540                 if (irqmask & (1<<i)) {
     537        unsigned int i;
     538        int pin;
     539       
     540        for (i = 0; i < 16; i++) {
     541                if (irqmask & (1 << i)) {
    541542                        /*
    542543                         * Mask the signal input in IO APIC if there is a
     
    545546                        pin = smp_irq_to_pin(i);
    546547                        if (pin != -1) {
    547                                 reg.lo = io_apic_read(IOREDTBL + pin*2);
     548                                reg.lo = io_apic_read(IOREDTBL + pin * 2);
    548549                                reg.masked = true;
    549                                 io_apic_write(IOREDTBL + pin*2, reg.lo);
     550                                io_apic_write(IOREDTBL + pin * 2, reg.lo);
    550551                        }
    551552                       
     
    560561void io_apic_enable_irqs(uint16_t irqmask)
    561562{
    562         int i, pin;
     563        unsigned int i;
     564        int pin;
    563565        io_redirection_reg_t reg;       
    564566       
    565         for (i=0;i<16;i++) {
    566                 if (irqmask & (1<<i)) {
     567        for (i = 0;i < 16; i++) {
     568                if (irqmask & (1 << i)) {
    567569                        /*
    568570                         * Unmask the signal input in IO APIC if there is a
     
    571573                        pin = smp_irq_to_pin(i);
    572574                        if (pin != -1) {
    573                                 reg.lo = io_apic_read(IOREDTBL + pin*2);
     575                                reg.lo = io_apic_read(IOREDTBL + pin * 2);
    574576                                reg.masked = false;
    575                                 io_apic_write(IOREDTBL + pin*2, reg.lo);
     577                                io_apic_write(IOREDTBL + pin * 2, reg.lo);
    576578                        }
    577579                       
Note: See TracChangeset for help on using the changeset viewer.