Martins3.github.io
Martins3.github.io copied to clipboard
dune vsyscall
- [x] 如果之前映射了 vsyscall 也会出现错误,所以之前使用的是 vsyscall 吗 ?
- [ ] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/arch/x86/entry/vsyscall/vsyscall_64.c?id=076ca272a14cea558b1092ec85cea08510283f2a
- [x] 检查一下 gcc 的补丁的内容
- [x] 所以 getcpu 的实现 和 gtod 有什么不同吗 ? 为什么可以返回错误的数值 ?
- [x] 一个 vvar page 只是使用一个页面吗 ?
- [x] 可以不使用 vsyscall 来调用 gtod 和 getcpu 吗 ?
- [ ] vsyscall 的位置明显在内核的空间上,所以又是靠什么技术实现的 ?
- [ ] cache mode 是怎么回事 ?
- [ ] https://github.com/ix-project/dune/commit/4cb52a7e6f5bf37830acd220e6ac23b5ec1af873
- 其实可以使用预加载的方法将 vvar 提前放到建立好 translation
- [x] getcpu 还是存在错误的返回值的问题
https://lwn.net/Articles/615809/