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