On Fri, Apr 6, 2018 at 11:26 AM, Nicholas Piggin <npig...@gmail.com> wrote: > On Thu, 05 Apr 2018 16:40:26 -0400 > Jeff Moyer <jmo...@redhat.com> wrote: > >> Nicholas Piggin <npig...@gmail.com> writes: >> >> > On Thu, 5 Apr 2018 15:53:07 +1000 >> > Balbir Singh <bsinghar...@gmail.com> wrote: >> >> I'm thinking about it, I wonder what "bytes remaining" mean in pmem >> >> context >> >> in the context of a machine check exception. Also, do we want to be byte >> >> accurate or cache-line accurate for the bytes remaining? The former is >> >> much >> >> easier than the latter :) >> > >> > The ideal would be a linear measure of how much of your copy reached >> > (or can reach) non-volatile storage with nothing further copied. You >> > may have to allow for some relaxing of the semantics depending on >> > what the architecture can support. >> >> I think you've got that backwards. memcpy_mcsafe is used to copy *from* >> persistent memory. The idea is to catch errors when reading pmem, not >> writing to it. >>
I know the comment in x86 says posted writes and cares for only loads, but I don't see why both sides should not be handled. >> > What's the problem with just counting bytes copied like usercopy -- >> > why is that harder than cacheline accuracy? >> >> He said the former (i.e. bytes) is easier. So, I think you're on the >> same page. :) > > Oh well that makes a lot more sense in my mind now, thanks :) I thought the cache-aligned might make sense, since usually we'd expect the failure to be at a cache-line level, but our copy_tofrom_user does accurate accounting Balbir Singh.