]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
fixes for 4.19
authorSasha Levin <sashal@kernel.org>
Fri, 27 Sep 2019 15:31:04 +0000 (11:31 -0400)
committerSasha Levin <sashal@kernel.org>
Fri, 27 Sep 2019 15:31:04 +0000 (11:31 -0400)
Signed-off-by: Sasha Levin <sashal@kernel.org>
queue-4.19/locking-lockdep-add-debug_locks-check-in-__lock_down.patch [new file with mode: 0644]
queue-4.19/locking-lockdep-add-debug_locks-check-in-__lock_down.patch-13969 [new file with mode: 0644]
queue-4.19/pinctrl-sprd-use-define-directive-for-sprd_pinconf_p.patch [new file with mode: 0644]
queue-4.19/power-supply-sysfs-ratelimit-property-read-error-mes.patch [new file with mode: 0644]
queue-4.19/series

diff --git a/queue-4.19/locking-lockdep-add-debug_locks-check-in-__lock_down.patch b/queue-4.19/locking-lockdep-add-debug_locks-check-in-__lock_down.patch
new file mode 100644 (file)
index 0000000..52ff81c
--- /dev/null
@@ -0,0 +1,51 @@
+From 625182f17e4aee5244398822487dc6dee83a548e Mon Sep 17 00:00:00 2001
+From: Sasha Levin <sashal@kernel.org>
+Date: Wed, 9 Jan 2019 23:03:25 -0500
+Subject: locking/lockdep: Add debug_locks check in __lock_downgrade()
+
+From: Waiman Long <longman@redhat.com>
+
+[ Upstream commit 513e1073d52e55b8024b4f238a48de7587c64ccf ]
+
+Tetsuo Handa had reported he saw an incorrect "downgrading a read lock"
+warning right after a previous lockdep warning. It is likely that the
+previous warning turned off lock debugging causing the lockdep to have
+inconsistency states leading to the lock downgrade warning.
+
+Fix that by add a check for debug_locks at the beginning of
+__lock_downgrade().
+
+Reported-by: Tetsuo Handa <penguin-kernel@i-love.sakura.ne.jp>
+Reported-by: syzbot+53383ae265fb161ef488@syzkaller.appspotmail.com
+Signed-off-by: Waiman Long <longman@redhat.com>
+Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
+Cc: Andrew Morton <akpm@linux-foundation.org>
+Cc: Linus Torvalds <torvalds@linux-foundation.org>
+Cc: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
+Cc: Peter Zijlstra <peterz@infradead.org>
+Cc: Thomas Gleixner <tglx@linutronix.de>
+Cc: Will Deacon <will.deacon@arm.com>
+Link: https://lkml.kernel.org/r/1547093005-26085-1-git-send-email-longman@redhat.com
+Signed-off-by: Ingo Molnar <mingo@kernel.org>
+Signed-off-by: Sasha Levin <sashal@kernel.org>
+---
+ kernel/locking/lockdep.c | 3 +++
+ 1 file changed, 3 insertions(+)
+
+diff --git a/kernel/locking/lockdep.c b/kernel/locking/lockdep.c
+index e810e8cb17e18..68ba411a90075 100644
+--- a/kernel/locking/lockdep.c
++++ b/kernel/locking/lockdep.c
+@@ -3567,6 +3567,9 @@ __lock_set_class(struct lockdep_map *lock, const char *name,
+       unsigned int depth;
+       int i;
++      if (unlikely(!debug_locks))
++              return 0;
++
+       depth = curr->lockdep_depth;
+       /*
+        * This function is about (re)setting the class of a held lock,
+-- 
+2.20.1
+
diff --git a/queue-4.19/locking-lockdep-add-debug_locks-check-in-__lock_down.patch-13969 b/queue-4.19/locking-lockdep-add-debug_locks-check-in-__lock_down.patch-13969
new file mode 100644 (file)
index 0000000..7570c8b
--- /dev/null
@@ -0,0 +1,52 @@
+From e80d942d888fbda3bd814977bba5bd1d3ab85169 Mon Sep 17 00:00:00 2001
+From: Sasha Levin <sashal@kernel.org>
+Date: Wed, 9 Jan 2019 23:03:25 -0500
+Subject: locking/lockdep: Add debug_locks check in __lock_downgrade()
+
+From: Waiman Long <longman@redhat.com>
+
+[ Upstream commit 71492580571467fb7177aade19c18ce7486267f5 ]
+
+Tetsuo Handa had reported he saw an incorrect "downgrading a read lock"
+warning right after a previous lockdep warning. It is likely that the
+previous warning turned off lock debugging causing the lockdep to have
+inconsistency states leading to the lock downgrade warning.
+
+Fix that by add a check for debug_locks at the beginning of
+__lock_downgrade().
+
+Debugged-by: Tetsuo Handa <penguin-kernel@i-love.sakura.ne.jp>
+Reported-by: Tetsuo Handa <penguin-kernel@i-love.sakura.ne.jp>
+Reported-by: syzbot+53383ae265fb161ef488@syzkaller.appspotmail.com
+Signed-off-by: Waiman Long <longman@redhat.com>
+Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
+Cc: Andrew Morton <akpm@linux-foundation.org>
+Cc: Linus Torvalds <torvalds@linux-foundation.org>
+Cc: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
+Cc: Peter Zijlstra <peterz@infradead.org>
+Cc: Thomas Gleixner <tglx@linutronix.de>
+Cc: Will Deacon <will.deacon@arm.com>
+Link: https://lkml.kernel.org/r/1547093005-26085-1-git-send-email-longman@redhat.com
+Signed-off-by: Ingo Molnar <mingo@kernel.org>
+Signed-off-by: Sasha Levin <sashal@kernel.org>
+---
+ kernel/locking/lockdep.c | 3 +++
+ 1 file changed, 3 insertions(+)
+
+diff --git a/kernel/locking/lockdep.c b/kernel/locking/lockdep.c
+index 68ba411a90075..1c8e5d186ad64 100644
+--- a/kernel/locking/lockdep.c
++++ b/kernel/locking/lockdep.c
+@@ -3608,6 +3608,9 @@ static int __lock_downgrade(struct lockdep_map *lock, unsigned long ip)
+       unsigned int depth;
+       int i;
++      if (unlikely(!debug_locks))
++              return 0;
++
+       depth = curr->lockdep_depth;
+       /*
+        * This function is about (re)setting the class of a held lock,
+-- 
+2.20.1
+
diff --git a/queue-4.19/pinctrl-sprd-use-define-directive-for-sprd_pinconf_p.patch b/queue-4.19/pinctrl-sprd-use-define-directive-for-sprd_pinconf_p.patch
new file mode 100644 (file)
index 0000000..027cd89
--- /dev/null
@@ -0,0 +1,57 @@
+From 2fa6ac26e102e5932a3216e849465c5e774d78e9 Mon Sep 17 00:00:00 2001
+From: Sasha Levin <sashal@kernel.org>
+Date: Wed, 31 Oct 2018 17:44:10 -0700
+Subject: pinctrl: sprd: Use define directive for sprd_pinconf_params values
+
+From: Nathan Chancellor <natechancellor@gmail.com>
+
+[ Upstream commit 957063c924736d4341e5d588757b9f31e8f6fa24 ]
+
+Clang warns when one enumerated type is implicitly converted to another:
+
+drivers/pinctrl/sprd/pinctrl-sprd.c:845:19: warning: implicit conversion
+from enumeration type 'enum sprd_pinconf_params' to different
+enumeration type 'enum pin_config_param' [-Wenum-conversion]
+        {"sprd,control", SPRD_PIN_CONFIG_CONTROL, 0},
+        ~                ^~~~~~~~~~~~~~~~~~~~~~~
+drivers/pinctrl/sprd/pinctrl-sprd.c:846:22: warning: implicit conversion
+from enumeration type 'enum sprd_pinconf_params' to different
+enumeration type 'enum pin_config_param' [-Wenum-conversion]
+        {"sprd,sleep-mode", SPRD_PIN_CONFIG_SLEEP_MODE, 0},
+        ~                   ^~~~~~~~~~~~~~~~~~~~~~~~~~
+
+It is expected that pinctrl drivers can extend pin_config_param because
+of the gap between PIN_CONFIG_END and PIN_CONFIG_MAX so this conversion
+isn't an issue. Most drivers that take advantage of this define the
+PIN_CONFIG variables as constants, rather than enumerated values. Do the
+same thing here so that Clang no longer warns.
+
+Link: https://github.com/ClangBuiltLinux/linux/issues/138
+Signed-off-by: Nathan Chancellor <natechancellor@gmail.com>
+Reviewed-by: Baolin Wang <baolin.wang@linaro.org>
+Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
+Signed-off-by: Sasha Levin <sashal@kernel.org>
+---
+ drivers/pinctrl/sprd/pinctrl-sprd.c | 6 ++----
+ 1 file changed, 2 insertions(+), 4 deletions(-)
+
+diff --git a/drivers/pinctrl/sprd/pinctrl-sprd.c b/drivers/pinctrl/sprd/pinctrl-sprd.c
+index 78c2f548b25f1..8f3468d9f848d 100644
+--- a/drivers/pinctrl/sprd/pinctrl-sprd.c
++++ b/drivers/pinctrl/sprd/pinctrl-sprd.c
+@@ -159,10 +159,8 @@ struct sprd_pinctrl {
+       struct sprd_pinctrl_soc_info *info;
+ };
+-enum sprd_pinconf_params {
+-      SPRD_PIN_CONFIG_CONTROL = PIN_CONFIG_END + 1,
+-      SPRD_PIN_CONFIG_SLEEP_MODE = PIN_CONFIG_END + 2,
+-};
++#define SPRD_PIN_CONFIG_CONTROL               (PIN_CONFIG_END + 1)
++#define SPRD_PIN_CONFIG_SLEEP_MODE    (PIN_CONFIG_END + 2)
+ static int sprd_pinctrl_get_id_by_name(struct sprd_pinctrl *sprd_pctl,
+                                      const char *name)
+-- 
+2.20.1
+
diff --git a/queue-4.19/power-supply-sysfs-ratelimit-property-read-error-mes.patch b/queue-4.19/power-supply-sysfs-ratelimit-property-read-error-mes.patch
new file mode 100644 (file)
index 0000000..6bf9159
--- /dev/null
@@ -0,0 +1,38 @@
+From 4f42a7966253dfe4c7f94eca0d7519454b50ab54 Mon Sep 17 00:00:00 2001
+From: Sasha Levin <sashal@kernel.org>
+Date: Wed, 12 Sep 2018 19:48:30 -0500
+Subject: power: supply: sysfs: ratelimit property read error message
+
+From: David Lechner <david@lechnology.com>
+
+[ Upstream commit 87a2b65fc855e6be50f791c2ebbb492541896827 ]
+
+This adds rate limiting to the message that is printed when reading a
+power supply property via sysfs returns an error. This will prevent
+userspace applications from unintentionally dDOSing the system by
+continuously reading a property that returns an error.
+
+Signed-off-by: David Lechner <david@lechnology.com>
+Signed-off-by: Sebastian Reichel <sebastian.reichel@collabora.com>
+Signed-off-by: Sasha Levin <sashal@kernel.org>
+---
+ drivers/power/supply/power_supply_sysfs.c | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/drivers/power/supply/power_supply_sysfs.c b/drivers/power/supply/power_supply_sysfs.c
+index 5a2757a7f4088..5358a80d854f9 100644
+--- a/drivers/power/supply/power_supply_sysfs.c
++++ b/drivers/power/supply/power_supply_sysfs.c
+@@ -131,7 +131,8 @@ static ssize_t power_supply_show_property(struct device *dev,
+                               dev_dbg(dev, "driver has no data for `%s' property\n",
+                                       attr->attr.name);
+                       else if (ret != -ENODEV && ret != -EAGAIN)
+-                              dev_err(dev, "driver failed to report `%s' property: %zd\n",
++                              dev_err_ratelimited(dev,
++                                      "driver failed to report `%s' property: %zd\n",
+                                       attr->attr.name, ret);
+                       return ret;
+               }
+-- 
+2.20.1
+
index a0b07644082ead44df2dc05af523447b0a7cda43..428c031d332d93f592644bc08ae9f8df2e78ed32 100644 (file)
@@ -31,3 +31,7 @@ alsa-hda-add-laptop-imic-fixup-for-asus-m9v-laptop.patch
 alsa-hda-apply-amd-controller-workaround-for-raven-platform.patch
 objtool-clobber-user-cflags-variable.patch
 tpm-fix-tpm-1.2-shutdown-sequence-to-prevent-future-.patch
+pinctrl-sprd-use-define-directive-for-sprd_pinconf_p.patch
+power-supply-sysfs-ratelimit-property-read-error-mes.patch
+locking-lockdep-add-debug_locks-check-in-__lock_down.patch
+locking-lockdep-add-debug_locks-check-in-__lock_down.patch-13969