On 4/29/21 11:39 AM, Tim Gardner wrote:
I'm just starting my learning curve on SGX, so I don't know if I've missed some setup for the SGX device entries. After looking at arch/x86/kernel/cpu/sgx/driver.c I see that there is no mode value for either sgx_dev_enclave or sgx_dev_provision.
With this patch I can get the SGX self test to complete:
sudo ./test_sgx Warning: no execute permissions on device file /dev/sgx_enclave 0x0000000000000000 0x0000000000002000 0x03 0x0000000000002000 0x0000000000001000 0x05 0x0000000000003000 0x0000000000003000 0x03 SUCCESS
Is the warning even necessary ?
Dang, I just added that warning. I thought it was necessary, but I guess not:
$ ls -l /dev/sgx_enclave crw------- 1 dave dave 10, 125 Apr 28 11:32 /dev/sgx_enclave $ ./test_sgx 0x0000000000000000 0x0000000000002000 0x03 0x0000000000002000 0x0000000000001000 0x05 0x0000000000003000 0x0000000000003000 0x03 SUCCESS
*But*, is that OK? Should we be happily creating a PROT_EXEC mapping on a ugo-x file? Why were we respecting noexec on the filesystem but not ugo-x on the file?