** Merge proposal linked:
   
https://code.launchpad.net/~fheimes/ubuntu/+source/s390-tools/+git/s390-tools/+merge/396718

** Description changed:

  Zipl command doesn't work correctly with -M option.
  There is an error at preparing of multi-volume dump taking because of Bus-ID 
for 1st disk partition listed in file dump_conf (DEVLIST) isn't found. At the 
same time LSDASD command shows this Bus-ID and ZIPL command with -d option 
works correctly.
  [root@t8375009 ~]# lsdasd
  Bus-ID    Status    Name      Device  Type         BlkSz  Size      Blocks
  
================================================================================
  0.0.2c58  active    dasda     94:0    ECKD         4096   21129MB   5409180
  0.0.2c5b  active    dasdb     94:4    ECKD         4096   21129MB   5409180
  0.0.2c59  active    dasdc     94:8    ECKD         4096   21129MB   5409180
  0.0.2c5a  active    dasdd     94:12   ECKD         4096   21129MB   5409180
  [root@t8375009 ~]#
  
  [root@t8375009 ~]# systemctl stop kdump.service
  [root@t8375009 ~]# lsdasd | tail -n +5 | awk '{ print "/dev/" $3 "1" }' > 
dump_conf
  [root@t8375009 ~]# cat dump_conf
  /dev/dasdc1
  /dev/dasdd1
  [root@t8375009 ~]# zipl -M dump_conf
  Error: Could not find bus-ID for '/dev/dasdc1'
  [root@t8375009 ~]#
  
  [root@t8375009 ~]# zipl -d /dev/dasdc1
  Dump target: partition '/dev/dasdc1' with a size of 21129 MB.
  Warning: All information on partition '/dev/dasdc1' will be lost!
  Do you want to continue creating a dump partition (y/n)?yes
  Done.
  [root@t8375009 ~]#
  
  [root@t8375009 ~]# zipl -M dump_conf
  Error: Could not find bus-ID for '/dev/dasdc1'
  
-  
  ---Steps to Reproduce---
-  [root@t8375009 ~]# lsdasd | tail -n +5 | awk '{ print "/dev/" $3 "1" }' > 
dump_conf
+  [root@t8375009 ~]# lsdasd | tail -n +5 | awk '{ print "/dev/" $3 "1" }' > 
dump_conf
  
  [root@t8375009 ~]# cat dump_conf
  /dev/dasdc1
  /dev/dasdd1
  
  [root@t8375009 ~]# zipl -M dump_conf
  
-  
  Stack trace output:
-  no
-  
+  no
+ 
  Oops output:
-  Error: Could not find bus-ID for '/dev/dasdc1'
-  
+  Error: Could not find bus-ID for '/dev/dasdc1'
+ 
  System Dump Info:
-   The system is not configured to capture a system dump.
-  
+   The system is not configured to capture a system dump.
  
  Fix provided upstream with
  
  https://github.com/ibm-s390-tools/s390-tools/releases/tag/v2.15.1
  
  Commits:
  
  
https://github.com/ibm-s390-tools/s390-tools/commit/fa7a4dafa3d89b2e8787de102e4362e895d44b05
  
https://github.com/ibm-s390-tools/s390-tools/commit/aa8c2945cc7b047c626e75817c6a3e3924413023
  
https://github.com/ibm-s390-tools/s390-tools/commit/6802b86414b48c4f118da09c7bf7ee142a459fa0
+ __________
+ 
+ SRU Bug Template
+ 
+ [Impact]
+ 
+  * The zipl command doesn't work correctly in combination with the -M
+ (respectively --mvdump) option.
+ 
+  * There is an error with the preparation of multi-volume dumps,
+    since the bus-ID for the first disk partition that is listed in file 
dump_conf (DEVLIST) isn't found.
+ 
+  * But the lsdasd command shows this bus-ID and the zipl command with
+ the -d option works correctly here.
+ 
+ [Test Case]
+ 
+  * An Ubuntu Server 20.04 or 20.10 system running on z/VM or LPAR with
+ two or more DASD ECKD disks configured.
+ 
+  * Let's assume the following DASDs are in place:
+    # lsdasd
+    Bus-ID Status Name Device Type BlkSz Size Blocks
+    ========================================================================
+    0.0.2c58 active dasda 94:0 ECKD 4096 21129MB 5409180
+    0.0.2c5b active dasdb 94:4 ECKD 4096 21129MB 5409180
+    0.0.2c59 active dasdc 94:8 ECKD 4096 21129MB 5409180
+    0.0.2c5a active dasdd 94:12 ECKD 4096 21129MB 5409180
+ 
+  * Then perform the following steps to test:
+    # systemctl stop kdump.service
+    # lsdasd | tail -n +5 | awk '{ print "/dev/" $3 "1" }' > dump_conf
+    # cat dump_conf
+      /dev/dasdc1
+      /dev/dasdd1
+    # zipl -M dump_conf
+      Error: Could not find bus-ID for '/dev/dasdc1'
+    # zipl -d /dev/dasdc1
+      Dump target: partition '/dev/dasdc1' with a size of 21129 MB.
+      Warning: All information on partition '/dev/dasdc1' will be lost!
+      Do you want to continue creating a dump partition (y/n)?yes
+      Done.
+    # zipl -M dump_conf
+      Error: Could not find bus-ID for '/dev/dasdc1'
+    # lsdasd | tail -n +5 | awk '{ print "/dev/" $3 "1" }' > dump_conf
+    # cat dump_conf
+      /dev/dasdc1
+      /dev/dasdd1
+    # zipl -M dump_conf
+ 
+ [Where problems could occur]
+ 
+  * The first commit doesn't modify or remove code, it largely adds just three 
new funtions util_sys_get_partnum,
+    util_sys_dev_is_partition and util_sys_get_base_dev, which usually cannot 
cause more problems than compile time errors.
+ 
+  * However, the second commit removes the functions blkext_get_partnum, 
blkext_is_base_device and blkext_get_base_dev.
+    Potential issues due to this removal should again crop up at compile time.
+    In addition disk_is_eckd was modified and the blkext_* function based code 
got replaced by util_sys_* funtion based code.
+ 
+  * Issues here may lead to not properly detected DASD ECKD disk, maybe DASD 
FBA or FCP instead
+    and since those different disk types have different characteristics (like 
different amount of partitions)
+    this could end up in errornously partition handling and eventually zipl 
crashes.
+ 
+  * The third commit 6802b86 adds some more safety (and with that the actually 
needed fix),
+    in a way that the major and minor (ccw-) device number are now obtained 
based on their base device,
+    but only if a base device is present, it fails with returing -1 otherwise.
+ 
+  * Issues that are thinkable here are in case base devices are not properly 
detected, rdev addresses wrongly handled
+    or major / minor numbers inverted - but these changes are limited, 
straight-forward and traceable.
+ 
+  * These changes are already upstream accepted with version 2.15.1 and
+ apply cleanly on 2.14 (groovy) and 2.12 (focal).
+ 
+  * And a PPA was prepared with patched s390-tools package that was
+ shared for further testing.
+ 
+ [Other]
+ 
+  * Since hirsute is already on 2.15.1 this SRU is only needed for groovy
+ and focal.

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

Title:
  [UBUNTU 20.04]  - zipl command doesn't work correctly with -M option

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

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

Reply via email to