Title | Memory corruption due to multiple arenas in multiple threads |
Status | duplicate |
Priority | essential |
Assigned user | Gareth Rees |
Organization | Ravenbrook |
Description | On branch 2016-04-22/access, the new test case arenath allocates in multiple arenas in multiple threads. Running it on platform XCI6LL causes segmentation faults, illegal instruction faults, and a variety of assertion failures (the one in land.c being the most common), including: arena.c:1172: _size <= (size_t)(EventLast[EventArenaFreeKind] - EventBuffer[EventArenaFreeKind]) cbs.c:1021: MustBeA CBSZoned: land land.c:65: SigCheck LandClass: klass poolamc.c:1761: _size <= (size_t)(EventLast[EventAMCReclaimKind] - EventBuffer[EventAMCReclaimKind]) seg.c:115: _size <= (size_t)(EventLast[EventSegFreeKind] - EventBuffer[EventSegFreeKind]) seg.c:167: MustBeA InstClass: (SegClassGet()) seg.c:351: MustBeA KIND_CLASS(Seg): MustBeA(Inst, seg)->klass |
Analysis | Running under LLDB shows that the data structures have become corrupted. This is a duplicate of job003387. |
How found | automated_test |
Evidence | None as yet. |
Created by | Gareth Rees |
Created on | 2016-05-02 11:51:09 |
Last modified by | Gareth Rees |
Last modified on | 2016-05-02 17:24:37 |
History | 2016-05-02 GDR Created. |