Patch: init priority fix for memory pools
Jonathan Larmour
jifl@eCosCentric.com
Wed Oct 24 16:20:00 GMT 2007
Ãyvind Harboe wrote:
> On 10/24/07, Jonathan Larmour <jifl@ecoscentric.com> wrote:
>
>>Ãyvind Harboe wrote:
>>
>>>On 10/24/07, Jonathan Larmour <jifl@ecoscentric.com> wrote:
>>>
>>>
>>>>Ãyvind Harboe wrote:
>>>>
>>>>
>>>>>Why was it CYG_INIT_LIBC?
>>>>>
>>>>>CYG_INIT_MEMALLOC seems like the right thing, e.g. jffs2 allocates
>>>>>memory and CYG_INIT_LIBC is after IO.
>>>>>
>>>>>I discovered this when working w/multiple heaps.
>>>>
>>>>Yes, I can't remember any rationale for doing it before CYG_INIT_LIBC
>>>>instead. Probably was just some old leftover. Applied, thanks.
>>>
>>>
>>>Ooops. I screwed up the first patch. The tcl script needs to be fixed as well.
>>
>>Done, albeit slightly differently.
>
>
> It's broken now. The problem is that it needs to be "before
> before"(-200), not "before" -100.
Oh, I didn't notice your patch kept it as CYGBLD_ATTRIB_INIT_BEFORE. It
should be CYGBLD_ATTRIB_INIT_PRI, as per below. Checked in.
Jifl
Index: src/malloc.cxx
===================================================================
RCS file:
/cvs/ecos/ecos/packages/services/memalloc/common/current/src/malloc.cxx,v
retrieving revision 1.6
diff -u -5 -p -r1.6 malloc.cxx
--- src/malloc.cxx 24 Oct 2007 12:42:38 -0000 1.6
+++ src/malloc.cxx 24 Oct 2007 16:17:48 -0000
@@ -84,11 +84,11 @@
cyg_uint8 cyg_memalloc_mallocpool_memory[
CYGNUM_MEMALLOC_FALLBACK_MALLOC_POOL_SIZE ] CYGBLD_ATTRIB_WEAK;
// the memory pool object itself
CYGCLS_MEMALLOC_MALLOC_IMPL cyg_memalloc_mallocpool
- CYGBLD_ATTRIB_INIT_BEFORE( CYG_INIT_MEMALLOC ) =
+ CYGBLD_ATTRIB_INIT_PRI( CYG_INIT_MEMALLOC ) =
CYGCLS_MEMALLOC_MALLOC_IMPL( cyg_memalloc_mallocpool_memory,
sizeof( cyg_memalloc_mallocpool_memory ) );
# define POOL cyg_memalloc_mallocpool
@@ -101,11 +101,11 @@ CYGCLS_MEMALLOC_MALLOC_IMPL cyg_memalloc
// multiple heaps
# include <cyg/memalloc/memjoin.hxx>
Cyg_Mempool_Joined<CYGCLS_MEMALLOC_MALLOC_IMPL> cyg_memalloc_mallocpool
- CYGBLD_ATTRIB_INIT_BEFORE( CYG_INIT_MEMALLOC ) =
+ CYGBLD_ATTRIB_INIT_PRI( CYG_INIT_MEMALLOC ) =
Cyg_Mempool_Joined<CYGCLS_MEMALLOC_MALLOC_IMPL>(
CYGMEM_HEAP_COUNT, cygmem_memalloc_heaps
);
# define POOL cyg_memalloc_mallocpool
--
eCosCentric Limited http://www.eCosCentric.com/ The eCos experts
Barnwell House, Barnwell Drive, Cambridge, UK. Tel: +44 1223 245571
Registered in England and Wales: Reg No 4422071.
------["The best things in life aren't things."]------ Opinions==mine
More information about the Ecos-patches
mailing list