[BUG] The syscall argument registers are misleading in syscalls part one
- 主要語言
- Python
- 星號
- 33.5k
- 分支
- 3.6k
- 平均合併
- 8 小時 41 分鐘
- 30 天內合併 PR
- 11
描述
In part two (https://0xax.gitbooks.io/linux-insides/content/SysCall/linux-syscall-2.html section "Preparation before system call handler will be called") its clear that for example ECX is not used as an argument register since RIP is stored in it. However in part 1 of the syscall series:

This is the order used when calling functions yes, but not when calling syscalls. Also I think syscalls don't take arguments from the stack. This is a useful reference: https://elixir.bootlin.com/linux/v6.10.10/source/arch/x86/entry/entry_64.S#L69
貢獻指南
研究方向
該 issue 指向系統呼叫系列第一部分中的特定圖表以及 Linux 核心原始碼中的引用 (arch/x86/entry/entry_64.S)。要修正文件,請在書籍的原始檔中(很可能在系統呼叫第一部分的 Markdown 或 AsciiDoc 檔案中)找到具有誤導性的圖表或文字。與第二部分描述的正確暫存器用法以及連結的組合語言程式碼進行比較。修復方法是更新文字或圖片,以反映系統呼叫使用不同的參數暫存器(例如,ECX 用於 RIP,而不是作為參數)。
由索引模型根據 Issue 內容生成。
評估
- 領域
- documentation
- Issue 類型
- 文件
- 難度
- 1/5
- 預估耗時
- 1 小時以內
- 活躍度
- 停滯
- 描述清晰度
- 描述清楚
- 新手友好度
- 40/100