lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20201116220153.GA22623@paulmck-ThinkPad-P72>
Date:   Mon, 16 Nov 2020 14:01:53 -0800
From:   "Paul E. McKenney" <paulmck@...nel.org>
To:     torvalds@...ux-foundation.org
Cc:     tglx@...utronix.de, mingo@...hat.com, linux-kernel@...r.kernel.org,
        rcu@...r.kernel.org, kernel-team@...com, jiangshanlai@...il.com,
        akpm@...ux-foundation.org, mathieu.desnoyers@...icios.com,
        josh@...htriplett.org, peterz@...radead.org, rostedt@...dmis.org,
        dhowells@...hat.com, edumazet@...gle.com, fweisbec@...il.com,
        oleg@...hat.com, joel@...lfernandes.org, bigeasy@...utronix.de
Subject: [GIT RFC PULL rcu/urgent] Fix lockdep issue in rcu_print_task_stall()

Hello!

This pull request contains a single commit that fixes a bug that was
introduced a couple of merge windows ago, but which rather more recently
converged to an agreed-upon fix.  The bug is that interrupts can be
incorrectly enabled while holding an irq-disabled spinlock.  This can
of course result in self-deadlocks.

The bug is a bit difficult to trigger.  It requires that a preempted
task be blocking a preemptible-RCU grace period long enough to trigger
an RCU CPU stall warning.  In addition, an interrupt must occur at just
the right time, and that interrupt's handler must acquire that same
irq-disabled spinlock.  Still, a deadlock is a deadlock.

Furthermore, we do now have a fix, and that fix survives kernel test
robot, -next, and rcutorture testing.  It has also been verified by
Sebastian as fixing the bug.  Therefore...

The following changes since commit 3650b228f83adda7e5ee532e2b90429c03f7b9ec:

  Linux 5.10-rc1 (2020-10-25 15:14:11 -0700)

are available in the git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu.git urgent-fixes

for you to fetch changes up to c583bcb8f5edd48c1798798e341f78afb9bf4f6f:

  rcu: Don't invoke try_invoke_on_locked_down_task() with irqs disabled (2020-11-10 17:10:38 -0800)

----------------------------------------------------------------
Paul E. McKenney (1):
      rcu: Don't invoke try_invoke_on_locked_down_task() with irqs disabled

 kernel/rcu/tree_stall.h | 22 +++++++++++++++++-----
 1 file changed, 17 insertions(+), 5 deletions(-)

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