Re: [PATCH RFC 01/14] x86/asm: add iosubmit_cmds512() based on movdir64b CPU instruction

From: Borislav Petkov
Date: Fri Nov 22 2019 - 13:44:42 EST

On Fri, Nov 22, 2019 at 09:20:39AM -0800, Dan Williams wrote:
> For those cases the thought would be to have memset512() for case1 and
> __iowrite512_copy() for case3. Where memset512() writes a
> non-incrementing source to an incrementing destination, and
> __iowrite512_copy() copies an incrementing source to an incrementing
> destination. Those 2 helpers *would* have fallbacks, but with the
> option to use something like cpu_has_write512() to check in advance
> whether those routines will fallback, or not.
> That can be a discussion for a future patchset when those users arrive.

Oh, sure, of course.

My only angle is very simple: if the MOVDIR* et al is only supported on
upcoming Intel platforms and looking at the use cases:

1. clear poison/MKTME
3. copy iomem in big chunks

I'm going to venture a guess that those two cases are going to be
happening only on Intel platforms which already support MODVIR*. So
wouldn't really need to do any generic helpers because those use cases
are very specific already. Which would make your feature detection a
one-time, driver-init time thing anyway...

Unless I misunderstand those cases and there really is a use case
where the thing would fallback and the fallback would really be for an
"unenlightened" platform without that MOVDIR* hw support...?