| Title | Hard to discover roots |
| Status | open |
| Priority | nice |
| Assigned user | Gareth Rees |
| Organization | Ravenbrook |
| Description | When integrating the MPS with an existing system, one of the most difficult steps is finding all the roots. I encountered this in my attempted Ruby integration [1]. It would be nice to have some help here. |
| Analysis | Ideas: 1. try to discover roots by scanning the data segment and see if it refers to MPS-managed memory. 2. don't recycle pages after they are reclaimed, but instead leave them protected. If the client has failed to fix a root, then the next reference through that root will hit the barrier; the MPS will ignore these hits and so they will show up in the debugger. |
| How found | manual_test |
| Evidence | [1] <https://info.ravenbrook.com/mail/2014/05/14/16-14-34/0/> |
| Created by | Gareth Rees |
| Created on | 2014-05-16 14:10:41 |
| Last modified by | Gareth Rees |
| Last modified on | 2014-05-20 22:16:05 |
| History | 2014-05-16 GDR Created. |