lkml.org 
[lkml]   [2004]   [Sep]   [20]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: 2.6.9-rc2-mm1
From
Date
Terence Ripperda <tripperda@nvidia.com> writes:

> this is some ugly code. we're doing a lookup on a physical address to
> see if this is memory we previously allocated and returning a kernel
> pointer to the page.
>
> the particular snippet in question (that uses MAXMEM) is an ugly attempt
> to verify the address is a real physical address, before using __va()
> on something like an i/o region. A better approach than comparing
> MAXMEM would probably be to convert the address to a mapnr and compare
> to max_mapnr.

pfn_valid() is intended for that. However it cannot work
when you have more than 4GB memory and IO memory holes below 4GB.
Testing the reserved bit of the struct page * may work in
that case, although it can give false positives when you try
this with random memory (some people set reserved on real memory
for other reason)

-Andi

-
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 14:06    [W:0.037 / U:0.344 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site