diff options
| author | Alexander Potapenko <glider@google.com> | 2025-10-01 16:35:10 +0200 |
|---|---|---|
| committer | Alexander Potapenko <glider@google.com> | 2025-10-17 06:51:20 +0000 |
| commit | e69835fc40b5e00c0996ce3a85d8287eea57d162 (patch) | |
| tree | d935f0f54b202ec2402f74852f7d44735b567653 /executor/common_kvm_amd64.h | |
| parent | b2cf58f4862666d3b14f051b1e8cddcde9f8186f (diff) | |
executor: sys/linux: implement SYZOS_API_SET_IRQ_HANDLER
The new API call allows to initialize the handler with one of the
three possible values:
- NULL (should cause a page fault)
- dummy_null_handler (should call iret)
- uexit_irq_handler (should perform guest_uexit(UEXIT_IRQ))
Also add a test for uexit_irq_handler()
Diffstat (limited to 'executor/common_kvm_amd64.h')
| -rw-r--r-- | executor/common_kvm_amd64.h | 12 |
1 files changed, 0 insertions, 12 deletions
diff --git a/executor/common_kvm_amd64.h b/executor/common_kvm_amd64.h index ce778792d..3e5200137 100644 --- a/executor/common_kvm_amd64.h +++ b/executor/common_kvm_amd64.h @@ -252,18 +252,6 @@ struct kvm_syz_vm { #endif #if SYZ_EXECUTOR || __NR_syz_kvm_add_vcpu -// See https://wiki.osdev.org/Interrupt_Descriptor_Table#Gate_Descriptor_2. -struct idt_entry_64 { - uint16 offset_low; - uint16 selector; - // Interrupt Stack Table offset in bits 0..2 - uint8 ist; - // Gate Type, P and DPL. - uint8 type_attr; - uint16 offset_mid; - uint32 offset_high; - uint32 reserved; -} __attribute__((packed)); // Post-processing code in pkg/csource/csource.go is very picky and won't let us directly pass // fail() to DEFINE_GUEST_FN_TO_GPA_FN. |
