Re: [PATCH v8 3/3] x86, mce: Add __mcsafe_copy()

From: Andy Lutomirski
Date: Sat Jan 09 2016 - 17:33:41 EST


On Sat, Jan 9, 2016 at 2:15 PM, Dan Williams <dan.j.williams@xxxxxxxxx> wrote:
> On Sat, Jan 9, 2016 at 11:39 AM, Tony Luck <tony.luck@xxxxxxxxx> wrote:
>> On Sat, Jan 9, 2016 at 9:57 AM, Andy Lutomirski <luto@xxxxxxxxxxxxxx> wrote:
>>> On Sat, Jan 9, 2016 at 9:48 AM, Tony Luck <tony.luck@xxxxxxxxx> wrote:
>>>> ERMS?
>>>
>>> It's the fast string extension, aka Enhanced REP MOV STOS. On CPUs
>>> with that feature (and not disabled via MSR), plain ol' rep movs is
>>> the fastest way to copy bytes. I think this includes all Intel CPUs
>>> from SNB onwards.
>>
>> Ah ... very fast at copying .. but currently not machine check recoverable.
>
> Hmm, I assume for the pmem driver I'll want to check at runtime if the
> cpu has machine check recovery and fall back to the faster copy if
> it's not available?

Shouldn't that logic live in the mcsafe_copy routine itself rather
than being delegated to callers?

--Andy