diff options
author | Sebastian Andrzej Siewior <bigeasy@linutronix.de> | 2020-11-09 15:30:30 +0100 |
---|---|---|
committer | Sebastian Andrzej Siewior <bigeasy@linutronix.de> | 2020-11-09 15:30:30 +0100 |
commit | 7d6cc66c51edf11cb0f02417a6f371579336a9e4 (patch) | |
tree | 4e6da93a7bcfb9cd5a306e218a0bda86e4441a7f | |
parent | 5dd7b25dacbc055dde96246ef03e154fd476febf (diff) | |
download | linux-rt-7d6cc66c51edf11cb0f02417a6f371579336a9e4.tar.gz |
[ANNOUNCE] v5.10-rc3-rt5v5.10-rc3-rt5-patches
Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
4 files changed, 17 insertions, 15 deletions
diff --git a/patches/localversion.patch b/patches/localversion.patch index 03a80b8b0e80..72cdd2b3c760 100644 --- a/patches/localversion.patch +++ b/patches/localversion.patch @@ -10,4 +10,4 @@ Signed-off-by: Thomas Gleixner <tglx@linutronix.de> --- /dev/null +++ b/localversion-rt @@ -0,0 +1 @@ -+-rt4 ++-rt5 diff --git a/patches/signals-allow-rt-tasks-to-cache-one-sigqueue-struct.patch b/patches/signals-allow-rt-tasks-to-cache-one-sigqueue-struct.patch index 99b3ce936317..9ce4f1bceb3c 100644 --- a/patches/signals-allow-rt-tasks-to-cache-one-sigqueue-struct.patch +++ b/patches/signals-allow-rt-tasks-to-cache-one-sigqueue-struct.patch @@ -66,8 +66,8 @@ Signed-off-by: Thomas Gleixner <tglx@linutronix.de> #include <linux/file.h> #include <linux/fs.h> #include <linux/proc_fs.h> -@@ -403,13 +404,30 @@ void task_join_group_stop(struct task_st - } +@@ -404,13 +405,30 @@ void task_join_group_stop(struct task_st + task_set_jobctl_pending(task, mask | JOBCTL_STOP_PENDING); } +static inline struct sigqueue *get_task_cache(struct task_struct *t) @@ -98,7 +98,7 @@ Signed-off-by: Thomas Gleixner <tglx@linutronix.de> { struct sigqueue *q = NULL; struct user_struct *user; -@@ -431,7 +449,10 @@ static struct sigqueue * +@@ -432,7 +450,10 @@ static struct sigqueue * rcu_read_unlock(); if (override_rlimit || likely(sigpending <= task_rlimit(t, RLIMIT_SIGPENDING))) { @@ -110,7 +110,7 @@ Signed-off-by: Thomas Gleixner <tglx@linutronix.de> } else { print_dropped_signal(sig); } -@@ -448,6 +469,13 @@ static struct sigqueue * +@@ -449,6 +470,13 @@ static struct sigqueue * return q; } @@ -124,7 +124,7 @@ Signed-off-by: Thomas Gleixner <tglx@linutronix.de> static void __sigqueue_free(struct sigqueue *q) { if (q->flags & SIGQUEUE_PREALLOC) -@@ -457,6 +485,21 @@ static void __sigqueue_free(struct sigqu +@@ -458,6 +486,21 @@ static void __sigqueue_free(struct sigqu kmem_cache_free(sigqueue_cachep, q); } @@ -146,7 +146,7 @@ Signed-off-by: Thomas Gleixner <tglx@linutronix.de> void flush_sigqueue(struct sigpending *queue) { struct sigqueue *q; -@@ -470,6 +513,21 @@ void flush_sigqueue(struct sigpending *q +@@ -471,6 +514,21 @@ void flush_sigqueue(struct sigpending *q } /* @@ -168,7 +168,7 @@ Signed-off-by: Thomas Gleixner <tglx@linutronix.de> * Flush all pending signals for this kthread. */ void flush_signals(struct task_struct *t) -@@ -593,7 +651,7 @@ static void collect_signal(int sig, stru +@@ -594,7 +652,7 @@ static void collect_signal(int sig, stru (info->si_code == SI_TIMER) && (info->si_sys_private); @@ -177,7 +177,7 @@ Signed-off-by: Thomas Gleixner <tglx@linutronix.de> } else { /* * Ok, it wasn't in the queue. This must be -@@ -630,6 +688,8 @@ int dequeue_signal(struct task_struct *t +@@ -631,6 +689,8 @@ int dequeue_signal(struct task_struct *t bool resched_timer = false; int signr; @@ -186,7 +186,7 @@ Signed-off-by: Thomas Gleixner <tglx@linutronix.de> /* We only dequeue private signals from ourselves, we don't let * signalfd steal them */ -@@ -1834,7 +1894,8 @@ EXPORT_SYMBOL(kill_pid); +@@ -1835,7 +1895,8 @@ EXPORT_SYMBOL(kill_pid); */ struct sigqueue *sigqueue_alloc(void) { diff --git a/patches/tcp-Remove-superfluous-BH-disable-around-listening_h.patch b/patches/tcp-Remove-superfluous-BH-disable-around-listening_h.patch index 5b2843c7475c..541bca94d796 100644 --- a/patches/tcp-Remove-superfluous-BH-disable-around-listening_h.patch +++ b/patches/tcp-Remove-superfluous-BH-disable-around-listening_h.patch @@ -13,7 +13,9 @@ Drop local_bh_disable() around __inet_hash() which acquires listening_hash->lock, invoke inet_ehash_nolisten() with disabled BH. inet_unhash() conditionally acquires listening_hash->lock. +Reported-by: Mike Galbraith <efault@gmx.de> Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de> +Link: https://lore.kernel.org/linux-rt-users/12d6f9879a97cd56c09fb53dee343cbb14f7f1f7.camel@gmx.de/ --- net/ipv4/inet_hashtables.c | 19 ++++++++++++------- net/ipv6/inet6_hashtables.c | 5 +---- diff --git a/patches/tpm_tis-fix-stall-after-iowrite-s.patch b/patches/tpm_tis-fix-stall-after-iowrite-s.patch index f2a7021cf9dd..445d8ab7d68a 100644 --- a/patches/tpm_tis-fix-stall-after-iowrite-s.patch +++ b/patches/tpm_tis-fix-stall-after-iowrite-s.patch @@ -25,7 +25,7 @@ Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de> --- a/drivers/char/tpm/tpm_tis.c +++ b/drivers/char/tpm/tpm_tis.c -@@ -49,6 +49,31 @@ static inline struct tpm_tis_tcg_phy *to +@@ -50,6 +50,31 @@ static inline struct tpm_tis_tcg_phy *to return container_of(data, struct tpm_tis_tcg_phy, priv); } @@ -54,10 +54,10 @@ Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de> + tpm_tis_flush(iobase); +} + - static bool interrupts = true; - module_param(interrupts, bool, 0444); + static int interrupts = -1; + module_param(interrupts, int, 0444); MODULE_PARM_DESC(interrupts, "Enable interrupts"); -@@ -146,7 +171,7 @@ static int tpm_tcg_write_bytes(struct tp +@@ -169,7 +194,7 @@ static int tpm_tcg_write_bytes(struct tp struct tpm_tis_tcg_phy *phy = to_tpm_tis_tcg_phy(data); while (len--) @@ -66,7 +66,7 @@ Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de> return 0; } -@@ -173,7 +198,7 @@ static int tpm_tcg_write32(struct tpm_ti +@@ -196,7 +221,7 @@ static int tpm_tcg_write32(struct tpm_ti { struct tpm_tis_tcg_phy *phy = to_tpm_tis_tcg_phy(data); |