Rev 586 | Rev 664 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
| Rev 586 | Rev 623 | ||
|---|---|---|---|
| Line 38... | Line 38... | ||
| 38 | static struct { |
38 | static struct { |
| 39 | const char *name; |
39 | const char *name; |
| 40 | iroutine f; |
40 | iroutine f; |
| 41 | } exc_table[IVT_ITEMS]; |
41 | } exc_table[IVT_ITEMS]; |
| 42 | 42 | ||
| 43 | static spinlock_t exctbl_lock; |
43 | SPINLOCK_INITIALIZE(exctbl_lock); |
| 44 | 44 | ||
| 45 | /** Register exception handler |
45 | /** Register exception handler |
| 46 | * |
46 | * |
| 47 | * @param n Exception number |
47 | * @param n Exception number |
| 48 | * @param name Description |
48 | * @param name Description |
| Line 122... | Line 122... | ||
| 122 | /** Initialize generic exception handling support */ |
122 | /** Initialize generic exception handling support */ |
| 123 | void exc_init(void) |
123 | void exc_init(void) |
| 124 | { |
124 | { |
| 125 | int i; |
125 | int i; |
| 126 | 126 | ||
| 127 | spinlock_initialize(&exctbl_lock, "exctbl_lock"); |
- | |
| 128 | - | ||
| 129 | for (i=0;i < IVT_ITEMS; i++) |
127 | for (i=0;i < IVT_ITEMS; i++) |
| 130 | exc_register(i, "undef", exc_undef); |
128 | exc_register(i, "undef", exc_undef); |
| 131 | 129 | ||
| 132 | spinlock_initialize(&exc_info.lock, "kconsole_excinfo"); |
130 | spinlock_initialize(&exc_info.lock, "kconsole_excinfo"); |
| 133 | link_initialize(&exc_info.link); |
131 | link_initialize(&exc_info.link); |