Comments (2)
Linux kernel v6.4 includes the in-kernel SGX driver. Suggest to use the in-kernel driver instead of this OOT driver.
from linux-sgx-driver.
It looks like the latest driver is also failing to install for me.
I'm working through the Driver Installation QuickStart instructions in the latest Intel SGX SW Installation Guide for Linux. I'm following the recommended instructions for the Out-of-Tree Driver option, as I need Legacy Launch Control support for my machine.
I'm unable to install the driver, and I've tried on Ubuntu 22.04.4
and 24.04
Desktop.
According to the driver_readme.txt
I found in the release tree, the OOT version is sgx_linux_x64_driver_2.11.b6f5b4a.bin
, not to be confused with the DCAP driver with the same name and different version.
Here's what I get when I try to install:
$ sudo ./sgx_linux_x64_driver_2.11.b6f5b4a.bin
Unpacking Intel SGX Driver ... done.
Verifying the integrity of the install package ... done.
Installing Intel SGX Driver ...
/tmp/sgx-driver-ciUmNZ /home/josh
install -d /opt/intel/sgxdriver/package
install -d /opt/intel/sgxdriver/scripts
install package/* /opt/intel/sgxdriver/package
install scripts/* /opt/intel/sgxdriver/scripts
/home/josh
Warning: There is no need to install additional SGX driver with in-kernel SGX support.
/opt/intel/sgxdriver/package /home/josh
make -C /lib/modules/6.5.0-28-generic/build M=/opt/intel/sgxdriver/package modules
make[1]: Entering directory '/usr/src/linux-headers-6.5.0-28-generic'
warning: the compiler differs from the one used to build the kernel
The kernel was built by: x86_64-linux-gnu-gcc-12 (Ubuntu 12.3.0-1ubuntu1~22.04) 12.3.0
You are using: gcc-12 (Ubuntu 12.3.0-1ubuntu1~22.04) 12.3.0
CC [M] /opt/intel/sgxdriver/package/sgx_main.o
/opt/intel/sgxdriver/package/sgx_main.c: In function ‘sgx_mmap’:
/opt/intel/sgxdriver/package/sgx_main.c:112:23: error: assignment of read-only member ‘vm_flags’
112 | vma->vm_flags |= VM_PFNMAP | VM_DONTEXPAND | VM_DONTDUMP | VM_IO |
| ^~
make[3]: *** [scripts/Makefile.build:251: /opt/intel/sgxdriver/package/sgx_main.o] Error 1
make[2]: *** [/usr/src/linux-headers-6.5.0-28-generic/Makefile:2039: /opt/intel/sgxdriver/package] Error 2
make[1]: *** [Makefile:234: __sub-make] Error 2
make[1]: Leaving directory '/usr/src/linux-headers-6.5.0-28-generic'
make: *** [Makefile:16: default] Error 2
specifically,
/opt/intel/sgxdriver/package/sgx_main.c: In function ‘sgx_mmap’:
/opt/intel/sgxdriver/package/sgx_main.c:112:23: error: assignment of read-only member ‘vm_flags’
112 | vma->vm_flags |= VM_PFNMAP | VM_DONTEXPAND | VM_DONTDUMP | VM_IO |
| ^~
I get the same error on 24.04
. I also made sure the prerequisites were installed.
It looks like @sssshello's PR #151 was a good fix, but closed with no explanation; but it was applied as a patch to a fork.
Also, the warning, "There is no need to install additional SGX driver with in-kernel SGX support.
" is misleading if you need to use the legacy /dev/isgx, as it's only available in the OOT version of the sgx driver
.
from linux-sgx-driver.
Related Issues (20)
- Enclave creation fails with out of memory. Unable to run sample code HOT 1
- cant found isgx.ko HOT 1
- New release? HOT 2
- "Failed to load enclave." error with Centos7.8 release HOT 2
- WSL2 - Which should I choose as my installation method HOT 1
- Why do we need to grab a enclave lock during do fault?
- About the driver's stability through reboots HOT 3
- Linux sgx driver 2.14 tag name HOT 1
- /dev/isgx does not get installed HOT 6
- make fails: Skipping BTF generation for ...isgx.ko due to unavailability of vmlinux HOT 4
- It's not possible to get more than one page fault on a single page on an EDMM system HOT 1
- How to add driver module in Linux Kernel 5.17? HOT 5
- win的SGX SDK无法下载 HOT 1
- Calling enclave_alloc error HOT 10
- EACCEPT returns SGX_PAGE_ATTRIBUTES_MISMATCH
- Non FLC SGX device, Linux Kernel 5.15
- Illegal 32bit value shift during initialization
- run ./sgx_linux_x64_driver_1.36.2.bin error HOT 2
- Error in sgx_main.c - Assignment of Read-Only Member vm_flags on Branch 2.14
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from linux-sgx-driver.