Rev 4017 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 4017 | Rev 4402 | ||
---|---|---|---|
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 */ |