> --- a/arch/x86/kernel/cpu/sgx/encl.c > +++ b/arch/x86/kernel/cpu/sgx/encl.c > @@ -746,6 +746,7 @@ void sgx_encl_release(struct kref *ref) > xa_destroy(&encl->page_array); > > if (!encl->secs_child_cnt && encl->secs.epc_page) { > + sgx_drop_epc_page(encl->secs.epc_page); > sgx_encl_free_epc_page(encl->secs.epc_page); > encl->secs.epc_page = NULL; > } The "record" of SECS/VA pages should be done together with this. I see no reason why the "record" and "drop" are separated into different patches.