lkml.org 
[lkml]   [2016]   [Mar]   [7]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [PATCH v2] sparc64: Add support for Application Data Integrity (ADI)
From
Date
On 03/07/2016 12:16 PM, David Miller wrote:
> From: Khalid Aziz <khalid.aziz@oracle.com>
> Date: Mon, 7 Mar 2016 11:24:54 -0700
>
>> Tags can be cleared by user by setting tag to 0. Tags are
>> automatically cleared by the hardware when the mapping for a virtual
>> address is removed from TSB (which is why swappable pages are a
>> problem), so kernel does not have to do it as part of clean up.
>
> You might be able to crib some bits for the Tag in the swp_entry_t, it's
> 64-bit and you can therefore steal bits from the offset field.
>
> That way you'll have the ADI tag in the page tables, ready to re-install
> at swapin time.
>

That is a possibility but limited in scope. An address range covered by
a single TTE can have large number of tags. Version tags are set on
cacheline. In extreme case, one could set a tag for each set of 64-bytes
in a page. Also tags are set completely in userspace and no transition
occurs to kernel space, so kernel has no idea of what tags have been
set. I have not found a way to query the MMU on tags.

I will think some more about it.

Thanks,
Khalid

\
 
 \ /
  Last update: 2016-03-07 23:01    [W:0.086 / U:0.072 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site