On 12.10.22 10:15, Albert Huang wrote:
From: "huangjie.albert" <huangjie.albert@xxxxxxxxxxxxx> implement these two functions so that we can set the mempolicy to the inode of the hugetlb file. This ensures that the mempolicy of all processes sharing this huge page file is consistent. In some scenarios where huge pages are shared: if we need to limit the memory usage of vm within node0, so I set qemu's mempilciy bind to node0, but if there is a process (such as virtiofsd) shared memory with the vm, in this case. If the page fault is triggered by virtiofsd, the allocated memory may go to node1 which depends on virtiofsd.
Any VM that uses hugetlb should be preallocating memory. For example, this is the expected default under QEMU when using huge pages.
Once preallocation does the right thing regarding NUMA policy, there is no need to worry about it in other sub-processes.
-- Thanks, David / dhildenb