Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 2 Nov 1998 20:56:38 -0800 (PST)
From:      Julian Elischer <julian@whistle.com>
To:        David Greenman <dg@root.com>
Cc:        "Larry S. Lile" <lile@stdio.com>, hackers@FreeBSD.ORG
Subject:   Re: "panic: free: multiple frees" VM bug? (long) 
Message-ID:  <Pine.BSF.3.95.981102205545.404A-100000@current1.whistle.com>
In-Reply-To: <199811030349.TAA09485@implode.root.com>

next in thread | previous in thread | raw e-mail | index | archive | help
I also doubt if you really want to free them either..

possibly keep a pool of them and recycle them in your own free list.


On Mon, 2 Nov 1998, David Greenman wrote:

> >I am working on a token ring driver and I cannot seem to find
> >out why this is happening.  I contigmalloc buffers for tranmsitting
> >frames and then free them later when they have been transmitted.
> >I have to use contigmalloc in order to get buffers below the
> >16M mark for dma.
> >
> >Anyone see what is wrong? Should I not do this? Or have I
> >stumbled over a vm bug?
> >
> >It looks like a vm bug to me, but I have been wrong before.
> 
>    contigmalloc() isn't just a special version of malloc() that allocates
> contiguous pages. It's actually a special allocator that has nothing to
> do with malloc() and it is thus entirely incorrect to call free() with
> a pointer to something that was allocated by contigmalloc(). The proper
> way to free stuff that was allocated with contigmalloc() is with kmem_free().
>    contigmalloc() is poorly named and should never have been brought into
> the kernel that way.
> 
> -DG
> 
> David Greenman
> Co-founder/Principal Architect, The FreeBSD Project
> 
> To Unsubscribe: send mail to majordomo@FreeBSD.org
> with "unsubscribe freebsd-hackers" in the body of the message
> 


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-hackers" in the body of the message



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.BSF.3.95.981102205545.404A-100000>