Martins3.github.io icon indicating copy to clipboard operation
Martins3.github.io copied to clipboard

dune vsyscall

Open Martins3 opened this issue 5 years ago • 3 comments

  • [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 吗 ?

Martins3 avatar Nov 03 '20 06:11 Martins3

  • [ ] vsyscall 的位置明显在内核的空间上,所以又是靠什么技术实现的 ?

Martins3 avatar Nov 03 '20 07:11 Martins3

  • [ ] cache mode 是怎么回事 ?
    • [ ] https://github.com/ix-project/dune/commit/4cb52a7e6f5bf37830acd220e6ac23b5ec1af873
  • 其实可以使用预加载的方法将 vvar 提前放到建立好 translation
  • [x] getcpu 还是存在错误的返回值的问题

Martins3 avatar Nov 03 '20 07:11 Martins3

https://lwn.net/Articles/615809/

Martins3 avatar Apr 11 '21 15:04 Martins3