Subversion Repositories Kolibri OS

Rev

Go to most recent revision | Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
3033 serge 1
 
2
#include 
3
#include "hmm.h"
4
5
 
6
{
7
    u32* data;
8
9
 
10
        return -EINVAL;
11
12
 
13
    if( data )
14
    {
15
        int i;
16
17
 
18
            data[i] = ++i;
19
        data[i] = 0;
20
21
 
22
        mm->next  = 0;
23
        mm->avail = count;
24
        mm->count = count;
25
26
 
27
    };
28
    return -ENOMEM;
29
};
30
31
 
32
{
33
    u32 handle = 0;
34
    u32 ifl;
35
36
 
37
    if(mm->avail)
38
    {
39
        handle = mm->next;
40
        mm->next = mm->table[handle];
41
        mm->avail--;
42
        handle++;
43
    }
44
    safe_sti(ifl);
45
46
 
47
};
48
49
 
50
{
51
    int ret = -1;
52
    u32 ifl;
53
54
 
55
56
 
57
    if(handle < mm->count)
58
    {
59
        mm->table[handle] = mm->next;
60
        mm->next = handle;
61
        mm->avail++;
62
        ret = 0;
63
    };
64
    safe_sti(ifl);
65
66
 
67
};
68