Rev 3022 | Rev 4156 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 3022 | Rev 4055 | ||
---|---|---|---|
Line 104... | Line 104... | ||
104 | #ifdef CONFIG_FB |
104 | #ifdef CONFIG_FB |
105 | if (sl == &fb_lock) |
105 | if (sl == &fb_lock) |
106 | continue; |
106 | continue; |
107 | #endif |
107 | #endif |
108 | if (i++ > DEADLOCK_THRESHOLD) { |
108 | if (i++ > DEADLOCK_THRESHOLD) { |
109 | printf("cpu%d: looping on spinlock %.*p:%s, " |
109 | printf("cpu%u: looping on spinlock %" PRIp ":%s, caller=%" PRIp, |
110 | "caller=%.*p", CPU->id, sizeof(uintptr_t) * 2, sl, |
- | |
111 | sl->name, sizeof(uintptr_t) * 2, CALLER); |
110 | CPU->id, sl, sl->name, CALLER); |
112 | symbol = get_symtab_entry(CALLER); |
111 | symbol = get_symtab_entry(CALLER); |
113 | if (symbol) |
112 | if (symbol) |
114 | printf("(%s)", symbol); |
113 | printf("(%s)", symbol); |
115 | printf("\n"); |
114 | printf("\n"); |
116 | i = 0; |
115 | i = 0; |
117 | deadlock_reported = true; |
116 | deadlock_reported = true; |
118 | } |
117 | } |
119 | } |
118 | } |
120 | 119 | ||
121 | if (deadlock_reported) |
120 | if (deadlock_reported) |
122 | printf("cpu%d: not deadlocked\n", CPU->id); |
121 | printf("cpu%u: not deadlocked\n", CPU->id); |
123 | 122 | ||
124 | /* |
123 | /* |
125 | * Prevent critical section code from bleeding out this way up. |
124 | * Prevent critical section code from bleeding out this way up. |
126 | */ |
125 | */ |
127 | CS_ENTER_BARRIER(); |
126 | CS_ENTER_BARRIER(); |