Changeset d71331b in mainline
- Timestamp:
- 2012-07-01T20:54:53Z (12 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- 1f8c11f
- Parents:
- 2ee1ccc
- Location:
- kernel
- Files:
-
- 1 deleted
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
kernel/Makefile
r2ee1ccc rd71331b 308 308 test/print/print4.c \ 309 309 test/print/print5.c \ 310 test/thread/thread1.c 310 test/thread/thread1.c \ 311 test/smpcall/smpcall1.c 311 312 312 313 ifeq ($(KARCH),mips32) -
kernel/arch/amd64/src/smp/smp_call.c
-
Property mode
changed from
100644
to120000
r2ee1ccc rd71331b 1 #include <arch/smp/smp_call.h> 2 #include <arch/smp/apic.h> 3 #include <arch/interrupt.h> 4 #include <cpu.h> 5 6 7 void arch_smp_call_ipi(unsigned int cpu_id) 8 { 9 (void) l_apic_send_custom_ipi(cpus[cpu_id].arch.id, VECTOR_SMP_CALL_IPI); 10 } 11 1 kernel/arch/ia32/src/smp/smp_call.c -
Property mode
changed from
-
kernel/arch/ia32/src/smp/smp_call.c
r2ee1ccc rd71331b 1 #include < arch/smp/smp_call.h>1 #include <smp/smp_call.h> 2 2 #include <arch/smp/apic.h> 3 3 #include <arch/interrupt.h> 4 4 #include <cpu.h> 5 5 6 #ifdef CONFIG_SMP 6 7 7 8 void arch_smp_call_ipi(unsigned int cpu_id) … … 10 11 } 11 12 13 #endif /* CONFIG_SMP */ 14 -
kernel/generic/include/smp/smp_call.h
r2ee1ccc rd71331b 23 23 extern void smp_call_async(unsigned int, smp_call_func_t, void *, smp_call_t *); 24 24 extern void smp_call_wait(smp_call_t *); 25 //extern void smp_broadcast_call(smp_call_func_t, void *);26 25 27 26 extern void smp_call_init(void); 27 28 #ifdef CONFIG_SMP 28 29 extern void smp_call_ipi_recv(void); 30 extern void arch_smp_call_ipi(unsigned int); 31 #endif 32 29 33 30 34 -
kernel/generic/src/smp/smp_call.c
r2ee1ccc rd71331b 6 6 #include <arch/barrier.h> 7 7 #include <arch/asm.h> /* interrupt_disable */ 8 #include <arch/smp/smp_call.h>9 10 8 11 9 … … 57 55 * If @a cpu_id is the local CPU, the function will be invoked 58 56 * directly. 57 * 58 * Interrupts must be enabled. Otherwise you run the risk 59 * of a deadlock. 59 60 * 60 61 * @param cpu_id Destination CPU's logical id (eg CPU->id) … … 105 106 /** Waits for a function invoked on another CPU asynchronously to complete. 106 107 * 108 * Does not sleep but rather spins. 109 * 107 110 * Example usage: 108 111 * @code … … 123 126 call_wait(call_info); 124 127 } 128 129 #ifdef CONFIG_SMP 125 130 126 131 /** Architecture independent smp call IPI handler. … … 152 157 } 153 158 159 #endif /* CONFIG_SMP */ 154 160 155 161 static void call_start(smp_call_t *call_info, smp_call_func_t func, void *arg) … … 194 200 195 201 196 /*197 void smp_broadcast_call(smp_call_func_t func, void *arg)198 {199 }200 */201
Note:
See TracChangeset
for help on using the changeset viewer.