it switch
memcpy_fromio() to __read32_copy().
Cc: sta...@vger.kernel.org
Signed-off-by: Huacai Chen <che...@lemote.com>
---
drivers/scsi/lpfc/lpfc_compat.h | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/scsi/lpfc/lpfc_compat.h b/drivers/scsi/lpfc/lpfc_compat
expander.
Fix this by ensuring that the rps_resp buffer is cacheline aligned.
This issue is similar to that fixed by Commit 84bda12af31f93 ("libata:
align ap->sector_buf") and Commit 4ee34ea3a12396f35b26 ("libata: Align
ata_device's id on a cacheline").
Cc: sta...@vger.kernel.or
(no writeback) will cause data corruption.
Signed-off-by: Huacai Chen <che...@lemote.com>
---
drivers/scsi/scsi_lib.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/drivers/scsi/scsi_lib.c b/drivers/scsi/scsi_lib.c
index 1cbc497..cc4ac97 100644
--- a/drivers/scsi/scsi_lib.c
Currently, MIPS is an architecture which support coherent & noncoherent
devices co-exist. So implement get_cache_alignment() function pointer
in 'struct dma_map_ops' to return different dma alignments.
Signed-off-by: Huacai Chen <che...@lemote.com>
---
arch/mips/cavium-octeon/dm
dt <b...@kernel.crashing.org>
Cc: Ivan Mikhaylov <i...@ru.ibm.com>
Cc: Tariq Toukan <tar...@mellanox.com>
Cc: Andy Gross <agr...@codeaurora.org>
Cc: Robert Baldyga <r.bald...@hackerion.com>
Acked-by: Mark Greer <mgr...@animalcreek.com>
Acked-by: Marek Szypr
(no writeback) will cause data corruption.
Cc: sta...@vger.kernel.org
Signed-off-by: Huacai Chen <che...@lemote.com>
---
drivers/scsi/scsi_lib.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/drivers/scsi/scsi_lib.c b/drivers/scsi/scsi_lib.c
index 9cf6a80..19abc2e
c: Robert Baldyga <r.bald...@hackerion.com>
Cc: Marek Szyprowski <m.szyprow...@samsung.com>
Signed-off-by: Huacai Chen <che...@lemote.com>
---
drivers/infiniband/hw/mthca/mthca_main.c | 2 +-
drivers/media/v4l2-core/videobuf2-dma-contig.c | 2 +-
drivers/net/ethernet/broadc
expander.
Fix this by ensuring that the rps_resp buffer is cacheline aligned.
This issue is similar to that fixed by Commit 84bda12af31f93 ("libata:
align ap->sector_buf") and Commit 4ee34ea3a12396f35b26 ("libata: Align
ata_device's id on a cacheline").
Cc: sta...@vger.kernel.or
Currently, MIPS is an architecture which support coherent & noncoherent
devices co-exist. So implement get_cache_alignment() function pointer
in 'struct dma_map_ops' to return different dma alignments.
Cc: sta...@vger.kernel.org
Signed-off-by: Huacai Chen <che...@lemote.com>
---
arch/m
Currently, MIPS is an architecture which support coherent & noncoherent
devices co-exist. So implement get_cache_alignment() function pointer
in 'struct dma_map_ops' to return different dma alignments.
Cc: sta...@vger.kernel.org
Signed-off-by: Huacai Chen <che...@lemote.com>
---
arch/m
, cache_invalidate (no writeback) will cause data corruption.
Cc: sta...@vger.kernel.org
Signed-off-by: Huacai Chen <che...@lemote.com>
---
drivers/scsi/libsas/sas_expander.c | 93 +++---
1 file changed, 57 insertions(+), 36 deletions(-)
diff --git a/drivers/scsi/
(no writeback) will cause data corruption.
Cc: sta...@vger.kernel.org
Signed-off-by: Huacai Chen <che...@lemote.com>
---
drivers/scsi/scsi_lib.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/drivers/scsi/scsi_lib.c b/drivers/scsi/scsi_lib.c
index 9cf6a80..19abc2e
, cache_invalidate (no writeback) will cause
data corruption.
Cc: sta...@vger.kernel.org
Signed-off-by: Huacai Chen <che...@lemote.com>
---
drivers/ata/libata-core.c | 15 +--
1 file changed, 13 insertions(+), 2 deletions(-)
diff --git a/drivers/ata/libata-core.c b/drivers/ata/libata-
k.com>
Cc: Robert Baldyga <r.bald...@hackerion.com>
Cc: Marek Szyprowski <m.szyprow...@samsung.com>
Signed-off-by: Huacai Chen <che...@lemote.com>
---
drivers/infiniband/hw/mthca/mthca_main.c | 2 +-
drivers/media/v4l2-core/videobuf2-dma-contig.c | 2 +-
drivers/net/eth
)
Step 3, dma_from_device
Step 4, dma_unmap_single
If a DMA buffer and a kernel structure share a same cache line, and if
the kernel structure has dirty data, cache_invalidate (no writeback)
will cause data lost.
Cc: sta...@vger.kernel.org
Signed-off-by: Huacai Chen <che...@lemote.
add a
new get_cache_alignment() function pointer in 'struct dma_map_ops' as a
generic solution.
For compatibility (always return ARCH_DMA_MINALIGN), make all existing
callers pass a NULL dev argument to dma_get_cache_alignment().
Cc: sta...@vger.kernel.org
Signed-off-by: Huacai Chen <che...@lem
)
Step 3, dma_from_device
Step 4, dma_unmap_single
If a DMA buffer and a kernel structure share a same cache line, and if
the kernel structure has dirty data, cache_invalidate (no writeback)
will cause data lost.
Cc: sta...@vger.kernel.org
Signed-off-by: Huacai Chen <che...@lemote.
Make dma_get_cache_alignment() to accept a 'dev' argument. As a result,
it can return different alignments due to different devices' I/O cache
coherency. For compatibility, make all existing callers pass a NULL dev
argument.
Cc: sta...@vger.kernel.org
Signed-off-by: Huacai Chen <che...@lemote.
We will use device_is_coherent() as a helper function, which will be
used in the next patch.
There is a MIPS-specific plat_device_is_coherent(), but we need a more
generic solution, so add and use a new function pointer in dma_map_ops.
Cc: sta...@vger.kernel.org
Signed-off-by: Huacai Chen <
)
Step 3, dma_from_device
Step 4, dma_unmap_single
If a DMA buffer and a kernel structure share a same cache line, and if
the kernel structure has dirty data, cache_invalidate (no writeback)
will cause data lost.
Cc: sta...@vger.kernel.org
Signed-off-by: Huacai Chen <che...@lemote.
)
Step 3, dma_from_device
Step 4, dma_unmap_single
If a DMA buffer and a kernel structure share a same cache line, and if
the kernel structure has dirty data, cache_invalidate (no writeback)
will cause data lost.
Cc: sta...@vger.kernel.org
Signed-off-by: Huacai Chen <che...@lemote.
In non-coherent DMA mode, kernel uses cache flushing operations to
maintain I/O coherency, so scsi's block queue should be aligned to
ARCH_DMA_MINALIGN.
Cc: sta...@vger.kernel.org
Signed-off-by: Huacai Chen <che...@lemote.com>
---
drivers/scsi/scsi_lib.c | 9 ++---
1 file chan
In non-coherent DMA mode, kernel uses cache flushing operations to
maintain I/O coherency, so scsi's block queue should be aligned to
ARCH_DMA_MINALIGN.
Cc: sta...@vger.kernel.org
Signed-off-by: Huacai Chen <che...@lemote.com>
---
drivers/scsi/scsi_lib.c | 9 ++---
1 file chan
In non-coherent DMA mode, kernel uses cache flushing operations to
maintain I/O coherency, so scsi's block queue should be aligned to
ARCH_DMA_MINALIGN.
Cc: sta...@vger.kernel.org
Signed-off-by: Huacai Chen <che...@lemote.com>
---
drivers/scsi/scsi_lib.c | 9 ++---
1 file chan
24 matches
Mail list logo