File tree Expand file tree Collapse file tree 1 file changed +7
-7
lines changed
drivers/platform/x86/intel Expand file tree Collapse file tree 1 file changed +7
-7
lines changed Original file line number Diff line number Diff line change @@ -209,14 +209,14 @@ static int tpmi_create_device(struct intel_tpmi_info *tpmi_info,
209
209
if (!name )
210
210
return - EOPNOTSUPP ;
211
211
212
- feature_vsec_dev = kzalloc ( sizeof (* feature_vsec_dev ), GFP_KERNEL );
213
- if (!feature_vsec_dev )
212
+ res = kcalloc ( pfs -> pfs_header . num_entries , sizeof (* res ), GFP_KERNEL );
213
+ if (!res )
214
214
return - ENOMEM ;
215
215
216
- res = kcalloc ( pfs -> pfs_header . num_entries , sizeof (* res ), GFP_KERNEL );
217
- if (!res ) {
216
+ feature_vsec_dev = kzalloc ( sizeof (* feature_vsec_dev ), GFP_KERNEL );
217
+ if (!feature_vsec_dev ) {
218
218
ret = - ENOMEM ;
219
- goto free_vsec ;
219
+ goto free_res ;
220
220
}
221
221
222
222
snprintf (feature_id_name , sizeof (feature_id_name ), "tpmi-%s" , name );
@@ -239,6 +239,8 @@ static int tpmi_create_device(struct intel_tpmi_info *tpmi_info,
239
239
/*
240
240
* intel_vsec_add_aux() is resource managed, no explicit
241
241
* delete is required on error or on module unload.
242
+ * feature_vsec_dev memory is also freed as part of device
243
+ * delete.
242
244
*/
243
245
ret = intel_vsec_add_aux (vsec_dev -> pcidev , & vsec_dev -> auxdev .dev ,
244
246
feature_vsec_dev , feature_id_name );
@@ -249,8 +251,6 @@ static int tpmi_create_device(struct intel_tpmi_info *tpmi_info,
249
251
250
252
free_res :
251
253
kfree (res );
252
- free_vsec :
253
- kfree (feature_vsec_dev );
254
254
255
255
return ret ;
256
256
}
You can’t perform that action at this time.
0 commit comments