Re: [PATCH v7 2/4] s390/mm: Batch PTE updates in lazy MMU mode
| Newsgroups | org.kernel.vger.linux-s390 |
|---|---|
| Message-ID | <[email protected]> |
> Make use of the IPTE instruction's "Additional Entries" field to > invalidate multiple PTEs in one go while in lazy MMU mode. This > is the mode in which many memory-management system calls (like > mremap(), mprotect(), etc.) update memory attributes. > > To achieve that, the set_pte() and ptep_get() primitives use a > per-CPU cache to store and retrieve PTE values and apply the > cached values to the real page table once lazy MMU mode is left. > > The same is done for memory-management platform callbacks that > would otherwise cause intense per-PTE IPTE traffic, reducing the > number of IPTE instructions from up to PTRS_PER_PTE to a single > instruction in the best case. The average reduction is of course > smaller. > > [ ... ] > In an extreme case of mprotect() contiguously triggering the > quiesce state on four LPARs in parallel, measurements show > ~25x fewer quiesce events. > > Signed-off-by: Alexander Gordeev <[email protected]> Sashiko has reviewed this patch and found no issues. It looks great! -- Sashiko AI review · https://sashiko.dev/#/patchset/[email protected]?part=2