Thread (64 messages) 64 messages, 9 authors, 2011-12-09

Re: kernel 3.0: BUG: soft lockup: find_get_pages+0x51/0x110

From: Andrea Arcangeli <hidden>
Date: 2011-10-21 22:50:57
Also in: lkml
Subsystem: memory management, memory management - rmap (reverse mapping), memory mapping, the rest · Maintainers: Andrew Morton, David Hildenbrand, Lorenzo Stoakes, Liam R. Howlett, Linus Torvalds

Possibly related (same subject, not in this thread)

On Fri, Oct 21, 2011 at 07:41:20PM +0200, Andrea Arcangeli wrote:
We have two options:

1) we remove the vma_merge call from copy_vma and we do the vma_merge
manually after mremap succeed (so then we're as safe as fork is and we
relay on the ordering). No locks but we'll just do 1 more allocation
for one addition temporary vma that will be removed after mremap
completed.

2) Hugh's original fix.
3) put the src vma at the tail if vma_merge succeeds and the src vma
and dst vma aren't the same

I tried to implement this but I'm still wondering about the safety of
this with concurrent processes all calling mremap at the same time on
the same anon_vma same_anon_vma list, the reasoning I think it may be
safe is in the comment. I run a few mremap with my benchmark where the
THP aware mremap in -mm gets a x10 boost and moves 5G and it didn't
crash but that's about it and not conclusive, if you review please
comment...

I've to pack luggage and prepare to fly to KS tomorrow so I may not be
responsive in the next few days.

===
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help