[PATCH 0/3] Workaround the Out-of-order Issue of Loongson-2F

From: Wu Zhangjin
Date: Tue Mar 09 2010 - 12:19:15 EST


From: Wu Zhangjin <wuzhangjin@xxxxxxxxx>

As the Chapter 15: "Errata: Issue of Out-of-order in loongson"[1] shows, to
workaround the Issue of Loongson-2FïWe need to do:

o When switching from user model to kernel model, you should flush the branch
target history such as BTB and RAS.

o Doing some tricks to the indirect branch target to make sure that the
indirect branch target can not be in the I/O region.

This patchset applied the above methods and for the binutils patch[3] have been
merged into binutils 2.20.1, so, it's time to upstream this patchset now.
without this patch, the machines will hang when the instruction sequence hit
the Out-of-order Issue of Loongson-2F, therefore, this patchset is very urgent
for both 2.6.33 and 2.6.34.

[1] Chinese Version: http://www.loongson.cn/uploadfile/file/20080821113149.pdf
[2] English Version of Chapter 15:
http://groups.google.com.hk/group/loongson-dev/msg/e0d2e220958f10a6?dmode=source
[3] http://sourceware.org/ml/binutils/2009-11/msg00387.html

Regards,
Wu Zhangjin

Wu Zhangjin (3):
Loongson-2F: Flush the branch target history such as BTB and RAS
Loongson-2F: Enable fixups of binutils 2.20.1
Loongson-2F: Fixup of problems introduced by -mfix-loongson2f-jump of
binutils 2.20.1

arch/mips/Makefile | 4 +++-
arch/mips/include/asm/stackframe.h | 19 +++++++++++++++++++
arch/mips/loongson/common/reset.c | 12 +++++++++++-
3 files changed, 33 insertions(+), 2 deletions(-)

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/