On Thu, Jan 25, 2018 at 1:39 PM, Dan Williams <dan.j.willi...@intel.com> wrote: > > If you're rejiggering, can we also put in a mechanism for detecting > which registers to clear so that userspace can't inject useful values > into speculation paths?
That actually becomes trivial with just the "no fastpath" patch I sent out. You can just clear all of them. Sure, then do_syscall_64() will reload the six first ones, but since those are the argument registers anyway, and since they are caller-clobbered, they have very short lifetimes. So it would effectively not really be an issue. But yes, SYSCALL_DEFINEx() rejiggery would close even that tiny hole. Linus