On Thu, Apr 27, 2017 at 05:52:44PM +0200, Laurent Dufour wrote:
> +static inline bool vma_is_dead(struct vm_area_struct *vma, unsigned int 
> sequence)
> +{
> +     int ret = RB_EMPTY_NODE(&vma->vm_rb);
> +     unsigned seq = ACCESS_ONCE(vma->vm_sequence.sequence);
> +
> +     /*
> +      * Matches both the wmb in write_seqlock_{begin,end}() and
> +      * the wmb in vma_rb_erase().
> +      */
> +     smp_rmb();
> +
> +     return ret || seq != sequence;
> +}

Hang on, this isn't vma_is_dead().  This is vma_has_changed() (possibly
from live to dead, but also possibly grown or shrunk; see your earlier
patch).

Reply via email to