Subversion Repositories freemyipod

Rev

Rev 565 | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 565 Rev 568
Line 4... Line 4...
4
#include <stddef.h>
4
#include <stddef.h>
5
#include "../include/stdio.h"
5
#include "../include/stdio.h"
6
#include "../include/stdlib.h"
6
#include "../include/stdlib.h"
7
#include "../include/string.h"
7
#include "../include/string.h"
8
#include "../../console.h"
8
#include "../../console.h"
-
 
9
#include "../../thread.h"
9
 
10
 
10
#include "tlsf.h"
11
#include "tlsf.h"
11
#include "tlsfbits.h"
12
#include "tlsfbits.h"
12
 
13
 
13
/*
14
/*
Line 712... Line 713...
712
 
713
 
713
#undef tlsf_insist
714
#undef tlsf_insist
714
 
715
 
715
static void default_walker(void* ptr, size_t size, int used, void* user)
716
static void default_walker(void* ptr, size_t size, int used, void* user)
716
{
717
{
-
 
718
    if (used)
-
 
719
    {
-
 
720
        struct scheduler_thread* owner = *((struct scheduler_thread**)(ptr + size - 4));
717
    if (used) cprintf((int)user, "%08X: %08X+8 bytes owned by %08X\n", ptr,
721
        cprintf((int)user, "%08X: %08X+8 bytes owned by %08X%s\n", ptr,
718
                      size - 4, *((uint32_t*)(ptr + size - 4)));
722
                size - 4, owner, owner == current_thread ? " (self)" : "");
-
 
723
    }
719
    else cprintf((int)user, "%08X: %08X bytes free\n", ptr, size + 4);
724
    else cprintf((int)user, "%08X: %08X bytes free\n", ptr, size + 4);
720
}
725
}
721
 
726
 
722
void tlsf_walk_heap(tlsf_pool pool, tlsf_walker walker, void* user)
727
void tlsf_walk_heap(tlsf_pool pool, tlsf_walker walker, void* user)
723
{
728
{