diff --git a/mm/vmalloc.c b/mm/vmalloc.c index 0d1e0b97d1c9..d5615977e7f3 100644 --- a/mm/vmalloc.c +++ b/mm/vmalloc.c @@ -1749,7 +1749,7 @@ static void _vm_unmap_aliases(unsigned long start, unsigned long end, int flush) rcu_read_lock(); list_for_each_entry_rcu(vb, &vbq->free, free_list) { spin_lock(&vb->lock); - if (vb->dirty) { + if (vb->dirty && vb->dirty != VMAP_BBMAP_BITS) { unsigned long va_start = vb->va->va_start; unsigned long s, e;