Message ID | 1362920779-25925-1-git-send-email-alex.grad@gmail.com (mailing list archive) |
---|---|
State | Accepted, archived |
Commit | c0b52c143ee46c5922b5aa5c48c00145b5296441 |
Delegated to: | Michael Ellerman |
Headers | show |
On Sun, Mar 10, 2013 at 4:10 PM, Pekka Enberg <penberg@kernel.org> wrote: > On Sun, Mar 10, 2013 at 3:06 PM, Alex Grad <alex.grad@gmail.com> wrote: >> Signed-off-by: Alex Grad <alex.grad@gmail.com> >> --- >> arch/powerpc/kernel/kgdb.c | 2 +- >> 1 file changed, 1 insertion(+), 1 deletion(-) >> >> diff --git a/arch/powerpc/kernel/kgdb.c b/arch/powerpc/kernel/kgdb.c >> index 5ca82cd..c1eef24 100644 >> --- a/arch/powerpc/kernel/kgdb.c >> +++ b/arch/powerpc/kernel/kgdb.c >> @@ -159,7 +159,7 @@ static int kgdb_singlestep(struct pt_regs *regs) >> if (user_mode(regs)) >> return 0; >> >> - backup_current_thread_info = (struct thread_info *)kmalloc(sizeof(struct thread_info), GFP_KERNEL); >> + backup_current_thread_info = kmalloc(sizeof(struct thread_info), GFP_KERNEL); > > Looks good to me. > > There's two additional problems in the kgdb_singlestep() function: it > doesn't check if the kmalloc() call fails nor does it kfree() the > allocated memory. Hi Pekka, Indeed there is no check if kmalloc() fails. This should be fixed. Anyhow, commit fefd9e6f powerpc: kernel/kgdb.c: Fix memory leakage fixed the problem with kfree. thanks, Daniel.
diff --git a/arch/powerpc/kernel/kgdb.c b/arch/powerpc/kernel/kgdb.c index 5ca82cd..c1eef24 100644 --- a/arch/powerpc/kernel/kgdb.c +++ b/arch/powerpc/kernel/kgdb.c @@ -159,7 +159,7 @@ static int kgdb_singlestep(struct pt_regs *regs) if (user_mode(regs)) return 0; - backup_current_thread_info = (struct thread_info *)kmalloc(sizeof(struct thread_info), GFP_KERNEL); + backup_current_thread_info = kmalloc(sizeof(struct thread_info), GFP_KERNEL); /* * On Book E and perhaps other processors, singlestep is handled on * the critical exception stack. This causes current_thread_info()
Signed-off-by: Alex Grad <alex.grad@gmail.com> --- arch/powerpc/kernel/kgdb.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)