]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
3.4-stable patches
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sun, 21 Apr 2013 18:52:04 +0000 (11:52 -0700)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sun, 21 Apr 2013 18:52:04 +0000 (11:52 -0700)
added patches:
arm-7696-1-fix-kexec-by-setting-outer_cache.inv_all-for-feroceon.patch
arm-7698-1-perf-fix-group-validation-when-using-enable_on_exec.patch
ath9k_htc-accept-1.x-firmware-newer-than-1.3.patch
ath9k_hw-change-ar9580-initvals-to-fix-a-stability-issue.patch

queue-3.4/arm-7696-1-fix-kexec-by-setting-outer_cache.inv_all-for-feroceon.patch [new file with mode: 0644]
queue-3.4/arm-7698-1-perf-fix-group-validation-when-using-enable_on_exec.patch [new file with mode: 0644]
queue-3.4/ath9k_htc-accept-1.x-firmware-newer-than-1.3.patch [new file with mode: 0644]
queue-3.4/ath9k_hw-change-ar9580-initvals-to-fix-a-stability-issue.patch [new file with mode: 0644]
queue-3.4/series

diff --git a/queue-3.4/arm-7696-1-fix-kexec-by-setting-outer_cache.inv_all-for-feroceon.patch b/queue-3.4/arm-7696-1-fix-kexec-by-setting-outer_cache.inv_all-for-feroceon.patch
new file mode 100644 (file)
index 0000000..5ed1ddf
--- /dev/null
@@ -0,0 +1,39 @@
+From cd272d1ea71583170e95dde02c76166c7f9017e6 Mon Sep 17 00:00:00 2001
+From: Illia Ragozin <illia.ragozin@grapecom.com>
+Date: Wed, 10 Apr 2013 19:43:34 +0100
+Subject: ARM: 7696/1: Fix kexec by setting outer_cache.inv_all for Feroceon
+
+From: Illia Ragozin <illia.ragozin@grapecom.com>
+
+commit cd272d1ea71583170e95dde02c76166c7f9017e6 upstream.
+
+On Feroceon the L2 cache becomes non-coherent with the CPU
+when the L1 caches are disabled. Thus the L2 needs to be invalidated
+after both L1 caches are disabled.
+
+On kexec before the starting the code for relocation the kernel,
+the L1 caches are disabled in cpu_froc_fin (cpu_v7_proc_fin for Feroceon),
+but after L2 cache is never invalidated, because inv_all is not set
+in cache-feroceon-l2.c.
+So kernel relocation and decompression may has (and usually has) errors.
+Setting the function enables L2 invalidation and fixes the issue.
+
+Signed-off-by: Illia Ragozin <illia.ragozin@grapecom.com>
+Acked-by: Jason Cooper <jason@lakedaemon.net>
+Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ arch/arm/mm/cache-feroceon-l2.c |    1 +
+ 1 file changed, 1 insertion(+)
+
+--- a/arch/arm/mm/cache-feroceon-l2.c
++++ b/arch/arm/mm/cache-feroceon-l2.c
+@@ -343,6 +343,7 @@ void __init feroceon_l2_init(int __l2_wt
+       outer_cache.inv_range = feroceon_l2_inv_range;
+       outer_cache.clean_range = feroceon_l2_clean_range;
+       outer_cache.flush_range = feroceon_l2_flush_range;
++      outer_cache.inv_all = l2_inv_all;
+       enable_l2();
diff --git a/queue-3.4/arm-7698-1-perf-fix-group-validation-when-using-enable_on_exec.patch b/queue-3.4/arm-7698-1-perf-fix-group-validation-when-using-enable_on_exec.patch
new file mode 100644 (file)
index 0000000..a5c55ee
--- /dev/null
@@ -0,0 +1,43 @@
+From cb2d8b342aa084d1f3ac29966245dec9163677fb Mon Sep 17 00:00:00 2001
+From: Will Deacon <will.deacon@arm.com>
+Date: Fri, 12 Apr 2013 19:04:19 +0100
+Subject: ARM: 7698/1: perf: fix group validation when using enable_on_exec
+
+From: Will Deacon <will.deacon@arm.com>
+
+commit cb2d8b342aa084d1f3ac29966245dec9163677fb upstream.
+
+Events may be created with attr->disabled == 1 and attr->enable_on_exec
+== 1, which confuses the group validation code because events with the
+PERF_EVENT_STATE_OFF are not considered candidates for scheduling, which
+may lead to failure at group scheduling time.
+
+This patch fixes the validation check for ARM, so that events in the
+OFF state are still considered when enable_on_exec is true.
+
+Reported-by: Sudeep KarkadaNagesha <Sudeep.KarkadaNagesha@arm.com>
+Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
+Cc: Arnaldo Carvalho de Melo <acme@ghostprotocols.net>
+Cc: Jiri Olsa <jolsa@redhat.com>
+Signed-off-by: Will Deacon <will.deacon@arm.com>
+Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ arch/arm/kernel/perf_event.c |    5 ++++-
+ 1 file changed, 4 insertions(+), 1 deletion(-)
+
+--- a/arch/arm/kernel/perf_event.c
++++ b/arch/arm/kernel/perf_event.c
+@@ -319,7 +319,10 @@ validate_event(struct pmu_hw_events *hw_
+       struct hw_perf_event fake_event = event->hw;
+       struct pmu *leader_pmu = event->group_leader->pmu;
+-      if (event->pmu != leader_pmu || event->state <= PERF_EVENT_STATE_OFF)
++      if (event->pmu != leader_pmu || event->state < PERF_EVENT_STATE_OFF)
++              return 1;
++
++      if (event->state == PERF_EVENT_STATE_OFF && !event->attr.enable_on_exec)
+               return 1;
+       return armpmu->get_event_idx(hw_events, &fake_event) >= 0;
diff --git a/queue-3.4/ath9k_htc-accept-1.x-firmware-newer-than-1.3.patch b/queue-3.4/ath9k_htc-accept-1.x-firmware-newer-than-1.3.patch
new file mode 100644 (file)
index 0000000..c9367c8
--- /dev/null
@@ -0,0 +1,32 @@
+From 319e7bd96aca64a478f3aad40711c928405b8b77 Mon Sep 17 00:00:00 2001
+From: Felix Fietkau <nbd@openwrt.org>
+Date: Sun, 7 Apr 2013 21:10:48 +0200
+Subject: ath9k_htc: accept 1.x firmware newer than 1.3
+
+From: Felix Fietkau <nbd@openwrt.org>
+
+commit 319e7bd96aca64a478f3aad40711c928405b8b77 upstream.
+
+Since the firmware has been open sourced, the minor version has been
+bumped to 1.4 and the API/ABI will stay compatible across further 1.x
+releases.
+
+Signed-off-by: Felix Fietkau <nbd@openwrt.org>
+Signed-off-by: John W. Linville <linville@tuxdriver.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ drivers/net/wireless/ath/ath9k/htc_drv_init.c |    2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+--- a/drivers/net/wireless/ath/ath9k/htc_drv_init.c
++++ b/drivers/net/wireless/ath/ath9k/htc_drv_init.c
+@@ -771,7 +771,7 @@ static int ath9k_init_firmware_version(s
+        * required version.
+        */
+       if (priv->fw_version_major != MAJOR_VERSION_REQ ||
+-          priv->fw_version_minor != MINOR_VERSION_REQ) {
++          priv->fw_version_minor < MINOR_VERSION_REQ) {
+               dev_err(priv->dev, "ath9k_htc: Please upgrade to FW version %d.%d\n",
+                       MAJOR_VERSION_REQ, MINOR_VERSION_REQ);
+               return -EINVAL;
diff --git a/queue-3.4/ath9k_hw-change-ar9580-initvals-to-fix-a-stability-issue.patch b/queue-3.4/ath9k_hw-change-ar9580-initvals-to-fix-a-stability-issue.patch
new file mode 100644 (file)
index 0000000..8b3b02f
--- /dev/null
@@ -0,0 +1,33 @@
+From f09a878511997c25a76bf111a32f6b8345a701a5 Mon Sep 17 00:00:00 2001
+From: Felix Fietkau <nbd@openwrt.org>
+Date: Wed, 10 Apr 2013 15:26:06 +0200
+Subject: ath9k_hw: change AR9580 initvals to fix a stability issue
+
+From: Felix Fietkau <nbd@openwrt.org>
+
+commit f09a878511997c25a76bf111a32f6b8345a701a5 upstream.
+
+The hardware parsing of Control Wrapper Frames needs to be disabled, as
+it has been causing spurious decryption error reports. The initvals for
+other chips have been updated to disable it, but AR9580 was left out for
+some reason.
+
+Signed-off-by: Felix Fietkau <nbd@openwrt.org>
+Signed-off-by: John W. Linville <linville@tuxdriver.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ drivers/net/wireless/ath/ath9k/ar9580_1p0_initvals.h |    2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+--- a/drivers/net/wireless/ath/ath9k/ar9580_1p0_initvals.h
++++ b/drivers/net/wireless/ath/ath9k/ar9580_1p0_initvals.h
+@@ -648,7 +648,7 @@ static const u32 ar9580_1p0_mac_core[][2
+       {0x00008258, 0x00000000},
+       {0x0000825c, 0x40000000},
+       {0x00008260, 0x00080922},
+-      {0x00008264, 0x9bc00010},
++      {0x00008264, 0x9d400010},
+       {0x00008268, 0xffffffff},
+       {0x0000826c, 0x0000ffff},
+       {0x00008270, 0x00000000},
index 6659be4bfcd0eabe0f27bb4e1d3109c1a439fef6..6f34c4e15f8fe6e51da2657ac4564013b0eb8b25 100644 (file)
@@ -1,3 +1,7 @@
 arm-do-15e0d9e37c-arm-pm-let-platforms-select-cpu_suspend-support-properly.patch
 hrtimer-don-t-reinitialize-a-cpu_base-lock-on-cpu_up.patch
 can-sja1000-fix-handling-on-dt-properties-on-little-endian-systems.patch
+arm-7696-1-fix-kexec-by-setting-outer_cache.inv_all-for-feroceon.patch
+arm-7698-1-perf-fix-group-validation-when-using-enable_on_exec.patch
+ath9k_htc-accept-1.x-firmware-newer-than-1.3.patch
+ath9k_hw-change-ar9580-initvals-to-fix-a-stability-issue.patch