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 How reproducible: always Steps to Reproduce: 1.Boot a RHEL3 hugemem kernel 2.su root 3.cat /dev/kmem Actual results: Kernel panic Expected results: kernel memory data or -EFAULT error (behavior under non-hugemem kernels Additional info:
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. http://rhn.redhat.com/errata/RHBA-2004-550.html