Title | Assertion failure in RootCheck with root of type RootTHREAD |
Status | closed |
Priority | essential |
Assigned user | Gareth Rees |
Organization | Ravenbrook |
Description | Filip Strömbäck reports [1]: "when I am creating a root using mps_root_create_thread_scanned(), I get an assertion in the RootCheck function in root.c caused by reaching the default part of the switch there (RootTHREAD is missing from there)." |
Analysis | This was missed because mps_root_create_thread_scanned has no test coverage. This should have been caught by guide.review.test [2] when branch 2015-09-04/stack was reviewed, but we missed because this group of functions was added after the initial review, and was not thoroughly re-reviewed. Note that there is also no test coverage for mps_root_create_area, and poor coverage of mps_root_create_area_tagged. |
How found | customer |
Evidence | [1] https://info.ravenbrook.com/mail/2016/08/10/14-52-12/0/ [2] http://www.ravenbrook.com/project/mps/master/design/guide.review |
Created by | Gareth Rees |
Created on | 2016-08-10 17:07:50 |
Last modified by | Gareth Rees |
Last modified on | 2016-09-04 12:04:21 |
History | 2016-08-10 GDR Created. |
Change | Effect | Date | User | Description |
---|---|---|---|---|
192111 | closed | 2016-09-04 11:56:09 | Gareth Rees | Add a case for RootTHREAD to RootCheck. Add test coverage for mps_root_create_thread_scanned and mps_root_create_area; improve coverage for mps_root_create_area_tagged, mps_scan_area_tagged, mps_scan_area. |