Messages in this thread | | | From | Lai Jiangshan <> | Date | Sat, 7 May 2022 10:54:18 +0800 | Subject | Re: [PATCH 3/6] x86/entry: Use PUSH_AND_CLEAR_REGS for compat |
| |
On Fri, May 6, 2022 at 8:20 PM Peter Zijlstra <peterz@infradead.org> wrote: > > Since the upper regs don't exist for ia32 code, preserving them > doesn't hurt and it simplifies the code. > > This doesn't add any attack surface that would not already be > available through INT80. > > Notably: > > - 32bit SYSENTER: didn't clear si, dx, cx. > > - 32bit SYSCALL, INT80: *do* clear si since the C functions don't > take a second argument. > > - 64bit: didn't clear si since the C functions take a second > argument; except the error_entry path might have only one argument, > so clearing si was missing here. > > 32b SYSENTER should be clearing all those 3 registers, nothing uses them > and selftests pass. > > Unconditionally clear rsi since it simplifies code. > > Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org> > Reviewed-by: Borislav Petkov <bp@suse.de>
Reviewed-by: Lai Jiangshan <jiangshanlai@gmail.com>
| |