Messages in this thread | | | Subject | Re: [PATCH 5/8] x86/clear_page: add clear_page_uncached() | From | Ankur Arora <> | Date | Wed, 14 Oct 2020 13:54:00 -0700 |
| |
On 2020-10-14 8:45 a.m., Andy Lutomirski wrote: > On Wed, Oct 14, 2020 at 1:33 AM Ankur Arora <ankur.a.arora@oracle.com> wrote: >> >> Define clear_page_uncached() as an alternative_call() to clear_page_nt() >> if the CPU sets X86_FEATURE_NT_GOOD and fallback to clear_page() if it >> doesn't. >> >> Similarly define clear_page_uncached_flush() which provides an SFENCE >> if the CPU sets X86_FEATURE_NT_GOOD. > > As long as you keep "NT" or "MOVNTI" in the names and keep functions > in arch/x86, I think it's reasonable to expect that callers understand > that MOVNTI has bizarre memory ordering rules. But once you give > something a generic name like "clear_page_uncached" and stick it in > generic code, I think the semantics should be more obvious. > > How about: > > clear_page_uncached_unordered() or clear_page_uncached_incoherent() > > and > > flush_after_clear_page_uncached() > > After all, a naive reader might expect "uncached" to imply "caches are > off and this is coherent with everything". And the results of getting > this wrong will be subtle and possibly hard-to-reproduce corruption. Yeah, these are a lot more obvious. Thanks. Will fix.
Ankur
> > --Andy >
| |