Changeset cb4b61d in mainline
- Timestamp:
- 2005-04-17T18:09:26Z (20 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- 7eade45
- Parents:
- 2968fe29
- Files:
-
- 1 added
- 10 edited
Legend:
- Unmodified
- Added
- Removed
-
arch/ia32/Makefile.inc
r2968fe29 rcb4b61d 23 23 arch/delay.s \ 24 24 arch/asm.s \ 25 arch/proc/scheduler.c \ 25 26 arch/smp/ap.S \ 26 27 arch/smp/apic.c \ -
arch/ia32/src/cpu/cpu.c
r2968fe29 rcb4b61d 105 105 } 106 106 107 void cpu_print_report( struct cpu* m)107 void cpu_print_report(cpu_t* m) 108 108 { 109 109 printf("cpu%d: (%s family=%d model=%d stepping=%d) %dMHz\n", -
arch/ia32/src/interrupt.c
r2968fe29 rcb4b61d 35 35 #include <arch/asm.h> 36 36 #include <mm/tlb.h> 37 #include <arch.h> 37 38 38 39 /* … … 91 92 void syscall(__u8 n, __u32 stack[]) 92 93 { 93 printf(" syscall... ");94 thread_ sleep(1);94 printf("cpu%d: syscall\n", CPU->id); 95 thread_usleep(600); 95 96 } 96 97 -
arch/ia32/src/pm.c
r2968fe29 rcb4b61d 66 66 struct tss *tss_p = NULL; 67 67 68 /* gdtr changes everytime newCPU is initialized */68 /* gdtr is changed by kmp before next CPU is initialized */ 69 69 struct ptr_16_32 gdtr __attribute__ ((section ("K_DATA_START"))) = { .limit = sizeof(gdt), .base = (__address) gdt }; 70 70 struct ptr_16_32 idtr __attribute__ ((section ("K_DATA_START")))= { .limit = sizeof(idt), .base = (__address) idt }; -
arch/ia32/src/userspace.c
r2968fe29 rcb4b61d 39 39 40 40 pri = cpu_priority_high(); 41 42 /* 43 * Prepare TSS stack selector and pointers for next syscall. 44 */ 45 CPU->arch.tss->esp0 = (__address) &THREAD->kstack[THREAD_STACK_SIZE-8]; 46 CPU->arch.tss->ss0 = selector(KDATA_DES); 47 41 48 42 __asm__ volatile ("" 49 43 "pushl %0\n" -
arch/mips/src/fake.s
r2968fe29 rcb4b61d 33 33 .global asm_delay_loop 34 34 .global userspace 35 .global before_thread_runs 35 36 37 before_thread_runs: 36 38 userspace: 37 39 calibrate_delay_loop: -
include/proc/scheduler.h
r2968fe29 rcb4b61d 56 56 extern void kcpulb(void *arg); 57 57 58 /* 59 * To be defined by architectures: 60 */ 61 62 extern void before_thread_runs(void); 63 58 64 #endif -
src/Makefile.config
r2968fe29 rcb4b61d 6 6 7 7 # Support for symetric multiprocessors 8 SMP=__SMP__8 #SMP=__SMP__ 9 9 10 10 # Improved support for hyperthreading -
src/proc/scheduler.c
r2968fe29 rcb4b61d 202 202 * This is the place where threads leave scheduler(); 203 203 */ 204 before_thread_runs(); 204 205 spinlock_unlock(&THREAD->lock); 205 206 cpu_priority_restore(THREAD->saved_context.pri); -
src/proc/thread.c
r2968fe29 rcb4b61d 70 70 void *arg = THREAD->thread_arg; 71 71 72 before_thread_runs(); 73 72 74 /* this is where each thread wakes up after its creation */ 73 75 spinlock_unlock(&THREAD->lock);
Note:
See TracChangeset
for help on using the changeset viewer.