diff options
| author | Alexander Potapenko <glider@google.com> | 2025-09-11 18:34:16 +0200 |
|---|---|---|
| committer | Alexander Potapenko <glider@google.com> | 2025-09-19 08:38:14 +0000 |
| commit | dd232cacbbd407c55bf26299264db0a2c3f0cfcf (patch) | |
| tree | e45a9746d8b238aed553b54d8ca2ffef78b0a33b /sys | |
| parent | 184fe589c4e27b7e7dcc12a43900b1c2d363e200 (diff) | |
sys/linux: executor: implement SYZOS_API_WR_DRN on x86
Add a SYZOS call to write to one of the debug registers
(DR0-DR7).
Diffstat (limited to 'sys')
| -rw-r--r-- | sys/linux/dev_kvm_amd64.txt | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/sys/linux/dev_kvm_amd64.txt b/sys/linux/dev_kvm_amd64.txt index 541fcaa02..351f55827 100644 --- a/sys/linux/dev_kvm_amd64.txt +++ b/sys/linux/dev_kvm_amd64.txt @@ -69,6 +69,12 @@ syzos_api_wr_crn { arg_value int64 } +# Depending on CR4.DE, registers DR4 and DR5 either alias DR6 and DR7, or generate an #UD. +syzos_api_wr_drn { + arg_reg int64[0:7] + arg_value int64 +} + syzos_api_call$x86 [ uexit syzos_api$x86[0, intptr] code syzos_api$x86[10, syzos_api_code$x86] @@ -76,6 +82,7 @@ syzos_api_call$x86 [ wrmsr syzos_api$x86[30, syzos_api_wrmsr] rdmsr syzos_api$x86[50, syzos_api_rdmsr] wr_crn syzos_api$x86[70, syzos_api_wr_crn] + wr_drn syzos_api$x86[110, syzos_api_wr_drn] ] [varlen] kvm_text_x86 [ |
