A patched s390-tools package was build for hirsute and shared in the
following PPA for further tesing:
https://launchpad.net/~fheimes/+archive/ubuntu/lp1903984


** Description changed:

+ SRU Justification:
+ ==================
+ 
+ [Impact]
+ 
+  * If multiple s390x crypto domains are available,
+    the output of all domains does no longer fit into the output buffer of one 
CHSC call.
+ 
+  * Thus, the response contains a partial-response-snippet that indicates
+ that there is more data to be retrieved.
+ 
+  * The remaining data is then retrieved in a subsequent CHSC call,
+    but there is an error in zcryptstats in populating the request with the 
next domain number to obtain data for.
+ 
+  * This results in the fact that it retrieves the data for domains 1 to n 
over and over again,
+    and always gets the partial-response snippet, hence this loops 
indefinitely.
+ 
+ [Test Case]
+ 
+  * An Ubuntu Server 20.04 system (or newer) is needed on z/VM or LPAR
+ with two or more crypto domains accessible.
+ 
+  * Now call 'zcryptstats --all -V' and verify if the command completes
+ successfully (within seconds) or hangs (loops).
+ 
+ [Where problems could occur]
+ 
+  * The patch fixes the code that passes the correct next-domain to the
+ subsequent CHSC call of a partial response.
+ 
+  * In case done wrong even no data at all from any of the domains is
+ retrieved,
+ 
+  * or the tool may even try to retrieve data from a domain that has an
+ invalid index, which will lead to an error (the rc is captured).
+ 
+  * But the code changes are marginal and pretty straight forward, and
+ the cases where scdmd_area.request.first_drid is handled are now
+ enclosed by proper 'if/else' statement.
+ 
+  * This patch was already upstream accepted and a patched s390-tools package 
was build and shared in a PPA for further testing.
+ __________
  ---Problem Description---
- I have had trouble collecting data via the zcryptstats 
(https://github.com/ibm-s390-tools/s390-tools/blob/master/zconf/zcrypt/zcryptstats.c)
 tool for our Hosting Appliance - VPC environment. Basically, the tool reports 
data for only the last two domain IDs. Further, it hangs if I collect data for 
a complete crypto card, and then I have to kill the ssh session to get back. 
+ I have had trouble collecting data via the zcryptstats 
(https://github.com/ibm-s390-tools/s390-tools/blob/master/zconf/zcrypt/zcryptstats.c)
 tool for our Hosting Appliance - VPC environment. Basically, the tool reports 
data for only the last two domain IDs. Further, it hangs if I collect data for 
a complete crypto card, and then I have to kill the ssh session to get back.
  
  strace attached, ltrace not available and can't be installed due to no
  Internet access.
  
  ===================
+ 
  Addl. Information:
  
  This seems to be a problem with the handling of partial responses of the
  SCDMD CHSC command.
  
  When many domains are available, then the output of all domains does not
  fit into the output buffer of one CHSC call. Thus, the response contains
  a partial-response-bit that indicates that there is more data to be
  retrieved. This is done in a subsequent CHSC call, but there is an error
  in zcryptstats with populating the request with the next domain number
  to obtain data for. This results in the fact that it retrieves the data
  for domains 1 to n over and over again, and always gets the partial-
  response bit set. So this loops forever.
  
  ===================
  The fix for this in now upstream:
  
https://github.com/ibm-s390-tools/s390-tools/commit/cf2311f1f1de17435b49ba8c8697be91705ba031
  
  This need to be integrated in all Ubuntu distros, from 20.04 on. F/G/H

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

Title:
  [UBUNTU 20.04] Cannot run zcryptstats in the Hosting Appliance

To manage notifications about this bug go to:
https://bugs.launchpad.net/s390-tools/+bug/1903984/+subscriptions

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

Reply via email to