mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-12-18 18:26:44 +07:00
iwlwifi: dbg_ini: use vzalloc to allocate dumping memory regions
During dump flow, the driver allocates spaces to store the memory regions that will be included in the dump. These regions can be very large so in order to avoid allocation failure, use vzalloc instead. The kmalloc uses GFP_KERNEL and the driver does not make any use of the fact that the memory is contiguous so the same functionality is maintained. Signed-off-by: Shahar S Matityahu <shahar.s.matityahu@intel.com> Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
This commit is contained in:
parent
3b445ed9b7
commit
6abe1e2e39
@ -1846,7 +1846,7 @@ static u32 iwl_dump_ini_mem(struct iwl_fw_runtime *fwrt, struct list_head *list,
|
||||
if (!size)
|
||||
return 0;
|
||||
|
||||
entry = kmalloc(sizeof(*entry) + sizeof(*tlv) + size, GFP_KERNEL);
|
||||
entry = vzalloc(sizeof(*entry) + sizeof(*tlv) + size);
|
||||
if (!entry)
|
||||
return 0;
|
||||
|
||||
@ -1892,7 +1892,7 @@ static u32 iwl_dump_ini_mem(struct iwl_fw_runtime *fwrt, struct list_head *list,
|
||||
return entry->size;
|
||||
|
||||
out_err:
|
||||
kfree(entry);
|
||||
vfree(entry);
|
||||
|
||||
return 0;
|
||||
}
|
||||
@ -1914,7 +1914,7 @@ static u32 iwl_dump_ini_info(struct iwl_fw_runtime *fwrt,
|
||||
num_of_cfg_names++;
|
||||
}
|
||||
|
||||
entry = kmalloc(sizeof(*entry) + size, GFP_KERNEL);
|
||||
entry = vzalloc(sizeof(*entry) + size);
|
||||
if (!entry)
|
||||
return 0;
|
||||
|
||||
@ -2121,7 +2121,7 @@ static u32 iwl_dump_ini_file_gen(struct iwl_fw_runtime *fwrt,
|
||||
!le64_to_cpu(trigger->regions_mask))
|
||||
return 0;
|
||||
|
||||
entry = kmalloc(sizeof(*entry) + sizeof(*hdr), GFP_KERNEL);
|
||||
entry = vzalloc(sizeof(*entry) + sizeof(*hdr));
|
||||
if (!entry)
|
||||
return 0;
|
||||
|
||||
@ -2129,7 +2129,7 @@ static u32 iwl_dump_ini_file_gen(struct iwl_fw_runtime *fwrt,
|
||||
|
||||
size = iwl_dump_ini_trigger(fwrt, dump_data, list);
|
||||
if (!size) {
|
||||
kfree(entry);
|
||||
vfree(entry);
|
||||
return 0;
|
||||
}
|
||||
|
||||
@ -2195,7 +2195,7 @@ static void iwl_dump_ini_list_free(struct list_head *list)
|
||||
list_entry(list->next, typeof(*entry), list);
|
||||
|
||||
list_del(&entry->list);
|
||||
kfree(entry);
|
||||
vfree(entry);
|
||||
}
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user