List Info

Thread: Re: flush icache on ia64 take2




Re: flush icache on ia64 take2
country flaguser name
France
2007-07-19 09:33:06
KAMEZAWA Hiroyuki wrote:

> A bit new idea.  How about this ?
> ==
> - Set PG_arch_1 if  "icache is *not*
coherent"

page-flags.h:
 * PG_arch_1 is an architecture specific page state bit. 
The generic code
 * guarantees that this bit is cleared for a page when it
first is entered into
 * the page cache.

I do not think you can easily change it.
I can agree, making nfs_readpage() call an architecture
dependent service
is not an easy stuff either. 

> - make flush_dcache_page() to be empty func.
> - For Montecito, add kmap_atomic(). This function just
set PG_arch1.

kmap_atomic() is used at several places. Do you want to set
PG_arch1, everywhere kmap_atomic() is called?

>   Then, "the page which is copied by the
kernel" is marked as "not icache coherent
page"
> - icache_flush_page() just flushes a page which has
PG_arch_1.
> - Anonymous page is always has PG_arch_1. Tkae care of
Copy-On-Write.

You can allocate (even in user mode) an anonymous page,
hand-create or
read() in some code from a file, and mprotect(....,
EXEC)-it. The page has
to become I-cache coherent.

I am not sure I can really understand your proposal.
I cannot see how the compatibility to the existing code is
made sure.

Thanks,

Zoltan
-
To unsubscribe from this list: send the line
"unsubscribe linux-ia64" in
the body of a message to majordomovger.kernel.org
More majordomo info at  http://vge
r.kernel.org/majordomo-info.html

[1]

about | contact  Other archives ( Real Estate discussion Medical topics )