Changeset 97c7682 in mainline for kernel/arch


Ignore:
Timestamp:
2012-07-14T11:18:40Z (13 years ago)
Author:
Jan Vesely <jano.vesely@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
804d9b6
Parents:
0747468 (diff), f0348c8 (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the (diff) links above to see all the changes relative to each parent.
Message:

Merge mainline changes.

Text conflict in boot/arch/arm32/Makefile.inc:

Trivial conflict around ifeq condition.

Text conflict in kernel/arch/arm32/include/mm/page.h:

Added defines and set_pt_levelx_present function.
COnflict looked horrible because of the armv4/v7 split.

Location:
kernel/arch
Files:
28 edited

Legend:

Unmodified
Added
Removed
  • kernel/arch/abs32le/include/mm/page.h

    r0747468 r97c7682  
    105105        set_pt_flags((pte_t *) (ptl3), (size_t) (i), (x))
    106106
     107/* Set PTE present bit accessors for each level. */
     108#define SET_PTL1_PRESENT_ARCH(ptl0, i)  \
     109        set_pt_present((pte_t *) (ptl0), (size_t) (i))
     110#define SET_PTL2_PRESENT_ARCH(ptl1, i)
     111#define SET_PTL3_PRESENT_ARCH(ptl2, i)
     112#define SET_FRAME_PRESENT_ARCH(ptl3, i) \
     113        set_pt_present((pte_t *) (ptl3), (size_t) (i))
     114
    107115/* Macros for querying the last level entries. */
    108116#define PTE_VALID_ARCH(p) \
     
    173181}
    174182
     183NO_TRACE static inline void set_pt_present(pte_t *pt, size_t i)
     184    WRITES(ARRAY_RANGE(pt, PTL0_ENTRIES_ARCH))
     185    REQUIRES_ARRAY_MUTABLE(pt, PTL0_ENTRIES_ARCH)
     186{
     187        pte_t *p = &pt[i];
     188
     189        p->present = 1;
     190}
     191
    175192extern void page_arch_init(void);
    176193extern void page_fault(unsigned int, istate_t *);
  • kernel/arch/amd64/Makefile.inc

    r0747468 r97c7682  
    5555GCC_CFLAGS += $(CMN1)
    5656ICC_CFLAGS += $(CMN1)
    57 SUNCC_CFLAGS += -m64 -xmodel=kernel
    5857
    5958BITS = 64
     
    6766        GCC_CFLAGS += $(CMN2)
    6867        ICC_CFLAGS += $(CMN2)
    69         SUNCC_CFLAGS += -xtarget=opteron
    7068endif
    7169
  • kernel/arch/amd64/include/mm/page.h

    r0747468 r97c7682  
    3333 */
    3434
    35 /** Paging on AMD64
    36  *
    37  * The space is divided in positive numbers (uspace) and
    38  * negative numbers (kernel). The 'negative' space starting
    39  * with 0xffff800000000000 and ending with 0xffffffffffffffff
    40  * is identically mapped physical memory.
    41  *
    42  */
    43 
    4435#ifndef KERN_amd64_PAGE_H_
    4536#define KERN_amd64_PAGE_H_
     
    127118#define SET_FRAME_FLAGS_ARCH(ptl3, i, x) \
    128119        set_pt_flags((pte_t *) (ptl3), (size_t) (i), (x))
     120
     121/* Set PTE present bit accessors for each level. */
     122#define SET_PTL1_PRESENT_ARCH(ptl0, i) \
     123        set_pt_present((pte_t *) (ptl0), (size_t) (i))
     124#define SET_PTL2_PRESENT_ARCH(ptl1, i) \
     125        set_pt_present((pte_t *) (ptl1), (size_t) (i))
     126#define SET_PTL3_PRESENT_ARCH(ptl2, i) \
     127        set_pt_present((pte_t *) (ptl2), (size_t) (i))
     128#define SET_FRAME_PRESENT_ARCH(ptl3, i) \
     129        set_pt_present((pte_t *) (ptl3), (size_t) (i))
    129130
    130131/* Macros for querying the last-level PTE entries. */
     
    224225}
    225226
     227NO_TRACE static inline void set_pt_present(pte_t *pt, size_t i)
     228{
     229        pte_t *p = &pt[i];
     230
     231        p->present = 1;
     232}
     233
    226234extern void page_arch_init(void);
    227235extern void page_fault(unsigned int, istate_t *);
  • kernel/arch/amd64/src/mm/page.c

    r0747468 r97c7682  
    5757        uintptr_t cur;
    5858        unsigned int identity_flags =
    59             PAGE_CACHEABLE | PAGE_EXEC | PAGE_GLOBAL | PAGE_WRITE;
     59            PAGE_GLOBAL | PAGE_CACHEABLE | PAGE_EXEC | PAGE_WRITE | PAGE_READ;
    6060               
    6161        page_mapping_operations = &pt_mapping_operations;
  • kernel/arch/amd64/src/userspace.c

    r0747468 r97c7682  
    5555        asm volatile (
    5656                "pushq %[udata_des]\n"
    57                 "pushq %[stack_size]\n"
     57                "pushq %[stack_top]\n"
    5858                "pushq %[ipl]\n"
    5959                "pushq %[utext_des]\n"
     
    6565                "iretq\n"
    6666                :: [udata_des] "i" (GDT_SELECTOR(UDATA_DES) | PL_USER),
    67                    [stack_size] "r" (kernel_uarg->uspace_stack + STACK_SIZE),
     67                   [stack_top] "r" ((uint8_t *) kernel_uarg->uspace_stack +
     68                       kernel_uarg->uspace_stack_size),
    6869                   [ipl] "r" (ipl),
    6970                   [utext_des] "i" (GDT_SELECTOR(UTEXT_DES) | PL_USER),
     
    7475       
    7576        /* Unreachable */
    76         while (1)
    77                 ;
     77        while (1);
    7878}
    7979
  • kernel/arch/arm32/include/mm/page.h

    r0747468 r97c7682  
    4040#include <mm/mm.h>
    4141#include <arch/exception.h>
     42#include <arch/barrier.h>
    4243#include <trace.h>
    4344
     
    118119#define SET_PTL3_FLAGS_ARCH(ptl2, i, x)
    119120#define SET_FRAME_FLAGS_ARCH(ptl3, i, x) \
    120         set_pt_level1_flags((pte_t *) (ptl3), (size_t) (i), (x))
     121        set_pt_level1_flags((pte_t *) (ptl3), (size_t) (i), (x))
     122
     123/* Set PTE present bit accessors for each level. */
     124#define SET_PTL1_PRESENT_ARCH(ptl0, i) \
     125        set_pt_level0_present((pte_t *) (ptl0), (size_t) (i))
     126#define SET_PTL2_PRESENT_ARCH(ptl1, i)
     127#define SET_PTL3_PRESENT_ARCH(ptl2, i)
     128#define SET_FRAME_PRESENT_ARCH(ptl3, i) \
     129        set_pt_level1_present((pte_t *) (ptl3), (size_t) (i))
    121130
    122131#if defined(PROCESSOR_armv7_a)
     
    126135#endif
    127136
     137#ifndef __ASM__
     138NO_TRACE static inline void set_pt_level0_present(pte_t *pt, size_t i)
     139{
     140        pte_level0_t *p = &pt[i].l0;
     141
     142        p->should_be_zero = 0;
     143        write_barrier();
     144        p->descriptor_type = PTE_DESCRIPTOR_COARSE_TABLE;
     145}
     146
     147
     148NO_TRACE static inline void set_pt_level1_present(pte_t *pt, size_t i)
     149{
     150        pte_level1_t *p = &pt[i].l1;
     151
     152        p->descriptor_type = PTE_DESCRIPTOR_SMALL_PAGE;
     153}
     154
     155#endif /* __ASM__ */
     156
    128157#endif
    129158
  • kernel/arch/arm32/include/mm/page_armv4.h

    r0747468 r97c7682  
    215215        pte_level1_t *p = &pt[i].l1;
    216216       
    217         if (flags & PAGE_NOT_PRESENT) {
     217        if (flags & PAGE_NOT_PRESENT)
    218218                p->descriptor_type = PTE_DESCRIPTOR_NOT_PRESENT;
    219                 p->access_permission_3 = 1;
    220         } else {
     219        else
    221220                p->descriptor_type = PTE_DESCRIPTOR_SMALL_PAGE;
    222                 p->access_permission_3 = p->access_permission_0;
    223         }
    224221       
    225222        p->cacheable = p->bufferable = (flags & PAGE_CACHEABLE) != 0;
  • kernel/arch/arm32/src/userspace.c

    r0747468 r97c7682  
    9292
    9393        /* set user stack */
    94         ustate.sp = ((uint32_t)kernel_uarg->uspace_stack) + STACK_SIZE;
     94        ustate.sp = ((uint32_t) kernel_uarg->uspace_stack) +
     95            kernel_uarg->uspace_stack_size;
    9596
    9697        /* set where uspace execution starts */
  • kernel/arch/ia32/Makefile.inc

    r0747468 r97c7682  
    3838GCC_CFLAGS += $(CMN1)
    3939ICC_CFLAGS += $(CMN1)
    40 SUNCC_CFLAGS += $(CMN1)
    4140CLANG_CFLAGS += $(CMN1)
    4241
     
    5049ifeq ($(PROCESSOR),athlon_xp)
    5150        CMN2 = -march=athlon-xp
    52         SUNCC_CFLAGS += -xarch=ssea
    5351endif
    5452
    5553ifeq ($(PROCESSOR),athlon_mp)
    5654        CMN2 = -march=athlon-mp
    57         SUNCC_CFLAGS += xarch=ssea
    5855endif
    5956
    6057ifeq ($(PROCESSOR),pentium3)
    6158        CMN2 = -march=pentium3
    62         SUNCC_CFLAGS += -xarch=sse
    6359endif
    6460
    6561ifeq ($(PROCESSOR),pentium4)
    6662        CMN2 = -march=pentium4
    67         SUNCC_CFLAGS += -xarch=sse2
    6863endif
    6964
    7065ifeq ($(PROCESSOR),core)
    7166        CMN2 = -march=prescott
    72         SUNCC_CFLAGS += -xarch=sse3
    7367endif
    7468
  • kernel/arch/ia32/include/mm/page.h

    r0747468 r97c7682  
    115115        set_pt_flags((pte_t *) (ptl3), (size_t) (i), (x))
    116116
     117/* Set PTE present bit accessors for each level. */
     118#define SET_PTL1_PRESENT_ARCH(ptl0, i) \
     119        set_pt_present((pte_t *) (ptl0), (size_t) (i))
     120#define SET_PTL2_PRESENT_ARCH(ptl1, i)
     121#define SET_PTL3_PRESENT_ARCH(ptl2, i)
     122#define SET_FRAME_PRESENT_ARCH(ptl3, i) \
     123        set_pt_present((pte_t *) (ptl3), (size_t) (i))
     124
    117125/* Macros for querying the last level entries. */
    118126#define PTE_VALID_ARCH(p) \
     
    194202}
    195203
     204NO_TRACE static inline void set_pt_present(pte_t *pt, size_t i)
     205{
     206        pte_t *p = &pt[i];
     207
     208        p->present = 1;
     209}
     210
    196211extern void page_arch_init(void);
    197212extern void page_fault(unsigned int, istate_t *);
  • kernel/arch/ia32/src/mm/page.c

    r0747468 r97c7682  
    7171        for (cur = 0; cur < min(config.identity_size, config.physmem_end);
    7272            cur += FRAME_SIZE) {
    73                 flags = PAGE_CACHEABLE | PAGE_WRITE;
    74                 if ((PA2KA(cur) >= config.base) &&
    75                     (PA2KA(cur) < config.base + config.kernel_size))
    76                         flags |= PAGE_GLOBAL;
     73                flags = PAGE_GLOBAL | PAGE_CACHEABLE | PAGE_WRITE | PAGE_READ;
    7774                page_mapping_insert(AS_KERNEL, PA2KA(cur), cur, flags);
    7875        }
  • kernel/arch/ia32/src/smp/apic.c

    r0747468 r97c7682  
    259259}
    260260
     261#define DELIVS_PENDING_SILENT_RETRIES   4       
     262
     263static void l_apic_wait_for_delivery(void)
     264{
     265        icr_t icr;
     266        unsigned retries = 0;
     267
     268        do {
     269                if (retries++ > DELIVS_PENDING_SILENT_RETRIES) {
     270                        retries = 0;
     271#ifdef CONFIG_DEBUG
     272                        printf("IPI is pending.\n");
     273#endif
     274                        delay(20);
     275                }
     276                icr.lo = l_apic[ICRlo];
     277        } while (icr.delivs == DELIVS_PENDING);
     278       
     279}
     280
    261281/** Send all CPUs excluding CPU IPI vector.
    262282 *
     
    279299       
    280300        l_apic[ICRlo] = icr.lo;
    281        
    282         icr.lo = l_apic[ICRlo];
    283         if (icr.delivs == DELIVS_PENDING) {
    284 #ifdef CONFIG_DEBUG
    285                 printf("IPI is pending.\n");
    286 #endif
    287         }
     301
     302        l_apic_wait_for_delivery();
    288303       
    289304        return apic_poll_errors();
     
    327342                return 0;
    328343       
     344        l_apic_wait_for_delivery();
     345
    329346        icr.lo = l_apic[ICRlo];
    330         if (icr.delivs == DELIVS_PENDING) {
    331 #ifdef CONFIG_DEBUG
    332                 printf("IPI is pending.\n");
    333 #endif
    334         }
    335        
    336347        icr.delmod = DELMOD_INIT;
    337348        icr.destmod = DESTMOD_PHYS;
  • kernel/arch/ia32/src/userspace.c

    r0747468 r97c7682  
    6363               
    6464                "pushl %[udata_des]\n"
    65                 "pushl %[stack_size]\n"
     65                "pushl %[stack_top]\n"
    6666                "pushl %[ipl]\n"
    6767                "pushl %[utext_des]\n"
     
    7575                :
    7676                : [udata_des] "i" (GDT_SELECTOR(UDATA_DES) | PL_USER),
    77                   [stack_size] "r" ((uint8_t *) kernel_uarg->uspace_stack + STACK_SIZE),
     77                  [stack_top] "r" ((uint8_t *) kernel_uarg->uspace_stack +
     78                      kernel_uarg->uspace_stack_size),
    7879                  [ipl] "r" (ipl),
    7980                  [utext_des] "i" (GDT_SELECTOR(UTEXT_DES) | PL_USER),
  • kernel/arch/ia64/src/drivers/ski.c

    r0747468 r97c7682  
    150150       
    151151        if (instance) {
    152                 instance->thread = thread_create(kskipoll, instance, TASK, 0,
    153                     "kskipoll", true);
     152                instance->thread = thread_create(kskipoll, instance, TASK,
     153                    THREAD_FLAG_UNCOUNTED, "kskipoll");
    154154               
    155155                if (!instance->thread) {
  • kernel/arch/ia64/src/ia64.c

    r0747468 r97c7682  
    232232         *
    233233         * When calculating stack addresses, mind the stack split between the
    234          * memory stack and the RSE stack. Each occuppies STACK_SIZE / 2 bytes.
     234         * memory stack and the RSE stack. Each occuppies
     235         * uspace_stack_size / 2 bytes.
    235236         */
    236237        switch_to_userspace((uintptr_t) kernel_uarg->uspace_entry,
    237             ((uintptr_t) kernel_uarg->uspace_stack) + STACK_SIZE / 2 -
     238            ((uintptr_t) kernel_uarg->uspace_stack) +
     239            kernel_uarg->uspace_stack_size / 2 -
    238240            ALIGN_UP(STACK_ITEM_SIZE, STACK_ALIGNMENT),
    239             ((uintptr_t) kernel_uarg->uspace_stack) + STACK_SIZE / 2,
     241            ((uintptr_t) kernel_uarg->uspace_stack) +
     242            kernel_uarg->uspace_stack_size / 2,
    240243            (uintptr_t) kernel_uarg->uspace_uarg, psr.value, rsc.value);
    241 
    242         while (1)
    243                 ;
     244       
     245        while (1);
    244246}
    245247
  • kernel/arch/mips32/include/mm/page.h

    r0747468 r97c7682  
    128128        set_pt_flags((pte_t *) (ptl3), (size_t) (i), (x))
    129129
     130/* Set PTE present bit accessors for each level. */
     131#define SET_PTL1_PRESENT_ARCH(ptl0, i) \
     132        set_pt_present((pte_t *) (ptl0), (size_t) (i))
     133#define SET_PTL2_PRESENT_ARCH(ptl1, i)
     134#define SET_PTL3_PRESENT_ARCH(ptl2, i)
     135#define SET_FRAME_PRESENT_ARCH(ptl3, i) \
     136        set_pt_present((pte_t *) (ptl3), (size_t) (i))
     137
    130138/* Last-level info macros. */
    131139#define PTE_VALID_ARCH(pte)                     (*((uint32_t *) (pte)) != 0)
     
    182190}
    183191
     192NO_TRACE static inline void set_pt_present(pte_t *pt, size_t i)
     193{
     194        pte_t *p = &pt[i];
     195
     196        p->p = 1;
     197}
     198       
     199
    184200extern void page_arch_init(void);
    185201
  • kernel/arch/mips32/src/mips32.c

    r0747468 r97c7682  
    211211            cp0_status_um_bit | cp0_status_ie_enabled_bit));
    212212        cp0_epc_write((uintptr_t) kernel_uarg->uspace_entry);
    213         userspace_asm(((uintptr_t) kernel_uarg->uspace_stack + STACK_SIZE),
     213        userspace_asm(((uintptr_t) kernel_uarg->uspace_stack +
     214            kernel_uarg->uspace_stack_size),
    214215            (uintptr_t) kernel_uarg->uspace_uarg,
    215216            (uintptr_t) kernel_uarg->uspace_entry);
  • kernel/arch/mips64/src/mips64.c

    r0747468 r97c7682  
    188188            cp0_status_um_bit | cp0_status_ie_enabled_bit));
    189189        cp0_epc_write((uintptr_t) kernel_uarg->uspace_entry);
    190         userspace_asm(((uintptr_t) kernel_uarg->uspace_stack + STACK_SIZE),
     190        userspace_asm(((uintptr_t) kernel_uarg->uspace_stack +
     191            kernel_uarg->uspace_stack_size),
    191192            (uintptr_t) kernel_uarg->uspace_uarg,
    192193            (uintptr_t) kernel_uarg->uspace_entry);
  • kernel/arch/ppc32/include/mm/page.h

    r0747468 r97c7682  
    128128#define SET_FRAME_FLAGS_ARCH(ptl3, i, x) \
    129129        set_pt_flags((pte_t *) (ptl3), (size_t) (i), (x))
     130
     131/* Set PTE present accessors for each level. */
     132#define SET_PTL1_PRESENT_ARCH(ptl0, i) \
     133        set_pt_present((pte_t *) (ptl0), (size_t) (i))
     134
     135#define SET_PTL2_PRESENT_ARCH(ptl1, i)
     136#define SET_PTL3_PRESENT_ARCH(ptl2, i)
     137
     138#define SET_FRAME_PRESENT_ARCH(ptl3, i) \
     139        set_pt_present((pte_t *) (ptl3), (size_t) (i))
    130140
    131141/* Macros for querying the last-level PTEs. */
     
    175185}
    176186
     187NO_TRACE static inline void set_pt_present(pte_t *pt, size_t i)
     188{
     189        pte_t *entry = &pt[i];
     190
     191        entry->present = 1;
     192}
     193
    177194extern void page_arch_init(void);
    178195
  • kernel/arch/ppc32/src/ppc32.c

    r0747468 r97c7682  
    269269{
    270270        userspace_asm((uintptr_t) kernel_uarg->uspace_uarg,
    271             (uintptr_t) kernel_uarg->uspace_stack + STACK_SIZE - SP_DELTA,
     271            (uintptr_t) kernel_uarg->uspace_stack +
     272            kernel_uarg->uspace_stack_size - SP_DELTA,
    272273            (uintptr_t) kernel_uarg->uspace_entry);
    273274       
  • kernel/arch/sparc64/Makefile.inc

    r0747468 r97c7682  
    3232
    3333GCC_CFLAGS += -m64 -mcpu=ultrasparc -mcmodel=medlow -mno-fpu
    34 SUNCC_CFLAGS += -m64 -xarch=sparc -xregs=appl,no%float
    3534
    3635LFLAGS += -no-check-sections
  • kernel/arch/sparc64/src/drivers/niagara.c

    r0747468 r97c7682  
    184184       
    185185        instance = malloc(sizeof(niagara_instance_t), FRAME_ATOMIC);
    186         instance->thread = thread_create(kniagarapoll, NULL, TASK, 0,
    187             "kniagarapoll", true);
     186        instance->thread = thread_create(kniagarapoll, NULL, TASK,
     187            THREAD_FLAG_UNCOUNTED, "kniagarapoll");
    188188       
    189189        if (!instance->thread) {
  • kernel/arch/sparc64/src/proc/sun4u/scheduler.c

    r0747468 r97c7682  
    5151void before_thread_runs_arch(void)
    5252{
    53         if ((THREAD->flags & THREAD_FLAG_USPACE)) {
     53        if (THREAD->uspace) {
    5454                /*
    5555                 * Write kernel stack address to %g6 of the alternate and
     
    7474void after_thread_ran_arch(void)
    7575{
    76         if ((THREAD->flags & THREAD_FLAG_USPACE)) {
    77                 /* sample the state of the userspace window buffer */   
     76        if (THREAD->uspace) {
     77                /* sample the state of the userspace window buffer */
    7878                THREAD->arch.uspace_window_buffer = (uint8_t *) read_from_ag_g7();
    7979        }
  • kernel/arch/sparc64/src/proc/sun4v/scheduler.c

    r0747468 r97c7682  
    5454void before_thread_runs_arch(void)
    5555{
    56         if ((THREAD->flags & THREAD_FLAG_USPACE)) {
     56        if (THREAD->uspace) {
    5757                uint64_t sp = (uintptr_t) THREAD->kstack + STACK_SIZE -
    5858                    (STACK_BIAS + ALIGN_UP(STACK_ITEM_SIZE, STACK_ALIGNMENT));
     
    6666void after_thread_ran_arch(void)
    6767{
    68         if ((THREAD->flags & THREAD_FLAG_USPACE)) {
    69                 /* sample the state of the userspace window buffer */   
     68        if (THREAD->uspace) {
     69                /* sample the state of the userspace window buffer */
    7070                THREAD->arch.uspace_window_buffer =
    7171                    (uint8_t *) asi_u64_read(ASI_SCRATCHPAD, SCRATCHPAD_WBUF);
  • kernel/arch/sparc64/src/proc/thread.c

    r0747468 r97c7682  
    6161void thread_create_arch(thread_t *t)
    6262{
    63         if ((t->flags & THREAD_FLAG_USPACE) && (!t->arch.uspace_window_buffer))
     63        if ((t->uspace) && (!t->arch.uspace_window_buffer))
    6464                {
    6565                /*
  • kernel/arch/sparc64/src/smp/sun4u/ipi.c

    r0747468 r97c7682  
    124124                        (void) interrupts_disable();
    125125                }
    126         } while (done);
     126        } while (!done);
    127127       
    128128        preemption_enable();
  • kernel/arch/sparc64/src/sun4u/sparc64.c

    r0747468 r97c7682  
    156156        (void) interrupts_disable();
    157157        switch_to_userspace((uintptr_t) kernel_uarg->uspace_entry,
    158             ((uintptr_t) kernel_uarg->uspace_stack) + STACK_SIZE
    159             - (ALIGN_UP(STACK_ITEM_SIZE, STACK_ALIGNMENT) + STACK_BIAS),
     158            ((uintptr_t) kernel_uarg->uspace_stack) +
     159            kernel_uarg->uspace_stack_size -
     160            (ALIGN_UP(STACK_ITEM_SIZE, STACK_ALIGNMENT) + STACK_BIAS),
    160161            (uintptr_t) kernel_uarg->uspace_uarg);
    161 
    162         for (;;)
    163                 ;
    164         /* not reached */
     162       
     163        /* Not reached */
     164        while (1);
    165165}
    166166
  • kernel/arch/sparc64/src/sun4v/sparc64.c

    r0747468 r97c7682  
    154154        (void) interrupts_disable();
    155155        switch_to_userspace((uintptr_t) kernel_uarg->uspace_entry,
    156             ((uintptr_t) kernel_uarg->uspace_stack) + STACK_SIZE
    157             - (ALIGN_UP(STACK_ITEM_SIZE, STACK_ALIGNMENT) + STACK_BIAS),
     156            ((uintptr_t) kernel_uarg->uspace_stack) +
     157            kernel_uarg->uspace_stack_size -
     158            (ALIGN_UP(STACK_ITEM_SIZE, STACK_ALIGNMENT) + STACK_BIAS),
    158159            (uintptr_t) kernel_uarg->uspace_uarg);
    159 
    160         for (;;)
    161                 ;
    162         /* not reached */
     160       
     161        /* Not reached */
     162        while (1);
    163163}
    164164
Note: See TracChangeset for help on using the changeset viewer.