2000-12-07 17:04:25[permalink] [raw]
since test11, the merge_segments() routine assumes that every
VMA that it frees has been locked with lock_vma_mappings().
While most callers have been adapted to perform this locking,
at least two, do_mlock and sys_mprotect, do *not* currently.
This causes a deadlock in certain situations.
What's the correct way to fix this? In mlock and mprotect,
potentially many segments could be freed; do we need to
call lock_vma_mappings on all of them before calling
Mit freundlichen Gruessen / Best Regards
Dr. Ulrich Weigand
Linux for S/390 Design & Development
IBM Deutschland Entwicklung GmbH, Schoenaicher Str. 220, 71032 Boeblingen
Phone: +49-7031/16-3727 --- Email: [email protected]