[U-Boot] Need some help with a UBI memory allocation issue

Hedwin Koning hedwin.koning at gmail.com
Thu Nov 26 00:25:29 CET 2009


Hi,

I am interested in some thoughts, ideas from the uboot community with an 
issue I have with u-boot.
When I use the following sequence of commands:

    nand erase /partition1
    ubi part nand /partition1
    ubi create aVolume1
    nand erase /partition2
    ubi part nand /partition2
    ubi create aVolume2

When I execute "ubi part nand /partition2" uboot has a hangup. I was 
able to
trace is back to a call to kmem_cache_alloc in file wl.c in function 
ubi_wl_init_scan which never
returns. I did not yet had a closer look at what is happening in 
dlmalloc.c but one solution that
works is to set the minimum allocateble chunck to 64B. So for chunks 
smaller than 64B always 64B
is allocated.
The system we use uboot, the size of the allocatable memory region has 
to be more than 2MB (is now 4MB).
With 2MB or lower it simply doesn't work. Looking at how much is being 
allocated by UBI it is
not that supprising.

Is this an entirely unknown issue in uboot waiting in the dark to 
strike? or is it something I might
have done incorrectly, like a CONFIG I need to set or .. or ..

Oh yeah, I use the 2009.01 version, can't change that need to keep the 
customer happy but I frequently
check the latest uboot for any interesting update/sollution/bugfix.

Appreciate any comment/ideas on this.

Hedwin Koning


More information about the U-Boot mailing list