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

From: Rob Gardner
Date: Wed Jan 04 2017 - 19:06:24 EST


On 01/04/2017 04:01 PM, Dave Hansen wrote:
On 01/04/2017 03:58 PM, Khalid Aziz wrote:
How does this all work with large pages?
It works with large pages the same way as normal sized pages. The TTE
for a large page also will have the mcd bit set in it and tags are set
and referenced the same way.
But does the user setting the tags need to know what the page size is?

What if two different small pages have different tags and khugepaged
comes along and tries to collapse them? Will the page be split if a
user attempts to set two different tags inside two different small-page
portions of a single THP?

The MCD tags operate at a resolution of cache lines (64 bytes). Page sizes don't matter except that each virtual page must have a bit set in its TTE to allow MCD to be enabled on the page. Any page can have many different tags, one for each cache line.

Rob