[Top] [All Lists]

Re: VC exceptions

To: "Kevin D. Kissell" <>
Subject: Re: VC exceptions
From: Ralf Baechle <>
Date: Mon, 1 May 2000 09:47:50 +0200
Cc: Florian Lohoff <>,
In-reply-to: <002801bfb2e9$d0bec2f0$>; from on Sun, Apr 30, 2000 at 11:19:41PM +0200
References: <002801bfb2e9$d0bec2f0$>
On Sun, Apr 30, 2000 at 11:19:41PM +0200, Kevin D. Kissell wrote:

> >Apropriate placement of mappings in the address space isn't always possible.
> >MAP_FIXED is one example.  Aliases in the page cache are harder to handle. 
> >If one of the page cache mappings is writable then readers may even observe 
> >stale data or in worst  case stale data being written to disk.
> mmap() is allowed to fail.  I would think that,  if someone tries to force an 
> unsafe mapping, one should give them EINVAL if one doesn't want to deal 
> with the special case otherwise, or create a copy-on-write clone in a safe
> physical page if one wants to be extra-specially nice...

I'm only worried because I don't know how much software such a change
would break.

IRIX uses something they call page ownership switching.  Essentially they
ensure that only mappings of one colour are accessible at any time.
Accessing a page's mapping of a different colour will make the mm flush
caches, make the old colour inaccessible and the new colour accessible
in the page tables.  That requires a reverse mapping of physical to virtual
addresses, something that Linus so far has always refused to accept.


<Prev in Thread] Current Thread [Next in Thread>