Messages in this thread | | | Date | Thu, 12 Mar 2009 16:46:34 +0100 | From | Martin Schwidefsky <> | Subject | Re: [PATCH] acquire mmap semaphore in pagemap_read. |
| |
On Thu, 12 Mar 2009 16:41:31 +0100 Brice Goglin <Brice.Goglin@ens-lyon.org> wrote:
> > Which would be really ugly. I still have not grasped why this will > > introduce a deadlock though. The worst the put_user can do is to cause > > a page fault, no? I do not see where the fault handler acquires the > > mmap_sem as writer. It takes the mmap_sem as reader and two readers > > should be fine. > > Somebody else can acquire for write in the meantime, for instance > another thread doing mprotect. This writer is blocked by the first > reader, and the second reader is blocked by the writer. So both > tasks are blocked.
I see, fair r/w locks. So nested down_read is a no-no.
-- blue skies, Martin.
"Reality continues to ruin my life." - Calvin.
| |