On Tue, 2023-10-03 at 01:45 -0500, Haitao Huang wrote:
>
> Btw, probably a dumb question:
>
> Theoretically if you only need to find a victim enclave you don't need > to put VA
> pages to the unreclaimable list, because those VA pages will be freed > anyway
> when enclave is killed. So keeping VA pages in the list is for> accounting all
> the pages that the cgroup is having?
Yes basically tracking them in cgroups as they are allocated.
VAs and SECS may also come and go as swapping/unswapping happens. But if acgroup is OOM, and all reclaimables are gone (swapped out), it'd have toreclaim VAs/SECs in the same cgroup starting from the front of the LRUlist. To reclaim a VA/SECS, it identifies the enclave from the owner ofthe VA/SECS page and kills it, as killing enclave is the only way toreclaim VA/SECS pages.
To kill enclave you just need to track SECS in the unreclaimable list. Only when you want to account the total EPC pages via some list you _probably_
need to track VA as well. But I am not quite sure about this either.