--- /dev/null
+From 1ed62ca648557b884d117a4a8bbcf2ae4e2d1153 Mon Sep 17 00:00:00 2001
+From: Lennox Wu <lennox.wu@gmail.com>
+Date: Sat, 14 Sep 2013 13:58:40 +0800
+Subject: Score: Implement the function csum_ipv6_magic
+
+From: Lennox Wu <lennox.wu@gmail.com>
+
+commit 1ed62ca648557b884d117a4a8bbcf2ae4e2d1153 upstream.
+
+Signed-off-by: Lennox Wu <lennox.wu@gmail.com>
+Guenter Roeck <linux@roeck-us.net>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ arch/score/include/asm/checksum.h | 93 ++++++++++++++++++++------------------
+ 1 file changed, 51 insertions(+), 42 deletions(-)
+
+--- a/arch/score/include/asm/checksum.h
++++ b/arch/score/include/asm/checksum.h
+@@ -184,48 +184,57 @@ static inline __sum16 csum_ipv6_magic(co
+ __wsum sum)
+ {
+ __asm__ __volatile__(
+- ".set\tnoreorder\t\t\t# csum_ipv6_magic\n\t"
+- ".set\tnoat\n\t"
+- "addu\t%0, %5\t\t\t# proto (long in network byte order)\n\t"
+- "sltu\t$1, %0, %5\n\t"
+- "addu\t%0, $1\n\t"
+- "addu\t%0, %6\t\t\t# csum\n\t"
+- "sltu\t$1, %0, %6\n\t"
+- "lw\t%1, 0(%2)\t\t\t# four words source address\n\t"
+- "addu\t%0, $1\n\t"
+- "addu\t%0, %1\n\t"
+- "sltu\t$1, %0, %1\n\t"
+- "lw\t%1, 4(%2)\n\t"
+- "addu\t%0, $1\n\t"
+- "addu\t%0, %1\n\t"
+- "sltu\t$1, %0, %1\n\t"
+- "lw\t%1, 8(%2)\n\t"
+- "addu\t%0, $1\n\t"
+- "addu\t%0, %1\n\t"
+- "sltu\t$1, %0, %1\n\t"
+- "lw\t%1, 12(%2)\n\t"
+- "addu\t%0, $1\n\t"
+- "addu\t%0, %1\n\t"
+- "sltu\t$1, %0, %1\n\t"
+- "lw\t%1, 0(%3)\n\t"
+- "addu\t%0, $1\n\t"
+- "addu\t%0, %1\n\t"
+- "sltu\t$1, %0, %1\n\t"
+- "lw\t%1, 4(%3)\n\t"
+- "addu\t%0, $1\n\t"
+- "addu\t%0, %1\n\t"
+- "sltu\t$1, %0, %1\n\t"
+- "lw\t%1, 8(%3)\n\t"
+- "addu\t%0, $1\n\t"
+- "addu\t%0, %1\n\t"
+- "sltu\t$1, %0, %1\n\t"
+- "lw\t%1, 12(%3)\n\t"
+- "addu\t%0, $1\n\t"
+- "addu\t%0, %1\n\t"
+- "sltu\t$1, %0, %1\n\t"
+- "addu\t%0, $1\t\t\t# Add final carry\n\t"
+- ".set\tnoat\n\t"
+- ".set\tnoreorder"
++ ".set\tvolatile\t\t\t# csum_ipv6_magic\n\t"
++ "add\t%0, %0, %5\t\t\t# proto (long in network byte order)\n\t"
++ "cmp.c\t%5, %0\n\t"
++ "bleu 1f\n\t"
++ "addi\t%0, 0x1\n\t"
++ "1:add\t%0, %0, %6\t\t\t# csum\n\t"
++ "cmp.c\t%6, %0\n\t"
++ "lw\t%1, [%2, 0]\t\t\t# four words source address\n\t"
++ "bleu 1f\n\t"
++ "addi\t%0, 0x1\n\t"
++ "1:add\t%0, %0, %1\n\t"
++ "cmp.c\t%1, %0\n\t"
++ "1:lw\t%1, [%2, 4]\n\t"
++ "bleu 1f\n\t"
++ "addi\t%0, 0x1\n\t"
++ "1:add\t%0, %0, %1\n\t"
++ "cmp.c\t%1, %0\n\t"
++ "lw\t%1, [%2,8]\n\t"
++ "bleu 1f\n\t"
++ "addi\t%0, 0x1\n\t"
++ "1:add\t%0, %0, %1\n\t"
++ "cmp.c\t%1, %0\n\t"
++ "lw\t%1, [%2, 12]\n\t"
++ "bleu 1f\n\t"
++ "addi\t%0, 0x1\n\t"
++ "1:add\t%0, %0,%1\n\t"
++ "cmp.c\t%1, %0\n\t"
++ "lw\t%1, [%3, 0]\n\t"
++ "bleu 1f\n\t"
++ "addi\t%0, 0x1\n\t"
++ "1:add\t%0, %0, %1\n\t"
++ "cmp.c\t%1, %0\n\t"
++ "lw\t%1, [%3, 4]\n\t"
++ "bleu 1f\n\t"
++ "addi\t%0, 0x1\n\t"
++ "1:add\t%0, %0, %1\n\t"
++ "cmp.c\t%1, %0\n\t"
++ "lw\t%1, [%3, 8]\n\t"
++ "bleu 1f\n\t"
++ "addi\t%0, 0x1\n\t"
++ "1:add\t%0, %0, %1\n\t"
++ "cmp.c\t%1, %0\n\t"
++ "lw\t%1, [%3, 12]\n\t"
++ "bleu 1f\n\t"
++ "addi\t%0, 0x1\n\t"
++ "1:add\t%0, %0, %1\n\t"
++ "cmp.c\t%1, %0\n\t"
++ "bleu 1f\n\t"
++ "addi\t%0, 0x1\n\t"
++ "1:\n\t"
++ ".set\toptimize"
+ : "=r" (sum), "=r" (proto)
+ : "r" (saddr), "r" (daddr),
+ "0" (htonl(len)), "1" (htonl(proto)), "r" (sum));
--- /dev/null
+From df9e4d1c39c472cb44d81ab2ed2db503fc486e3b Mon Sep 17 00:00:00 2001
+From: Lennox Wu <lennox.wu@gmail.com>
+Date: Sat, 14 Sep 2013 14:41:22 +0800
+Subject: Score: Modify the Makefile of Score, remove -mlong-calls for compiling
+
+From: Lennox Wu <lennox.wu@gmail.com>
+
+commit df9e4d1c39c472cb44d81ab2ed2db503fc486e3b upstream.
+
+Signed-off-by: Lennox Wu <lennox.wu@gmail.com>
+Cc: Guenter Roeck <linux@roeck-us.net>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ arch/score/Makefile | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+--- a/arch/score/Makefile
++++ b/arch/score/Makefile
+@@ -20,8 +20,8 @@ cflags-y += -G0 -pipe -mel -mnhwloop -D_
+ #
+ KBUILD_AFLAGS += $(cflags-y)
+ KBUILD_CFLAGS += $(cflags-y)
+-KBUILD_AFLAGS_MODULE += -mlong-calls
+-KBUILD_CFLAGS_MODULE += -mlong-calls
++KBUILD_AFLAGS_MODULE +=
++KBUILD_CFLAGS_MODULE +=
+ LDFLAGS += --oformat elf32-littlescore
+ LDFLAGS_vmlinux += -G0 -static -nostdlib
+
--- /dev/null
+From ae49b83dcacfb69e22092cab688c415c2f2d870c Mon Sep 17 00:00:00 2001
+From: Jiang Liu <liuj97@gmail.com>
+Date: Wed, 3 Jul 2013 15:03:37 -0700
+Subject: score: normalize global variables exported by vmlinux.lds
+
+From: Jiang Liu <liuj97@gmail.com>
+
+commit ae49b83dcacfb69e22092cab688c415c2f2d870c upstream.
+
+Generate mandatory global variables _sdata in file vmlinux.lds.
+
+Signed-off-by: Jiang Liu <jiang.liu@huawei.com>
+Cc: Chen Liqin <liqin.chen@sunplusct.com>
+Cc: Lennox Wu <lennox.wu@gmail.com>
+Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
+Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
+Cc: Guenter Roeck <linux@roeck-us.net>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ arch/score/kernel/vmlinux.lds.S | 1 +
+ 1 file changed, 1 insertion(+)
+
+--- a/arch/score/kernel/vmlinux.lds.S
++++ b/arch/score/kernel/vmlinux.lds.S
+@@ -49,6 +49,7 @@ SECTIONS
+ }
+
+ . = ALIGN(16);
++ _sdata = .; /* Start of data section */
+ RODATA
+
+ EXCEPTION_TABLE(16)
--- /dev/null
+From 5fbbf8a1a93452b26e7791cf32cefce62b0a480b Mon Sep 17 00:00:00 2001
+From: Lennox Wu <lennox.wu@gmail.com>
+Date: Sat, 14 Sep 2013 13:48:37 +0800
+Subject: Score: The commit is for compiling successfully.
+
+From: Lennox Wu <lennox.wu@gmail.com>
+
+commit 5fbbf8a1a93452b26e7791cf32cefce62b0a480b upstream.
+
+The modifications include:
+ 1. Kconfig of Score: we don't support ioremap
+ 2. Missed headfile including
+ 3. There are some errors in other people's commit not checked by us, we fix it now
+ 3.1 arch/score/kernel/entry.S: wrong instructions
+ 3.2 arch/score/kernel/process.c : just some typos
+
+Signed-off-by: Lennox Wu <lennox.wu@gmail.com>
+Cc: Guenter Roeck <linux@roeck-us.net>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ arch/score/Kconfig | 3 +++
+ arch/score/include/asm/io.h | 1 -
+ arch/score/include/asm/pgalloc.h | 2 +-
+ arch/score/kernel/entry.S | 4 ++--
+ arch/score/kernel/process.c | 4 ++--
+ 5 files changed, 8 insertions(+), 6 deletions(-)
+
+--- a/arch/score/Kconfig
++++ b/arch/score/Kconfig
+@@ -109,3 +109,6 @@ source "security/Kconfig"
+ source "crypto/Kconfig"
+
+ source "lib/Kconfig"
++
++config NO_IOMEM
++ def_bool y
+--- a/arch/score/include/asm/io.h
++++ b/arch/score/include/asm/io.h
+@@ -5,5 +5,4 @@
+
+ #define virt_to_bus virt_to_phys
+ #define bus_to_virt phys_to_virt
+-
+ #endif /* _ASM_SCORE_IO_H */
+--- a/arch/score/include/asm/pgalloc.h
++++ b/arch/score/include/asm/pgalloc.h
+@@ -2,7 +2,7 @@
+ #define _ASM_SCORE_PGALLOC_H
+
+ #include <linux/mm.h>
+-
++#include <linux/highmem.h>
+ static inline void pmd_populate_kernel(struct mm_struct *mm, pmd_t *pmd,
+ pte_t *pte)
+ {
+--- a/arch/score/kernel/entry.S
++++ b/arch/score/kernel/entry.S
+@@ -264,7 +264,7 @@ resume_kernel:
+ disable_irq
+ lw r8, [r28, TI_PRE_COUNT]
+ cmpz.c r8
+- bne r8, restore_all
++ bne restore_all
+ need_resched:
+ lw r8, [r28, TI_FLAGS]
+ andri.c r9, r8, _TIF_NEED_RESCHED
+@@ -415,7 +415,7 @@ ENTRY(handle_sys)
+ sw r9, [r0, PT_EPC]
+
+ cmpi.c r27, __NR_syscalls # check syscall number
+- bgeu illegal_syscall
++ bcs illegal_syscall
+
+ slli r8, r27, 2 # get syscall routine
+ la r11, sys_call_table
+--- a/arch/score/kernel/process.c
++++ b/arch/score/kernel/process.c
+@@ -78,8 +78,8 @@ int copy_thread(unsigned long clone_flag
+ p->thread.reg0 = (unsigned long) childregs;
+ if (unlikely(p->flags & PF_KTHREAD)) {
+ memset(childregs, 0, sizeof(struct pt_regs));
+- p->thread->reg12 = usp;
+- p->thread->reg13 = arg;
++ p->thread.reg12 = usp;
++ p->thread.reg13 = arg;
+ p->thread.reg3 = (unsigned long) ret_from_kernel_thread;
+ } else {
+ *childregs = *current_pt_regs();
rtmutex-detect-changes-in-the-pi-lock-chain.patch
rtmutex-handle-deadlock-detection-smarter.patch
rtmutex-plug-slow-unlock-race.patch
+score-normalize-global-variables-exported-by-vmlinux.lds.patch
+score-implement-the-function-csum_ipv6_magic.patch
+score-the-commit-is-for-compiling-successfully.patch
+score-modify-the-makefile-of-score-remove-mlong-calls-for-compiling.patch