pc, pc64: make pc kaddr() check reject -KZERO address (thanks aiju)

This commit is contained in:
cinap_lenrek 2014-08-07 21:11:11 +02:00
parent d304dc8119
commit 0a101736b8
3 changed files with 3 additions and 3 deletions

View file

@ -947,7 +947,7 @@ tmpunmap(void *v)
void* void*
kaddr(ulong pa) kaddr(ulong pa)
{ {
if(pa > (ulong)-KZERO) if(pa >= (ulong)-KZERO)
panic("kaddr: pa=%#.8lux", pa); panic("kaddr: pa=%#.8lux", pa);
return (void*)(pa+KZERO); return (void*)(pa+KZERO);
} }

View file

@ -143,7 +143,7 @@ mmuinit(void)
void* void*
kaddr(uintptr pa) kaddr(uintptr pa)
{ {
if(pa > (uintptr)-KZERO) if(pa >= (uintptr)-KZERO)
panic("kaddr: pa=%#p pc=%#p", pa, getcallerpc(&pa)); panic("kaddr: pa=%#p pc=%#p", pa, getcallerpc(&pa));
return (void*)(pa+KZERO); return (void*)(pa+KZERO);
} }

View file

@ -72,7 +72,7 @@ xinit(void)
/* first give to kernel */ /* first give to kernel */
if(n > 0){ if(n > 0){
m->kbase = (uintptr)KADDR(m->base); m->kbase = (uintptr)KADDR(m->base);
m->klimit = (uintptr)KADDR(m->base+size); m->klimit = (uintptr)KADDR(m->base+size-1)+1;
xhole(m->base, size); xhole(m->base, size);
kpages -= n; kpages -= n;
} }