From 575015d2b023e5707293830186581f03c33aa90a Mon Sep 17 00:00:00 2001 From: cinap_lenrek Date: Fri, 19 Jun 2015 10:27:26 +0200 Subject: kernel: do not pull in atom.s from libc for arm kernels - provide our own copy of cas() in l.s - replace use of libc ainc()/adec() with portable incref()/decref() --- sys/src/9/omap/arch.c | 26 -------------------------- sys/src/9/omap/mmu.c | 4 ++-- 2 files changed, 2 insertions(+), 28 deletions(-) (limited to 'sys/src/9/omap') diff --git a/sys/src/9/omap/arch.c b/sys/src/9/omap/arch.c index a96904dee..007c18b01 100644 --- a/sys/src/9/omap/arch.c +++ b/sys/src/9/omap/arch.c @@ -174,32 +174,6 @@ userureg(Ureg* ureg) return (ureg->psr & PsrMask) == PsrMusr; } -/* - * atomic ops - * make sure that we don't drag in the C library versions - */ -int -ainc(int *p) -{ - int s, v; - - s = splhi(); - v = ++*p; - splx(s); - return v; -} - -int -adec(int *p) -{ - int s, v; - - s = splhi(); - v = --*p; - splx(s); - return v; -} - int cas32(void* addr, u32int old, u32int new) { diff --git a/sys/src/9/omap/mmu.c b/sys/src/9/omap/mmu.c index f54359ff6..bc92b0680 100644 --- a/sys/src/9/omap/mmu.c +++ b/sys/src/9/omap/mmu.c @@ -246,8 +246,8 @@ mmurelease(Proc* proc) panic("mmurelease: page->ref %d", page->ref); pagechainhead(page); } - if(proc->mmul2cache && palloc.r.p) - wakeup(&palloc.r); + if(proc->mmul2cache != nil) + pagechaindone(); proc->mmul2cache = nil; mmul1empty(); -- cgit v1.2.3