This bug is awaiting verification that the kernel in -proposed solves
the problem. Please test the kernel and update this bug with the
results. If the problem is solved, change the tag 'verification-needed-
artful' to 'verification-done-artful'. If the problem still exists,
change the tag 'verification-needed-artful' to 'verification-failed-

If verification is not done by 5 working days from today, this fix will
be dropped from the source code, and this bug will be closed.

See for documentation how
to enable and use -proposed. Thank you!

** Tags added: verification-needed-artful

You received this bug notification because you are a member of Kernel
Packages, which is subscribed to linux in Ubuntu.

  arm64: Unfair rwlock can stall the system

Status in linux package in Ubuntu:
  Fix Committed
Status in linux source package in Artful:
  Fix Committed

Bug description:
  There is a long-standing upstream bug with the ARM64 specific implementation 
of RW locks. The implementation can starve writers under lock contention 
leading to RCU stalls, driver timeouts and general system instability.

  [Test Case]
  $ stress-ng --kill 0 -t 300 -v

  You'll see the console fill with messages like:

  [ 2534.423119] INFO: rcu_sched detected stalls on CPUs/tasks:
  [ 2534.428606]        192-...: (1 ticks this GP) idle=b6e/140000000000000/0 
softirq=578/578 fqs=6770
  [ 2534.437029]        (detected by 0, t=15005 jiffies, g=1479, c=1478, q=473)
  [ 2714.623691] INFO: rcu_sched detected stalls on CPUs/tasks:
  [ 2714.629181]        192-...: (1 ticks this GP) idle=b6e/140000000000000/0 
softirq=578/578 fqs=12819
  [ 2714.637692]        (detected by 116, t=60058 jiffies, g=1479, c=1478, 
  [ 2747.216955] watchdog: BUG: soft lockup - CPU#0 stuck for 22s! 
  [ 2775.399061] watchdog: BUG: soft lockup - CPU#13 stuck for 123s! 

  [Regression Risk]
  The proposed fix for this comprises clean cherry-picks from the v4.15 merge 
window. The code modified for this fix is restricted to x86 & arm64, as they 
are the only Ubuntu architectures that define ARCH_USE_QUEUED_LOCKS. Fix 
verified on a 228 CPU arm64 (ThunderX2) server and regression tested on a 
128-cpu x86 system using stress-ng and locktorture.

To manage notifications about this bug go to:

Mailing list:
Post to     :
Unsubscribe :
More help   :

Reply via email to