Malloc bug?

William Blew wblew at home.com
Thu Jul 20 02:30:23 EST 2000


On Tue, 18 Jul 2000, David A. Gatwood wrote:

Anybody know here man page patches are submitted? After all, if the
man page is incorrect, an easy fix is to update it :).

BTW: David, thanks for the info.

> On Tue, 18 Jul 2000, Nathan Ingersoll wrote:
>
> > I've been working on a GTK program for a while now, and I've been
> > experiencing segfaults within malloc. I was under the impression that
> > malloc should always return successfully (at least that's what the man
> > page says).
>
>
> Sounds like the man page is wrong.  :-)  Malloc returns NULL if:
>
> 1.	the machine's virtual memory is exhausted
> 2.	the process's maximum virtual memory (set by ulimit) is exhausted
> 3.	the process's virtual memory has been hosed.
>
> There may be other cases, but I can't think of them, if there are.  The
> first two are fairly trivial, and shouldn't happen unless you're
> allocating in an infinite loop or something.
>
> There are four ways to get #3 that I can think of, probably more, but
> these are the first ones that come to mind:
>
> a.	call free() on an unitialized pointer (containing random data).
> b.	call free() twice on the same memory region.
> c.	call free() on the middle of a malloc'ed region.
> d.	call free() on a variable allocated by something other than
> 	malloc, e.g. a stack variable (in a function or a function call),
> 	a static variable (or any global variable), or a region allocated
> 	by the C++ new function.
>
> Anyway, you should always check the return value of malloc.  :-)
>
>
> > Any ideas what may be causing this? I don't know if this has
> > anything to do with it, but the kernel I was using generated lots of
> > vm_do_try_free_pages failed error logs but not necessarily during program
> > execution.
>
> No idea about that.  The earlier points are machine-independent.  The
> above looks like it's specific to the PPC monolithic kernel and/or GTK,
> neither of which I do much with.
>
>
> David
>
> ---------------------------------------------------------------------
> A brief Haiku:
>
> Microsoft is bad.
> It seems secure at first glance.
> Then you read your mail.
>
>
>

--
William Blew, wblew at home.com
Gamer by Choice, Geek by Birth


** Sent via the linuxppc-dev mail list. See http://lists.linuxppc.org/





More information about the Linuxppc-dev mailing list