Re: [PATCH v2] sparc64: Add support for Application Data Integrity (ADI)

From
Andy Lutomirski <luto@amacapital.net>
Date
2016-03-07 17:54:24
Also in
linux-arch, linux-mm, lkml, sparclinux
Reply to
Dave Hansen, 2016-03-07
On Mon, Mar 7, 2016 at 9:46 AM, Dave Hansen [off-list ref] wrote:
On 03/07/2016 08:06 AM, Khalid Aziz wrote:
quoted
Top 4-bits of sparc64 virtual address are used for version tag only when
a process has its PSTATE.mcde bit set and it is accessing a memory
region that has ADI enabled on it (TTE.mcd set) and a version tag was
set on the virtual address being accessed. These 4-bits retain their
original semantics in all other cases.
OK, so this effectively reduces the address space of a process using the
feature.  Do we need to do anything explicit to keep an app from using
that address space?  Do we make sure the kernel doesn't place VMAs
there?  Do we respect mmap() hints that try to place memory there?
Also, what happens when someone does this to an aliased page?  This
could be a MAP_SHARED mapping or a not-yet-COWed MAP_ANONYMOUS
mapping.

Also, what am I missing?  Tying these tags to the physical page seems
like a poor design to me.  This seems really awkward to use.

-- 
Andy Lutomirski
AMA Capital Management, LLC
Thread (62 messages) 62 messages, 8 authors, last reply 2016-03-08
Keyboard shortcuts
hback out one level
jnext message in thread / next series-diff position
kprevious message in thread / previous series-diff position
ldrill in
Escclose help / fold thread tree
?toggle this help