Rev 825 | Rev 958 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 825 | Rev 955 | ||
---|---|---|---|
Line 112... | Line 112... | ||
112 | } |
112 | } |
113 | 113 | ||
114 | void syscall(int n, void *st) |
114 | void syscall(int n, void *st) |
115 | { |
115 | { |
116 | __native *stack = (__native *) st; |
116 | __native *stack = (__native *) st; |
117 | 117 | ||
- | 118 | interrupts_enable(); |
|
118 | if (stack[-2] < SYSCALL_END) |
119 | if (stack[-2] < SYSCALL_END) |
119 | stack[-2] = syscall_table[stack[-2]](stack[-5], stack[-3], stack[-4]); |
120 | stack[-2] = syscall_table[stack[-2]](stack[-5], stack[-3], stack[-4]); |
120 | else |
121 | else |
121 | panic("Undefined syscall %d", stack[-2]); |
122 | panic("Undefined syscall %d", stack[-2]); |
- | 123 | interrupts_disable(); |
|
122 | } |
124 | } |
123 | 125 | ||
124 | void tlb_shootdown_ipi(int n, void *stack) |
126 | void tlb_shootdown_ipi(int n, void *stack) |
125 | { |
127 | { |
126 | trap_virtual_eoi(); |
128 | trap_virtual_eoi(); |