Re: LTP regressions due to 6dc296e7df4c ("mm: make sure all file VMAs have ->vm_ops set")

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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, send a message with 'unsubscribe linux-mm' in
the body to majordomo@xxxxxxxxx.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@xxxxxxxxx";> email@xxxxxxxxx </a>



[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]