On 10 Apr 2020, at 7:47, Kirill A. Shutemov wrote: > External email: Use caution opening links or attachments > > > On Mon, Apr 06, 2020 at 10:59:52AM -0400, Zi Yan wrote: >> I ran this test with all patches from this series applied to Linus’s tree, but still see several failures. Is it expected? >> The config file is attached. Let me know if I miss anything. BTW, I am running in a VM. >> >> Thanks. >> >> The output: >> >> ➜ ~ sudo ./khugepaged >> Save THP and khugepaged settings... OK >> Adjust settings... OK >> Allocate huge page on fault... OK >> Split huge PMD on MADV_DONTNEED... OK >> Collapse fully populated PTE table.... Fail > > I was able to reproduce the issue. And it's fun failure mode. > > How did you get the test case inside the VM? Copy-paste source using 'cat' > or something similar inside the VM? First of all, the failure above was from a bare metal and was the only failure I saw, whereas I saw more failures in my VM. The test program was not messed up in either environment. For VM failures I mentioned before, I used scp to copy the source code into the VM. My VM has its port 22 forwarded to host’s port 11022. “-net user,hostfwd=tcp::11022-:22”. I also copied a binary into my VM and saw the same failures. I kinda think the failures are not related to your patches but something else. > > It screwed up CHECK_HUGE_FMT and CHECK_SWAP_FMT for me. Double back slash > was converted to single. As result check_huge() and check_swap() gave the > false-negative result all the time. It was not my case, since CHECK_HUGE_FMT and CHECK_SWAP_FMT from my khugepaged.c match your patch code. > > Could you check that the source of the test-case is not mangled and > re-test if it is. I can confirm that the test-case is not mangled. I think it must be my VM setup or kernel configuration. Do you mind sharing your .config file with me and which kernel commit you apply the patches on top of in your setup? I can look into it and check what the problem is. Thanks. -- Best Regards, Yan Zi
Attachment:
signature.asc
Description: OpenPGP digital signature