]> git.baikalelectronics.ru Git - kernel.git/commit
sparc: Resolve conflict between sparc v9 and M7 on usage of bit 9 of TTE
authorKhalid Aziz <khalid.aziz@oracle.com>
Wed, 27 May 2015 16:00:46 +0000 (10:00 -0600)
committerDavid S. Miller <davem@davemloft.net>
Mon, 1 Jun 2015 05:15:01 +0000 (22:15 -0700)
commit29b292aa150ff715a2b3e5d7523fb026b8ae46e6
tree612e28b6b6678d133d960b9241401aa0e8ddc98d
parent01ed358f64d167d547cbae6d2a59ca35291deab1
sparc: Resolve conflict between sparc v9 and M7 on usage of bit 9 of TTE

sparc: Resolve conflict between sparc v9 and M7 on usage of bit 9 of TTE

Bit 9 of TTE is CV (Cacheable in V-cache) on sparc v9 processor while
the same bit 9 is MCDE (Memory Corruption Detection Enable) on M7
processor. This creates a conflicting usage of the same bit. Kernel
sets TTE.cv bit on all pages for sun4v architecture which works well
for sparc v9 but enables memory corruption detection on M7 processor
which is not the intent. This patch adds code to determine if kernel
is running on M7 processor and takes steps to not enable memory
corruption detection in TTE erroneously.

Signed-off-by: Khalid Aziz <khalid.aziz@oracle.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
arch/sparc/include/asm/pgtable_64.h
arch/sparc/include/asm/trap_block.h
arch/sparc/kernel/entry.h
arch/sparc/kernel/setup_64.c
arch/sparc/kernel/vmlinux.lds.S
arch/sparc/mm/init_64.c