diff for duplicates of <146506568321020@kroah.com> diff --git a/a/content_digest b/N1/content_digest index a1611aa..4a0cde9 100644 --- a/a/content_digest +++ b/N1/content_digest @@ -6,8 +6,8 @@ linux-kernel@vger.kernel.org linux-mips@linux-mips.org " ralf@linux-mips.org\0" - "Cc\0<stable@vger.kernel.org>" - " <stable-commits@vger.kernel.org>\0" + "Cc\0stable@vger.kernel.org" + " stable-commits@vger.kernel.org\0" "\00:1\0" "b\0" "\n" @@ -25,4 +25,4 @@ "If you, or anyone else, feels it should not be added to the stable tree,\n" please let <stable@vger.kernel.org> know about it. -d883cba62fcc3fbebb72b0d907618d93750a8cc7fd0d31b9cf64f4f7cbae9caf +fcce7ae6bfd2278fb4f860b6578d1b80e24338d42fd0cbc2891f177e8d7e42af
diff --git a/a/1.txt b/N2/1.txt index 9d65f37..dff3d23 100644 --- a/a/1.txt +++ b/N2/1.txt @@ -12,3 +12,118 @@ and it can be found in the queue-4.6 subdirectory. If you, or anyone else, feels it should not be added to the stable tree, please let <stable@vger.kernel.org> know about it. + + +>From aedcfbe06558a9f53002e82d5be64c6c94687726 Mon Sep 17 00:00:00 2001 +From: Harvey Hunt <harvey.hunt@imgtec.com> +Date: Wed, 25 May 2016 11:06:35 +0100 +Subject: MIPS: lib: Mark intrinsics notrace + +From: Harvey Hunt <harvey.hunt@imgtec.com> + +commit aedcfbe06558a9f53002e82d5be64c6c94687726 upstream. + +On certain MIPS32 devices, the ftrace tracer "function_graph" uses +__lshrdi3() during the capturing of trace data. ftrace then attempts to +trace __lshrdi3() which leads to infinite recursion and a stack overflow. +Fix this by marking __lshrdi3() as notrace. Mark the other compiler +intrinsics as notrace in case the compiler decides to use them in the +ftrace path. + +Signed-off-by: Harvey Hunt <harvey.hunt@imgtec.com> +Cc: <linux-mips@linux-mips.org> +Cc: <linux-kernel@vger.kernel.org> +Patchwork: https://patchwork.linux-mips.org/patch/13354/ +Signed-off-by: Ralf Baechle <ralf@linux-mips.org> +Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> + +--- + arch/mips/lib/ashldi3.c | 2 +- + arch/mips/lib/ashrdi3.c | 2 +- + arch/mips/lib/bswapdi.c | 2 +- + arch/mips/lib/bswapsi.c | 2 +- + arch/mips/lib/cmpdi2.c | 2 +- + arch/mips/lib/lshrdi3.c | 2 +- + arch/mips/lib/ucmpdi2.c | 2 +- + 7 files changed, 7 insertions(+), 7 deletions(-) + +--- a/arch/mips/lib/ashldi3.c ++++ b/arch/mips/lib/ashldi3.c +@@ -2,7 +2,7 @@ + + #include "libgcc.h" + +-long long __ashldi3(long long u, word_type b) ++long long notrace __ashldi3(long long u, word_type b) + { + DWunion uu, w; + word_type bm; +--- a/arch/mips/lib/ashrdi3.c ++++ b/arch/mips/lib/ashrdi3.c +@@ -2,7 +2,7 @@ + + #include "libgcc.h" + +-long long __ashrdi3(long long u, word_type b) ++long long notrace __ashrdi3(long long u, word_type b) + { + DWunion uu, w; + word_type bm; +--- a/arch/mips/lib/bswapdi.c ++++ b/arch/mips/lib/bswapdi.c +@@ -1,6 +1,6 @@ + #include <linux/module.h> + +-unsigned long long __bswapdi2(unsigned long long u) ++unsigned long long notrace __bswapdi2(unsigned long long u) + { + return (((u) & 0xff00000000000000ull) >> 56) | + (((u) & 0x00ff000000000000ull) >> 40) | +--- a/arch/mips/lib/bswapsi.c ++++ b/arch/mips/lib/bswapsi.c +@@ -1,6 +1,6 @@ + #include <linux/module.h> + +-unsigned int __bswapsi2(unsigned int u) ++unsigned int notrace __bswapsi2(unsigned int u) + { + return (((u) & 0xff000000) >> 24) | + (((u) & 0x00ff0000) >> 8) | +--- a/arch/mips/lib/cmpdi2.c ++++ b/arch/mips/lib/cmpdi2.c +@@ -2,7 +2,7 @@ + + #include "libgcc.h" + +-word_type __cmpdi2(long long a, long long b) ++word_type notrace __cmpdi2(long long a, long long b) + { + const DWunion au = { + .ll = a +--- a/arch/mips/lib/lshrdi3.c ++++ b/arch/mips/lib/lshrdi3.c +@@ -2,7 +2,7 @@ + + #include "libgcc.h" + +-long long __lshrdi3(long long u, word_type b) ++long long notrace __lshrdi3(long long u, word_type b) + { + DWunion uu, w; + word_type bm; +--- a/arch/mips/lib/ucmpdi2.c ++++ b/arch/mips/lib/ucmpdi2.c +@@ -2,7 +2,7 @@ + + #include "libgcc.h" + +-word_type __ucmpdi2(unsigned long long a, unsigned long long b) ++word_type notrace __ucmpdi2(unsigned long long a, unsigned long long b) + { + const DWunion au = {.ll = a}; + const DWunion bu = {.ll = b}; + + +Patches currently in stable-queue which might be from harvey.hunt@imgtec.com are + +queue-4.6/mips-lib-mark-intrinsics-notrace.patch diff --git a/a/content_digest b/N2/content_digest index a1611aa..fef009b 100644 --- a/a/content_digest +++ b/N2/content_digest @@ -23,6 +23,121 @@ "and it can be found in the queue-4.6 subdirectory.\n" "\n" "If you, or anyone else, feels it should not be added to the stable tree,\n" - please let <stable@vger.kernel.org> know about it. + "please let <stable@vger.kernel.org> know about it.\n" + "\n" + "\n" + ">From aedcfbe06558a9f53002e82d5be64c6c94687726 Mon Sep 17 00:00:00 2001\n" + "From: Harvey Hunt <harvey.hunt@imgtec.com>\n" + "Date: Wed, 25 May 2016 11:06:35 +0100\n" + "Subject: MIPS: lib: Mark intrinsics notrace\n" + "\n" + "From: Harvey Hunt <harvey.hunt@imgtec.com>\n" + "\n" + "commit aedcfbe06558a9f53002e82d5be64c6c94687726 upstream.\n" + "\n" + "On certain MIPS32 devices, the ftrace tracer \"function_graph\" uses\n" + "__lshrdi3() during the capturing of trace data. ftrace then attempts to\n" + "trace __lshrdi3() which leads to infinite recursion and a stack overflow.\n" + "Fix this by marking __lshrdi3() as notrace. Mark the other compiler\n" + "intrinsics as notrace in case the compiler decides to use them in the\n" + "ftrace path.\n" + "\n" + "Signed-off-by: Harvey Hunt <harvey.hunt@imgtec.com>\n" + "Cc: <linux-mips@linux-mips.org>\n" + "Cc: <linux-kernel@vger.kernel.org>\n" + "Patchwork: https://patchwork.linux-mips.org/patch/13354/\n" + "Signed-off-by: Ralf Baechle <ralf@linux-mips.org>\n" + "Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>\n" + "\n" + "---\n" + " arch/mips/lib/ashldi3.c | 2 +-\n" + " arch/mips/lib/ashrdi3.c | 2 +-\n" + " arch/mips/lib/bswapdi.c | 2 +-\n" + " arch/mips/lib/bswapsi.c | 2 +-\n" + " arch/mips/lib/cmpdi2.c | 2 +-\n" + " arch/mips/lib/lshrdi3.c | 2 +-\n" + " arch/mips/lib/ucmpdi2.c | 2 +-\n" + " 7 files changed, 7 insertions(+), 7 deletions(-)\n" + "\n" + "--- a/arch/mips/lib/ashldi3.c\n" + "+++ b/arch/mips/lib/ashldi3.c\n" + "@@ -2,7 +2,7 @@\n" + " \n" + " #include \"libgcc.h\"\n" + " \n" + "-long long __ashldi3(long long u, word_type b)\n" + "+long long notrace __ashldi3(long long u, word_type b)\n" + " {\n" + " \tDWunion uu, w;\n" + " \tword_type bm;\n" + "--- a/arch/mips/lib/ashrdi3.c\n" + "+++ b/arch/mips/lib/ashrdi3.c\n" + "@@ -2,7 +2,7 @@\n" + " \n" + " #include \"libgcc.h\"\n" + " \n" + "-long long __ashrdi3(long long u, word_type b)\n" + "+long long notrace __ashrdi3(long long u, word_type b)\n" + " {\n" + " \tDWunion uu, w;\n" + " \tword_type bm;\n" + "--- a/arch/mips/lib/bswapdi.c\n" + "+++ b/arch/mips/lib/bswapdi.c\n" + "@@ -1,6 +1,6 @@\n" + " #include <linux/module.h>\n" + " \n" + "-unsigned long long __bswapdi2(unsigned long long u)\n" + "+unsigned long long notrace __bswapdi2(unsigned long long u)\n" + " {\n" + " \treturn (((u) & 0xff00000000000000ull) >> 56) |\n" + " \t (((u) & 0x00ff000000000000ull) >> 40) |\n" + "--- a/arch/mips/lib/bswapsi.c\n" + "+++ b/arch/mips/lib/bswapsi.c\n" + "@@ -1,6 +1,6 @@\n" + " #include <linux/module.h>\n" + " \n" + "-unsigned int __bswapsi2(unsigned int u)\n" + "+unsigned int notrace __bswapsi2(unsigned int u)\n" + " {\n" + " \treturn (((u) & 0xff000000) >> 24) |\n" + " \t (((u) & 0x00ff0000) >> 8) |\n" + "--- a/arch/mips/lib/cmpdi2.c\n" + "+++ b/arch/mips/lib/cmpdi2.c\n" + "@@ -2,7 +2,7 @@\n" + " \n" + " #include \"libgcc.h\"\n" + " \n" + "-word_type __cmpdi2(long long a, long long b)\n" + "+word_type notrace __cmpdi2(long long a, long long b)\n" + " {\n" + " \tconst DWunion au = {\n" + " \t\t.ll = a\n" + "--- a/arch/mips/lib/lshrdi3.c\n" + "+++ b/arch/mips/lib/lshrdi3.c\n" + "@@ -2,7 +2,7 @@\n" + " \n" + " #include \"libgcc.h\"\n" + " \n" + "-long long __lshrdi3(long long u, word_type b)\n" + "+long long notrace __lshrdi3(long long u, word_type b)\n" + " {\n" + " \tDWunion uu, w;\n" + " \tword_type bm;\n" + "--- a/arch/mips/lib/ucmpdi2.c\n" + "+++ b/arch/mips/lib/ucmpdi2.c\n" + "@@ -2,7 +2,7 @@\n" + " \n" + " #include \"libgcc.h\"\n" + " \n" + "-word_type __ucmpdi2(unsigned long long a, unsigned long long b)\n" + "+word_type notrace __ucmpdi2(unsigned long long a, unsigned long long b)\n" + " {\n" + " \tconst DWunion au = {.ll = a};\n" + " \tconst DWunion bu = {.ll = b};\n" + "\n" + "\n" + "Patches currently in stable-queue which might be from harvey.hunt@imgtec.com are\n" + "\n" + queue-4.6/mips-lib-mark-intrinsics-notrace.patch -d883cba62fcc3fbebb72b0d907618d93750a8cc7fd0d31b9cf64f4f7cbae9caf +81f89aea3b344c5b3b42354d75641b6348a36590795a0a9be2ce8bb0b246ed09
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.