On Mon, Apr 29, 2024 at 12:07 PM Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx> wrote: > > On Mon, 29 Apr 2024 at 11:47, Linus Torvalds > <torvalds@xxxxxxxxxxxxxxxxxxxx> wrote: > > > > In particular, I think the page fault emulation code should be moved > > from do_user_addr_fault() to do_kern_addr_fault(), and the horrible > > hack that is fault_in_kernel_space() should be removed (it is what now > > makes a vsyscall page fault be treated as a user address, and the only > > _reason_ for that is that we do the vsyscall handling in the wrong > > place). > > Final note: we should also remove the XONLY option entirely, and > remove all the strange page table handling we currently do for it. > > It won't work anyway on future CPUs with LASS, and we *have* to > emulate things (and not in the page fault path, I think LASS will > cause a GP fault). What strange page table handling do we do for XONLY? EMULATE actually involves page tables. XONLY is just in the "gate area" (which is more or less just a procfs thing) and the page fault code. So I think we should remove EMULATE before removing XONLY. We already tried pretty hard to get everyone to stop using EMULATE.