Skip to contentSkip to conversation

dmaengine: make dma_submit_error() return an error code

PATCH New Dan Carpenter 1 participant 1 message Aug 10, 2013

Subsystems (2)
lore
Share & tools
lore
#0 lore raw

PATCH 1/1 dmaengine: make dma_submit_error() return an error code

The problem here is that the dma_xfer() functions in drivers/ata/pata_arasan_cf.c and drivers/mtd/nand/fsmc_nand.c expect dma_submit_error() to return an error code so they return 1 when they intended to return a negative.

So far as I can tell, none of the ->tx_submit() functions ever do return error codes so this patch should have no effect in the current code.

I also changed it from a define to an inline.

include/linux/dmaengine.h +4 -1
index 5692bc3..16321fb 100644
@@ -38,7 +38,10 @@ typedef s32 dma_cookie_t;
 #define DMA_MIN_COOKIE	1
 #define DMA_MAX_COOKIE	INT_MAX
 
-#define dma_submit_error(cookie) ((cookie) < 0 ? 1 : 0)
+static inline int dma_submit_error(dma_cookie_t cookie)
+{
+	return cookie < 0 ? cookie : 0;
+}
 
 /**
  * enum dma_status - DMA transaction status