All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH RT 0/2] Linux v4.19.115-rt50-rc1
@ 2020-04-28 19:52 zanussi
  2020-04-28 19:52 ` [PATCH RT 1/2] hrtimer: fix logic for when grabbing softirq_expiry_lock can be elided zanussi
                   ` (2 more replies)
  0 siblings, 3 replies; 5+ messages in thread
From: zanussi @ 2020-04-28 19:52 UTC (permalink / raw)
  To: LKML, linux-rt-users, Steven Rostedt, Thomas Gleixner,
	Carsten Emde, John Kacur, Sebastian Andrzej Siewior,
	Daniel Wagner, Clark Williams, Tom Zanussi, Rasmus Villemoes

From: Tom Zanussi <zanussi@kernel.org>

Dear RT Folks,

This is the RT stable review cycle of patch 4.19.115-rt50-rc1.

Please scream at me if I messed something up. Please test the patches
too.

The -rc release will be uploaded to kernel.org and will be deleted
when the final release is out. This is just a review release (or
release candidate).

The pre-releases will not be pushed to the git repository, only the
final release is.

If all goes well, this patch will be converted to the next main
release on 2020-05-01.

To build 4.19.115-rt50-rc1 directly, the following patches should be applied:

  https://www.kernel.org/pub/linux/kernel/v4.x/linux-4.19.tar.xz

  https://www.kernel.org/pub/linux/kernel/v4.x/patch-4.19.115.xz

  https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/patch-4.19.115-rt50-rc1.patch.xz

You can also build from 4.19.115-rt49 by applying the incremental patch:

  https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/incr/patch-4.19.115-rt49-rt50-rc1.patch.xz


Enjoy,

-- Tom


Rasmus Villemoes (1):
  hrtimer: fix logic for when grabbing softirq_expiry_lock can be elided

Tom Zanussi (1):
  Linux 4.19.115-rt50-rc1

 kernel/time/hrtimer.c | 2 +-
 localversion-rt       | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

-- 
2.17.1


^ permalink raw reply	[flat|nested] 5+ messages in thread

* [PATCH RT 1/2] hrtimer: fix logic for when grabbing softirq_expiry_lock can be elided
  2020-04-28 19:52 [PATCH RT 0/2] Linux v4.19.115-rt50-rc1 zanussi
@ 2020-04-28 19:52 ` zanussi
  2020-04-28 19:52 ` [PATCH RT 2/2] Linux 4.19.115-rt50-rc1 zanussi
  2020-04-30 18:48 ` [PATCH RT 0/2] Linux v4.19.115-rt50-rc1 Rasmus Villemoes
  2 siblings, 0 replies; 5+ messages in thread
From: zanussi @ 2020-04-28 19:52 UTC (permalink / raw)
  To: LKML, linux-rt-users, Steven Rostedt, Thomas Gleixner,
	Carsten Emde, John Kacur, Sebastian Andrzej Siewior,
	Daniel Wagner, Clark Williams, Tom Zanussi, Rasmus Villemoes

From: Rasmus Villemoes <rasmus.villemoes@prevas.dk>

v4.19.115-rt50-rc1 stable review patch.
If anyone has any objections, please let me know.

-----------


Commit

  hrtimer: Add a missing bracket and hide `migration_base' on !SMP

which is 47b6de0b7f22 in 5.2-rt and 40aae5708e7a in 4.19-rt,
inadvertently changed the logic from base != &migration_base to base
== &migration_base.

On !CONFIG_SMP, the effect was to effectively always elide this
lock/unlock pair (since is_migration_base() is unconditionally false),
which for me consistently causes lockups during reboot, and reportedly
also often causes a hang during boot.

