Cristian Ionescu-Idbohrn wrote:
> On Wed, 20 Feb 2008, Denys Vlasenko wrote:
>
>> And if it still fails, make both alloc() functions zero out
>> allocated block:
>>
>> static void *
>> ckmalloc(size_t nbytes)
>> {
>> - return ckrealloc(NULL, nbytes);
>> + return memset(ckrealloc(NULL, nbytes), 0, nbytes);
>> }
>>
>> static void *
>> stalloc(size_t nbytes)
>> {
>> ...
>> g_stacknleft -= aligned;
>> + memset(p, 0, nbytes);
>> return p;
>> }
>>
>> If this helps, then it's only a matter of finding a ckmalloc/stalloc
>> which really needs to be ckzalloc/stzalloc.
>>
>
> Sorry Denys :(
> I've no access to my embedded system now and the comming 2+ weeks.
> Holidays ;-)
>
> Maybe a 16Mb RAM qemu could help nail down these problems, in absence of a
> low memory embeded system, as it seems one of the factors that provokes
> the errors may be low memory, but I'm just guessing.
What about initializing the memory to non-zero values? That should help
to find uninitialized references.
static void *
ckmalloc(size_t nbytes)
{
- return ckrealloc(NULL, nbytes);
+ return memset(ckrealloc(NULL, nbytes), 0xDC, nbytes);
}
static void *
stalloc(size_t nbytes)
{
...
g_stacknleft -= aligned;
+ memset(p, 0xDC, nbytes);
return p;
}
Regards
Ralf Friedl
_______________________________________________
busybox mailing list
[email protected]
http://busybox.net/cgi-bin/mailman/listinfo/busybox