[dm-devel] [patch] dm-cache-target: check for allocation failure
Dan Carpenter
dan.carpenter at oracle.com
Fri Mar 1 20:26:41 UTC 2013
The allocation here isn't checked. I changed it to using kcalloc()
as a cleanup. It adds integer overflow checking as well which makes
the code easier to audit.
Signed-off-by: Dan Carpenter <dan.carpenter at oracle.com>
---
I expect that kbuild will complain about this soon?
diff --git a/drivers/md/dm-cache-target.c b/drivers/md/dm-cache-target.c
index 908d554..40753b4 100644
--- a/drivers/md/dm-cache-target.c
+++ b/drivers/md/dm-cache-target.c
@@ -1957,8 +1957,11 @@ bad:
static int copy_ctr_args(struct cache *cache, int argc, const char **argv)
{
unsigned i;
- const char **copy = kzalloc(sizeof(*copy) * argc, GFP_KERNEL);
+ const char **copy;
+ copy = kcalloc(argc, sizeof(*copy), GFP_KERNEL);
+ if (!copy)
+ return -ENOMEM;
for (i = 0; i < argc; i++) {
copy[i] = kstrdup(argv[i], GFP_KERNEL);
if (!copy[i]) {
More information about the dm-devel
mailing list