On Tue, Nov 3, 2020 at 5:14 AM Joe Perches joe@perches.com wrote:
On Mon, 2020-11-02 at 16:20 +0100, Bartosz Golaszewski wrote:
From: Bartosz Golaszewski bgolaszewski@baylibre.com
Andy brought to my attention the fact that users allocating an array of equally sized elements should check if the size multiplication doesn't overflow. This is why we have helpers like kmalloc_array().
However we don't have krealloc_array() equivalent and there are many users who do their own multiplication when calling krealloc() for arrays.
This series provides krealloc_array() and uses it in a couple places.
My concern about this is a possible assumption that __GFP_ZERO will work, and as far as I know, it will not.
Yeah so I had this concern for devm_krealloc() and even sent a patch that extended it to honor __GFP_ZERO before I noticed that regular krealloc() silently ignores __GFP_ZERO. I'm not sure if this is on purpose. Maybe we should either make krealloc() honor __GFP_ZERO or explicitly state in its documentation that it ignores it?
This concern isn't really related to this patch as such - it's more of a general krealloc() inconsistency.
Bartosz