]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
3.10-stable patches
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sun, 31 Jan 2016 19:22:53 +0000 (11:22 -0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sun, 31 Jan 2016 19:22:53 +0000 (11:22 -0800)
added patches:
recordmcount-fix-endianness-handling-bug-for-nop_mcount.patch

queue-3.10/recordmcount-fix-endianness-handling-bug-for-nop_mcount.patch [new file with mode: 0644]
queue-3.10/series

diff --git a/queue-3.10/recordmcount-fix-endianness-handling-bug-for-nop_mcount.patch b/queue-3.10/recordmcount-fix-endianness-handling-bug-for-nop_mcount.patch
new file mode 100644 (file)
index 0000000..cb03ae0
--- /dev/null
@@ -0,0 +1,34 @@
+From c84da8b9ad3761eef43811181c7e896e9834b26b Mon Sep 17 00:00:00 2001
+From: libin <huawei.libin@huawei.com>
+Date: Tue, 3 Nov 2015 08:58:47 +0800
+Subject: recordmcount: Fix endianness handling bug for nop_mcount
+
+From: libin <huawei.libin@huawei.com>
+
+commit c84da8b9ad3761eef43811181c7e896e9834b26b upstream.
+
+In nop_mcount, shdr->sh_offset and welp->r_offset should handle
+endianness properly, otherwise it will trigger Segmentation fault
+if the recordmcount main and file.o have different endianness.
+
+Link: http://lkml.kernel.org/r/563806C7.7070606@huawei.com
+
+Signed-off-by: Li Bin <huawei.libin@huawei.com>
+Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ scripts/recordmcount.h |    2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+--- a/scripts/recordmcount.h
++++ b/scripts/recordmcount.h
+@@ -377,7 +377,7 @@ static void nop_mcount(Elf_Shdr const *c
+               if (mcountsym == Elf_r_sym(relp) && !is_fake_mcount(relp)) {
+                       if (make_nop)
+-                              ret = make_nop((void *)ehdr, shdr->sh_offset + relp->r_offset);
++                              ret = make_nop((void *)ehdr, _w(shdr->sh_offset) + _w(relp->r_offset));
+                       if (warn_on_notrace_sect && !once) {
+                               printf("Section %s has mcount callers being ignored\n",
+                                      txtname);
index 829ab9249f56a0858a2470ec19382832aa07bf08..83f880164394637a90b4d365e1e3fed991d0fbc0 100644 (file)
@@ -1 +1,2 @@
+recordmcount-fix-endianness-handling-bug-for-nop_mcount.patch
 xhci-fix-placement-of-call-to-usb_disabled.patch