Date: Thu, 8 May 1997 10:10:38 +1000 From: Bruce Evans <bde@zeta.org.au> To: cvs-all@FreeBSD.ORG, CVS-committers@FreeBSD.ORG, cvs-sys@FreeBSD.ORG, peter@FreeBSD.ORG Subject: Re: cvs commit: src/sys/i386/i386 mem.c Message-ID: <199705080010.KAA25971@godzilla.zeta.org.au>
next in thread | raw e-mail | index | archive | help
> Modified: sys/i386/i386 mem.c > Log: > Don't allow access to illegal addresses in /dev/kmem to panic kernel > (eg: above 0xffc00000). Programs using /dev/kmem are implicitly racing > the kernel, and can get right up high in memory. I've been running > these for some time now, but with printfs. It's saved two panics at > least that I can remember. Isn't the bug actually in pmap_extract() and/or kernacc()? There seem to be some races for reading /dev/kmem in the kernel itself. uiomove() can block, and there is nothing to keep the pages from becoming unmapped. Perhaps all checking should be deferred to copyin()/copyout() when the pages are actually accessed. Lazy checking for user pages is already handled there and works well. Bruce
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199705080010.KAA25971>