[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date: Tue, 10 Oct 2006 08:11:24 +0200
From: Thomas Hellström <thomas@...gstengraphics.com>
To: Benjamin Herrenschmidt <benh@...nel.crashing.org>
CC: Nick Piggin <npiggin@...e.de>, Andrew Morton <akpm@...l.org>,
Linux Memory Management <linux-mm@...ck.org>,
Linux Kernel <linux-kernel@...r.kernel.org>
Subject: Re: [patch 3/3] mm: fault handler to replace nopage and populate
Benjamin Herrenschmidt wrote:
>
>>>Could it be an option to make it safe for the fault handler to
>>>temporarily drop the mmap_sem read lock given that some conditions TBD
>>>are met?
>>>In that case it can retake the mmap_sem write lock, do the VMA flags
>>>modifications, downgrade and do the pte modifications using a helper, or
>>>even use remap_pfn_range() during the time the write lock is held?
>>>
>>>
>>When you drop and retake the mmap_sem, you need to start again from
>>find_vma. At which point you technically probably want to start again
>>from the architecture specfic fault code. It sounds difficult but I
>>won't say it can't be done.
>>
>>
>
>I can be done with returning NOPAGE_REFAULT but as you said, I don't
>think it's necessary.
>
>
Still, even with NOPAGE_REFAULT or the equivalent with the new fault() code,
in the case we need to take this route, (and it looks like we won't have
to),
I guess we still need to restart from find_vma() in the fault()/nopage()
handler to make sure the VMA is still present. The object mutex need to
be dropped as well to avoid deadlocks. Sounds complicated.
>Cheers,
>Ben.
>
>
>
>
/Thomas
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists