| Date | Thu, 22 Sep 2022 11:54:18 -0700 | Subject | Re: [RFC PATCH 02/20] x86/sgx: Store EPC page owner as a 'void *' to handle multiple users | From | Dave Hansen <> |
| |
On 9/22/22 10:10, Kristen Carlson Accardi wrote: > From: Sean Christopherson <sean.j.christopherson@intel.com> > > A future patch will use the owner field for either a pointer to > a struct sgx_encl, or a struct sgx_encl_page. > > Signed-off-by: Sean Christopherson <sean.j.christopherson@intel.com> > Signed-off-by: Kristen Carlson Accardi <kristen@linux.intel.com> > Cc: Sean Christopherson <seanjc@google.com> > --- > arch/x86/kernel/cpu/sgx/sgx.h | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/arch/x86/kernel/cpu/sgx/sgx.h b/arch/x86/kernel/cpu/sgx/sgx.h > index 0f2020653fba..5a7e858a8f98 100644 > --- a/arch/x86/kernel/cpu/sgx/sgx.h > +++ b/arch/x86/kernel/cpu/sgx/sgx.h > @@ -33,7 +33,7 @@ struct sgx_epc_page { > unsigned int section; > u16 flags; > u16 poison; > - struct sgx_encl_page *owner; > + void *owner; > struct list_head list; > }; >
We normally handle these with a union. I'd probably do something like this instead:
- struct sgx_encl_page *owner; + union owner { + struct sgx_encl *o_encl; + struct sgx_encl_page *o_page; + }
|