瀏覽代碼

staging: unisys: visorutil: Use kzalloc instead of kmalloc with memset

Fix coccinelle warnings of better allocation by using kzalloc.
In these cases, kzalloc is preferred, as kmalloc may fail if it does not find
contiguous memory.

Signed-off-by: Iulia Manda <iulia.manda21@gmail.com>
Acked-by: Luis R. Rodriguez <mcgrof@do-not-panic.com>
Signed-off-by: Peter P Waskiewicz Jr <peter.p.waskiewicz.jr@intel.com>
Iulia Manda 11 年之前
父節點
當前提交
56116b2b09
共有 1 個文件被更改,包括 8 次插入16 次删除
  1. 8 16
      drivers/staging/unisys/visorutil/procobjecttree.c

+ 8 - 16
drivers/staging/unisys/visorutil/procobjecttree.c

@@ -140,10 +140,9 @@ MYPROCTYPE *visor_proc_CreateType(struct proc_dir_entry *procDirRoot,
 		FAIL("procDirRoot cannot be NULL!", 0);
 	if (name == NULL || name[0] == NULL)
 		FAIL("name must contain at least 1 node name!", 0);
-	type = kmalloc(sizeof(MYPROCTYPE), GFP_KERNEL|__GFP_NORETRY);
+	type = kzalloc(sizeof(MYPROCTYPE), GFP_KERNEL | __GFP_NORETRY);
 	if (type == NULL)
 		FAIL("out of memory", 0);
-	memset(type, 0, sizeof(MYPROCTYPE));
 	type->name = name;
 	type->propertyNames = propertyNames;
 	type->nProperties = 0;
@@ -155,13 +154,11 @@ MYPROCTYPE *visor_proc_CreateType(struct proc_dir_entry *procDirRoot,
 			type->nProperties++;
 	while (type->name[type->nNames] != NULL)
 		type->nNames++;
-	type->procDirs = kmalloc((type->nNames+1)*
+	type->procDirs = kzalloc((type->nNames + 1) *
 				 sizeof(struct proc_dir_entry *),
-				 GFP_KERNEL|__GFP_NORETRY);
+				 GFP_KERNEL | __GFP_NORETRY);
 	if (type->procDirs == NULL)
 		FAIL("out of memory", 0);
-	memset(type->procDirs, 0, (type->nNames + 1) *
-	       sizeof(struct proc_dir_entry *));
 	parent = procDirRoot;
 	for (i = 0; i < type->nNames; i++) {
 		type->procDirs[i] = createProcDir(type->name[i], parent);
@@ -218,10 +215,9 @@ MYPROCOBJECT *visor_proc_CreateObject(MYPROCTYPE *type,
 
 	if (type == NULL)
 		FAIL("type cannot be NULL", 0);
-	obj = kmalloc(sizeof(MYPROCOBJECT), GFP_KERNEL | __GFP_NORETRY);
+	obj = kzalloc(sizeof(MYPROCOBJECT), GFP_KERNEL | __GFP_NORETRY);
 	if (obj == NULL)
 		FAIL("out of memory", 0);
-	memset(obj, 0, sizeof(MYPROCOBJECT));
 	obj->type = type;
 	obj->context = context;
 	if (name == NULL) {
@@ -240,19 +236,15 @@ MYPROCOBJECT *visor_proc_CreateObject(MYPROCTYPE *type,
 			RETPTR(NULL);
 	}
 	obj->procDirPropertyContexts =
-		kmalloc((type->nProperties+1)*sizeof(PROCDIRENTRYCONTEXT),
-			GFP_KERNEL|__GFP_NORETRY);
+		kzalloc((type->nProperties + 1) * sizeof(PROCDIRENTRYCONTEXT),
+			GFP_KERNEL | __GFP_NORETRY);
 	if (obj->procDirPropertyContexts == NULL)
 		FAIL("out of memory", 0);
-	memset(obj->procDirPropertyContexts, 0,
-	       (type->nProperties+1)*sizeof(PROCDIRENTRYCONTEXT));
 	obj->procDirProperties =
-		kmalloc((type->nProperties+1) * sizeof(struct proc_dir_entry *),
-			GFP_KERNEL|__GFP_NORETRY);
+		kzalloc((type->nProperties + 1) * sizeof(struct proc_dir_entry *),
+			GFP_KERNEL | __GFP_NORETRY);
 	if (obj->procDirProperties == NULL)
 		FAIL("out of memory", 0);
-	memset(obj->procDirProperties, 0,
-	       (type->nProperties+1) * sizeof(struct proc_dir_entry *));
 	for (i = 0; i < type->nProperties; i++) {
 		obj->procDirPropertyContexts[i].procObject = obj;
 		obj->procDirPropertyContexts[i].propertyIndex = i;