]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
3.10-stable patches
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 1 Oct 2013 21:01:57 +0000 (14:01 -0700)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 1 Oct 2013 21:01:57 +0000 (14:01 -0700)
added patches:
tools-lib-lk-uninclude-linux-magic.h-in-debugfs.c.patch
x86-efi-don-t-map-boot-services-on-i386.patch
x86-reboot-add-quirk-to-make-dell-c6100-use-reboot-pci-automatically.patch

queue-3.10/series
queue-3.10/tools-lib-lk-uninclude-linux-magic.h-in-debugfs.c.patch [new file with mode: 0644]
queue-3.10/x86-efi-don-t-map-boot-services-on-i386.patch [new file with mode: 0644]
queue-3.10/x86-reboot-add-quirk-to-make-dell-c6100-use-reboot-pci-automatically.patch [new file with mode: 0644]

index cccbe3e0b2db3410a1b9fa3739ecac976229db06..ebcfe96d9d51d779932a487ae9221bf5b93c8bb9 100644 (file)
@@ -9,3 +9,6 @@ bcache-fix-a-dumb-cpu-spinning-bug-in-writeback.patch
 bcache-fix-a-shrinker-deadlock.patch
 bcache-fix-for-handling-overlapping-extents-when-reading-in-a-btree-node.patch
 bcache-fix-flushes-in-writeback-mode.patch
