[UBUNTU 20.04] zgetdump can not handle multivolume dumps
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Ubuntu on IBM z Systems |
Fix Released
|
Medium
|
Skipper Bug Screeners | ||
s390-tools (Ubuntu) |
Fix Released
|
High
|
Unassigned | ||
Focal |
Fix Released
|
High
|
Unassigned | ||
s390-tools-signed (Ubuntu) |
Fix Released
|
Undecided
|
Unassigned | ||
Focal |
Fix Released
|
High
|
Unassigned |
Bug Description
SRU Justification:
==================
[Impact]
* The zgetdump tool (as part of the current s390-tools version in focal)
is not able to handle multi-volume dumps (DASD disk) dumps.
* While this is rarely needed, it is extremely annoying if one is
in usually urgent need to use it and it does not work.
* On s390x systems multi-volume (DASD disk) dumps are pretty common,
due to usually costly and therefore limited disk resources,
DASD disks are usually relatively small.
[Fix]
* d55b787 d55b787d05eb9bd
[Test Plan]
* Have an IBM zSystems LPAR with Ubuntu 20.04 / focal (latest).
* Have two (or more) additional DASD disks reserved for storing dumps,
assigned to the system and enabled:
sudo chzdev -e 0002, 0003
(Assuming 0001 has Ubuntu 20.04 installed - all 3390 disks).
Get the block device names using 'lsdasd' - assuming here dasdb, dasdc
* If needed low-level format these disks:
sudo dasdfmt -y -b 4096 /dev/dasdb
sudo dasdfmt -y -b 4096 /dev/dasdc
* Create one single partition per disk:
sudo fdasd -a /dev/dasdb
sudo fdasd -a /dev/dasdc
* Create an mvdump.conf file that points to the above disks
sudo vi /etc/mvdump.conf
...
cat /etc/mvdump.conf
/dev/dasdb1
/dev/dasdc1
* Re-write the zipl boot record like this:
sudo zipl -n -M /etc/mvdump.conf
* Now ipl the system from the first dump DASD: 0002
and initiate the DASD dump by:
1. Stop all CPUs.
2. Store status on the IPL CPU.
3. IPL the dump tool on the IPL CPU.
* Wait until the dump is completed and re-ipl the Ubuntu 20.04 again (0001).
* Without this fix one will see a message like this:
sudo zgetdump -i /dev/dasdb
zgetdump: Could not open "/sys/bus/
* With the fix one will see a message like this:
zgetdump -i /dev/dasdb
General dump info:
Dump format........: s390mv_ext
Version.
Dump created.......:
...
Dump device info:
Volume 0: 0.0.0002 (online/active)
Volume 1: 0.0.0003 (online/valid)
* For more in-depth details see the
'Linux on System z. Using the Dump Tools.' documentation:
https:/
[Where problems could occur]
* A new function got introduced to 'check whether a device with a given
busid is online'.
Issues could occur in case this function is broken and
checks for a wrong busid, has a wrong path
or handled the status wrongly.
* The kind of 'little' refactoring of that patch may lead to
further unexpected issues (that can largely identified by a test build).
* The additional use of libutil functions may cause issues
in case of an outdated libutil that does not offer all needed functions.
(Testable with a test build.)
* Erroneous code may even break single volume dumps
[Other Info]
* This code is known to work with hirsute and newer Ubuntu releases,
esp. jammy (respectively their s390-tools versions).
* The upstream code can be cleanly cherry-picked,
hence is applied as-is.
* An updated s390-tools version 2.12.0-0ubuntu3.7 with a
patched zgetdump tool was build and made available via this PPA:
https:/
and was already successfully tested!
__________
== Comment: #0 - Thorsten Diehl <email address hidden> - 2022-08-16 12:40:46 ==
I installed Ubuntu 20.04.4 LTS on IBM z14, enabled two DASDs, created one partition on each DASD and created an mvdump.conf file like this:
/dev/dasdc1
/dev/dasdd1
I wrote the boot record by zipl -n -M mvdump.conf and IPLed the system from dasdc devno.
The dump completed succesfully.
Then I tried to get this dump via zgetdump on the restarted Ubuntu 20.04.4 system (zgetdump -v reports version 2.12.0-
root@m8330032:~# zgetdump -i /dev/dasdc
zgetdump: Could not open "/sys/bus/
root@m8330032:~# zgetdump -i /dev/dasdc1
zgetdump: Could not open "/sys/bus/
root@m8330032:~# zgetdump -i /dev/dasdd
zgetdump: Could not open "/sys/bus/
root@m8330032:~# zgetdump -i /dev/dasdd1
zgetdump: No valid dump found on "/dev/dasdd1"
root@m8330032:~#
However, If I'm doing the same zgetdump on another system (e.g. with newer s390-tools version), I get the expected result
m83lp32:~ # zgetdump -i /dev/dasdc
General dump info:
Dump format........: s390mv_ext
Version.
Dump created.......: Tue, 16 Aug 2022 18:31:57 +0200
Dump ended.........: Tue, 16 Aug 2022 18:32:02 +0200
Dump CPU ID........: ff1fa1e739068000
UTS node name......: m8330032.lnxne.boe
UTS kernel release.: 5.4.0-124-generic
UTS kernel version.: #140-Ubuntu SMP Thu Aug 4 02:23:07 UTC 2022
Build arch.........: s390x (64 bit)
System arch........: s390x (64 bit)
CPU count (online).: 16
CPU count (real)...: 16
Dump memory range..: 4096 MB
Real memory range..: 4096 MB
Dump file size.....: 849 MB
Memory map:
0000000000000000 - 00000000ffffffff (4096 MB)
Dump device info:
Volume 0: 0.0.9405 (online/active)
Volume 1: 0.0.9406 (online/valid)
m83lp32:~ #
The error is easily reproducible.
Please update zgetdump to a newer version to solve this RAS problem.
With Jammy (22.04.1; s390-tools version 2.20.0-
== Comment: #3 - Jan Hoeppner <email address hidden> - 2022-08-22 01:43:45 ==
There were several issues fixed in s390-tools v2.15.1 in regards to multivolume dumps: https:/
Especially the following upstream commit for zgetdump:
https:/
---
External link: https:/
tags: | added: architecture-s39064 bugnameltc-199411 severity-medium targetmilestone-inin--- |
Changed in ubuntu: | |
assignee: | nobody → Skipper Bug Screeners (skipper-screen-team) |
affects: | ubuntu → linux (Ubuntu) |
affects: | linux (Ubuntu) → s390-tools (Ubuntu) |
Changed in ubuntu-z-systems: | |
assignee: | nobody → Skipper Bug Screeners (skipper-screen-team) |
Changed in s390-tools (Ubuntu): | |
importance: | Undecided → Medium |
Changed in ubuntu-z-systems: | |
importance: | Undecided → Medium |
tags: |
added: targetmilestone-inin2004 removed: targetmilestone-inin--- |
Changed in s390-tools (Ubuntu): | |
importance: | Medium → High |
description: | updated |
tags: | added: pei-30 |
Changed in s390-tools (Ubuntu Focal): | |
status: | New → Triaged |
Changed in s390-tools (Ubuntu): | |
status: | In Progress → Fix Released |
Changed in s390-tools (Ubuntu Focal): | |
importance: | Undecided → High |
Changed in s390-tools-signed (Ubuntu Focal): | |
status: | New → Triaged |
Changed in s390-tools-signed (Ubuntu): | |
status: | New → Fix Released |
Changed in s390-tools-signed (Ubuntu Focal): | |
importance: | Undecided → High |
Changed in ubuntu-z-systems: | |
status: | In Progress → Fix Released |
status: | Fix Released → In Progress |
Changed in ubuntu-z-systems: | |
status: | In Progress → Fix Committed |
description: | updated |
A test package was build in PPA and is available here: /launchpad. net/~fheimes/ +archive/ ubuntu/ lp1987387
https:/
Would you mind giving it a try and testing if the mentioned commit properly fixes this issue?"
(Btw. in addition to the s390x-tools package from the PPA,
the s390-tools-signed package must be installed to, to satisfy dependencies.")