Rev 4377 | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
| Rev 4377 | Rev 4692 | ||
|---|---|---|---|
| Line 113... | Line 113... | ||
| 113 | uint64_t tmp; |
113 | uint64_t tmp; |
| 114 | 114 | ||
| 115 | preemption_disable(); |
115 | preemption_disable(); |
| 116 | asm volatile ( |
116 | asm volatile ( |
| 117 | "0:\n" |
117 | "0:\n" |
| 118 | #ifdef CONFIG_HT |
- | |
| 119 | "pause\n" |
118 | "pause\n" |
| 120 | #endif |
- | |
| 121 | "mov %[count], %[tmp]\n" |
119 | "mov %[count], %[tmp]\n" |
| 122 | "testq %[tmp], %[tmp]\n" |
120 | "testq %[tmp], %[tmp]\n" |
| 123 | "jnz 0b\n" /* lightweight looping on locked spinlock */ |
121 | "jnz 0b\n" /* lightweight looping on locked spinlock */ |
| 124 | 122 | ||
| 125 | "incq %[tmp]\n" /* now use the atomic operation */ |
123 | "incq %[tmp]\n" /* now use the atomic operation */ |