Re: unmap() sometimes unmaps more pages than specified

Espen Skoglund <[email protected]>
Newsgroups gmane.comp.micro-kernel.l4.l4ka.general
Message-ID <[email protected]>
[Frank Mehnert]
> Hi,
> in a complex scenario I observed that the unmap() syscall sometimes
> flushes more pages than specified. So far I could not find a small
> testcase and therefore have to provide tracelogs of my current
> scenario:

[...]

> Please tell me if you need more information.

What happened in this scenario was that you had a 4MB mapping that had
two 4KB mappings mapped into the destination space.  You tried to
unmap a 4KB mapping in the source space, but there was only a 4MB
mapping there.  The whole 4MB mapping was as such unmapped instead.

The policy used to be different for early implementations; i.e.,
instead of unmapping the 4MB page the whole unmap operation was
ignored.  Completely ignoring the operation is not a good idea,
though.

	eSk
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.