| Title | Should be able to use mps_arena_has_addr from a heap walking function |
| Status | closed |
| Priority | essential |
| Assigned user | David Jones |
| Organization | Ravenbrook |
| Description | Configura complain that they cannot call the function mps_arena_has_addr from a heap walker callback. |
| Analysis | An assertion is fired: MPS ASSERTION FAILURE: lock->claims == 0 .\lockw3.c 78 It seems wrong; it's reasonable to be able to call this function from a heap walker. To make this change: We'll need an ArenaEnterRecursive (and LeaveRecursive). Need to check that all relevant functions can be called in the middle of a call to mps_arena_formatted_objects_walk. ArenaHasAddr SegOfAddr TractOfAddr ChunkOfAddr TRACT_SEG TractHasSeg All of which are ok. 2003-11-04 This has now been implemented on version/1.101 and master. Configura appear to be happy with this. Closing. drj |
| How found | customer |
| Evidence | <URL: http://info.ravenbrook.com/mail/2003/06/25/14-42-15/0.txt > |
| Created by | David Jones |
| Created on | 2003-07-09 10:49:36 |
| Last modified by | Gareth Rees |
| Last modified on | 2014-03-07 10:11:16 |
| History | 2003-07-09 DRJ created 2003-11-04 DRJ closed |
| Change | Effect | Date | User | Description |
|---|---|---|---|---|
| 52060 | closed | 2003-07-31 09:57:31 | David Jones | mps: properly fix mps_arena_has_addr for Configura |
| 50108 | open | 2003-07-09 16:42:29 | David Jones | MPS: can now call mps_arena_has_addr during mps_arena_formatted_objects_walk. test walkt0 is witness |
| 50081 | open | 2003-07-09 13:31:36 | David Jones | MPS: test for Configura, mps_arena_has_addr during heap walk. |
| 50079 | open | 2003-07-09 12:46:15 | David Jones | MPS ref man minor updates. mps_arena_formatted_objects_walk et al |