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); |