Thread (13 messages) flat view 13 messages, 5 authors, 2021-05-21

Re: Candidate Linux ABI for Intel AMX and hypothetical new related features

From: "Andy Lutomirski" <luto@kernel.org>
Date: 2021-05-21 20:08:20
Also in: lkml


On Fri, May 21, 2021, at 12:10 PM, Thomas Gleixner wrote:
On Fri, May 21 2021 at 09:31, Andy Lutomirski wrote:
quoted
arch_prctl(SET_XSTATE_INIT_ON_FIRST_USE, TILE_STUFF);?

As long as this is allowed to fail, I don’t have a huge problem with
it.
I'm fine with that. It's still controlled by the OS and can return
-EPERM.

If allowed then the application would also accept to be insta killed if
that #NM allocation fails. Any bug report vs. that will be ignored.
quoted
I think several things here are regrettable:

1. Legacy XSTATE code might assume that XCR0 is a constant.

2. Intel virt really doesn’t like us context switching XCR0, although
we might say that this is Intel’s fault and therefore Intel’s
problem. AMD hardware doesn’t appear to have this issue.

3. AMX bring tangled up in XSTATE is unfortunate.  The whole XSTATE
mechanism is less than amazing.

IMO the best we can make of this whole situation is to make XCR0
dynamic, but the legacy compatibility issues are potentially
problematic.
Why? The bit can be enabled and #NM catches the violation of the ABI
contract if the application did not request usage. No XCR0 fiddling on
context switch required.

Thanks,

        tglx

XFD does nothing about signals.  It also doesn’t help give applications a non-Linux-specific way to ask if AMX is available. The SDM says that one can read XCR0.  Sure, we can use it, but cross platform libraries seem likely to get it wrong.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help