SRU request submitted:
https://lists.ubuntu.com/archives/kernel-team/2018-June/093312.html

** Also affects: linux (Ubuntu Bionic)
   Importance: Undecided
       Status: New

** Changed in: linux (Ubuntu Bionic)
       Status: New => In Progress

** Changed in: linux (Ubuntu Bionic)
   Importance: Undecided => High

** Changed in: linux (Ubuntu Bionic)
     Assignee: (unassigned) => Joseph Salisbury (jsalisbury)

** Description changed:

+ == SRU Justification ==
+ IBM reports that arch_get_random_seed_long() invocations may slow down the
+ interrupt handling on heavy interrupt producing loads.
+ 
+ The existing random device driver calls arch_get_random_seed_long() in
+ interrupt context. The current implementation of this function uses the
+ PRNO(TRNG) instruction to provide good entropy. This instruction is
+ relatively slow and expensive and may slow down the capacity of interrupts 
which can be handled per cpu.
+ 
+ This fix reworks the arch_get_random_seed implementation.  It introduces a
+ buffer concept to decouple the delivery of random data via
+ arch_get_random_seed*() from the generation of new random bytes and so
+ does not limit the interrupt handling per cpu any more.
+ 
+ == Fix ==
+ 966f53e750ae ("s390/archrandom: Rework arch random implementation.")
+ 
+ == Regression Potential ==
+ Low.  This fix is limited to s390.
+ 
+ == Test Case ==
+ Verified upfront by IBM during upstream integration
+ 
+ 
+ 
  Description:  kernel: Fix arch random implementation
  Symptom:      arch_get_random_seed_long() invocations may slow down the
-               interrupt handling on heavy interrupt producing loads.
+               interrupt handling on heavy interrupt producing loads.
  Problem:      The existing random device driver calls
-               arch_get_random_seed_long() in interrupt context. The
-               current implementation of this function uses the
-               PRNO(TRNG) instruction to provide good entropy. This
-               instruction is relatively slow and expensive and may
-               slow down the capacity of interrupts which can be handled
-               per cpu.
+               arch_get_random_seed_long() in interrupt context. The
+               current implementation of this function uses the
+               PRNO(TRNG) instruction to provide good entropy. This
+               instruction is relatively slow and expensive and may
+               slow down the capacity of interrupts which can be handled
+               per cpu.
  Solution:     This fix reworks the arch_get_random_seed implementation.
-               It introduces a buffer concept to decouple the delivery
-               of random data via arch_get_random_seed*() from the
-               generation of new random bytes and so does not limit
-               the interrupt handling per cpu any more.
+               It introduces a buffer concept to decouple the delivery
+               of random data via arch_get_random_seed*() from the
+               generation of new random bytes and so does not limit
+               the interrupt handling per cpu any more.
  Reproduction: Systems with heavy irq load show performance decrease.
  Component:    kernel
  
  Upstream commit(s): kernel 4.18
  966f53e750aedc5f59f9ccae6bbfb8f671c7c842

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1775391

Title:
  kernel: Fix arch random implementation

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu-z-systems/+bug/1775391/+subscriptions

-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to