On 25.10.18 14:20, Philippe Gerum wrote:
We may call switch_to_bitmap() from the head stage when a co-kernel
switches to a new thread context, in which case IRQs are hard
disabled, although the root stage might be unstalled.
Make sure the preemption debug code in refresh_tss_limit() is aware of
this.
---
arch/x86/include/asm/desc.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/arch/x86/include/asm/desc.h b/arch/x86/include/asm/desc.h
index 0e3758c0c954..7a4cb4333df3 100644
--- a/arch/x86/include/asm/desc.h
+++ b/arch/x86/include/asm/desc.h
@@ -309,7 +309,7 @@ static inline void force_reload_TR(void)
*/
static inline void refresh_tss_limit(void)
{
- DEBUG_LOCKS_WARN_ON(preemptible());
+ DEBUG_LOCKS_WARN_ON(!hard_irqs_disabled() && preemptible());
if (unlikely(this_cpu_read(__tss_limit_invalid)))
force_reload_TR();
This is 4.14-only, right?
Jan
--
Siemens AG, Corporate Technology, CT RDA IOT SES-DE
Corporate Competence Center Embedded Linux