Re: [PATCH v1 1/1] x86/fred: Fix int80 emulation for FRED

From: Borislav Petkov
Date: Tue Apr 16 2024 - 06:12:17 EST


On Fri, Apr 12, 2024 at 04:40:58PM -0700, Xin Li (Intel) wrote:
> Commit 55617fb991df

Use the full commit abbreviation when mentioning commits:

"Commit

55617fb991df ("x86/entry: Do not allow external 0x80 interrupts")

.."

> added a bunch of tests to the int $0x80 path,

Added a bunch of tests?

What does that even mean?

> however they are unnecessary and event wrong in fact under FRED.

Are the bunch of tests wrong or is do_int80_emulation() simply the wrong
handler to use on a FRED?

> First FRED distinguishes external interrupts from software interrupts,
> thus int80_emulation() should NEVER be called for handling an external
> interrupt, and then int80_is_external() should be skipped under FRED.
>
> Second, the FRED kernel entry handler NEVER dispatches INTx, which is
> of event type EVENT_TYPE_SWINT, so the user mode checking in
> do_int80_emulation() is redundant, and should be skipped.
>
> It might be even better to strip down do_int80_emulation() to a lean
> fred_int80_emulation(), not to mention int80_emulation() does a
> CLEAR_BRANCH_HISTORY.

Yah, how about you do a FRED-specific INT80 handler instead of
sprinkling moar tests around? fred_intx() looks like the right place to
stuff it in...

--
Regards/Gruss,
Boris.

https://people.kernel.org/tglx/notes-about-netiquette