On Tue, Aug 29, 2017 at 09:59:30AM +0200, Laurent Dufour wrote:
> On 27/08/2017 02:18, Kirill A. Shutemov wrote:
> >> +
> >> +  if (unlikely(!vma->anon_vma))
> >> +          goto unlock;
> > 
> > It deserves a comment.
> 
> You're right I'll add it in the next version.
> For the record, the root cause is that __anon_vma_prepare() requires the
> mmap_sem to be held because vm_next and vm_prev must be safe.

But should that test not be:

        if (unlikely(vma_is_anonymous(vma) && !vma->anon_vma))
                goto unlock;

Because !anon vmas will never have ->anon_vma set and you don't want to
exclude those.

Reply via email to