[1/2] Revert "Use the POWER8 Micro Partition Prefetch Engine in KVM HV on POWER8"
Michael Ellerman
mpe at ellerman.id.au
Wed Oct 21 22:42:32 AEDT 2015
On Wed, 2015-21-10 at 05:03:14 UTC, Paul Mackerras wrote:
> This reverts commit 9678cdaae93932473f696fdea5debf3eee1e1260 because
> the original commit had multiple, partly self-cancelling bugs, that
> could cause occasional memory corruption. In fact the logmpp instruction
> was using register r0 as the source of the buffer address and operation
> code, and depending on what was in r0, it would either do nothing or
> corrupt the 64k page pointed to by r0. The logmpp instruction encoding
> and the operation code definitions could be corrected, but then there is
> the problem that there is no clearly defined way to know when the
> hardware has finished writing to the buffer. The original commit
> attempted to work around this by aborting the write-out before starting
> the prefetch, but this is ineffective in the case where the virtual
> core is now executing on a different physical core from the one where
> the write-out was initiated.
>
> These problems plus advice from the hardware designers not to use the
> function (since the measured performance improvement from using the
> feature was actually mostly negative), mean that reverting the code is
> the best option.
>
> Signed-off-by: Paul Mackerras <paulus at samba.org>
Applied to powerpc fixes, thanks.
https://git.kernel.org/powerpc/c/23316316c1af0677a041c81f
cheers
More information about the Linuxppc-dev
mailing list