[dm-devel] [PATCH] dm: ioctl: prevent double freeing

Sudip Mukherjee sudipm.mukherjee at gmail.com
Fri Sep 4 11:22:39 UTC 2015


DM_PARAMS_KMALLOC and DM_PARAMS_VMALLOC should never be set together in
param_flags. We are setting these flags while allocating so we know that
there is almost no chance of having these two set together but still we
can have some additional safety.

Signed-off-by: Sudip Mukherjee <sudip at vectorindia.org>
---
 drivers/md/dm-ioctl.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/md/dm-ioctl.c b/drivers/md/dm-ioctl.c
index 80a4395..aaad74e 100644
--- a/drivers/md/dm-ioctl.c
+++ b/drivers/md/dm-ioctl.c
@@ -1680,7 +1680,7 @@ static void free_params(struct dm_ioctl *param, size_t param_size, int param_fla
 
 	if (param_flags & DM_PARAMS_KMALLOC)
 		kfree(param);
-	if (param_flags & DM_PARAMS_VMALLOC)
+	else if (param_flags & DM_PARAMS_VMALLOC)
 		vfree(param);
 }
 
-- 
1.9.1




More information about the dm-devel mailing list