Re: [PATCH] x86/asm/memcpy_mcsafe: Fix copy_to_user_mcsafe() exception handling
From: Ingo Molnar
Date: Thu Jul 05 2018 - 03:03:09 EST
* Dan Williams <dan.j.williams@xxxxxxxxx> wrote:
> On Wed, Jul 4, 2018 at 3:38 PM, Al Viro <viro@xxxxxxxxxxxxxxxxxx> wrote:
> > On Tue, Jul 03, 2018 at 10:30:40AM +0200, Ingo Molnar wrote:
> >>
> >> * Dan Williams <dan.j.williams@xxxxxxxxx> wrote:
> >>
> >> > Hi Ingo,
> >> >
> >> > Here is an additional copy_to_iter_mcsafe() fix to address the crash
> >> > reported by Ross. This now passes xfstests:generic/323 on my system.
> >>
> >> The lib/iov_iter fix would need an Acked-by from Al.
> >
> > I can live with that; I would really like to see some documentation on
> > the copy_to_iter_mcsafe(), but that's a separate story. Incidentally,
> > are there any expectations of other callers appearing, or is that
> > (and copy_from_iter_flushcache()) YASingleConsumerAPI?
>
> The current cpu architectural detail preventing conversion of the
> standard copy_to_iter() path to use the mcsafe flavor is that we can't
> use REP MOV for fast copies and instead need to use a software loop so
> that any exceptions are recoverable. When / if that is addressed, and
> there is no performance difference between the two, it might make
> sense to convert more users.
>
> The _flushcache flavor, however, will likely stay limited to a single
> consumer for the persistent memory use case.
Could you please add the API documentation Al asked for, and update the changlog
with the acks and tested-by's that people gave, and send out a v2 series?
Thanks!
Ingo