All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH net v2 0/2] sfc: Restrict PIO for 64bit arch in order to avoid data corruption
@ 2014-05-28  9:23 Shradha Shah
  2014-05-28  9:28 ` [PATCH net v2 1/2] sfc: use 64-bit writes for PIO Shradha Shah
  0 siblings, 1 reply; 6+ messages in thread
From: Shradha Shah @ 2014-05-28  9:23 UTC (permalink / raw)
  To: netdev; +Cc: linux-net-drivers

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.

Jon Cooper (2):
  sfc: use 64-bit writes for PIO.
  sfc: Restrict PIO to 64-bit architectures

 drivers/net/ethernet/sfc/io.h |  8 ++++++++
 drivers/net/ethernet/sfc/tx.c | 24 +++++++++++++++++++-----
 2 files changed, 27 insertions(+), 5 deletions(-)

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2014-05-28 14:48 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
     [not found] <cover.1401268725.git.sshah@solarflare.com>
2014-05-28  9:27 ` [PATCH net v2 1/2] sfc: use 64-bit writes for PIO Shradha Shah
2014-05-28  9:32   ` Shradha Shah
2014-05-28 14:48   ` Sergei Shtylyov
2014-05-28  9:28 ` [PATCH net v2 2/2] sfc: Restrict PIO to 64-bit architectures Shradha Shah
2014-05-28 14:45   ` Sergei Shtylyov
2014-05-28  9:23 [PATCH net v2 0/2] sfc: Restrict PIO for 64bit arch in order to avoid data corruption Shradha Shah
2014-05-28  9:28 ` [PATCH net v2 1/2] sfc: use 64-bit writes for PIO Shradha Shah

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.