summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRob Herring <robh@kernel.org>2017-01-16 21:28:39 +0100
committerRob Herring <robh@kernel.org>2017-03-22 15:01:11 +0100
commitbcf54d5385abaea9c8026aae6f4eeb348671a52d (patch)
treef3ddf2d76f83693039f76426e8ed030a7d4b3258
parentDocumentation: devicetree: move trivial-devices out of I2C realm (diff)
downloadlinux-bcf54d5385abaea9c8026aae6f4eeb348671a52d.tar.xz
linux-bcf54d5385abaea9c8026aae6f4eeb348671a52d.zip
of: fix of_device_get_modalias returned length when truncating buffers
If the length of the modalias is greater than the buffer size, then the modalias is truncated. However the untruncated length is returned which will cause an error. Fix this to return the truncated length. If an error in the case was desired, then then we should just return -ENOMEM. The reality is no device will ever have 4KB of compatible strings to hit this case. Signed-off-by: Rob Herring <robh@kernel.org> Cc: Frank Rowand <frowand.list@gmail.com>
-rw-r--r--drivers/of/device.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/of/device.c b/drivers/of/device.c
index b1e6bebda3f3..210432a3c4ec 100644
--- a/drivers/of/device.c
+++ b/drivers/of/device.c
@@ -223,7 +223,7 @@ ssize_t of_device_get_modalias(struct device *dev, char *str, ssize_t len)
str[i] = '_';
}
- return tsize;
+ return repend;
}
EXPORT_SYMBOL_GPL(of_device_get_modalias);