lkml.org 
[lkml]   [2003]   [Nov]   [10]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: EFAULT reading /dev/mem... - broken x86info
On Sat, 8 Nov 2003, Petr Vandrovec wrote:

> Hi Dave,
> today I attempted to run 'x86info' on my system, and I was awarded by
> a bit unexpected answer:
>
> ppc:~/x# x86info -v
> x86info v1.12b. Dave Jones 2001-2003
> Feedback to <davej@redhat.com>.
>
> readEntry: Bad address
> Found 1 CPUppc:~/x
>
>
> After some tweaking around I found that I cannot read some pages from /dev/mem -
> - I get -EFAULT on them. x86info run to the 0x86000 and 0x87000 pages, as it
> scans 0x80000-0x8FFFF range for mptable.
>

Your code works on 2.4.22 and probably somewhat higher versions. However,
as I understand it, the new kernels no longer mmap everything by default.
In other words, there are no PTEs unless you or a driver sets them.
In user-mode, you need to mmap() and in kernel mode, you use ioremap_*().

Since you can mmap() something that is already mmapped() without any
problem, the code should probably be "fixed" to mmap everything it
tries to read, page-by-page.

If this is not correct, I'm sure somebody will respond.


Cheers,
Dick Johnson
Penguin : Linux version 2.4.22 on an i686 machine (797.90 BogoMips).
Note 96.31% of all statistics are fiction.


-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2005-03-22 13:58    [from the cache]
©2003-2011 Jasper Spaans