'struct fc_trace_flag_type' is just a few bytes long. There is no need to allocate such a structure with vmalloc. Using kmalloc instead. While at it, axe a useless test when freeing the memory. Signed-off-by: Christophe JAILLET <christophe.jaillet@xxxxxxxxxx> --- drivers/scsi/fnic/fnic_debugfs.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/drivers/scsi/fnic/fnic_debugfs.c b/drivers/scsi/fnic/fnic_debugfs.c index 13f7d88d6e57..8d6ce3470594 100644 --- a/drivers/scsi/fnic/fnic_debugfs.c +++ b/drivers/scsi/fnic/fnic_debugfs.c @@ -58,8 +58,7 @@ int fnic_debugfs_init(void) fnic_trace_debugfs_root); /* Allocate memory to structure */ - fc_trc_flag = (struct fc_trace_flag_type *) - vmalloc(sizeof(struct fc_trace_flag_type)); + fc_trc_flag = kmalloc(sizeof(*fc_trc_flag), GFP_KERNEL); if (fc_trc_flag) { fc_trc_flag->fc_row_file = 0; @@ -87,8 +86,7 @@ void fnic_debugfs_terminate(void) debugfs_remove(fnic_trace_debugfs_root); fnic_trace_debugfs_root = NULL; - if (fc_trc_flag) - vfree(fc_trc_flag); + kfree(fc_trc_flag); } /* -- 2.20.1