On 24/09/2024 1:30 pm, Roger Pau Monné wrote:
> On Tue, Sep 24, 2024 at 12:23:43PM +0100, Andrew Cooper wrote:
>> The logic would be more robust disabling SMAP based on its precense in CR4,
>> rather than on certain features.
>>
>> A forthcoming feature, LASS, needs the same treatment here.  Introduce 
>> minimum
>> enumeration information, although it will take a bit more work to get LASS
>> fully usable in guests.
> Reading the ISA, doesn't LASS require SMAP to be enabled in %cr4, and
> hence disabling SMAP already disables LASS? (without having to toggle
> the LASS %cr4 bit)
>
> "A supervisor-mode data access causes a LASS violation only if
> supervisor-mode access protection is enabled (because CR4.SMAP = 1)
> and either RFLAGS.AC = 0 or the access implicitly accesses a system
> data structure."
>
> We can consider also disabling it, but I think it would need to be
> noted that such disabling is not strictly necessary, as disabling SMAP
> already disables LASS.

Hmm.  LASS looks to have no CR4 dependencies on SMAP or SMEP, and the
ISE does suggest they can be used independently.

However, I see no connection to paging (beyond LMA), and that is going
to become a problem in due course.

Anyway - I'll drop the LASS aspect for now.  It can be left to whomever
gets some working real hardware first.

~Andrew

Reply via email to