Opened 19 years ago
Last modified 18 years ago
#76 closed defect
fork() failed when using dlopen() — at Initial Version
Reported by: | froloff | Owned by: | bird |
---|---|---|---|
Priority: | normal | Milestone: | libc-0.6.2 |
Component: | libc-backend | Version: | 0.6 |
Severity: | normal | Keywords: | fork() dlopen DosLoadModuleEx |
Cc: |
Description
If process load module dynamically (dlopen) after that fork will fail.
I examine the situation a bit and divide it into 3 cases
- process dlopen() module then forking. Child process failed during initial fork processing.
- process dlopen() module, dlclose() module then forking. Parent process trapped during fork processing.
- process dlopen() module, dlclose() module, dlopen() module again then forking. Parent process goes endless loop in forkParValidateModules() during fork processing.
I'll send testcase and libc logs via email.
Note. I didn't find code deregistering module from modules chain - conj procedure to libc_ForkRegisterModule().
Note:
See TracTickets
for help on using tickets.