[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20150914174609.GA30917@redhat.com>
Date: Mon, 14 Sep 2015 19:46:09 +0200
From: Oleg Nesterov <oleg@...hat.com>
To: "Kirill A. Shutemov" <kirill.shutemov@...ux.intel.com>
Cc: Will Deacon <will.deacon@....com>, hpa@...or.com,
luto@...capital.net, dave.hansen@...ux.intel.com, mingo@...e.hu,
minchan@...nel.org, tglx@...utronix.de, linux-mm@...ck.org,
linux-kernel@...r.kernel.org
Subject: Re: LTP regressions due to 6dc296e7df4c ("mm: make sure all file
VMAs have ->vm_ops set")
On 09/14, Oleg Nesterov wrote:
>
> On 09/14, Kirill A. Shutemov wrote:
> >
> > Fix is below. I don't really like it, but I cannot find any better
> > solution.
>
> Me too...
>
> But this change "documents" the nasty special "vm_file && !vm_ops" case, and
> I am not sure how we can remove it later...
>
> So perhaps we should change vma_is_anonymous() back to check ->fault too,
>
> static inline bool vma_is_anonymous(struct vm_area_struct *vma)
> {
> - return !vma->vm_ops;
> + return !vma->vm_ops || !vma->vm_ops->fault;
> }
>
> and remove the "vma->vm_file && !vma->vm_ops" checks in mmap_region() paths.
^^^
sorry, I actually meant "or remove". But perhaps "and" makes sense too.
Say, if we change vma_is_anonymous() as above, then we can kill
arch_vma_name() on x86. mpx_mmap() can install the dummy vm_ops with
the single ->name() method.
> I dunno.
Yes. Up to you.
Oleg.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists