]> www.infradead.org Git - users/jedix/linux-maple.git/commit
sparc64: Save ADI tags on ADI enabled platforms only
authorKhalid Aziz <khalid.aziz@oracle.com>
Thu, 27 Apr 2017 17:40:04 +0000 (11:40 -0600)
committerAllen Pais <allen.pais@oracle.com>
Tue, 16 May 2017 04:30:55 +0000 (10:00 +0530)
commitd803124405755dacaddf9b2bdfd2b32b8fd01b5b
treef4ad81033a28540092506f2a530c4b8c4afc6aa7
parentce505b1549bb0c84abe927a8e51fcbaebee645f4
sparc64: Save ADI tags on ADI enabled platforms only

When a page is ready to be swapped out or migrated, kernel saves the
ADI tags associated with it. To determine if ADI tags need to be saved
for a page, it checks if TTE.MCD bit is set for the page. M7 and newer
processors chose to reuse the TTE.CV bit from older processors for
TTE.MCD. When the kernel is running on non-ADI capable processors,
TTE.MCD bit is actually TTE.CV and it is set on older processors by
default for older processors by kernel. This causes kernel to
attempt to save the ADI tags for the page using MCD ASIs which are
not available on older processors. This causes a data access exception.
This patch adds a conditional to save ADI tags only on ADI capable
platforms.

Orabug: 25961592

Signed-off-by: Khalid Aziz <khalid.aziz@oracle.com>
Signed-off-by: Allen Pais <allen.pais@oracle.com>
arch/sparc/include/asm/pgtable_64.h