[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <56DE0B1B.1000000@oracle.com>
Date: Mon, 7 Mar 2016 15:13:31 -0800
From: Rob Gardner <rob.gardner@...cle.com>
To: David Miller <davem@...emloft.net>, khalid.aziz@...cle.com
Cc: corbet@....net, akpm@...ux-foundation.org,
dingel@...ux.vnet.ibm.com, bob.picco@...cle.com,
kirill.shutemov@...ux.intel.com, aneesh.kumar@...ux.vnet.ibm.com,
aarcange@...hat.com, arnd@...db.de, sparclinux@...r.kernel.org,
mhocko@...e.cz, chris.hyser@...cle.com, richard@....at,
vbabka@...e.cz, koct9i@...il.com, oleg@...hat.com,
gthelen@...gle.com, jack@...e.cz, xiexiuqi@...wei.com,
Vineet.Gupta1@...opsys.com, luto@...nel.org, ebiederm@...ssion.com,
bsegall@...gle.com, geert@...ux-m68k.org, dave@...olabs.net,
adobriyan@...il.com, linux-doc@...r.kernel.org,
linux-kernel@...r.kernel.org, linux-mm@...ck.org,
linux-arch@...r.kernel.org, linux-api@...r.kernel.org
Subject: Re: [PATCH v2] sparc64: Add support for Application Data Integrity
(ADI)
On 03/07/2016 01:38 PM, David Miller wrote:
> From: Khalid Aziz <khalid.aziz@...cle.com>
> Date: Mon, 7 Mar 2016 14:33:56 -0700
>
>> On 03/07/2016 12:16 PM, David Miller wrote:
>>> From: Khalid Aziz <khalid.aziz@...cle.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.
> That would mean that ADI is impossible to use for swappable memory.
>
> ...
>
> If that's true I'm extremely disappointed that they devoted so much
> silicon and engineering to this feature yet didn't take that one
> critical step to make it generally useful. :(
You can easily read ADI tags with a simple ldxa #ASI_MCD_PRIMARY
instruction.
Rob
Powered by blists - more mailing lists