I want to test RAM on my embedded Linux device for any kinds of problems. Can people suggest any RAM test suites out there?

I am working on ARM architecture.

  • What kind of device/OS/hardware? Not enough details.
    – Garrett
    Nov 1 '11 at 22:05
  • device running embedded linux 2.6.31 Nov 1 '11 at 22:35
  • If you can recompile the kernel then @Paul's suggestion is ideal.
    – Garrett
    Nov 1 '11 at 22:42

You should not plan on trying to test RAM while running Linux and virtual memory is active. Another reason is that the kernel will lock down the memory it occupies, so that RAM would never get tested.

RAM has to be tested before the Linux kernel is loaded and executed.

U-Boot has a memory tester, and supports an assortment of architectures.

  • OK. IN that case do you the test strategy mentioned in the article is wrong ? netrino.com/node/154 Nov 1 '11 at 22:47
  • @abc - a quick glance at that article indicates that it has good information. My point (that does not seem to be mentioned in that article) is when (i.e. what stage in the boot sequence) should the memory test be run?
    – sawdust
    Nov 1 '11 at 23:10
  • But there is no way to run the test mentioned in the article in the bootloader. Don't you agree ? And you recommended not running the any RAM tests after the system has booted. So, what should I follow? Nov 2 '11 at 0:38
  • 1
    @abc - No, I do not agree with your assertion that "there is no way to run the test mentioned in the article" before the kernel is loaded. The last embedded Linux system I worked on had a four stage boot sequence: ROM boot -> second-stage bootloader -> U-Boot -> Linux. I ran memory tests in U-Boot, before I- and D-caches and MMU were enabled.
    – sawdust
    Nov 2 '11 at 2:26

To save space you could enable the in-built memory tester in the kernel (included from 2.6.26 onwards). Enable in your .config:


Then have a boot option with a kernel with parameter memtest. This will run through a battery of tests before booting normally.

  • Note that the mentioned code is under the arch/x86. OP has not mentioned what arch his board has.
    – sawdust
    Nov 1 '11 at 23:17
  • I am on ARM not x86. I updated the question. Thanks. Nov 7 '14 at 21:58

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.