Skip to content

Commit

Permalink
kernel/vm: Remove unreachable code
Browse files Browse the repository at this point in the history
- Remove unreachable function `vm_pageFreeAt`
- Merge `_page_free` and `vm_pageFree`

Fixes: phoenix-rtos/phoenix-rtos-project#1080
Fixes: phoenix-rtos/phoenix-rtos-project#1082

JIRA: RTOS-836
  • Loading branch information
astalke authored and Darchiv committed May 24, 2024
1 parent d0ce24e commit 828df3f
Show file tree
Hide file tree
Showing 4 changed files with 7 additions and 39 deletions.
2 changes: 1 addition & 1 deletion test/vm.c
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@ void test_vm_alloc(void)
break;
}

_page_free(p);
vm_pageFree(p);

lib_printf("\rtest: size=%d, n=%d", size, n);

Expand Down
18 changes: 3 additions & 15 deletions vm/page-nommu.c
Original file line number Diff line number Diff line change
Expand Up @@ -72,24 +72,17 @@ page_t *vm_pageAlloc(size_t size, u8 flags)
}


void _page_free(page_t *lh)
void vm_pageFree(page_t *lh)
{
proc_lockSet(&pages.lock);

lh->next = pages.freeq;
pages.freeq = lh;

pages.freesz += (1 << lh->idx);
pages.allocsz -= (1 << lh->idx);

return;
}


void vm_pageFree(page_t *lh)
{
proc_lockSet(&pages.lock);
_page_free(lh);
proc_lockClear(&pages.lock);

return;
}

Expand Down Expand Up @@ -124,11 +117,6 @@ page_t *_page_get(addr_t addr)
}


void vm_pageFreeAt(pmap_t *pmap, void *vaddr)
{
}


int _page_sbrk(pmap_t *pmap, void **start, void **end)
{
page_t *np;
Expand Down
20 changes: 3 additions & 17 deletions vm/page.c
Original file line number Diff line number Diff line change
Expand Up @@ -100,11 +100,13 @@ page_t *vm_pageAlloc(size_t size, u8 flags)
}


void _page_free(page_t *p)
void vm_pageFree(page_t *p)
{
unsigned int idx, i;
page_t *lh = p, *rh = p;

proc_lockSet(&pages.lock);

if ((lh->flags & PAGE_FREE) != 0) {
hal_cpuDisableInterrupts();
lib_printf("page: double free (%p)\n", lh);
Expand Down Expand Up @@ -154,14 +156,6 @@ void _page_free(page_t *p)

LIST_ADD(&pages.sizes[idx], p);

return;
}


void vm_pageFree(page_t *lh)
{
proc_lockSet(&pages.lock);
_page_free(lh);
proc_lockClear(&pages.lock);
return;
}
Expand Down Expand Up @@ -196,14 +190,6 @@ page_t *_page_get(addr_t addr)
}


void vm_pageFreeAt(pmap_t *pmap, void *vaddr)
{
proc_lockSet(&pages.lock);
_page_free(_page_get(pmap_resolve(pmap, vaddr)));
proc_lockClear(&pages.lock);
}


static void _page_initSizes(void)
{
unsigned int i, k, idx;
Expand Down
6 changes: 0 additions & 6 deletions vm/page.h
Original file line number Diff line number Diff line change
Expand Up @@ -24,18 +24,12 @@
extern page_t *vm_pageAlloc(size_t size, u8 flags);


extern void _page_free(page_t *lh);


extern void vm_pageFree(page_t *lh);


extern page_t *_page_get(addr_t addr);


extern void vm_pageFreeAt(pmap_t *pmap, void *vaddr);


extern void _page_showPages(void);


Expand Down

0 comments on commit 828df3f

Please sign in to comment.