+x86-reboot-add-quirk-to-make-dell-c6100-use-reboot-pci-automatically.patch
+tools-lib-lk-uninclude-linux-magic.h-in-debugfs.c.patch
+x86-efi-don-t-map-boot-services-on-i386.patch
diff --git a/queue-3.10/tools-lib-lk-uninclude-linux-magic.h-in-debugfs.c.patch b/queue-3.10/tools-lib-lk-uninclude-linux-magic.h-in-debugfs.c.patch
new file mode 100644 (file)
index 0000000..cd411f7
--- /dev/null
@@ -0,0 +1,55 @@
+From ce7eebe5c3deef8e19c177c24ee75843256e69ca Mon Sep 17 00:00:00 2001
+From: Vinson Lee <vlee@twitter.com>
+Date: Wed, 18 Sep 2013 16:16:40 -0700
+Subject: tools lib lk: Uninclude linux/magic.h in debugfs.c
+
+From: Vinson Lee <vlee@twitter.com>
+
+commit ce7eebe5c3deef8e19c177c24ee75843256e69ca upstream.
+
+The compilation only looks for linux/magic.h from the default include
+paths, which does not include the source tree. This results in a build
+error if linux/magic.h is not available or not installed.
+
+For example, this build error occurs on CentOS 5.
+
+$ make -C tools/lib/lk V=1
+[...]
+gcc -o debugfs.o -c -ggdb3 -Wall -Wextra -std=gnu99 -Werror -O6
+-D_FORTIFY_SOURCE=2 -Wbad-function-cast -Wdeclaration-after-statement
+-Wformat-security -Wformat-y2k -Winit-self -Wmissing-declarations
+-Wmissing-prototypes -Wnested-externs -Wno-system-headers
+-Wold-style-definition -Wpacked -Wredundant-decls -Wshadow
+-Wstrict-aliasing=3 -Wstrict-prototypes -Wswitch-default -Wswitch-enum
+-Wundef -Wwrite-strings -Wformat  -fPIC  -D_LARGEFILE64_SOURCE
+-D_FILE_OFFSET_BITS=64 debugfs.c
+debugfs.c:8:25: error: linux/magic.h: No such file or directory
+
+The only symbol from linux/magic.h needed by debugfs.c is DEBUGFS_MAGIC,
+and that is already defined in debugfs.h. linux/magic.h isn't providing
+any extra symbols and can unincluded. This is similar to the approach by
+perf, which has its own magic.h wrapper at
+tools/perf/util/include/linux/magic.h
+
+Signed-off-by: Vinson Lee <vlee@twitter.com>
+Acked-by: Borislav Petkov <bp@suse.de>
+Cc: Borislav Petkov <bp@suse.de>
+Cc: Vinson Lee <vlee@freedesktop.org>
+Link: http://lkml.kernel.org/r/1379546200-17028-1-git-send-email-vlee@freedesktop.org
+Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ tools/lib/lk/debugfs.c |    1 -
+ 1 file changed, 1 deletion(-)
+
+--- a/tools/lib/lk/debugfs.c
++++ b/tools/lib/lk/debugfs.c
+@@ -5,7 +5,6 @@
+ #include <stdbool.h>
+ #include <sys/vfs.h>
+ #include <sys/mount.h>
+-#include <linux/magic.h>
+ #include <linux/kernel.h>
+ #include "debugfs.h"
diff --git a/queue-3.10/x86-efi-don-t-map-boot-services-on-i386.patch b/queue-3.10/x86-efi-don-t-map-boot-services-on-i386.patch
new file mode 100644 (file)
index 0000000..02f7b54
--- /dev/null
@@ -0,0 +1,88 @@
+From 700870119f49084da004ab588ea2b799689efaf7 Mon Sep 17 00:00:00 2001
+From: Josh Boyer <jwboyer@redhat.com>
+Date: Thu, 18 Apr 2013 07:51:34 -0700
+Subject: x86, efi: Don't map Boot Services on i386
+
+From: Josh Boyer <jwboyer@redhat.com>
+
+commit 700870119f49084da004ab588ea2b799689efaf7 upstream.
+
+Add patch to fix 32bit EFI service mapping (rhbz 726701)
+
+Multiple people are reporting hitting the following WARNING on i386,
+
+  WARNING: at arch/x86/mm/ioremap.c:102 __ioremap_caller+0x3d3/0x440()
+  Modules linked in:
+  Pid: 0, comm: swapper Not tainted 3.9.0-rc7+ #95
+  Call Trace:
+   [<c102b6af>] warn_slowpath_common+0x5f/0x80
+   [<c1023fb3>] ? __ioremap_caller+0x3d3/0x440
+   [<c1023fb3>] ? __ioremap_caller+0x3d3/0x440
+   [<c102b6ed>] warn_slowpath_null+0x1d/0x20
+   [<c1023fb3>] __ioremap_caller+0x3d3/0x440
+   [<c106007b>] ? get_usage_chars+0xfb/0x110
+   [<c102d937>] ? vprintk_emit+0x147/0x480
+   [<c1418593>] ? efi_enter_virtual_mode+0x1e4/0x3de
+   [<c102406a>] ioremap_cache+0x1a/0x20
+   [<c1418593>] ? efi_enter_virtual_mode+0x1e4/0x3de
+   [<c1418593>] efi_enter_virtual_mode+0x1e4/0x3de
+   [<c1407984>] start_kernel+0x286/0x2f4
+   [<c1407535>] ? repair_env_string+0x51/0x51
+   [<c1407362>] i386_start_kernel+0x12c/0x12f
+
+Due to the workaround described in commit 916f676f8 ("x86, efi: Retain
+boot service code until after switching to virtual mode") EFI Boot
+Service regions are mapped for a period during boot. Unfortunately, with
+the limited size of the i386 direct kernel map it's possible that some
+of the Boot Service regions will not be directly accessible, which
+causes them to be ioremap()'d, triggering the above warning as the
+regions are marked as E820_RAM in the e820 memmap.
+
+There are currently only two situations where we need to map EFI Boot
+Service regions,
+
+  1. To workaround the firmware bug described in 916f676f8
+  2. To access the ACPI BGRT image
+
+but since we haven't seen an i386 implementation that requires either,
+this simple fix should suffice for now.
+
+[ Added to changelog - Matt ]
+
+Reported-by: Bryan O'Donoghue <bryan.odonoghue.lkml@nexus-software.ie>
+Acked-by: Tom Zanussi <tom.zanussi@intel.com>
+Acked-by: Darren Hart <dvhart@linux.intel.com>
+Cc: Josh Triplett <josh@joshtriplett.org>
+Cc: Matthew Garrett <mjg59@srcf.ucam.org>
+Cc: H. Peter Anvin <hpa@zytor.com>
+Cc: Ingo Molnar <mingo@kernel.org>
+Cc: Thomas Gleixner <tglx@linutronix.de>
+Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+Signed-off-by: Josh Boyer <jwboyer@redhat.com>
+Signed-off-by: Matt Fleming <matt.fleming@intel.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ arch/x86/platform/efi/efi.c |   11 +++++++----
+ 1 file changed, 7 insertions(+), 4 deletions(-)
+
+--- a/arch/x86/platform/efi/efi.c
++++ b/arch/x86/platform/efi/efi.c
+@@ -910,10 +910,13 @@ void __init efi_enter_virtual_mode(void)
+       for (p = memmap.map; p < memmap.map_end; p += memmap.desc_size) {
+               md = p;
+-              if (!(md->attribute & EFI_MEMORY_RUNTIME) &&
+-                  md->type != EFI_BOOT_SERVICES_CODE &&
+-                  md->type != EFI_BOOT_SERVICES_DATA)
+-                      continue;
++              if (!(md->attribute & EFI_MEMORY_RUNTIME)) {
++#ifdef CONFIG_X86_64
++                      if (md->type != EFI_BOOT_SERVICES_CODE &&
++                          md->type != EFI_BOOT_SERVICES_DATA)
++#endif
++                              continue;
++              }
+               size = md->num_pages << EFI_PAGE_SHIFT;
+               end = md->phys_addr + size;
diff --git a/queue-3.10/x86-reboot-add-quirk-to-make-dell-c6100-use-reboot-pci-automatically.patch b/queue-3.10/x86-reboot-add-quirk-to-make-dell-c6100-use-reboot-pci-automatically.patch
new file mode 100644 (file)
index 0000000..4a7fe29
--- /dev/null
@@ -0,0 +1,49 @@
+From 4f0acd31c31f03ba42494c8baf6c0465150e2621 Mon Sep 17 00:00:00 2001
+From: Masoud Sharbiani <msharbiani@twitter.com>
+Date: Fri, 20 Sep 2013 15:59:07 -0700
+Subject: x86/reboot: Add quirk to make Dell C6100 use reboot=pci automatically
+
+From: Masoud Sharbiani <msharbiani@twitter.com>
+
+commit 4f0acd31c31f03ba42494c8baf6c0465150e2621 upstream.
+
+Dell PowerEdge C6100 machines fail to completely reboot about 20% of the time.
+
+Signed-off-by: Masoud Sharbiani <msharbiani@twitter.com>
+Signed-off-by: Vinson Lee <vlee@twitter.com>
+Cc: Robin Holt <holt@sgi.com>
+Cc: Russell King <rmk+kernel@arm.linux.org.uk>
+Cc: Guan Xuetao <gxt@mprc.pku.edu.cn>
+Link: http://lkml.kernel.org/r/1379717947-18042-1-git-send-email-vlee@freedesktop.org
+Signed-off-by: Ingo Molnar <mingo@kernel.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ arch/x86/kernel/reboot.c |   16 ++++++++++++++++
+ 1 file changed, 16 insertions(+)
+
+--- a/arch/x86/kernel/reboot.c
++++ b/arch/x86/kernel/reboot.c
+@@ -447,6 +447,22 @@ static struct dmi_system_id __initdata r
+                       DMI_MATCH(DMI_PRODUCT_NAME, "Precision M6600"),
+               },
+       },
++      {       /* Handle problems with rebooting on the Dell PowerEdge C6100. */
++              .callback = set_pci_reboot,
++              .ident = "Dell PowerEdge C6100",
++              .matches = {
++                      DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
++                      DMI_MATCH(DMI_PRODUCT_NAME, "C6100"),
++              },
++      },
++      {       /* Some C6100 machines were shipped with vendor being 'Dell'. */
++              .callback = set_pci_reboot,
++              .ident = "Dell PowerEdge C6100",
++              .matches = {
++                      DMI_MATCH(DMI_SYS_VENDOR, "Dell"),
++                      DMI_MATCH(DMI_PRODUCT_NAME, "C6100"),
++              },
++      },
+       { }
+ };