netfilter: x_tables: xt_free_table_info() cleanup
kvfree() helper can make xt_free_table_info() much cleaner. Signed-off-by: Eric Dumazet <edumazet@google.com> Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
This commit is contained in:
Родитель
397304b52d
Коммит
f6b50824f7
|
@ -711,28 +711,15 @@ void xt_free_table_info(struct xt_table_info *info)
|
|||
{
|
||||
int cpu;
|
||||
|
||||
for_each_possible_cpu(cpu) {
|
||||
if (info->size <= PAGE_SIZE)
|
||||
kfree(info->entries[cpu]);
|
||||
else
|
||||
vfree(info->entries[cpu]);
|
||||
}
|
||||
for_each_possible_cpu(cpu)
|
||||
kvfree(info->entries[cpu]);
|
||||
|
||||
if (info->jumpstack != NULL) {
|
||||
if (sizeof(void *) * info->stacksize > PAGE_SIZE) {
|
||||
for_each_possible_cpu(cpu)
|
||||
vfree(info->jumpstack[cpu]);
|
||||
} else {
|
||||
for_each_possible_cpu(cpu)
|
||||
kfree(info->jumpstack[cpu]);
|
||||
}
|
||||
for_each_possible_cpu(cpu)
|
||||
kvfree(info->jumpstack[cpu]);
|
||||
kvfree(info->jumpstack);
|
||||
}
|
||||
|
||||
if (sizeof(void **) * nr_cpu_ids > PAGE_SIZE)
|
||||
vfree(info->jumpstack);
|
||||
else
|
||||
kfree(info->jumpstack);
|
||||
|
||||
free_percpu(info->stackptr);
|
||||
|
||||
kfree(info);
|
||||
|
|
Загрузка…
Ссылка в новой задаче