Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 2 Mar 1999 11:37:04 -0600
From:      Alan Cox <alc@cs.rice.edu>
To:        Bruce Evans <bde@zeta.org.au>
Cc:        current@freebsd.org
Subject:   Re: lockmgr panic with mmap()
Message-ID:  <19990302113704.B90473@nonpc.cs.rice.edu>
In-Reply-To: <199903021141.WAA03136@godzilla.zeta.org.au>; from Bruce Evans on Tue, Mar 02, 1999 at 10:41:46PM %2B1100
References:  <199903021141.WAA03136@godzilla.zeta.org.au>

next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, Mar 02, 1999 at 10:41:46PM +1100, Bruce Evans wrote:
> 
> Doesn't it modify the map indirectly vi subyte()?  I think it wants
> to prevent modifications, but this is impossible.
> 

Bear with me, I'll have to split some hairs...

We're only interested in whether mincore directly changes the vm_map,
literally modifying a vm_map_entry, etc.  subyte is writing to memory,
not a vm_map_entry.  subyte is only indirectly changing the map
because a page fault occurs.  That page fault *is* (frequently) changing
the map, and we're deadlocking when it attempts to acquire the write lock
on the map.

Basically, what I believe that you suggested yesterday, that mincore
release the lock around the subyte is correct.  Code will
appear shortly...

Alan


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-current" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?19990302113704.B90473>