[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20251029124953.8393Cc7-hca@linux.ibm.com>
Date: Wed, 29 Oct 2025 13:49:53 +0100
From: Heiko Carstens <hca@...ux.ibm.com>
To: David Hildenbrand <david@...hat.com>
Cc: Luiz Capitulino <luizcap@...hat.com>, borntraeger@...ux.ibm.com,
        joao.m.martins@...cle.com, mike.kravetz@...cle.com,
        linux-kernel@...r.kernel.org, linux-mm@...ck.org,
        linux-s390@...r.kernel.org, gor@...ux.ibm.com,
        gerald.schaefer@...ux.ibm.com, agordeev@...ux.ibm.com,
        osalvador@...e.de, akpm@...ux-foundation.org, aneesh.kumar@...nel.org
Subject: Re: [PATCH v2] s390: fix HugeTLB vmemmap optimization crash
On Wed, Oct 29, 2025 at 01:15:44PM +0100, David Hildenbrand wrote:
> BTW, I'm staring at s390x's flush_tlb() function and wonder why that one is
> defined. I'm sure there is a good reason ;)
Yes, I stumbled across that yesterday evening as well. I think its only
purpose is that it wants to be deleted :). I just didn't do it yet since I
don't want to see a merge conflict with this patch.
I also need to check if the only usage of flush_tlb_page(), which is also a
no-op for s390, in mm/memory.c is not indicating a problem too.
> > Changing active entries without the detour over an invalid entry or using
> > proper instructions like crdte or cspg is not allowed on s390. This was solved
> > for other parts that change active entries of the kernel mapping in an
> > architecture compliant way for s390 (see arch/s390/mm/pageattr.c).
> 
> Good point. I recall ARM64 has similar break-before-make requirements
> because they cannot tolerate two different TLB entries (small vs. large) for
> the same virtual address.
> 
> And if I rememebr correctly, that's the reason why arm64 does not enable
> ARCH_WANT_OPTIMIZE_HUGETLB_VMEMMAP just yet.
Ok, let's wait for Gerald. Maybe there is a non-obvious reason why this works
anyway.
Powered by blists - more mailing lists
 
