Changeset 7782030 in mainline
- Timestamp:
- 2008-11-23T16:13:21Z (16 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- d2093d6
- Parents:
- 0013b9ce
- Location:
- kernel
- Files:
-
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
kernel/arch/ia64/include/cpu.h
r0013b9ce r7782030 88 88 { 89 89 (bootinfo->sapic)[2*(id*256+eid)]=intno; 90 srlz_d(); 91 90 92 } 91 93 -
kernel/arch/ia64/include/interrupt.h
r0013b9ce r7782030 51 51 52 52 /** External Interrupt vectors. */ 53 54 #define VECTOR_TLB_SHOOTDOWN_IPI 0xf0 53 55 #define INTERRUPT_TIMER 255 54 56 #define IRQ_KBD 241 -
kernel/arch/ia64/src/interrupt.c
r0013b9ce r7782030 54 54 #include <ipc/ipc.h> 55 55 #include <synch/spinlock.h> 56 #include <mm/tlb.h> 56 57 57 58 #define VECTORS_64_BUNDLE 20 … … 235 236 } 236 237 238 static void end_of_local_irq() 239 { 240 asm volatile ("mov cr.eoi=r0;;"); 241 } 242 243 237 244 void external_interrupt(uint64_t vector, istate_t *istate) 238 245 { … … 255 262 break; 256 263 264 #ifdef CONFIG_SMP 265 case VECTOR_TLB_SHOOTDOWN_IPI: 266 tlb_shootdown_ipi_recv(); 267 end_of_local_irq(); 268 break; 269 #endif 270 271 257 272 default: 258 273 panic("\nUnhandled External Interrupt Vector %d\n", -
kernel/arch/ia64/src/smp/smp.c
r0013b9ce r7782030 97 97 void ipi_broadcast_arch(int ipi ) 98 98 { 99 ipi_broadcast_arch_all(ipi); 99 int id,eid; 100 int myid,myeid; 101 102 myid=ia64_get_cpu_id(); 103 myeid=ia64_get_cpu_eid(); 104 105 //printf("Sending ipi %d on %d\n",ipi,CPU->id); 106 for(id=0;id<256;id++) 107 for(eid=0;eid<256;eid++) 108 if((id!=myid) || (eid!=myeid)) 109 if(cpu_by_id_eid_list[id][eid]) 110 ipi_send_ipi(id,eid,ipi); 111 100 112 } 101 113 -
kernel/generic/src/mm/tlb.c
r0013b9ce r7782030 135 135 void tlb_shootdown_ipi_send(void) 136 136 { 137 #ifndef ia64138 137 ipi_broadcast(VECTOR_TLB_SHOOTDOWN_IPI); 139 #endif140 138 } 141 139
Note:
See TracChangeset
for help on using the changeset viewer.