Changeset 7f043c0 in mainline


Ignore:
Timestamp:
2007-05-31T21:39:13Z (18 years ago)
Author:
Martin Decky <martin@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
7bb0c32
Parents:
d8431986
Message:

fix ICC compilation

Location:
kernel
Files:
15 edited

Legend:

Unmodified
Added
Removed
  • kernel/arch/amd64/include/debugger.h

    rd8431986 r7f043c0  
    4949
    5050extern void debugger_init(void);
    51 extern int breakpoint_add(void * where, int flags, int curidx);
     51extern int breakpoint_add(const void *where, const int flags, int curidx);
    5252extern void breakpoint_del(int slot);
    5353
  • kernel/arch/amd64/src/debugger.c

    rd8431986 r7f043c0  
    103103
    104104/** Print table of active breakpoints */
    105 int cmd_print_breakpoints(cmd_arg_t *argv)
     105int cmd_print_breakpoints(cmd_arg_t *argv __attribute__((unused)))
    106106{
    107107        int i;
     
    112112                if (breakpoints[i].address) {
    113113                        symbol = get_symtab_entry(breakpoints[i].address);
    114                         printf("%d. %p in %s\n",i,
     114                        printf("%d. %lx in %s\n", i,
    115115                               breakpoints[i].address, symbol);
    116116                        printf("     Count(%d) ", breakpoints[i].counter);
     
    174174/** Enable hardware breakpoint
    175175 *
    176  *
    177176 * @param where Address of HW breakpoint
    178177 * @param flags Type of breakpoint (EXECUTE, WRITE)
    179178 * @return Debug slot on success, -1 - no available HW breakpoint
    180179 */
    181 int breakpoint_add(void * where, int flags, int curidx)
     180int breakpoint_add(const void *where, const int flags, int curidx)
    182181{
    183182        ipl_t ipl;
     
    185184        bpinfo_t *cur;
    186185
    187         ASSERT( flags & (BKPOINT_INSTR | BKPOINT_WRITE | BKPOINT_READ_WRITE));
     186        ASSERT(flags & (BKPOINT_INSTR | BKPOINT_WRITE | BKPOINT_READ_WRITE));
    188187
    189188        ipl = interrupts_disable();
     
    192191        if (curidx == -1) {
    193192                /* Find free space in slots */
    194                 for (i=0; i<BKPOINTS_MAX; i++)
     193                for (i = 0; i < BKPOINTS_MAX; i++)
    195194                        if (!breakpoints[i].address) {
    196195                                curidx = i;
     
    224223
    225224#ifdef amd64
    226 # define getip(x)  ((x)->rip)
     225#       define getip(x) ((x)->rip)
    227226#else
    228 # define getip(x)  ((x)->eip)
     227#       define getip(x) ((x)->eip)
    229228#endif
    230229
     
    238237                        if (*((unative_t *) breakpoints[slot].address) != 0)
    239238                                return;
    240                         printf("**** Found ZERO on address %p ****\n",
    241                                slot, breakpoints[slot].address);
     239                        printf("**** Found ZERO on address %lx (slot %d) ****\n",
     240                                breakpoints[slot].address, slot);
    242241                } else {
    243                         printf("Data watchpoint - new data: %p\n",
     242                        printf("Data watchpoint - new data: %lx\n",
    244243                               *((unative_t *) breakpoints[slot].address));
    245244                }
    246245        }
    247         printf("Reached breakpoint %d:%p(%s)\n", slot, getip(istate),
     246        printf("Reached breakpoint %d:%lx(%s)\n", slot, getip(istate),
    248247               get_symtab_entry(getip(istate)));
    249248        printf("***Type 'exit' to exit kconsole.\n");
     
    314313#endif
    315314
    316 static void debug_exception(int n, istate_t *istate)
     315static void debug_exception(int n __attribute__((unused)), istate_t *istate)
    317316{
    318317        unative_t dr6;
     
    338337
    339338#ifdef CONFIG_SMP
    340 static void debug_ipi(int n, istate_t *istate)
     339static void debug_ipi(int n __attribute__((unused)), istate_t *istate __attribute__((unused)))
    341340{
    342341        int i;
    343342
    344343        spinlock_lock(&bkpoint_lock);
    345         for (i=0; i < BKPOINTS_MAX; i++)
     344        for (i = 0; i < BKPOINTS_MAX; i++)
    346345                setup_dr(i);
    347346        spinlock_unlock(&bkpoint_lock);
  • kernel/arch/ia32/include/asm.h

    rd8431986 r7f043c0  
    258258        uintptr_t v;
    259259       
    260         asm volatile ("andl %%esp, %0\n" : "=r" (v) : "0" (~(STACK_SIZE-1)));
     260        asm volatile (
     261                "andl %%esp, %0\n"
     262                : "=r" (v)
     263                : "0" (~(STACK_SIZE - 1))
     264        );
    261265       
    262266        return v;
  • kernel/arch/ia32/include/context.h

    rd8431986 r7f043c0  
    4646 * One item is put onto stack to support get_stack_base().
    4747 */
    48 #define SP_DELTA        (8+STACK_ITEM_SIZE)
     48#define SP_DELTA        (8 + STACK_ITEM_SIZE)
    4949
    5050/*
  • kernel/arch/ia32/include/mm/frame.h

    rd8431986 r7f043c0  
    3737
    3838#define FRAME_WIDTH     12      /* 4K */
    39 #define FRAME_SIZE      (1<<FRAME_WIDTH)
     39#define FRAME_SIZE      (1 << FRAME_WIDTH)
    4040
    4141#ifdef KERNEL
  • kernel/arch/ia32/include/smp/apic.h

    rd8431986 r7f043c0  
    347347extern uint32_t io_apic_read(uint8_t address);
    348348extern void io_apic_write(uint8_t address , uint32_t x);
    349 extern void io_apic_change_ioredtbl(int pin, int dest, uint8_t v, int flags);
     349extern void io_apic_change_ioredtbl(uint8_t pin, uint8_t dest, uint8_t v, int flags);
    350350extern void io_apic_disable_irqs(uint16_t irqmask);
    351351extern void io_apic_enable_irqs(uint16_t irqmask);
  • kernel/arch/ia32/src/ddi/ddi.c

    rd8431986 r7f043c0  
    126126        if ((bits = TASK->arch.iomap.bits)) {
    127127                bitmap_t iomap;
     128                task_t *task = TASK;
    128129       
    129130                ASSERT(TASK->arch.iomap.map);
    130131                bitmap_initialize(&iomap, CPU->arch.tss->iomap, TSS_IOMAP_SIZE * 8);
    131                 bitmap_copy(&iomap, &TASK->arch.iomap, TASK->arch.iomap.bits);
     132                bitmap_copy(&iomap, &task->arch.iomap, task->arch.iomap.bits);
    132133                /*
    133134                 * It is safe to set the trailing eight bits because of the extra
  • kernel/arch/ia32/src/mm/page.c

    rd8431986 r7f043c0  
    8484        uintptr_t virtaddr = PA2KA(last_frame);
    8585        pfn_t i;
    86         for (i = 0; i < ADDR2PFN(ALIGN_UP(size, PAGE_SIZE)); i++)
    87                 page_mapping_insert(AS_KERNEL, virtaddr + PFN2ADDR(i), physaddr + PFN2ADDR(i), PAGE_NOT_CACHEABLE | PAGE_WRITE);
     86        for (i = 0; i < ADDR2PFN(ALIGN_UP(size, PAGE_SIZE)); i++) {
     87                uintptr_t addr = PFN2ADDR(i);
     88                page_mapping_insert(AS_KERNEL, virtaddr + addr, physaddr + addr, PAGE_NOT_CACHEABLE | PAGE_WRITE);
     89        }
    8890       
    8991        last_frame = ALIGN_UP(last_frame + size, FRAME_SIZE);
     
    9294}
    9395
    94 void page_fault(int n, istate_t *istate)
     96void page_fault(int n __attribute__((unused)), istate_t *istate)
    9597{
    9698        uintptr_t page;
     
    111113               
    112114                decode_istate(istate);
    113                 printf("page fault address: %#x\n", page);
     115                printf("page fault address: %#lx\n", page);
    114116                panic("page fault\n");
    115117        }
  • kernel/arch/ia32/src/proc/scheduler.c

    rd8431986 r7f043c0  
    6767#ifdef CONFIG_DEBUG_AS_WATCHPOINT
    6868        /* Set watchpoint on AS to ensure that nobody sets it to zero */
    69         if (CPU->id < BKPOINTS_MAX)
    70                 breakpoint_add(&((the_t *) THREAD->kstack)->as,
    71                                BKPOINT_WRITE | BKPOINT_CHECK_ZERO,
    72                                CPU->id);
     69        if (CPU->id < BKPOINTS_MAX) {
     70                the_t *the = THE;
     71                breakpoint_add(&((the_t *) the->thread->kstack)->as,
     72                        BKPOINT_WRITE | BKPOINT_CHECK_ZERO, the->cpu->id);
     73        }
    7374#endif
    7475}
  • kernel/arch/ia32/src/smp/apic.c

    rd8431986 r7f043c0  
    126126 * @param istate Interrupted state.
    127127 */
    128 static void apic_spurious(int n, istate_t *istate)
     128static void apic_spurious(int n __attribute__((unused)), istate_t *istate __attribute__((unused)))
    129129{
    130130#ifdef CONFIG_DEBUG
    131         printf("cpu%d: APIC spurious interrupt\n", CPU->id);
     131        printf("cpu%u: APIC spurious interrupt\n", CPU->id);
    132132#endif
    133133}
     
    138138}
    139139
    140 static void l_apic_timer_irq_handler(irq_t *irq, void *arg, ...)
     140static void l_apic_timer_irq_handler(irq_t *irq, void *arg __attribute__((unused)), ...)
    141141{
    142142        /*
     
    154154{
    155155        io_apic_id_t idreg;
    156         unsigned int i;
    157 
     156       
    158157        exc_register(VECTOR_APIC_SPUR, "apic_spurious", (iroutine) apic_spurious);
    159158
     
    177176        irq_register(&l_apic_timer_irq);
    178177       
     178        uint8_t i;
    179179        for (i = 0; i < IRQ_COUNT; i++) {
    180180                int pin;
    181181       
    182182                if ((pin = smp_irq_to_pin(i)) != -1)
    183                         io_apic_change_ioredtbl(pin, DEST_ALL, IVT_IRQBASE + i, LOPRI);
     183                        io_apic_change_ioredtbl((uint8_t) pin, DEST_ALL, (uint8_t) (IVT_IRQBASE + i), LOPRI);
    184184        }
    185185       
     
    329329                for (i = 0; i<2; i++) {
    330330                        icr.lo = l_apic[ICRlo];
    331                         icr.vector = ((uintptr_t) ap_boot) / 4096; /* calculate the reset vector */
     331                        icr.vector = (uint8_t) (((uintptr_t) ap_boot) >> 12); /* calculate the reset vector */
    332332                        icr.delmod = DELMOD_STARTUP;
    333333                        icr.destmod = DESTMOD_PHYS;
     
    426426       
    427427        /* Program Logical Destination Register. */
     428        ASSERT(CPU->id < 8)
    428429        ldr.value = l_apic[LDR];
    429         if (CPU->id < sizeof(CPU->id)*8)        /* size in bits */
    430                 ldr.id = (1<<CPU->id);
     430        ldr.id = (uint8_t) (1 << CPU->id);
    431431        l_apic[LDR] = ldr.value;
    432432       
     
    514514 * @param flags Flags.
    515515 */
    516 void io_apic_change_ioredtbl(int pin, int dest, uint8_t v, int flags)
     516void io_apic_change_ioredtbl(uint8_t pin, uint8_t dest, uint8_t v, int flags)
    517517{
    518518        io_redirection_reg_t reg;
     
    522522                dlvr = DELMOD_LOWPRI;
    523523
    524         reg.lo = io_apic_read(IOREDTBL + pin*2);
    525         reg.hi = io_apic_read(IOREDTBL + pin*2 + 1);
     524        reg.lo = io_apic_read((uint8_t) (IOREDTBL + pin * 2));
     525        reg.hi = io_apic_read((uint8_t) (IOREDTBL + pin * 2 + 1));
    526526       
    527527        reg.dest = dest;
     
    532532        reg.intvec = v;
    533533
    534         io_apic_write(IOREDTBL + pin*2, reg.lo);
    535         io_apic_write(IOREDTBL + pin*2 + 1, reg.hi);
     534        io_apic_write((uint8_t) (IOREDTBL + pin * 2), reg.lo);
     535        io_apic_write((uint8_t) (IOREDTBL + pin * 2 + 1), reg.hi);
    536536}
    537537
     
    554554                        pin = smp_irq_to_pin(i);
    555555                        if (pin != -1) {
    556                                 reg.lo = io_apic_read(IOREDTBL + pin * 2);
     556                                reg.lo = io_apic_read((uint8_t) (IOREDTBL + pin * 2));
    557557                                reg.masked = true;
    558                                 io_apic_write(IOREDTBL + pin * 2, reg.lo);
     558                                io_apic_write((uint8_t) (IOREDTBL + pin * 2), reg.lo);
    559559                        }
    560560                       
     
    573573        io_redirection_reg_t reg;       
    574574       
    575         for (i = 0;i < 16; i++) {
     575        for (i = 0; i < 16; i++) {
    576576                if (irqmask & (1 << i)) {
    577577                        /*
     
    581581                        pin = smp_irq_to_pin(i);
    582582                        if (pin != -1) {
    583                                 reg.lo = io_apic_read(IOREDTBL + pin * 2);
     583                                reg.lo = io_apic_read((uint8_t) (IOREDTBL + pin * 2));
    584584                                reg.masked = false;
    585                                 io_apic_write(IOREDTBL + pin * 2, reg.lo);
     585                                io_apic_write((uint8_t) (IOREDTBL + pin * 2), reg.lo);
    586586                        }
    587587                       
  • kernel/arch/ia32/src/smp/mps.c

    rd8431986 r7f043c0  
    5555#define CT_SIGNATURE    0x504d4350
    5656
    57 int mps_fs_check(uint8_t *base);
    58 int mps_ct_check(void);
    59 
    60 int configure_via_ct(void);
    61 int configure_via_default(uint8_t n);
    62 
    63 int ct_processor_entry(struct __processor_entry *pr);
    64 void ct_bus_entry(struct __bus_entry *bus);
    65 void ct_io_apic_entry(struct __io_apic_entry *ioa);
    66 void ct_io_intr_entry(struct __io_intr_entry *iointr);
    67 void ct_l_intr_entry(struct __l_intr_entry *lintr);
    68 
    69 void ct_extended_entries(void);
     57static int mps_fs_check(uint8_t *base);
     58static int mps_ct_check(void);
     59
     60static int configure_via_ct(void);
     61static int configure_via_default(uint8_t n);
     62
     63static int ct_processor_entry(struct __processor_entry *pr);
     64static void ct_bus_entry(struct __bus_entry *bus);
     65static void ct_io_apic_entry(struct __io_apic_entry *ioa);
     66static void ct_io_intr_entry(struct __io_intr_entry *iointr);
     67static void ct_l_intr_entry(struct __l_intr_entry *lintr);
     68
     69static void ct_extended_entries(void);
    7070
    7171static struct mps_fs *fs;
     
    109109{
    110110        ASSERT(i < processor_entry_cnt);
    111         return processor_entries[i].cpu_flags & 0x1;
     111        return (bool) ((processor_entries[i].cpu_flags & 0x01) == 0x01);
    112112}
    113113
     
    115115{
    116116        ASSERT(i < processor_entry_cnt);
    117         return processor_entries[i].cpu_flags & 0x2;
     117        return (bool) ((processor_entries[i].cpu_flags & 0x02) == 0x02);
    118118}
    119119
     
    134134       
    135135        for (i = 0, sum = 0; i < 16; i++)
    136                 sum += base[i];
     136                sum = (uint8_t) (sum + base[i]);
    137137       
    138138        return !sum;
     
    151151        /* count the checksum for the base table */
    152152        for (i=0,sum=0; i < ct->base_table_length; i++)
    153                 sum += base[i];
     153                sum = (uint8_t) (sum + base[i]);
    154154               
    155155        if (sum)
     
    158158        /* count the checksum for the extended table */
    159159        for (i=0,sum=0; i < ct->ext_table_length; i++)
    160                 sum += ext[i];
     160                sum = (uint8_t) (sum + ext[i]);
    161161               
    162162        return sum == ct->ext_table_checksum;
     
    287287}
    288288
    289 int configure_via_default(uint8_t n)
     289int configure_via_default(uint8_t n __attribute__((unused)))
    290290{
    291291        /*
     
    297297
    298298
    299 int ct_processor_entry(struct __processor_entry *pr)
     299int ct_processor_entry(struct __processor_entry *pr __attribute__((unused)))
    300300{
    301301        /*
     
    309309}
    310310
    311 void ct_bus_entry(struct __bus_entry *bus)
     311void ct_bus_entry(struct __bus_entry *bus __attribute__((unused)))
    312312{
    313313#ifdef MPSCT_VERBOSE
     
    338338
    339339//#define MPSCT_VERBOSE
    340 void ct_io_intr_entry(struct __io_intr_entry *iointr)
     340void ct_io_intr_entry(struct __io_intr_entry *iointr __attribute__((unused)))
    341341{
    342342#ifdef MPSCT_VERBOSE
     
    369369}
    370370
    371 void ct_l_intr_entry(struct __l_intr_entry *lintr)
     371void ct_l_intr_entry(struct __l_intr_entry *lintr __attribute__((unused)))
    372372{
    373373#ifdef MPSCT_VERBOSE
  • kernel/arch/ia32/src/smp/smp.c

    rd8431986 r7f043c0  
    9999 * as an initialization stack for each AP.)
    100100 */
    101 void kmp(void *arg)
     101void kmp(void *arg __attribute__((unused)))
    102102{
    103103        unsigned int i;
     
    113113         * Set the warm-reset vector to the real-mode address of 4K-aligned ap_boot()
    114114         */
    115         *((uint16_t *) (PA2KA(0x467 + 0))) =  ((uintptr_t) ap_boot) >> 4;       /* segment */
    116         *((uint16_t *) (PA2KA(0x467 + 2))) =  0;                                /* offset */
     115        *((uint16_t *) (PA2KA(0x467 + 0))) = (uint16_t) (((uintptr_t) ap_boot) >> 4);   /* segment */
     116        *((uint16_t *) (PA2KA(0x467 + 2))) = 0;                         /* offset */
    117117       
    118118        /*
     
    125125        pic_disable_irqs(0xffff);
    126126        apic_init();
     127       
     128        uint8_t apic = l_apic_id();
    127129
    128130        for (i = 0; i < ops->cpu_count(); i++) {
     
    141143                        continue;
    142144
    143                 if (ops->cpu_apic_id(i) == l_apic_id()) {
    144                         printf("%s: bad processor entry #%d, will not send IPI to myself\n", __FUNCTION__, i);
     145                if (ops->cpu_apic_id(i) == apic) {
     146                        printf("%s: bad processor entry #%u, will not send IPI to myself\n", __FUNCTION__, i);
    145147                        continue;
    146148                }
     
    149151                 * Prepare new GDT for CPU in question.
    150152                 */
    151                 if (!(gdt_new = (struct descriptor *) malloc(GDT_ITEMS*sizeof(struct descriptor), FRAME_ATOMIC)))
     153                if (!(gdt_new = (struct descriptor *) malloc(GDT_ITEMS * sizeof(struct descriptor), FRAME_ATOMIC)))
    152154                        panic("couldn't allocate memory for GDT\n");
    153155
     
    164166                         * supposed to wake us up.
    165167                         */
    166                         if (waitq_sleep_timeout(&ap_completion_wq, 1000000, SYNCH_FLAGS_NONE) == ESYNCH_TIMEOUT)
    167                                 printf("%s: waiting for cpu%d (APIC ID = %d) timed out\n", __FUNCTION__, config.cpu_active > i ? config.cpu_active : i, ops->cpu_apic_id(i));
     168                        if (waitq_sleep_timeout(&ap_completion_wq, 1000000, SYNCH_FLAGS_NONE) == ESYNCH_TIMEOUT) {
     169                                unsigned int cpu = (config.cpu_active > i) ? config.cpu_active : i;
     170                                printf("%s: waiting for cpu%u (APIC ID = %d) timed out\n", __FUNCTION__, cpu, ops->cpu_apic_id(i));
     171                        }
    168172                } else
    169173                        printf("INIT IPI for l_apic%d failed\n", ops->cpu_apic_id(i));
  • kernel/genarch/src/acpi/acpi.c

    rd8431986 r7f043c0  
    6060       
    6161        for (i = 0; i < 20; i++)
    62                 sum += rsdp[i];
     62                sum = (uint8_t) (sum + rsdp[i]);
    6363               
    6464        if (sum)       
     
    6969               
    7070        for (; i < r->length; i++)
    71                 sum += rsdp[i];
     71                sum = (uint8_t) (sum + rsdp[i]);
    7272               
    7373        return !sum;
     
    8282
    8383        for (i = 0; i < h->length; i++)
    84                 sum += sdt[i];
     84                sum = (uint8_t) (sum + sdt[i]);
    8585               
    8686        return !sum;
     
    106106                                        goto next;
    107107                                *signature_map[j].sdt_ptr = h;
    108                                 printf("%#zx: ACPI %s\n", *signature_map[j].sdt_ptr, signature_map[j].description);
     108                                printf("%#zp: ACPI %s\n", *signature_map[j].sdt_ptr, signature_map[j].description);
    109109                        }
    110110                }
     
    127127                                        goto next;
    128128                                *signature_map[j].sdt_ptr = h;
    129                                 printf("%#zx: ACPI %s\n", *signature_map[j].sdt_ptr, signature_map[j].description);
     129                                printf("%#zp: ACPI %s\n", *signature_map[j].sdt_ptr, signature_map[j].description);
    130130                        }
    131131                }
     
    161161
    162162rsdp_found:
    163         printf("%#zx: ACPI Root System Description Pointer\n", acpi_rsdp);
     163        printf("%#zp: ACPI Root System Description Pointer\n", acpi_rsdp);
    164164
    165165        acpi_rsdt = (struct acpi_rsdt *) (unative_t) acpi_rsdp->rsdt_address;
  • kernel/generic/include/interrupt.h

    rd8431986 r7f043c0  
    4949{ \
    5050        if (istate_from_uspace(istate)) { \
    51                 klog_printf("Task %llu killed due to an exception at %p.", TASK->taskid, istate_get_pc(istate)); \
     51                task_t *task = TASK; \
     52                klog_printf("Task %llu killed due to an exception at %p.", task->taskid, istate_get_pc(istate)); \
    5253                klog_printf("  " cmd, ##__VA_ARGS__); \
    53                 task_kill(TASK->taskid); \
     54                task_kill(task->taskid); \
    5455                thread_exit(); \
    5556        } \
  • kernel/generic/src/printf/printf_core.c

    rd8431986 r7f043c0  
    419419 * TYPE:@n
    420420 *      - "hh"  Signed or unsigned char.@n
    421  *      - "h"   Signed or usigned short.@n
    422  *      - ""    Signed or usigned int (default value).@n
    423  *      - "l"   Signed or usigned long int.@n
    424  *      - "ll"  Signed or usigned long long int.@n
     421 *      - "h"   Signed or unsigned short.@n
     422 *      - ""    Signed or unsigned int (default value).@n
     423 *      - "l"   Signed or unsigned long int.@n
     424 *      - "ll"  Signed or unsigned long long int.@n
    425425 *      - "z"   unative_t (non-standard extension).@n
    426426 *
     
    434434 *
    435435 *      - P, p  Print value of a pointer. Void * value is expected and it is printed in hexadecimal notation with prefix
    436  *      (as with \%#X or \%#x for 32bit or \%#X / \%#x for 64bit long pointers).
     436 *      (as with \%#X / \%#x for 32bit or \%#X / \%#x for 64bit long pointers).
    437437 *
    438438 *      - b     Print value as unsigned binary number. Prefix is not printed by default. (Nonstandard extension.)
Note: See TracChangeset for help on using the changeset viewer.