Re: [PATCH net v2 0/2] sfc: Restrict PIO for 64bit arch in order to avoid data corruption
From: David Miller <davem@davemloft.net>
Date: 2014-05-31 00:38:21
From: David Miller <davem@davemloft.net>
Date: 2014-05-31 00:38:21
From: Shradha Shah <redacted> Date: Wed, 28 May 2014 10:23:01 +0100
This patch series Fixes: ee45fd92c739db5b7950163d91dfe5f016af6d24 The linux net driver uses memcpy_toio() in order to copy into the PIO buffers. Even on a 64bit machine this causes 32bit accesses to a write- combined memory region. There are hardware limitations that mean that only 64bit naturally aligned accesses are safe in all cases. Due to being write-combined memory region two 32bit accesses may be coalesced to form a 64bit non 64bit aligned access. Solution was to open-code the memory copy routines using pointers and to only enable PIO for x86_64 machines. This bug fix applies to v3.13 and v3.14 stable branches.
You submited this twice and I'm still confused which ones I should use. Please resubmit this and address Sergei's feedback, thank you.