2021-02-05 19:47:52

by Dave Hansen

[permalink] [raw]
Subject: Re: [PATCH v4] x86: Remove unnecessary kmap() from sgx_ioc_enclave_init()

On 2/5/21 9:00 AM, [email protected] wrote:
> From: Ira Weiny <[email protected]>
>
> kmap is inefficient and we are trying to reduce the usage in the kernel.
> There is no readily apparent reason why initp_page needs to be allocated
> and kmap'ed() but sigstruct needs to be page aligned and token
> 512 byte aligned.
>
> kmalloc() can give us this alignment but we need to allocate PAGE_SIZE
> bytes to do so. Rather than change this kmap() to kmap_local_page() use
> kmalloc() instead.
>
> Remove the alloc_page()/kmap() and replace with kmalloc(PAGE_SIZE, ...)
> to get a page aligned kernel address to use.
>
> In addition add a comment to document the alignment requirements so that
> others like myself don't attempt to 'fix' this again.

Looks good:

Acked-by: Dave Hansen <[email protected]>