Re: [PATCH] mm: fix hang on anon_vma->root->lock

From: Peter Zijlstra
Date: Sat Aug 28 2010 - 06:17:34 EST


On Fri, 2010-08-27 at 21:47 -0500, Christoph Lameter wrote:
>
> I'd be much more comfortable if the following would be done
>
> A. Pin the anon_vma by either
> I. Take a refcount on the anon vma

My preemptible mmu patches do that..

> II. Take a lock in the anon vma (something that is not pointed to)
>
> B. Either
> I. All values that have been used before the pinning are
> verified after the pinning (and the lock is reacquired
> if verification fails).
>
> II. Or all functions using page_lock_anon_vma() must securely
> work in the case that the anon_vma was reused for
> something else before the vma lock was acquired.

Last time I looked they all work like that, they all use something akin
to vma_address() which validates that the page we're interested in is
indeed part of the vma we obtained from the rmap chain.

Anyway, I'll try and refresh my preemptible mmu patch-set now that the
merge window dust settled and post if again, hopefully we can stick it
in -next.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/