I am having an issue with a high priority process, which should execute every 100ms and sleeps in between. The actual work it does is tiny (< 1ms). We fixed some IO related issues already (unnecessary file and I2C IO operations), and that seems to have helped quite a bit, but in a test where I run a grep in the hush shell on a 20MB file (takes about 5 seconds), the high priority task gets delayed for 600ms. The kernel was not built with the CONFIG_PREEMPT_RT, which is something advised here:. However, how will that affect the rest of my system?
Here's another question which came up: for this specific issue, would I benefit from an upgrade to the latest kernel? My guess is no based on the article linked to above, but I want to make sure.
The system is quite simple really, used functions are:
- EMAC (Ethernet)
- MDIO (SD card, with EXT3)
- I2C (1x)
- SPI (1x)
- RS232 (for shell only)
- LCDC (no touch)
We're running kernel version 2.6.33-rc4. The processor is an OMAP-L138 running at 300MHz with 64MB or RAM.
Cheers,
Dirk