<div dir="ltr"><div dir="ltr"><div class="gmail_default" style="font-size:small">Hi Ralph,</div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Tue, Sep 28, 2021 at 3:09 AM Ralph Siemsen <<a href="mailto:ralph.siemsen@linaro.org">ralph.siemsen@linaro.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">On Mon, Sep 27, 2021 at 11:12:20AM -0400, Ralph Siemsen wrote:<br>
><br>
>However fallocate06 test is failing with OOM. It seems this one still <br>
>contains .dev_min_size = 512 , should this be removed?<br>
<br>
With .dev_min_size = 512 the test should be skipped on my system since I <br>
have only ~120 MB of free RAM. But something is wrong with the test.<br>
<br>
I added code to print the value returned by tst_available() and found <br>
that it was a very very large number.<br>
<br>
After investigation, the format string "%ld" seems to be the culprit.<br></blockquote><div><br></div><div><div class="gmail_default" style="font-size:small">Thanks for the debugging. Can you send a patch?</div><br></div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<br>
--- a/lib/tst_memutils.c<br>
+++ b/lib/tst_memutils.c<br>
@@ -65,13 +65,15 @@ void tst_pollute_memory(size_t maxsize, int fillchar)<br>
<br>
  long long tst_available_mem(void)<br>
  {<br>
-       long long mem_available;<br>
+       long long mem_available = 0;<br>
<br>
-       if (FILE_LINES_SCANF("/proc/meminfo", "MemAvailable: %ld",<br>
+       if (FILE_LINES_SCANF("/proc/meminfo", "MemAvailable: %lld",<br>
                &mem_available)) {<br>
                mem_available = SAFE_READ_MEMINFO("MemFree:")<br>
                        + SAFE_READ_MEMINFO("Cached:");<br>
        }<br>
<br>
+       tst_res(TINFO, "RFS: tst_available_mem returning %lld\n", mem_available);<br>
+<br>
        return mem_available;<br>
  }<br>
<br>
With the above change, tst_available() returns a reasonable value, and <br>
the fallocate06 test is skipped:<br>
<br>
tst_test.c:1436: TINFO: Testing on tmpfs<br>
tst_test.c:937: TINFO: Skipping mkfs for TMPFS filesystem<br>
tst_memutils.c:81: TINFO: RFS: tst_available_mem return 120592<br>
tst_test.c:907: TINFO: RFS: tmpfs_size = 512 avail=120592<br>
tst_test.c:911: TCONF: No enough memory for tmpfs use<br>
<br>
<br>
Also, when I remove the .dev_min_size=512 from fallocate06, then it uses <br>
the default size of 32MB, and the fallocate06 test runs and passes.<br>
<br>
Regards,<br>
Ralph<br>
<br>
</blockquote></div><br clear="all"><div><br></div>-- <br><div dir="ltr" class="gmail_signature"><div dir="ltr"><div>Regards,<br></div><div>Li Wang<br></div></div></div></div>