On 2022-01-27 19:24:37 [+0000], Valentin Schneider wrote: > arch_faults_on_old_pte() relies on the calling context being > non-preemptible. CONFIG_PREEMPT_RT turns the PTE lock into a sleepable > spinlock, which doesn't disable preemption once acquired, triggering the > warning in arch_faults_on_old_pte(). > > It does however disable migration, ensuring the task remains on the same > CPU during the entirety of the critical section, making the read of > cpu_has_hw_af() safe and stable. > > Make arch_faults_on_old_pte() check cant_migrate() instead of preemptible(). > > Suggested-by: Sebastian Andrzej Siewior <bigeasy@xxxxxxxxxxxxx> > Signed-off-by: Valentin Schneider <valentin.schneider@xxxxxxx> > Link: https://lore.kernel.org/r/20210811201354.1976839-5-valentin.schneider@xxxxxxx Let me pick that up so I can drop the other two. I hope the ARM64 folks follow my lead ;) Acked-by: Sebastian Andrzej Siewior <bigeasy@xxxxxxxxxxxxx> Sebastian