On 30/04/2017 07:05, Matthew Wilcox wrote:
> 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).

This makes sense.

Thanks,
Laurent

Reply via email to