]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
3.10-stable patches
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 23 Jul 2014 00:39:06 +0000 (17:39 -0700)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 23 Jul 2014 00:39:06 +0000 (17:39 -0700)
added patches:
hwmon-adt7470-fix-writes-to-temperature-limit-registers.patch
hwmon-da9052-don-t-use-dash-in-the-name-attribute.patch
hwmon-da9055-don-t-use-dash-in-the-name-attribute.patch
igb-do-a-reset-on-sr-iov-re-init-if-device-is-down.patch
iwlwifi-dvm-don-t-enable-cts-to-self.patch
tracing-add-ftrace_trace_stack-into-__trace_puts-__trace_bputs.patch
tracing-fix-graph-tracer-with-stack-tracer-on-other-archs.patch

queue-3.10/hwmon-adt7470-fix-writes-to-temperature-limit-registers.patch [new file with mode: 0644]
queue-3.10/hwmon-da9052-don-t-use-dash-in-the-name-attribute.patch [new file with mode: 0644]
queue-3.10/hwmon-da9055-don-t-use-dash-in-the-name-attribute.patch [new file with mode: 0644]
queue-3.10/igb-do-a-reset-on-sr-iov-re-init-if-device-is-down.patch [new file with mode: 0644]
queue-3.10/iwlwifi-dvm-don-t-enable-cts-to-self.patch [new file with mode: 0644]
queue-3.10/series
queue-3.10/tracing-add-ftrace_trace_stack-into-__trace_puts-__trace_bputs.patch [new file with mode: 0644]
queue-3.10/tracing-fix-graph-tracer-with-stack-tracer-on-other-archs.patch [new file with mode: 0644]