Adding this logical negation (or, what is effectively the same thing
on !CONFIG_SMP, reverting the above commit as well as "hrtimer:
Prevent using hrtimer_grab_expiry_lock() on migration_base") fixes
that lockup.

Fixes: 40aae5708e7a (hrtimer: Add a missing bracket and hide `migration_base' on !SMP) # 4.19-rt
Fixes: 47b6de0b7f22 (hrtimer: Add a missing bracket and hide `migration_base' on !SMP) # 5.2-rt
Signed-off-by: Rasmus Villemoes <rasmus.villemoes@prevas.dk>
Reviewed-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
Signed-off-by: Tom Zanussi <zanussi@kernel.org>
---
 kernel/time/hrtimer.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/kernel/time/hrtimer.c b/kernel/time/hrtimer.c
index e54a95de8b79..c3966c090246 100644
--- a/kernel/time/hrtimer.c
+++ b/kernel/time/hrtimer.c
@@ -953,7 +953,7 @@ void hrtimer_grab_expiry_lock(const struct hrtimer *timer)
 {
 	struct hrtimer_clock_base *base = READ_ONCE(timer->base);
 
-	if (timer->is_soft && is_migration_base(base)) {
+	if (timer->is_soft && !is_migration_base(base)) {
 		spin_lock(&base->cpu_base->softirq_expiry_lock);
 		spin_unlock(&base->cpu_base->softirq_expiry_lock);
 	}
-- 
2.17.1


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [PATCH RT 2/2] Linux 4.19.115-rt50-rc1
  2020-04-28 19:52 [PATCH RT 0/2] Linux v4.19.115-rt50-rc1 zanussi
  2020-04-28 19:52 ` [PATCH RT 1/2] hrtimer: fix logic for when grabbing softirq_expiry_lock can be elided zanussi
@ 2020-04-28 19:52 ` zanussi
  2020-04-30 18:48 ` [PATCH RT 0/2] Linux v4.19.115-rt50-rc1 Rasmus Villemoes
  2 siblings, 0 replies; 5+ messages in thread
From: zanussi @ 2020-04-28 19:52 UTC (permalink / raw)
  To: LKML, linux-rt-users, Steven Rostedt, Thomas Gleixner,
	Carsten Emde, John Kacur, Sebastian Andrzej Siewior,
	Daniel Wagner, Clark Williams, Tom Zanussi, Rasmus Villemoes

From: Tom Zanussi <zanussi@kernel.org>

v4.19.115-rt50-rc1 stable review patch.
If anyone has any objections, please let me know.

-----------


Signed-off-by: Tom Zanussi <zanussi@kernel.org>
---
 localversion-rt | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/localversion-rt b/localversion-rt
index 4b7dca68a5b4..e8a9a36bb066 100644
--- a/localversion-rt
+++ b/localversion-rt
@@ -1 +1 @@
--rt49
+-rt50-rc1
-- 
2.17.1


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* Re: [PATCH RT 0/2] Linux v4.19.115-rt50-rc1
  2020-04-28 19:52 [PATCH RT 0/2] Linux v4.19.115-rt50-rc1 zanussi
  2020-04-28 19:52 ` [PATCH RT 1/2] hrtimer: fix logic for when grabbing softirq_expiry_lock can be elided zanussi
  2020-04-28 19:52 ` [PATCH RT 2/2] Linux 4.19.115-rt50-rc1 zanussi
@ 2020-04-30 18:48 ` Rasmus Villemoes
  2020-04-30 18:57   ` Tom Zanussi
  2 siblings, 1 reply; 5+ messages in thread
From: Rasmus Villemoes @ 2020-04-30 18:48 UTC (permalink / raw)
  To: zanussi, LKML, linux-rt-users, Steven Rostedt, Thomas Gleixner,
	Carsten Emde, John Kacur, Sebastian Andrzej Siewior,
	Daniel Wagner, Clark Williams

On 28/04/2020 21.52, zanussi@kernel.org wrote:
> From: Tom Zanussi <zanussi@kernel.org>
> 
> Dear RT Folks,
> 
> This is the RT stable review cycle of patch 4.19.115-rt50-rc1.
> 
> Please scream at me if I messed something up. Please test the patches
> too.

For good measure, the customer reports that 4.19.115-rt50-rc1 indeed
seems to fix the boot hang they saw.

Thanks,
Rasmus

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH RT 0/2] Linux v4.19.115-rt50-rc1
  2020-04-30 18:48 ` [PATCH RT 0/2] Linux v4.19.115-rt50-rc1 Rasmus Villemoes
@ 2020-04-30 18:57   ` Tom Zanussi
  0 siblings, 0 replies; 5+ messages in thread
From: Tom Zanussi @ 2020-04-30 18:57 UTC (permalink / raw)
  To: Rasmus Villemoes, LKML, linux-rt-users, Steven Rostedt,
	Thomas Gleixner, Carsten Emde, John Kacur,
	Sebastian Andrzej Siewior, Daniel Wagner, Clark Williams

On Thu, 2020-04-30 at 20:48 +0200, Rasmus Villemoes wrote:
> On 28/04/2020 21.52, zanussi@kernel.org wrote:
> > From: Tom Zanussi <zanussi@kernel.org>
> > 
> > Dear RT Folks,
> > 
> > This is the RT stable review cycle of patch 4.19.115-rt50-rc1.
> > 
> > Please scream at me if I messed something up. Please test the
> > patches
> > too.
> 
> For good measure, the customer reports that 4.19.115-rt50-rc1 indeed
> seems to fix the boot hang they saw.

OK, great, glad to hear that.

Thanks,

Tom
 
> 
> Thanks,
> Rasmus


^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2020-04-30 18:57 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-04-28 19:52 [PATCH RT 0/2] Linux v4.19.115-rt50-rc1 zanussi
2020-04-28 19:52 ` [PATCH RT 1/2] hrtimer: fix logic for when grabbing softirq_expiry_lock can be elided zanussi
2020-04-28 19:52 ` [PATCH RT 2/2] Linux 4.19.115-rt50-rc1 zanussi
2020-04-30 18:48 ` [PATCH RT 0/2] Linux v4.19.115-rt50-rc1 Rasmus Villemoes
2020-04-30 18:57   ` Tom Zanussi

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.