当我尝试构建/安装 VMP 内核时,我收到以下错误:
Setting up your system for Simics VMP
================================================
This step will be performed with root privilege through sudo:
- Loading of the vmxmon kernel module.
Unless this script is run as root, you will be prompted for the
root password during those steps.
Building kernel modules for Simics VMP
setup build directory... ok
building vmxmon... failed
Consolidate compiler generated dependencies of target vmxmon-version
[ 28%] Built target vmxmon-version
[ 42%] Copying scripts to build directory
[ 42%] Built target copy-scripts
Consolidate compiler generated dependencies of target check-hw-util
[ 71%] Built target check-hw-util
[ 85%] Main target; builds the vmxmon kernel module
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: cc (Ubuntu 12.3.0-1ubuntu1~22.04) 12.3.0
/home/herget/simics/simics-6.0.169/vmxmon/build/module/linux/page.c: In function ‘get_upage’:
/home/herget/simics/simics-6.0.169/vmxmon/build/module/linux/page.c:295:15: error: too many arguments to function ‘get_user_pages’
295 | cnt = get_user_pages(va, 1 /* #pages */,
| ^~~~~~~~~~~~~~
In file included from /home/herget/simics/simics-6.0.169/vmxmon/build/module/linux/page.c:17:
./include/linux/mm.h:2430:6: note: declared here
2430 | long get_user_pages(unsigned long start, unsigned long nr_pages,
| ^~~~~~~~~~~~~~
make[5]: *** [scripts/Makefile.build:243: /home/herget/simics/simics-6.0.169/vmxmon/build/module/linux/page.o] Error 1
make[4]: *** [Makefile:2040: /home/herget/simics/simics-6.0.169/vmxmon/build/module] Error 2
gmake[3]: *** [CMakeFiles/vmxmon.dir/build.make:73: module/vmxmon.ko] Error 2
gmake[2]: *** [CMakeFiles/Makefile2:109: CMakeFiles/vmxmon.dir/all] Error 2
gmake[1]: *** [CMakeFiles/Makefile2:116: CMakeFiles/vmxmon.dir/rule] Error 2
gmake: *** [Makefile:124: vmxmon] Error 2
exiting
系统信息:
关于如何解决这个问题有什么想法吗?
您的 Linux 内核版本尚不受支持,但如果您可以降级到 6.5 之前,它应该可以工作。我们有一个支持更新版本的内部请求。目前还不是预计到达时间。
一般来说这是新内核版本的问题,API 不稳定。