Hi Oak,

the kernel will unmap the page if the cap that you are deleting is the last cap 
to it. If there is still a copy of the frame cap around, it will not 
automatically unmap. 

This is a general principle for cap deletion: deleting the last cap to an 
object triggers object “finalisation”, i.e. cleanup and resetting it to an 
inert state so that it can later be removed from memory without impacting the 
rest of the system. If there are still other caps to the same object in the 
system, only the cap is removed.

Cheers,
Gerwin

> On 22.06.2017, at 13:50, Norrathep Rattanavipanon <[email protected]> wrote:
> 
> Hello,
> 
> I was wondering when we call seL4_cnode_delete on a (mapped) frame cap, 
> does the kernel also handle unmapping the frame (in addition to withdrawing 
> authority) as well? 
> Or the user-space has to ensure that the frame is unmapped first before 
> calling delete?
> 
> I tried my code without unmapping that frame when deleting the cap and it 
> seems to work fine.
> So I guess the kernel handles that?
> 
> Oak
> 
> -- 
> Norrathep (Oak) Rattanavipanon
> M.S. in Computer Science
> University of California - Irvine
> _______________________________________________
> Devel mailing list
> [email protected]
> https://sel4.systems/lists/listinfo/devel

_______________________________________________
Devel mailing list
[email protected]
https://sel4.systems/lists/listinfo/devel

Reply via email to