Re: [RFC, PATCH 13/22] mm, rmap: Free encrypted pages once mapcount drops to zero

From: Dave Hansen
Date: Mon Mar 05 2018 - 14:13:45 EST


On 03/05/2018 08:26 AM, Kirill A. Shutemov wrote:
> @@ -1292,6 +1308,12 @@ static void page_remove_anon_compound_rmap(struct page *page)
> __mod_node_page_state(page_pgdat(page), NR_ANON_MAPPED, -nr);
> deferred_split_huge_page(page);
> }
> +
> + anon_vma = page_anon_vma(page);
> + if (anon_vma_encrypted(anon_vma)) {
> + int keyid = anon_vma_keyid(anon_vma);
> + free_encrypt_page(page, keyid, compound_order(page));
> + }
> }

It's not covered in the description and I'm to lazy to dig into it, so:
Without this code, where do they get freed? Why does it not cause any
problems to free them here?