--- x/kernel/futex/core.c +++ y/kernel/futex/core.c @@ -1735,8 +1735,7 @@ void futex_hash_free(struct mm_struct *m free_percpu(mm->futex_ref); kvfree(mm->futex_phash_new); fph = rcu_dereference_raw(mm->futex_phash); - if (fph) - kvfree(fph); + kvfree_rcu(fph, rcu); } static bool futex_pivot_pending(struct mm_struct *mm) --- x/kernel/fork.c +++ y/kernel/fork.c @@ -1165,8 +1165,6 @@ EXPORT_SYMBOL_IF_KUNIT(mm_alloc); static inline void __mmput(struct mm_struct *mm) { - VM_BUG_ON(atomic_read(&mm->mm_users)); - uprobe_clear_state(mm); exit_aio(mm); ksm_exit(mm);