#include <linux/capability.h>
#include <linux/errno.h>
#include <linux/interrupt.h>
#include <linux/sched.h>
#include <linux/kernel.h>
#include <linux/signal.h>
#include <linux/string.h>
#include <linux/mm.h>
#include <linux/smp.h>
#include <linux/highmem.h>
#include <linux/ptrace.h>
#include <linux/audit.h>
#include <linux/stddef.h>
#include <asm/uaccess.h>
#include <asm/io.h>
#include <asm/tlbflush.h>
#include <asm/irq.h>
#include <asm/syscalls.h>
Go to the source code of this file.
|
| #define | pr_fmt(fmt) KBUILD_MODNAME ": " fmt |
| |
| #define | KVM86 ((struct kernel_vm86_struct *)regs) |
| |
| #define | VMPI KVM86->vm86plus |
| |
| #define | AL(regs) (((unsigned char *)&((regs)->pt.ax))[0]) |
| |
| #define | AH(regs) (((unsigned char *)&((regs)->pt.ax))[1]) |
| |
| #define | IP(regs) (*(unsigned short *)&((regs)->pt.ip)) |
| |
| #define | SP(regs) (*(unsigned short *)&((regs)->pt.sp)) |
| |
| #define | VFLAGS (*(unsigned short *)&(current->thread.v86flags)) |
| |
| #define | VEFLAGS (current->thread.v86flags) |
| |
| #define | set_flags(X, new, mask) ((X) = ((X) & ~(mask)) | ((new) & (mask))) |
| |
| #define | SAFE_MASK (0xDD5) |
| |
| #define | RETURN_MASK (0xDFF) |
| |
| #define | val_byte(val, n) (((__u8 *)&val)[n]) |
| |
| #define | pushb(base, ptr, val, err_label) |
| |
| #define | pushw(base, ptr, val, err_label) |
| |
| #define | pushl(base, ptr, val, err_label) |
| |
| #define | popb(base, ptr, err_label) |
| |
| #define | popw(base, ptr, err_label) |
| |
| #define | popl(base, ptr, err_label) |
| |
| #define | CHECK_IF_IN_TRAP |
| |
| #define | VM86_FAULT_RETURN |
| |
| #define | VM86_IRQNAME "vm86irq" |
| |
| #define | ALLOWED_SIGS |
| |
Value:if (
VMPI.vm86dbg_active &&
VMPI.vm86dbg_TFpendig) \
| #define popb |
( |
|
base, |
|
|
|
ptr, |
|
|
|
err_label |
|
) |
| |
Value:
goto err_label; \
ptr++; \
__res; \
})
Definition at line 482 of file vm86_32.c.
| #define popl |
( |
|
base, |
|
|
|
ptr, |
|
|
|
err_label |
|
) |
| |
Value:
goto err_label; \
ptr++; \
goto err_label; \
ptr++; \
goto err_label; \
ptr++; \
goto err_label; \
ptr++; \
__res; \
})
Definition at line 503 of file vm86_32.c.
| #define popw |
( |
|
base, |
|
|
|
ptr, |
|
|
|
err_label |
|
) |
| |
Value:
goto err_label; \
ptr++; \
goto err_label; \
ptr++; \
__res; \
})
Definition at line 491 of file vm86_32.c.
| #define pr_fmt |
( |
|
fmt | ) |
KBUILD_MODNAME ": " fmt |
Value:
ptr--; \
goto err_label; \
} while (0)
Definition at line 446 of file vm86_32.c.
Value:
ptr--; \
goto err_label; \
ptr--; \
goto err_label; \
ptr--; \
goto err_label; \
ptr--; \
goto err_label; \
} while (0)
Definition at line 465 of file vm86_32.c.
Value:
ptr--; \
goto err_label; \
ptr--; \
goto err_label; \
} while (0)
Definition at line 454 of file vm86_32.c.
| #define RETURN_MASK (0xDFF) |
| #define SAFE_MASK (0xDD5) |
| #define set_flags |
( |
|
X, |
|
|
|
new, |
|
|
|
mask |
|
) |
| ((X) = ((X) & ~(mask)) | ((new) & (mask))) |
| #define VEFLAGS (current->thread.v86flags) |
| #define VFLAGS (*(unsigned short *)&(current->thread.v86flags)) |
| #define VM86_FAULT_RETURN |
Value:do { \
handle_vm86_trap(
regs, 0, 1); \
return; } while (0)
| #define VM86_IRQNAME "vm86irq" |
| #define VMPI KVM86->vm86plus |
| void handle_vm86_fault |
( |
struct kernel_vm86_regs * |
regs, |
|
|
long |
error_code |
|
) |
| |
| int handle_vm86_trap |
( |
struct kernel_vm86_regs * |
regs, |
|
|
long |
error_code, |
|
|
int |
trapno |
|
) |
| |