Re: [PATCH v2 1/4] device: provide devm_krealloc_array()
From: Jonathan Cameron <jic23@kernel.org>
Date: 2020-11-14 15:47:08
Also in:
linux-iio, lkml
On Mon, 2 Nov 2020 15:22:25 +0100 Bartosz Golaszewski [off-list ref] wrote:
From: Bartosz Golaszewski <redacted> When allocating an array of elements, users should check for multiplication overflow or preferably use one of the provided helpers like: devm_kmalloc_array(). This provides devm_krealloc_array() for users who want to reallocate managed arrays. Signed-off-by: Bartosz Golaszewski <redacted>
+CC Greg KH. As this is going into a very generic place I'd like a relevant ack. That file is a bit of a wild west for acks, but Greg seems most appropriate person. So Greg, any comments on this one? Thanks, Jonathan
quoted hunk ↗ jump to hunk
--- include/linux/device.h | 11 +++++++++++ 1 file changed, 11 insertions(+)diff --git a/include/linux/device.h b/include/linux/device.h index 5ed101be7b2e..e77203faea55 100644 --- a/include/linux/device.h +++ b/include/linux/device.h@@ -226,6 +226,17 @@ static inline void *devm_kmalloc_array(struct device *dev, return devm_kmalloc(dev, bytes, flags); } +static inline void * +devm_krealloc_array(struct device *dev, void *ptr, size_t new_n, + size_t new_size, gfp_t gfp) +{ + size_t bytes; + + if (unlikely(check_mul_overflow(new_n, new_size, &bytes))) + return NULL; + + return devm_krealloc(dev, ptr, bytes, gfp); +} static inline void *devm_kcalloc(struct device *dev, size_t n, size_t size, gfp_t flags) {
_______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel