On Fri, Jun 16 2023 at 15:57, Nikolay Borisov wrote:
Another major aspect of supporting running of 32bit processes is the
ability to access 32bit syscalls. Such syscalls are invoked either by
using the legacy int 0x80 call gate interface or via the newer sysenter
instruction.
Ensure that if ia32 emulation is disabled (either at compile time or
runtime) then those 2 syscall mechanisms are also disabled.
AFAICT there are _three_ mechanisms for 32bit syscalls, no?
void __init idt_setup_traps(void)
{
idt_setup_from_table(idt_table, def_idts, ARRAY_SIZE(def_idts), true);
+
+ if (ia32_enabled()) {
+ idt_setup_from_table(idt_table, ia32_idt, ARRAY_SIZE(ia32_idt),
+ true);
Just let it stick out. The 80 character limit is history.
Thanks,
tglx