]> git.baikalelectronics.ru Git - kernel.git/commit
powerpc/booke64: Eemove mfspr srr1 duplicate in exception prolog
authorMihai Caraman <mihai.caraman@freescale.com>
Mon, 6 Aug 2012 03:27:06 +0000 (03:27 +0000)
committerBenjamin Herrenschmidt <benh@kernel.crashing.org>
Wed, 5 Sep 2012 05:35:49 +0000 (15:35 +1000)
commitea42deb442acf50b9be866f9f15d0cac34a353c5
tree1513553a12f5bf406872d0de6e05aa47093bc807
parent9a7aa6de98865fbd35eb7b2348665d66a18ca880
powerpc/booke64: Eemove mfspr srr1 duplicate in exception prolog

Refactor exception prolog to get rid of mfspr srr1 duplicate. This was
introduced by KVM integration, with DO_KVM macro logic expecting srr1 value
earlier in r11.
Reserve r11 to hold srr1's value also required at the end of the prolog and
free up r10 to serve as spare in addition macros.
For syscalls case this change does not add any performance penalty. For irq
soft-disabled case the change adds a store/load of conditional register value
to/from a paca slot. Paca slots fit in one 64-byte cache line so these
additional operations have little impact on performance.

Signed-off-by: Mihai Caraman <mihai.caraman@freescale.com>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
arch/powerpc/kernel/exceptions-64e.S