Messages in this thread | | | Subject | Re: [RFC PATCH 04/13] x86/fpu/xstate: Enumerate User Interrupts supervisor state | From | Sohil Mehta <> | Date | Mon, 27 Sep 2021 15:25:34 -0700 |
| |
On 9/23/2021 3:34 PM, Thomas Gleixner wrote: > On Mon, Sep 13 2021 at 13:01, Sohil Mehta wrote: >> Enable xstate supervisor support for User Interrupts by default. > What means enabled by default? It's enabled when available and not > disabled on the command line.
I'll remove it.
>> The user interrupt state for a task consists of the MSR state and the >> User Interrupt Flag (UIF) value. XSAVES and XRSTORS handle saving and >> restoring both of these states. >> >> <The supervisor XSTATE code might be reworked based on issues reported >> in the past. The Uintr context switching code would also need rework and >> additional testing in that regard.> > What? Which issues were reported and if they have been reported then how > is the provided code correct?
I apologize for causing this confusion. This comment was added a few months back when the PKRU and FPU code was being reworked. This comment is no longer valid.
>> +/* >> + * State component 14 is supervisor state used for User Interrupts state. >> + * The size of this state is 48 bytes >> + */ >> +struct uintr_state { >> + u64 handler; >> + u64 stack_adjust; >> + u32 uitt_size; >> + u8 uinv; >> + u8 pad1; >> + u8 pad2; >> + u8 uif_pad3; /* bit 7 - UIF, bits 6:0 - reserved */ > Please do not use tail comments. Also what kind of name is uif_pad3? > Bitfields exist for a reason.
An internal version of this used bitfields. I was suggested that use of bitfields is not recommended for x86 code.
The name uif_pad3 is really ugly though. I'll change it to a bitfield next time.
Thanks,
Sohil
| |