On Tue, Jul 12, 2022 at 06:01:08PM +0800, Hongchen Zhang wrote:Hi Thomas,
On 2022/7/7 下午7:12, Hongchen Zhang wrote:
On 2022/7/7 下午5:22, Thomas Bogendoerfer wrote:Hi Thomas,
On Thu, Jul 07, 2022 at 04:11:35PM +0800, Hongchen Zhang wrote:
When a pmd entry is invalidated by pmd_mkinvalid,pmd_present should
return true.
So introduce a _PMD_PRESENT_INVALID_SHIFT bit to check if a pmd is
present but invalidated by pmd_mkinvalid.
What problem are you trying to fix ? What are the symptoms ?
Reported-by: kernel test robot <lkp@xxxxxxxxx>
the test robot showed problems with your last version of the patch,
which hasn't been integrated into at least the MIPS tree, so no
need to that.
Thomas.
Hi Thomas,
The idea come from the commit:
b65399f6111b(arm64/mm: Change THP helpers to comply with generic MM
semantics).
There is an problem now:
CPU 0 CPU 1
pmdp_invalidate do_page_fault
... __handle_mm_fault
is_swap_pmd == true
trigger VM_BUG_ON() ?
set_pmd_at
the reason is that pmd_present return true,after this commit
pmd_present will return false,and the VM_BUG_ON will not be triggered.
Like arm64 does,we can introduce a new bit to fix this.
Thanks.
Is there problem of this patch? What's your opinion of this patch?
I haven't dig deeper into it, but needing more page bits is a pain
for 32bit kernel and would make it nearly impossible to get huge
page support there. And the description you gave me, needs to be
in the commit description.
Thomas.