[GHC] #8039: RTS linker: unloadObj() does not actually unload the code
GHC
ghc-devs at haskell.org
Fri Jul 5 11:58:32 CEST 2013
#8039: RTS linker: unloadObj() does not actually unload the code
---------------------------------+------------------------------------------
Reporter: simonmar | Owner: simonmar
Type: task | Status: new
Priority: high | Milestone: 7.8.1
Component: Runtime System | Version: 7.6.3
Keywords: | Os: Unknown/Multiple
Architecture: Unknown/Multiple | Failure: None/Unknown
Difficulty: Unknown | Testcase:
Blockedby: | Blocking:
Related: |
---------------------------------+------------------------------------------
We've known about this for a long time, but it hasn't been a pressing
issue in GHCi. The problem with actually unloading code is that there
might be pointers into it from the heap or other RTS data structures, so
we need to do a full heap traversal to discover whether it is safe to
unload code or not.
This is an issue for a project at Facebook that needs to have long running
processes that regularly unload and load code using the RTS linker, and
right now the process grows over time.
This ticket is to track the issue, and I'm also working on a fix. The
same problem affects the dynamic linker, although I'm not planning to fix
that (yet).
--
Ticket URL: <http://hackage.haskell.org/trac/ghc/ticket/8039>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the ghc-tickets
mailing list