Messages in this thread | | | Date | Mon, 2 Mar 2009 09:41:48 +0530 | From | Ankita Garg <> | Subject | Re: [PATCH] lkdtm: reduce stack size |
| |
Hi Frank,
On Sun, Mar 01, 2009 at 09:00:14PM +0100, Frank Seidel wrote: > From: Frank Seidel <frank@f-seidel.de> > > Reduce stack memory footprint of lkdtm > (recursive_loop). From 1024 bytes on i386 down > to <10. >
The intention here is infact to trigger a stack overflow. This module is used to test kernel dumping mechanism like kdump. So the expectation is that the kernel will dump as soon as the stack overflows.
> Signed-off-by: Frank Seidel <frank@f-seidel.de> > --- > drivers/misc/lkdtm.c | 16 +++++++++++++--- > 1 file changed, 13 insertions(+), 3 deletions(-) > > --- a/drivers/misc/lkdtm.c > +++ b/drivers/misc/lkdtm.c > @@ -225,14 +225,24 @@ static int lkdtm_parse_commandline(void) > > static int recursive_loop(int a) > { > - char buf[1024]; > + char *buf; > + int ret; > + > + buf = kmalloc(1024, GFP_KERNEL); > + if (!buf) { > + printk(KERN_ERR "lkdtm : couldn't allocate buffer\n"); > + return -ENOMEM; > + } > > memset(buf,0xFF,1024); > recur_count--; > if (!recur_count) > - return 0; > + ret = 0; > else > - return recursive_loop(a); > + ret = recursive_loop(a); > + > + kfree(buf); > + return ret; > } > > void lkdtm_handler(void)
-- Regards, Ankita Garg (ankita@in.ibm.com) Linux Technology Center IBM India Systems & Technology Labs, Bangalore, India
| |