diff options
| author | Kimplul <kimi.h.kuparinen@gmail.com> | 2022-04-10 15:39:41 +0300 |
|---|---|---|
| committer | Kimplul <kimi.h.kuparinen@gmail.com> | 2022-04-10 15:42:04 +0300 |
| commit | 8aa17b12f29536ea9c8b6ca22c7f153e8d90fa3b (patch) | |
| tree | e7dba9b6b9cdcd1d04cba639c8f76e9685ac549f /common/mem_nodes.c | |
| parent | 4760462d9b3bf2aba8664c57be85f4adbfa164a2 (diff) | |
| download | kmi-8aa17b12f29536ea9c8b6ca22c7f153e8d90fa3b.tar.gz kmi-8aa17b12f29536ea9c8b6ca22c7f153e8d90fa3b.zip | |
add clang format and run it
Diffstat (limited to 'common/mem_nodes.c')
| -rw-r--r-- | common/mem_nodes.c | 51 |
1 files changed, 25 insertions, 26 deletions
diff --git a/common/mem_nodes.c b/common/mem_nodes.c index 099d578..2ab6978 100644 --- a/common/mem_nodes.c +++ b/common/mem_nodes.c @@ -4,9 +4,7 @@ #include <apos/string.h> #include <apos/mem_nodes.h> -enum block_status { - FREE = 0, USED = 1 -}; +enum block_status { FREE = 0, USED = 1 }; struct block_wrapper { enum block_status status; @@ -23,16 +21,16 @@ struct block_region { struct block_region *prev; }; -#define MAX_BLOCKS \ - ((BASE_PAGE_SIZE - sizeof(struct block_region)) / sizeof(struct block_wrapper)) +#define MAX_BLOCKS \ + ((BASE_PAGE_SIZE - sizeof(struct block_region)) / \ + sizeof(struct block_wrapper)) -#define block_region(b) \ +#define block_region(b) \ ((struct block_region *)((size_t)(b) & ~(BASE_PAGE_SIZE - 1))) -#define block_container(b) \ - container_of(b, struct block_wrapper, n) +#define block_container(b) container_of(b, struct block_wrapper, n) -#define region_to_array(r) \ +#define region_to_array(r) \ ((struct block_wrapper *)((char *)(r) + sizeof(struct block_region))) static struct block_region *head = 0; @@ -40,7 +38,8 @@ static struct block_region *av_head = 0; static struct block_region *__create_region() { - struct block_region *r = (struct block_region *)alloc_page(BASE_PAGE, 0); + struct block_region *r = + (struct block_region *)alloc_page(BASE_PAGE, 0); memset(r, FREE, BASE_PAGE_SIZE); return r; } @@ -54,7 +53,7 @@ void init_mem_blocks() void destroy_mem_blocks() { struct block_region *r = head; - while(r){ + while (r) { struct block_region *d = r; r = r->prev; free_page(MM_O0, (pm_t)d); @@ -64,8 +63,8 @@ void destroy_mem_blocks() static struct mem_region *__find_free_block(struct block_region *h) { struct block_wrapper *w = region_to_array(h); - for(size_t i = 0; i < MAX_BLOCKS; ++i){ - if(w[i].status != FREE) + for (size_t i = 0; i < MAX_BLOCKS; ++i) { + if (w[i].status != FREE) continue; w[i].status = USED; @@ -79,7 +78,7 @@ static void __pop_av_head() { struct block_region *t = av_head; av_head = av_head->av_next; - if(av_head) + if (av_head) av_head->av_prev = 0; t->av_next = 0; @@ -88,7 +87,7 @@ static void __pop_av_head() struct mem_region *get_mem_node() { - if(!av_head){ + if (!av_head) { av_head = __create_region(); av_head->prev = head; @@ -99,7 +98,7 @@ struct mem_region *get_mem_node() struct mem_region *ret = __find_free_block(av_head); - if(++av_head->used_blocks == MAX_BLOCKS) + if (++av_head->used_blocks == MAX_BLOCKS) __pop_av_head(); return ret; @@ -109,7 +108,7 @@ static void __push_av_head(struct block_region *r) { r->av_prev = 0; r->av_next = av_head; - if(av_head) + if (av_head) av_head->av_prev = r; av_head = r; @@ -120,26 +119,26 @@ static void __free_block(struct block_region *r) struct block_region *av_n = r->av_next; struct block_region *av_p = r->av_prev; - if(av_n) + if (av_n) av_n->av_prev = av_p; - if(av_p) + if (av_p) av_p->av_next = av_n; - if(r == av_head) + if (r == av_head) __pop_av_head(); struct block_region *n = r->next; struct block_region *p = r->prev; - if(n) + if (n) n->prev = p; - if(p) + if (p) p->next = n; - if(r == head){ - if(head->prev){ + if (r == head) { + if (head->prev) { head->next = 0; head = head->prev; } else @@ -156,11 +155,11 @@ void free_mem_node(struct mem_region *m) struct block_region *r = block_region(w); - if(--r->used_blocks == 0){ + if (--r->used_blocks == 0) { __free_block(r); return; } - else if(!r->av_next && !r->av_prev) + else if (!r->av_next && !r->av_prev) __push_av_head(r); } |
