Red Hat Bugzilla – Bug 128469
accessing /dev/kmem on hugemem kernel causes oops
Last modified: 2007-11-30 17:07:03 EST
Description of problem:
On the hugemem kernel, reading from an invalid kernel address in
/dev/kmem causes an oops
Version-Release number of selected component (if applicable):
all RHEL3 hugemem kernels
Steps to Reproduce:
1.Boot a RHEL3 hugemem kernel
kernel memory data or -EFAULT error (behavior under non-hugemem kernels
Created attachment 102169 [details]
patch to range check address in /dev/kmem
This patch should preform a valid address range check on all kernels and allow
invalid addresses to return -EFAULT when passed in.
Created attachment 102170 [details]
alternate patch from upstream 2.6 kernel to fix /dev/kmem oops problem
I'm uploading this backport of the 2.6 kernel solution to this problem. I'm
doing it to be complete, but I don't think its a good solution, as the
upstream method just makes /dev/kmem return -EPERM unconditionally on all reads
and writes weather or not you are root. It effectively depricates /dev/kmem,
and probably isn't viable to current RHEL users.
Sorry, didn't see the old bug was reopened. Marking this as a dup.
*** This bug has been marked as a duplicate of 108450 ***
A fix for this problem has just been committed to the RHEL3 U4
patch pool this evening (in kernel version 2.4.21-20.3.EL).
Thanks for your work on this, Neil. -ernie
An errata has been issued which should help the problem
described in this bug report. This report is therefore being
closed with a resolution of ERRATA. For more information
on the solution and/or where to find the updated files,
please follow the link below. You may reopen this bug report
if the solution does not work for you.