Re: [PATCH -next] memregion: Add arch_flush_memregion() interface

From: Dan Williams
Date: Wed Sep 07 2022 - 21:07:43 EST


Andrew Morton wrote:
> I really dislike the term "flush". Sometimes it means writeback,
> sometimes it means invalidate. Perhaps at other times it means
> both.
>
> Can we please be very clear in comments and changelogs about exactly
> what this "flush" does. With bonus points for being more specific in the
> function naming?
>

That's a good point, "flush" has been cargo-culted along in Linux's
cache management APIs to mean write-back-and-invalidate. In this case I
think this API is purely about invalidate. It just so happens that x86
has not historically had a global invalidate instruction readily
available which leads to the overuse of wbinvd.

It would be nice to make clear that this API is purely about
invalidating any data cached for a physical address impacted by address
space management event (secure erase / new region provision). Write-back
is an unnecessary side-effect.

So how about:

s/arch_flush_memregion/cpu_cache_invalidate_memregion/?