Messages in this thread | | | Date | Thu, 8 Sep 2022 14:13:19 +0100 | From | Jonathan Cameron <> | Subject | Re: [PATCH -next] memregion: Add arch_flush_memregion() interface |
| |
On Wed, 7 Sep 2022 18:07:31 -0700 Dan Williams <dan.j.williams@intel.com> wrote:
> 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/?
Want to indicate it 'might' write back perhaps? So could be invalidate or clean and invalidate (using arm ARM terms just to add to the confusion ;)
Feels like there will be potential race conditions where that matters as we might force stale data to be written back.
Perhaps a comment is enough for that. Anyone have the "famous last words" feeling?
Jonathan
| |