next-20141126 build failures in wd719x
From: arnd@arndb.de (Arnd Bergmann)
Date: 2014-11-26 17:41:15
Also in:
linux-scsi
On Wednesday 26 November 2014 17:26:06 Mark Brown wrote:
On Wed, Nov 26, 2014 at 02:03:14PM +0000, Build bot for Mark Brown wrote: The wd719x driver fails to build on at least arm and arm64 in today's -next since:quoted
arm64-allmodconfig ../drivers/scsi/wd719x.c:247:2: error: implicit declaration of function 'dma_cache_sync' [-Werror=implicit-function-declaration] arm-allmodconfig ../drivers/scsi/wd719x.c:247:2: error: implicit declaration of function 'dma_cache_sync' [-Werror=implicit-function-declaration]dma_cache_sync() is not available on these architectures. I can't immediately see something to depend on that'd exclude the driver from these architectures, the other users seem to all have architecture specific dependencies.
I think the use of dma_cache_sync in this driver is just a bug:
cmd->SCp.dma_handle = dma_map_single(&wd->pdev->dev, cmd->sense_buffer,
SCSI_SENSE_BUFFERSIZE, DMA_FROM_DEVICE);
dma_cache_sync(&wd->pdev->dev, cmd->sense_buffer,
SCSI_SENSE_BUFFERSIZE, DMA_FROM_DEVICE);
dma_cache_sync only makes sense with buffers allocated through
dma_alloc_noncoherent(), which this one is not. I suspect we can just
remove the call to dma_cache_sync here, in particular since the
buffer is passed to the device next, and dma_map_single has
already done all the necessary synchronization.
Arnd