Re: [PATCH v3 4/9] mm: introduce skip_none_ptes()

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 





On 2024/11/15 18:22, David Hildenbrand wrote:
*nr_skip = nr;

and then:

zap_pte_range
--> nr = do_zap_pte_range(tlb, vma, pte, addr, end, details, &skip_nr,
                          rss, &force_flush, &force_break);
       if (can_reclaim_pt) {
           none_nr += count_pte_none(pte, nr);
           none_nr += nr_skip;
       }

Right?

Yes. I did not look closely at the patch that adds the counting of

Got it.

pte_none though (to digest why it is required :) ).

Because 'none_nr == PTRS_PER_PTE' is used in patch #7 to detect
empty PTE page.

Okay, so the problem is that "nr" would be "all processed entries" but there are cases where we "process an entry but not zap it".

What you really only want to know is "was any entry not zapped", which could be a simple input boolean variable passed into do_zap_pte_range?

Because as soon as any entry was processed but  no zapped, you can immediately give up on reclaiming that table.

Yes, we can set can_reclaim_pt to false when a !pte_none() entry is
found in count_pte_none().



Looking forward to your more review feedback on this series.

Thanks for all your hard work on this, I'm only able to make slow progress because I keep getting distracted by all different kinds of things :(

It's OK, just take your time. :)

Thanks!






[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux OMAP]     [Linux MIPS]     [eCos]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux