diff mbox series

[v2,1/4] x86/sgx: Move struct sgx_vepc definition to sgx.h

Message ID 20220519031117.245698-1-zhiquan1.li@intel.com (mailing list archive)
State New, archived
Headers show
Series x86/sgx: fine grained SGX MCA behavior | expand

Commit Message

Zhiquan Li May 19, 2022, 3:11 a.m. UTC
Move struct sgx_vepc definition to sgx.h so that it can be used outside
of virt.c.

Signed-off-by: Zhiquan Li <zhiquan1.li@intel.com>
---
Changes since V1:
- Add documentation suggested by Jarkko.
---
 arch/x86/kernel/cpu/sgx/sgx.h  | 13 +++++++++++++
 arch/x86/kernel/cpu/sgx/virt.c |  5 -----
 2 files changed, 13 insertions(+), 5 deletions(-)

Comments

Jarkko Sakkinen May 19, 2022, 9:30 p.m. UTC | #1
On Thu, May 19, 2022 at 11:11:17AM +0800, Zhiquan Li wrote:
> Move struct sgx_vepc definition to sgx.h so that it can be used outside
> of virt.c.
> 
> Signed-off-by: Zhiquan Li <zhiquan1.li@intel.com>
> ---
> Changes since V1:
> - Add documentation suggested by Jarkko.
> ---
>  arch/x86/kernel/cpu/sgx/sgx.h  | 13 +++++++++++++
>  arch/x86/kernel/cpu/sgx/virt.c |  5 -----
>  2 files changed, 13 insertions(+), 5 deletions(-)
> 
> diff --git a/arch/x86/kernel/cpu/sgx/sgx.h b/arch/x86/kernel/cpu/sgx/sgx.h
> index 0f17def9fe6f..ad3b455ed0da 100644
> --- a/arch/x86/kernel/cpu/sgx/sgx.h
> +++ b/arch/x86/kernel/cpu/sgx/sgx.h
> @@ -101,4 +101,17 @@ static inline int __init sgx_vepc_init(void)
>  
>  void sgx_update_lepubkeyhash(u64 *lepubkeyhash);
>  
> +/**
> + * struct sgx_vepc - SGX virtual EPC structure
> + * @page_array:		the xarray of virtual EPC pages allocated to guest
> + * @lock:			the mutex lock to protect a virtual EPC instance
> + *
> + * When hypervisor opens /dev/sgx_vepc a virtual EPC instance. The
> + * virtual EPC pages allocated to guest will be added to its page_array.

I would just write "page array".

> + */
> +struct sgx_vepc {
> +	struct xarray page_array;
> +	struct mutex lock;
> +};
> +
>  #endif /* _X86_SGX_H */
> diff --git a/arch/x86/kernel/cpu/sgx/virt.c b/arch/x86/kernel/cpu/sgx/virt.c
> index 6a77a14eee38..c9c8638b5dc4 100644
> --- a/arch/x86/kernel/cpu/sgx/virt.c
> +++ b/arch/x86/kernel/cpu/sgx/virt.c
> @@ -18,11 +18,6 @@
>  #include "encls.h"
>  #include "sgx.h"
>  
> -struct sgx_vepc {
> -	struct xarray page_array;
> -	struct mutex lock;
> -};
> -
>  /*
>   * Temporary SECS pages that cannot be EREMOVE'd due to having child in other
>   * virtual EPC instances, and the lock to protect it.
> -- 
> 2.25.1
> 

BR, Jarkko
diff mbox series

Patch

diff --git a/arch/x86/kernel/cpu/sgx/sgx.h b/arch/x86/kernel/cpu/sgx/sgx.h
index 0f17def9fe6f..ad3b455ed0da 100644
--- a/arch/x86/kernel/cpu/sgx/sgx.h
+++ b/arch/x86/kernel/cpu/sgx/sgx.h
@@ -101,4 +101,17 @@  static inline int __init sgx_vepc_init(void)
 
 void sgx_update_lepubkeyhash(u64 *lepubkeyhash);
 
+/**
+ * struct sgx_vepc - SGX virtual EPC structure
+ * @page_array:		the xarray of virtual EPC pages allocated to guest
+ * @lock:			the mutex lock to protect a virtual EPC instance
+ *
+ * When hypervisor opens /dev/sgx_vepc a virtual EPC instance. The
+ * virtual EPC pages allocated to guest will be added to its page_array.
+ */
+struct sgx_vepc {
+	struct xarray page_array;
+	struct mutex lock;
+};
+
 #endif /* _X86_SGX_H */
diff --git a/arch/x86/kernel/cpu/sgx/virt.c b/arch/x86/kernel/cpu/sgx/virt.c
index 6a77a14eee38..c9c8638b5dc4 100644
--- a/arch/x86/kernel/cpu/sgx/virt.c
+++ b/arch/x86/kernel/cpu/sgx/virt.c
@@ -18,11 +18,6 @@ 
 #include "encls.h"
 #include "sgx.h"
 
-struct sgx_vepc {
-	struct xarray page_array;
-	struct mutex lock;
-};
-
 /*
  * Temporary SECS pages that cannot be EREMOVE'd due to having child in other
  * virtual EPC instances, and the lock to protect it.