Re: git: 42f722e721cd - main - amd64: store pcids pmap data in pcpu zone

From: Peter Jeremy <peterj_at_freebsd.org>
Date: Sat, 06 May 2023 00:26:53 UTC
On 2023-May-02 11:39:55 +0000, Konstantin Belousov <kib@FreeBSD.org> wrote:
>The branch main has been updated by kib:
>
>URL: https://cgit.FreeBSD.org/src/commit/?id=42f722e721cd010ae5759a4b0d3b7b93c2b9cad2
>
>commit 42f722e721cd010ae5759a4b0d3b7b93c2b9cad2
>Author:     Konstantin Belousov <kib@FreeBSD.org>
>AuthorDate: 2023-05-01 05:17:45 +0000
>Commit:     Konstantin Belousov <kib@FreeBSD.org>
>CommitDate: 2023-05-02 11:32:47 +0000
>
>    amd64: store pcids pmap data in pcpu zone
>    
>    This change eliminates the struct pmap_pcid array embedded into struct
>    pmap and sized by MAXCPU, which would bloat with MAXCPU increase.  Also
>    it removes false sharing of cache lines, since the array elements are
>    mostly locally accessed by corresponding CPUs.
>    
>    Suggested by:   mjg
>    Reviewed by:    markj
>    Tested by:      pho
>    Sponsored by:   The FreeBSD Foundation
>    Differential revision:  https://reviews.freebsd.org/D39890

This breaks the !SMP case: Whilst references to pm_pcids have been
replaced in the SMP case, there are still references to
pmap->pm_pcids[0] in the !SMP cane.

-- 
Peter Jeremy