This is the mail archive of the
glibc-bugs@sourceware.org
mailing list for the glibc project.
[Bug dynamic-link/22034] New: dlopen and cancellation
- From: "carlos at redhat dot com" <sourceware-bugzilla at sourceware dot org>
- To: glibc-bugs at sourceware dot org
- Date: Tue, 29 Aug 2017 20:19:58 +0000
- Subject: [Bug dynamic-link/22034] New: dlopen and cancellation
- Auto-submitted: auto-generated
https://sourceware.org/bugzilla/show_bug.cgi?id=22034
Bug ID: 22034
Summary: dlopen and cancellation
Product: glibc
Version: unspecified
Status: NEW
Severity: normal
Priority: P2
Component: dynamic-link
Assignee: unassigned at sourceware dot org
Reporter: carlos at redhat dot com
Target Milestone: ---
Similar to bug 15686, a constructor (foreign function call) might call
functions which are cancellation points and under deferred cancellation the
thread will be cancelled leaving the dynamic loader internal locks held.
Subsequent dlopen's from another thread will deadlock. In this case we could
fix this by installing a cancel handler when dlopen starts running.
A perfect solution would be to avoid running the constructors with locks held
at all, but we need to advance the state of the dynamic loader internals
further to the point where we can snapshot link_map state and allow concurrent
dlopens.
--
You are receiving this mail because:
You are on the CC list for the bug.