Ticket #421 (Fixed)Fri Apr 22 12:37:01 UTC 2016
Machine may abort if free pool is shrunk to zero
Reported by: | Jeffrey Lee (213) | Severity: | Normal |
Part: | RISC OS: Module | Release: | |
Milestone: | Status | Fixed |
Details by Jeffrey Lee (213):
On a machine with <=512MB RAM and an OS version that supports PMPs, dragging the ram disc size to max in task manager may cause aborts due to running out of space in the free pool.
This might be a bug in the PMP implementation, or it might be a problem that’s always been there (but hard to trigger in the past due to the lower RAM disc size limit)
Apart from fixing the aborts so that the OS will fail gracefully when out of memory, it’s suggested that the task manager restricts the user from making a change which would shrink the free pool below a certain size.
Relevant forum threads:
Changelog:
Modified by Sprow (202) Mon, May 02 2016 - 20:45:47 GMT
> or it might be a problem that’s always been there (but
> hard to trigger in the past due to the lower RAM disc size limit)
I don’t think it’s that option. With a 64+2MB Risc PC, the RAM disc can be dragged to ~50MB (max area size 66MB) leaving 0k in free and 0k in next, and nothing crashes.
Modified by Jeffrey Lee (213) Sun, May 29 2016 - 10:36:42 GMT
- Status changed from Open to Fixed
These recent fixes appear to have fixed the most serious issues seen while testing on a BB-xM and Pi 1. Now the OS appears to fail gracefully when the free pool is shrunk to zero, and recover correctly when free memory is made available again.
https://www.riscosopen.org/viewer/revisions/log…
https://www.riscosopen.org/viewer/revisions/log…
Since the OS remains usable during the period of having no free memory, I don’t think there’s any big rush to implement the idea of making the task manager restrict the minimum free pool size.