Date: Wed, 28 Jan 2009 12:46:31 +0100 From: Christoph Mallon <christoph.mallon@gmx.de> To: Channa <channa.kad@gmail.com> Cc: freebsd-current@freebsd.org Subject: Re: Jemalloc SEGV for 1MB chunk Message-ID: <49804597.6040303@gmx.de> In-Reply-To: <515c64960901280339m17fa9309v2e1bc3f55454ab@mail.gmail.com> References: <515c64960901280339m17fa9309v2e1bc3f55454ab@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
Channa schrieb:
> Hi All,
> I am using jemalloc.c source from FreeBSD-current source.
> When i allocate 1MB of memory using malloc() and use it as the below
> test shows
>
> #include <stdio.h>
> #include <stdlib.h>
> #include <string.h>
>
> int main()
> {
> int i;
> char *buf;
> size_t size = 1048576 ;
>
> buf = malloc(size);
> for (i = 0; i < 1048576; i++)
> buf[i] = 'a';
> printf("The length of buff is : %d\n",strlen(buf));
> free(buf);
> return 0;
> }
>
> When i try to call strlen(buf) SEGV is recived.
>
> This behaviour is seen when only for 1MB chunk if i allocate
> memory lesser than 1MB no issues noticed.
>
> Could anyone see similar problem?
> Is the above test wrong?
> Or some issue with huge memory allocation in jemalloc?
>
> Your response will be very helpful.
>
> Thanks & Regards,
> Channa
You did not NUL-terminate ('\0') the string.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?49804597.6040303>
