Re: [patch -mm series] ia64 specific /dev/mem handlers

From: Jes Sorensen <>
Date: 2005-02-23 01:41:04
>>>>> "Andrew" == Andrew Morton <> writes:

Andrew> (Jes Sorensen) wrote:
>>  Hi,
>> This patch introduces ia64 specific read/write handlers for
>> /dev/mem access which is needed to avoid uncached pages to be
>> accessed through the cached kernel window which can lead to random
>> corruption. It also introduces a new page-flag PG_uncached which
>> will be used to mark the uncached pages. I assume this may be
>> useful to other architectures as well where the CPU may use
>> speculative reads which conflict with uncached access. In addition
>> I moved do_write_mem to be under ARCH_HAS_DEV_MEM as it's only ever
>> used if that is defined.

Andrew> Is it possible to avoid consuming a page flag?

Andrew> If this is an ia64-only (or 64-bit-only) thing I guess we
Andrew> could use bit 32.

Hi Andrew,

I don't think we can get away with it, I think most modern
architectures have this problem. I've been trying to avoid it for
several iterations but I kept getting pushed towards this.

>> + if (page->flags & PG_uncached)

Andrew> dude.  That ain't gonna work ;)

Pardon my lack of clue, but why not?

Maybe I should explain how I use it - in the mspec driver I pull a
chunk of pages out using alloc_pages and convert them all to uncached
(I need to do a chunk due to the speculation restrictions on ia64) and
then stick them into a special allocator and set page->PG_uncached
when doing so (the allocator is not tied to the uncached so I posted
the patch to Tony Luck). Ie. once the pages have been grabbed with
alloc_pages() and converted to uncached, they are never put back into
the generic pool.

It may be there are other places which needs to learn to respect the


To unsubscribe from this list: send the line "unsubscribe linux-ia64" in
the body of a message to
More majordomo info at
Received on Tue Feb 22 09:44:47 2005

This archive was generated by hypermail 2.1.8 : 2005-08-02 09:20:36 EST