[GHC] #11489: Segmentation fault when .prof file not writeable
GHC
ghc-devs at haskell.org
Tue Jan 26 17:24:00 UTC 2016
#11489: Segmentation fault when .prof file not writeable
-------------------------------------+-------------------------------------
Reporter: thomie | Owner: thomie
Type: bug | Status: new
Priority: low | Milestone: 8.0.1
Component: Profiling | Version: 7.0.1
Resolution: | Keywords:
Operating System: Unknown/Multiple | Architecture:
| Unknown/Multiple
Type of failure: None/Unknown | Test Case:
Blocked By: | Blocking:
Related Tickets: #7149 | Differential Rev(s): Phab:D1849
Wiki Page: |
-------------------------------------+-------------------------------------
Comment (by Thomas Miedema <thomasmiedema@…>):
In [changeset:"6d2bdfd8d40b926d7a11d003213220022a63d9f5/ghc"
6d2bdfd8/ghc]:
{{{
#!CommitTicketReference repository="ghc"
revision="6d2bdfd8d40b926d7a11d003213220022a63d9f5"
Fix segmentation fault when .prof file not writeable
There are two ways to do retainer profiling. Quoting from the user's
guide:
1. `+RTS -hr` "Breaks down the graph by retainer set"
2. `+RTS -hr<cc> -h<x>`, where `-h<x>` is one of normal heap profiling
break-down options (e.g. `-hc`), and `-hr<cc> means "Restrict the
profile to closures with retainer sets containing cost-centre
stacks with one of the specified cost centres at the top."
Retainer profiling writes to a .hp file, like the other heap profiling
options, but also to a .prof file. Therefore, when the .prof file is not
writeable for whatever reason, retainer profiling should be turned off
completely.
This worked ok when running the program with `+RTS -hr` (option 1), but a
segfault would occur when using `+RTS -hr<cc> -h<x>`, with `x!=r` (option
2).
This commit fixes that.
Reviewed by: bgamari
Differential Revision: https://phabricator.haskell.org/D1849
GHC Trac Issues: #11489
}}}
--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/11489#comment:4>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the ghc-tickets
mailing list