Skip to content

Conversation

@hjelmn
Copy link
Member

@hjelmn hjelmn commented Jan 12, 2017

This commit fixes a deadlock that can occur when the libc version
holds a lock when calling munmap. In this case we could end up calling
free() from vma_tree_delete which would in turn try to obtain the lock
in libc. To avoid the issue put any deleted vma's in a new list on the
vma module and release them on the next call to vma_tree_insert. This
should be safe as this function is not called from the memory hooks.

Signed-off-by: Nathan Hjelm hjelmn@lanl.gov
(cherry picked from commit 79cabc9)
Signed-off-by: Nathan Hjelm hjelmn@lanl.gov

This commit fixes a deadlock that can occur when the libc version
holds a lock when calling munmap. In this case we could end up calling
free() from vma_tree_delete which would in turn try to obtain the lock
in libc. To avoid the issue put any deleted vma's in a new list on the
vma module and release them on the next call to vma_tree_insert. This
should be safe as this function is not called from the memory hooks.

Signed-off-by: Nathan Hjelm <hjelmn@lanl.gov>
(cherry picked from commit 79cabc9)
Signed-off-by: Nathan Hjelm <hjelmn@lanl.gov>
@hjelmn
Copy link
Member Author

hjelmn commented Jan 12, 2017

:bot:retest:mellanox

@jsquyres
Copy link
Member

@hppritcha Good to go.

@hppritcha hppritcha merged commit f3be770 into open-mpi:v2.x Jan 13, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants