April 05, 2016 Segmentation Fault on rt.tlsgc.init | ||||
---|---|---|---|---|
| ||||
If I create many threads (starts, does a short work, and ends) repeatedly (>10,000), at some point rt.tlsgc.init() gives SEGMENTATION_FAULT. It doesn't check whether malloc fails to allocate any memory, and I cannot find the source code of "rt.sections.initTLSRanges()" anywhere. Is it left there without a check purposefully? |
April 05, 2016 Re: Segmentation Fault on rt.tlsgc.init | ||||
---|---|---|---|---|
| ||||
Posted in reply to tcak | On 2016-04-05 11:46, tcak wrote: > If I create many threads (starts, does a short work, and ends) > repeatedly (>10,000), at some point rt.tlsgc.init() gives > SEGMENTATION_FAULT. > > It doesn't check whether malloc fails to allocate any memory, and I > cannot find the source code of "rt.sections.initTLSRanges()" anywhere. > > Is it left there without a check purposefully? rt.sections.initTLSRanges is available here for Linux and FreeBSD [1]. For other platforms there are similar files. https://github.com/D-Programming-Language/druntime/blob/master/src/rt/sections_elf_shared.d#L145 -- /Jacob Carlborg |
Copyright © 1999-2021 by the D Language Foundation