Messages in this thread | | | From | Linus Torvalds <> | Date | Mon, 18 Mar 2019 11:10:22 -0700 | Subject | Re: [PATCH 01/25] x86: Make SMAP 64-bit only |
| |
On Mon, Mar 18, 2019 at 10:51 AM Peter Zijlstra <peterz@infradead.org> wrote: > > How about I do a patch that schedules EFLAGS for both 32bit and 64bit, > mark this for backporting to infinity. > > And then at the end, after the objtool-ac bits land, I do a patch > removing the EFLAGS scheduling for x86_64.
Sounds sane to me.
And we can make it AC-conditional if it's actually shown to be visible from a performance standpoint.
But iirc pushf/popf isn't really that expensive - in fact I think it's pretty cheap when system flags don't change. Which would be the common case unless you'd also make the popf do the irq restore part and simply make finish_lock_switch() re-enable irq's by doing an irqrestore?
I think popf is like 20 cycles or something (and pushf is just single cycles). Probably not worth worrying about in the task switch context.
Linus
| |