The OOM happens because ureadahead sets the tracing buffer to 128MB, and at a system with small amount of memory (Beagleboard) this can cause the boot to call the OOM, killing ureadahead and plymouthd.
For the fix I decided to change only the initscript, instead of adding this restriction to the ureadahead code, because then the user can still run and test it if needed.
I also tried different memory thresholds, but didn't change the boot speed when comparing different bootcharts for BeagleBoard, so I just decided to avoid running it in this case.
Added branch with the proposed fix.
The OOM happens because ureadahead sets the tracing buffer to 128MB, and at a system with small amount of memory (Beagleboard) this can cause the boot to call the OOM, killing ureadahead and plymouthd.
For the fix I decided to change only the initscript, instead of adding this restriction to the ureadahead code, because then the user can still run and test it if needed.
I also tried different memory thresholds, but didn't change the boot speed when comparing different bootcharts for BeagleBoard, so I just decided to avoid running it in this case.