> On Nov 23, 2018, at 11:44 AM, Linus Torvalds <torva...@linux-foundation.org> 
> wrote:
> 
>> On Fri, Nov 23, 2018 at 10:39 AM Andy Lutomirski <l...@amacapital.net> wrote:
>> 
>> What is memcpy_to_io even supposed to do?  I’m guessing it’s defined as 
>> something like “copy this data to IO space using at most long-sized writes, 
>> all aligned, and writing each byte exactly once, in order.”  That sounds... 
>> dubiously useful.
> 
> We've got hundreds of users of it, so it's fairly common..
> 

I’m wondering if the “at most long-sizes” restriction matters, especially given 
that we’re apparently accessing some of the same bytes more than once. I would 
believe that trying to encourage 16-byte writes (with AVX, ugh) or 64-byte 
writes (with MOVDIR64B) would be safe and could meaningfully speed up some 
workloads.

>> I could see a function that writes to aligned memory in specified-sized 
>> chunks.
> 
> We have that. It's called "__iowrite{32,64}_copy()". It has very few users.
> 
>                  Linus

Reply via email to