Question about eMMC, DDR and tmpfs on Apalis T30

I am executing a timing-critical application on my ApalisT30/Ixora system that reads data from a device via usb serial on the mini-PCIe interface. I’m running into kernel messages telling me that my tty device is getting input overruns, e.g.:

[77336.971830] ttyUSB0: 1 input overrun(s)

[77338.011834] ttyUSB0: 1 input overrun(s)

[77339.973829] ttyUSB0: 1 input overrun(s)

:

etc.

The application has to do quite a bit of logging, and it occurred to me that I might be experiencing an I/O bottleneck, specifically slow writes to rootfs on eMMC. To test that theory, I created a tmpfs ramdisk and redirected logging to that device, but still have the overruns.

It very well may be program logic, but I’d like to eliminate the possibility of an I/O bottleneck, so I wanted to verify performance (i.e. bandwidth) of eMMC, DDR and confirm that tmpfs is staged in DDR and not eMMC.

Any insights?

Yes, tmpfs located in RAM. Try to do some profiling of your program to find a bottle neck.

Already on it. Thanks for eliminating a loose end.

Is it really v3.16.y which you are using?

Upstream/mainline did had some eMMC issues at times on Tegra 3.