pktgen: Fix kernel_thread() fail leak.
Subsystems (2)
PATCH 3/4 pktgen: Fix kernel_thread() fail leak.
Leak fix: free all the alocated resources if kernel_thread() call fails.
Signed-off-by Luiz Capitulino <[email protected]>
---
net/core/pktgen.c | 11 +++++++++-- 1 files changed, 9 insertions(+), 2 deletions(-)
59115e7981073430cfcaaaabcde20840ec926cca
net/core/pktgen.c +9 -2
@@ -3002,6 +3002,7 @@ static struct pktgen_thread *__init pktgstatic int __init pktgen_create_thread (const char *name,int cpu) { +int err;struct pktgen_thread *t =NULL ;struct proc_dir_entry *pe;
@@ -3040,9 +3041,15 @@ static int __init pktgen_create_thread(c t->removed =0 ; -if (kernel_thread ((void *)pktgen_thread_worker, (void *)t, -CLONE_FS |CLONE_FILES |CLONE_SIGHAND ) <0 ) + err =kernel_thread ((void *)pktgen_thread_worker, (void *)t, +CLONE_FS |CLONE_FILES |CLONE_SIGHAND ); +if (err <0 ) {printk ("pktgen: kernel_thread() failed for cpu %d\n" , t->cpu); +remove_proc_entry (t->name, pg_proc_dir); +list_del (&t->th_list); +kfree (t); +return err; + }return 0 ; }
Signature · 5 lines
1.1.5.g3480 -- Luiz Fernando N. Capitulino