This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

AM5708: memtester fail issue

Part Number: AM5708
Other Parts Discussed in Thread: TMDSEVM572X, AM5728

We perform the memtester on our custom AM5708 board and the test is failed.

And we perform the memtester on AM5728 EVM TMDSEVM572X and test is also failed.

Is there any wrong with our setting ?

Or is there any other DDR test tool?

In my opinion, EVM board's DDR validity is verified so EVM board would pass the DDR test.

Attached file are our script and test log.4174.memtester.rar

  • Hi William,

    Can you let us know the SDK version that you are using to run the scripts attached?
    Can you provide the full u-boot/kernel boot log? So that we can try reproducing the exact
    behavior on our boards.

    Best Regards,
    Keerthy

  • Hi Keerthy,

    We are using SDK-05.03.00.07 kernel version is 4.14.79 uboot version is 2018.01.

    latest memory test script and AM5728 EVM memory test log are in the attached file.

    auto_mem_test.rar

  • Hi William,

    I was able to reproduce it on our latest SDK as well.

    I believe you are getting free memory using free -m.
    Looking at the free MBs and subtracting 2 from that just as a buffer.

    finally running 2 iterations of that essentially:

    memtester "free -2"MB 2 iterations.:

    https://www.systutorials.com/docs/linux/man/8-memtester/

    There is a clear mention of OOM getting invoked:

    "Note that it is up to you to know how much memory you can safely allocate for testing. If you attempt to allocate more memory than is available, memtester should figure that out, reduce the amount slightly, and try again. However, this can lead to memtester successfully allocating and mlocking essentially all free memory on the system -- if other programs are running, this can lead to excessive swapping and slowing the system down to the point that it is difficult to use. If the system allows allocation of more memory than is actually available (overcommit), it may lead to a deadlock, where the system halts. If the system has an out-of-memory process killer (like Linux), memtester or another process may be killed by the OOM killer."

    Looking at the scenario we are facing it seems another process or other processes requested for more memory
    and encountered this:
    [16911.115331] 8158 total pagecache pages
     [16911.119106] 0 pages in swap cache
     [16911.122444] Swap cache stats: add 0, delete 0, find 0/0
     [16911.127717] Free swap  = 0kB
     [16911.130618] Total swap = 0kB
     
    I would recommend trying with lesser memory instead of -2 MB may be -20MB.

    - Keerthy

  • Hi William,

    I Ran with free - 20 & could successfully run for 6 hours without any oom backtraces.
    Hope you can resolve the issue.

    Best Regards,
    Keerthy

  • Hi Keerthy 

    Do you mean running ./memtester with lesser memory? we will change subtracting 2MB to subtracting 20MB in our script and run again.

    Another question is what is the correct free memory number to run memory test which we can say ddr test is passed.

    Regards,

    Scott

  • Hi Scott,

    I do not know of a thumb rule. It depends really on what other running processes request on the fly. As long as oom is not called and you are close enough to the total available memory we should be good. If you want tighter test you could reduce it minus 10. Hope you can run with out want oom crashes. Please resolve the issue of you are able to do that.

    Thanks,

    Keerthy

  • Hi WIlliam,

    Could you resolve the issue if there are no further questions?

    - Keerthy

  • Hi Keerthy,

    I ran with less memory -10MB & -20MB for 3 days without memory crash.

    Thanks for help.

    William.