diff --git a/queue-3.10/hwmon-adt7470-fix-writes-to-temperature-limit-registers.patch b/queue-3.10/hwmon-adt7470-fix-writes-to-temperature-limit-registers.patch
new file mode 100644 (file)
index 0000000..2dd83eb
--- /dev/null
@@ -0,0 +1,53 @@
+From de12d6f4b10b21854441f5242dcb29ea96181e58 Mon Sep 17 00:00:00 2001
+From: Guenter Roeck <linux@roeck-us.net>
+Date: Wed, 16 Jul 2014 17:40:31 -0700
+Subject: hwmon: (adt7470) Fix writes to temperature limit registers
+
+From: Guenter Roeck <linux@roeck-us.net>
+
+commit de12d6f4b10b21854441f5242dcb29ea96181e58 upstream.
+
+Temperature limit registers are signed. Limits therefore need
+to be clamped to (-128, 127) degrees C and not to (0, 255)
+degrees C.
+
+Without this fix, writing a limit of 128 degrees C sets the
+actual limit to -128 degrees C.
+
+Signed-off-by: Guenter Roeck <linux@roeck-us.net>
+Reviewed-by: Axel Lin <axel.lin@ingics.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ drivers/hwmon/adt7470.c |    6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+--- a/drivers/hwmon/adt7470.c
++++ b/drivers/hwmon/adt7470.c
+@@ -515,7 +515,7 @@ static ssize_t set_temp_min(struct devic
+               return -EINVAL;
+       temp = DIV_ROUND_CLOSEST(temp, 1000);
+-      temp = clamp_val(temp, 0, 255);
++      temp = clamp_val(temp, -128, 127);
+       mutex_lock(&data->lock);
+       data->temp_min[attr->index] = temp;
+@@ -549,7 +549,7 @@ static ssize_t set_temp_max(struct devic
+               return -EINVAL;
+       temp = DIV_ROUND_CLOSEST(temp, 1000);
+-      temp = clamp_val(temp, 0, 255);
++      temp = clamp_val(temp, -128, 127);
+       mutex_lock(&data->lock);
+       data->temp_max[attr->index] = temp;
+@@ -826,7 +826,7 @@ static ssize_t set_pwm_tmin(struct devic
+               return -EINVAL;
+       temp = DIV_ROUND_CLOSEST(temp, 1000);
+-      temp = clamp_val(temp, 0, 255);
++      temp = clamp_val(temp, -128, 127);
+       mutex_lock(&data->lock);
+       data->pwm_tmin[attr->index] = temp;
diff --git a/queue-3.10/hwmon-da9052-don-t-use-dash-in-the-name-attribute.patch b/queue-3.10/hwmon-da9052-don-t-use-dash-in-the-name-attribute.patch
new file mode 100644 (file)
index 0000000..d5bd434
--- /dev/null
@@ -0,0 +1,31 @@
+From ee14b644daaa58afe1e91bb9ebd9cf1b18d1f5fa Mon Sep 17 00:00:00 2001
+From: Axel Lin <axel.lin@ingics.com>
+Date: Wed, 9 Jul 2014 09:18:59 +0800
+Subject: hwmon: (da9052) Don't use dash in the name attribute
+
+From: Axel Lin <axel.lin@ingics.com>
+
+commit ee14b644daaa58afe1e91bb9ebd9cf1b18d1f5fa upstream.
+
+Dashes are not allowed in hwmon name attributes.
+Use "da9052" instead of "da9052-hwmon".
+
+Signed-off-by: Axel Lin <axel.lin@ingics.com>
+Signed-off-by: Guenter Roeck <linux@roeck-us.net>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ drivers/hwmon/da9052-hwmon.c |    2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+--- a/drivers/hwmon/da9052-hwmon.c
++++ b/drivers/hwmon/da9052-hwmon.c
+@@ -194,7 +194,7 @@ static ssize_t da9052_hwmon_show_name(st
+                                     struct device_attribute *devattr,
+                                     char *buf)
+ {
+-      return sprintf(buf, "da9052-hwmon\n");
++      return sprintf(buf, "da9052\n");
+ }
+ static ssize_t show_label(struct device *dev,
diff --git a/queue-3.10/hwmon-da9055-don-t-use-dash-in-the-name-attribute.patch b/queue-3.10/hwmon-da9055-don-t-use-dash-in-the-name-attribute.patch
new file mode 100644 (file)
index 0000000..22f1c3c
--- /dev/null
@@ -0,0 +1,31 @@
+From 6b00f440dd678d786389a7100a2e03fe44478431 Mon Sep 17 00:00:00 2001
+From: Axel Lin <axel.lin@ingics.com>
+Date: Wed, 9 Jul 2014 09:22:54 +0800
+Subject: hwmon: (da9055) Don't use dash in the name attribute
+
+From: Axel Lin <axel.lin@ingics.com>
+
+commit 6b00f440dd678d786389a7100a2e03fe44478431 upstream.
+
+Dashes are not allowed in hwmon name attributes.
+Use "da9055" instead of "da9055-hwmon".
+
+Signed-off-by: Axel Lin <axel.lin@ingics.com>
+Signed-off-by: Guenter Roeck <linux@roeck-us.net>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ drivers/hwmon/da9055-hwmon.c |    2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+--- a/drivers/hwmon/da9055-hwmon.c
++++ b/drivers/hwmon/da9055-hwmon.c
+@@ -204,7 +204,7 @@ static ssize_t da9055_hwmon_show_name(st
+                                     struct device_attribute *devattr,
+                                     char *buf)
+ {
+-      return sprintf(buf, "da9055-hwmon\n");
++      return sprintf(buf, "da9055\n");
+ }
+ static ssize_t show_label(struct device *dev,
diff --git a/queue-3.10/igb-do-a-reset-on-sr-iov-re-init-if-device-is-down.patch b/queue-3.10/igb-do-a-reset-on-sr-iov-re-init-if-device-is-down.patch
new file mode 100644 (file)
index 0000000..8028892
--- /dev/null
@@ -0,0 +1,33 @@
+From 76252723e88681628a3dbb9c09c963e095476f73 Mon Sep 17 00:00:00 2001
+From: Stefan Assmann <sassmann@kpanic.de>
+Date: Thu, 10 Jul 2014 03:29:39 -0700
+Subject: igb: do a reset on SR-IOV re-init if device is down
+
+From: Stefan Assmann <sassmann@kpanic.de>
+
+commit 76252723e88681628a3dbb9c09c963e095476f73 upstream.
+
+To properly re-initialize SR-IOV it is necessary to reset the device
+even if it is already down. Not doing this may result in Tx unit hangs.
+
+Signed-off-by: Stefan Assmann <sassmann@kpanic.de>
+Tested-by: Aaron Brown <aaron.f.brown@intel.com>
+Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
+Signed-off-by: David S. Miller <davem@davemloft.net>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ drivers/net/ethernet/intel/igb/igb_main.c |    2 ++
+ 1 file changed, 2 insertions(+)
+
+--- a/drivers/net/ethernet/intel/igb/igb_main.c
++++ b/drivers/net/ethernet/intel/igb/igb_main.c
+@@ -7229,6 +7229,8 @@ static int igb_sriov_reinit(struct pci_d
+       if (netif_running(netdev))
+               igb_close(netdev);
++      else
++              igb_reset(adapter);
+       igb_clear_interrupt_scheme(adapter);
diff --git a/queue-3.10/iwlwifi-dvm-don-t-enable-cts-to-self.patch b/queue-3.10/iwlwifi-dvm-don-t-enable-cts-to-self.patch
new file mode 100644 (file)
index 0000000..c6bf2b4
--- /dev/null
@@ -0,0 +1,49 @@
+From 43d826ca5979927131685cc2092c7ce862cb91cd Mon Sep 17 00:00:00 2001
+From: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
+Date: Wed, 25 Jun 2014 09:12:30 +0300
+Subject: iwlwifi: dvm: don't enable CTS to self
+
+From: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
+
+commit 43d826ca5979927131685cc2092c7ce862cb91cd upstream.
+
+We should always prefer to use full RTS protection. Using
+CTS to self gives a meaningless improvement, but this flow
+is much harder for the firmware which is likely to have
+issues with it.
+
+Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ drivers/net/wireless/iwlwifi/dvm/rxon.c |   12 ------------
+ 1 file changed, 12 deletions(-)
+
+--- a/drivers/net/wireless/iwlwifi/dvm/rxon.c
++++ b/drivers/net/wireless/iwlwifi/dvm/rxon.c
+@@ -1072,13 +1072,6 @@ int iwlagn_commit_rxon(struct iwl_priv *
+       /* recalculate basic rates */
+       iwl_calc_basic_rates(priv, ctx);
+-      /*
+-       * force CTS-to-self frames protection if RTS-CTS is not preferred
+-       * one aggregation protection method
+-       */
+-      if (!priv->hw_params.use_rts_for_aggregation)
+-              ctx->staging.flags |= RXON_FLG_SELF_CTS_EN;
+-
+       if ((ctx->vif && ctx->vif->bss_conf.use_short_slot) ||
+           !(ctx->staging.flags & RXON_FLG_BAND_24G_MSK))
+               ctx->staging.flags |= RXON_FLG_SHORT_SLOT_MSK;
+@@ -1484,11 +1477,6 @@ void iwlagn_bss_info_changed(struct ieee
+       else
+               ctx->staging.flags &= ~RXON_FLG_TGG_PROTECT_MSK;
+-      if (bss_conf->use_cts_prot)
+-              ctx->staging.flags |= RXON_FLG_SELF_CTS_EN;
+-      else
+-              ctx->staging.flags &= ~RXON_FLG_SELF_CTS_EN;
+-
+       memcpy(ctx->staging.bssid_addr, bss_conf->bssid, ETH_ALEN);
+       if (vif->type == NL80211_IFTYPE_AP ||
index fcd67f8e36e274ed0b72f080ed4329f21105bcf4..e2abe729ff3c95c541b93a7c9731b1e9532760f9 100644 (file)
@@ -3,3 +3,10 @@ media-gspca_pac7302-add-new-usb-id-for-genius-i-look-317.patch
 drivers-hv-util-fix-a-bug-in-the-kvp-code.patch
 bluetooth-ignore-h5-non-link-packets-in-non-active-state.patch
 fuse-handle-large-user-and-group-id.patch
+tracing-fix-graph-tracer-with-stack-tracer-on-other-archs.patch
+tracing-add-ftrace_trace_stack-into-__trace_puts-__trace_bputs.patch
+hwmon-da9055-don-t-use-dash-in-the-name-attribute.patch
+hwmon-da9052-don-t-use-dash-in-the-name-attribute.patch
+hwmon-adt7470-fix-writes-to-temperature-limit-registers.patch
+igb-do-a-reset-on-sr-iov-re-init-if-device-is-down.patch
+iwlwifi-dvm-don-t-enable-cts-to-self.patch
diff --git a/queue-3.10/tracing-add-ftrace_trace_stack-into-__trace_puts-__trace_bputs.patch b/queue-3.10/tracing-add-ftrace_trace_stack-into-__trace_puts-__trace_bputs.patch
new file mode 100644 (file)
index 0000000..d7dc076
--- /dev/null
@@ -0,0 +1,84 @@
+From 8abfb8727f4a724d31f9ccfd8013fbd16d539445 Mon Sep 17 00:00:00 2001
+From: "zhangwei(Jovi)" <jovi.zhangwei@huawei.com>
+Date: Thu, 18 Jul 2013 16:31:05 +0800
+Subject: tracing: Add ftrace_trace_stack into __trace_puts/__trace_bputs
+
+From: "zhangwei(Jovi)" <jovi.zhangwei@huawei.com>
+
+commit 8abfb8727f4a724d31f9ccfd8013fbd16d539445 upstream.
+
+Currently trace option stacktrace is not applicable for
+trace_printk with constant string argument, the reason is
+in __trace_puts/__trace_bputs ftrace_trace_stack is missing.
+
+In contrast, when using trace_printk with non constant string
+argument(will call into __trace_printk/__trace_bprintk), then
+trace option stacktrace is workable, this inconstant result
+will confuses users a lot.
+
+Link: http://lkml.kernel.org/p/51E7A7C9.9040401@huawei.com
+
+Signed-off-by: zhangwei(Jovi) <jovi.zhangwei@huawei.com>
+Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ kernel/trace/trace.c |   12 ++++++++++--
+ 1 file changed, 10 insertions(+), 2 deletions(-)
+
+--- a/kernel/trace/trace.c
++++ b/kernel/trace/trace.c
+@@ -423,6 +423,9 @@ int __trace_puts(unsigned long ip, const
+       struct print_entry *entry;
+       unsigned long irq_flags;
+       int alloc;
++      int pc;
++
++      pc = preempt_count();
+       if (unlikely(tracing_selftest_running || tracing_disabled))
+               return 0;
+@@ -432,7 +435,7 @@ int __trace_puts(unsigned long ip, const
+       local_save_flags(irq_flags);
+       buffer = global_trace.trace_buffer.buffer;
+       event = trace_buffer_lock_reserve(buffer, TRACE_PRINT, alloc, 
+-                                        irq_flags, preempt_count());
++                                        irq_flags, pc);
+       if (!event)
+               return 0;
+@@ -449,6 +452,7 @@ int __trace_puts(unsigned long ip, const
+               entry->buf[size] = '\0';
+       __buffer_unlock_commit(buffer, event);
++      ftrace_trace_stack(buffer, irq_flags, 4, pc);
+       return size;
+ }
+@@ -466,6 +470,9 @@ int __trace_bputs(unsigned long ip, cons
+       struct bputs_entry *entry;
+       unsigned long irq_flags;
+       int size = sizeof(struct bputs_entry);
++      int pc;
++
++      pc = preempt_count();
+       if (unlikely(tracing_selftest_running || tracing_disabled))
+               return 0;
+@@ -473,7 +480,7 @@ int __trace_bputs(unsigned long ip, cons
+       local_save_flags(irq_flags);
+       buffer = global_trace.trace_buffer.buffer;
+       event = trace_buffer_lock_reserve(buffer, TRACE_BPUTS, size,
+-                                        irq_flags, preempt_count());
++                                        irq_flags, pc);
+       if (!event)
+               return 0;
+@@ -482,6 +489,7 @@ int __trace_bputs(unsigned long ip, cons
+       entry->str                      = str;
+       __buffer_unlock_commit(buffer, event);
++      ftrace_trace_stack(buffer, irq_flags, 4, pc);
+       return 1;
+ }
diff --git a/queue-3.10/tracing-fix-graph-tracer-with-stack-tracer-on-other-archs.patch b/queue-3.10/tracing-fix-graph-tracer-with-stack-tracer-on-other-archs.patch
new file mode 100644 (file)
index 0000000..ef2bb2a
--- /dev/null
@@ -0,0 +1,47 @@
+From 5f8bf2d263a20b986225ae1ed7d6759dc4b93af9 Mon Sep 17 00:00:00 2001
+From: "Steven Rostedt (Red Hat)" <rostedt@goodmis.org>
+Date: Tue, 15 Jul 2014 11:05:12 -0400
+Subject: tracing: Fix graph tracer with stack tracer on other archs
+
+From: "Steven Rostedt (Red Hat)" <rostedt@goodmis.org>
+
+commit 5f8bf2d263a20b986225ae1ed7d6759dc4b93af9 upstream.
+
+Running my ftrace tests on PowerPC, it failed the test that checks
+if function_graph tracer is affected by the stack tracer. It was.
+Looking into this, I found that the update_function_graph_func()
+must be called even if the trampoline function is not changed.
+This is because archs like PowerPC do not support ftrace_ops being
+passed by assembly and instead uses a helper function (what the
+trampoline function points to). Since this function is not changed
+even when multiple ftrace_ops are added to the code, the test that
+falls out before calling update_function_graph_func() will miss that
+the update must still be done.
+
+Call update_function_graph_function() for all calls to
+update_ftrace_function()
+
+Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ kernel/trace/ftrace.c |    4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+--- a/kernel/trace/ftrace.c
++++ b/kernel/trace/ftrace.c
+@@ -331,12 +331,12 @@ static void update_ftrace_function(void)
+               func = ftrace_ops_list_func;
+       }
++      update_function_graph_func();
++
+       /* If there's no change, then do nothing more here */
+       if (ftrace_trace_function == func)
+               return;
+-      update_function_graph_func();
+-
+       /*
+        * If we are using the list function, it doesn't care
+        * about the function_trace_ops.