Skip to content

Commit

Permalink
dma-mapping: return an error code from dma_mapping_error
Browse files Browse the repository at this point in the history
Currently dma_mapping_error returns a boolean as int, with 1 meaning
error.  This is rather unusual and many callers have to convert it to
errno value.  The callers are highly inconsistent with error codes
ranging from -ENOMEM over -EIO, -EINVAL and -EFAULT ranging to -EAGAIN.
Return -ENOMEM which seems to be what the largest number of callers
convert it to, and which also matches the typical error case where
we are out of resources.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Acked-by: Russell King <rmk+kernel@armlinux.org.uk>
Acked-by: Linus Torvalds <torvalds@linux-foundation.org>
  • Loading branch information
Christoph Hellwig committed Dec 6, 2018
1 parent 68c9ac1 commit b14b9d2
Showing 1 changed file with 1 addition and 1 deletion.
2 changes: 1 addition & 1 deletion include/linux/dma-mapping.h
Original file line number Diff line number Diff line change
Expand Up @@ -582,7 +582,7 @@ static inline int dma_mapping_error(struct device *dev, dma_addr_t dma_addr)
debug_dma_mapping_error(dev, dma_addr);

if (dma_addr == DMA_MAPPING_ERROR)
return 1;
return -ENOMEM;
return 0;
}

Expand Down

0 comments on commit b14b9d2

Please sign in to comment.