lkml.org 
[lkml]   [2007]   [Mar]   [20]   [last100]   RSS Feed
Views: [more markup]  [less markup]  [headers]  [forward] 
 
Messages in this thread
    /
    DateTue, 20 Mar 2007 07:00:17 +0100
    FromNick Piggin <>
    SubjectRe: [patch 4/6] mm: merge populate and nopage into fault (fixes nonlinear)
    On Mon, Mar 19, 2007 at 09:44:28PM +0100, Blaisorblade wrote:
    > On Sunday 18 March 2007 03:50, Nick Piggin wrote:
    > > > >
    > > > > Yes, I believe that is the case, however I wonder if that is going to
    > > > > be a problem for you to distinguish between write faults for clean
    > > > > writable ptes, and write faults for readonly ptes?
    > > >
    > > > I wouldn't be able to distinguish them, but am I going to get write
    > > > faults for clean ptes when vma_wants_writenotify() is false (as seems to
    > > > be for tmpfs)? I guess not.
    > > >
    > > > For tmpfs pages, clean writable PTEs are mapped as writable so they won't
    > > > give any problem, since vma_wants_writenotify() is false for tmpfs.
    > > > Correct?
    > >
    > > Yes, that should be the case. So would this mean that nonlinear protections
    > > don't work on regular files?
    > 
    > They still work in most cases (including for UML), but if the initial mmap() 
    > specified PROT_WRITE, that is ignored, for pages which are not remapped via 
    > remap_file_pages(). UML uses PROT_NONE for the initial mmap, so that's no 
    > problem.
    
    But how are you going to distinguish a write fault on a readonly pte for
    dirty page accounting vs a read-only nonlinear protection?
    
    You can't store any more data in a present pte AFAIK, so you'd have to
    have some out of band data. At which point, you may as well just forget
    about vma_wants_writenotify vmas, considering that everybody is using
    shmem/ramfs.
    -
    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: 2007-03-20 07:03    [from the cache]
    ©2003-2008