[Ubuntu 22.04] s390-tools: subpackage chreipl-fcp-mpath installs files into wrong location and subsequently doesn't work
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Ubuntu on IBM z Systems |
Fix Released
|
High
|
Skipper Bug Screeners | ||
s390-tools (Ubuntu) |
Fix Released
|
High
|
Unassigned | ||
Jammy |
Fix Released
|
High
|
Unassigned | ||
Kinetic |
Fix Released
|
High
|
Unassigned | ||
s390-tools-signed (Ubuntu) |
Fix Released
|
High
|
Unassigned | ||
Jammy |
Fix Released
|
High
|
Unassigned | ||
Kinetic |
Fix Released
|
High
|
Unassigned |
Bug Description
SRU Justification:
==================
[Impact]
* The recently introduced chreipl-fcp-mpath tool,
available since 22.04 in a separate binary package,
fails, due to a wrong location for the helper files.
* In Addition some less critical dependencies were fixed,
* a new man page and README added
* and executable permissions removed from a script,
that has no shebang (since it's only indirectly called).
[Test Plan]
* See below or https:/
[Where problems could occur]
* The provided udev rule could be wrong and therefore
not correctly triggered or not at all.
* Or udev rule could fire too often, leading to high load.
* The change of the IPL parameter could be wrong, ending up in a system
that boots from a wrong LUN doesn't boot at all.
[Other Info]
* chreipl-fcp-mpath tools is a new optional (s390x-only) tool,
first time shipped with jammy.
__________
---Problem Description---
The current way of how the chreipl-fcp-mpath toolset from the s390-tools collection of utilities is packaged in Ubuntu 22.04 is broken, and doesn't work. The main issue is that the udev helper scripts used in the toolset are installed in /lib/udev/rules.d, instead of /lib/udev. This makes the toolset non-functional as a whole (but nothing warns about it).
The reason is with the packaging itself. The files listed in `debian/
There are a couple other minor issues with the packaging that I've noticed while inspecting the current state to see what the reason for the main issue is:
(a) `lvm2` is not a dependency of chreipl-fcp-mpath to the best of my knowledge, `udev` and `multipath-tools` are though;
(b) the common script 'library' `chreipl-
(c) no documentation is installed, neither the man page is generated, nor the provided `README.md` copied;
(d) there is nothing that triggers a udev rules database reload after installing or removing the udev rules (at least as far as I've seen).
Contact Information = Benjamin Block <email address hidden>
---uname output---
Linux t3545003 5.15.0-27-generic #28-Ubuntu SMP Thu Apr 14 04:55:23 UTC 2022 s390x s390x s390x GNU/Linux
Machine Type = IBM/S390 z15 8561 z/VM Version 7 Release 2.0
---Debugger---
A debugger is not configured
---Steps to Reproduce---
Install the chreipl-fcp-mpath toolset via `apt install s390-tools-
Userspace tool common name: chreipl-fcp-mpath
The userspace tool has the following bit modes: both
Userspace deb: s390-tools-
Userspace tool obtained from project website: na
== Comment: #1 - Benjamin Block <email address hidden> - 2022-05-05 12:56:39 ==
This is an example of how I think one could fix the issues I outlined in the description. The patch itself contains more details in the description.
This also enables the generation of the man page, which adds two dependencies to the build: pandoc and gawk. Both are only required during the package build, and so far I've seen both are available on s390x in Ubuntu 22.04. Building the man page adds a bit more comfort for users that are used to use man for documentation, so it might be worth adding the dependencies.
== Comment: #2 - Benjamin Block <email address hidden> - 2022-05-05 12:58:44 ==
This is an other example of how I think one could fix the issues I outlined in the description. The patch itself contains more details in the description.
This doesn't enable the generation of the man page, so it doesn't need extra build dependencies.
== Comment: #4 - Benjamin Block <email address hidden> - 2022-05-05 13:05:03 ==
(In reply to comment #2)
> Created attachment 153823 [details]
> example patch to fix packaging without ENABLE_DOC=1
>
> This is an other example of how I think one could fix the issues I outlined
> in the description. The patch itself contains more details in the
> description.
>
> This doesn't enable the generation of the man page, so it doesn't need extra
> build dependencies.
One might also add to that, that I added a patch (https:/
The need for `pandoc` to generate it has been a problem in other places where it is not available as it is in Ubuntu.
== Comment: #8 - Benjamin Block <email address hidden> - 2022-05-05 13:22:07 ==
To further illustrate the problem, here is the log of me trying to test this:
t3545003 (0) ~ # apt search chreipl-fcp-mpath
Sorting... Done
Full Text Search... Done
s390-
chreipl-
t3545003 (1) ~ # apt show s390-tools-
Package: s390-tools-
Version: 2.20.0-0ubuntu3
Priority: optional
Section: universe/admin
Source: s390-tools
Origin: Ubuntu
Maintainer: Ubuntu Developers <email address hidden>
Original-
Bugs: https:/
Installed-Size: 60.4 kB
Depends: multipath-
Homepage: https:/
Download-Size: 12.3 kB
APT-Sources: http://
Description: chreipl-fcp-mpath utility for Linux on z Systems
The package contains chreipl-fcp-mpath toolset from the s390-tools collection
of utilities, that uses multipath information to change the configured FCP
re-IPL path on detecting issues with the current path.
t3545003 (0) ~ # apt install s390-tools-
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following additional packages will be installed:
kpartx-boot multipath-
The following NEW packages will be installed:
kpartx-boot multipath-
0 upgraded, 3 newly installed, 0 to remove and 0 not upgraded.
Need to get 27.0 kB of archives.
After this operation, 178 kB of additional disk space will be used.
Do you want to continue? [Y/n] Y
Get:1 http://
Get:2 http://
Get:3 http://
Fetched 27.0 kB in 0s (197 kB/s)
Preconfiguring packages ...
Selecting previously unselected package kpartx-boot.
(Reading database ... 56751 files and directories currently installed.)
Preparing to unpack .../kpartx-
Unpacking kpartx-boot (0.8.8-1ubuntu1) ...
Selecting previously unselected package multipath-
Preparing to unpack .../multipath-
Unpacking multipath-
Selecting previously unselected package s390-tools-
Preparing to unpack .../s390-
Unpacking s390-tools-
Setting up kpartx-boot (0.8.8-1ubuntu1) ...
update-
Setting up multipath-
update-
Setting up s390-tools-
Processing triggers for initramfs-tools (0.140ubuntu13) ...
update-
I: The initramfs will attempt to resume from /dev/dm-0
I: (/dev/mapper/
I: Set the RESUME variable to override this.
Using config file '/etc/zipl.conf'
Building bootmap in '/boot'
Adding IPL section 'ubuntu' (default)
Preparing boot device: dasda (1c0a).
Done.
Scanning processes...
Scanning linux images...
Running kernel seems to be up-to-date (ABI upgrades are not detected).
No services need to be restarted.
No containers need to be restarted.
No user sessions are running outdated binaries.
No VM guests are running outdated hypervisor (qemu) binaries on this host.
t3545003 (0) ~ # dpkg --listfiles s390-tools-
/.
/lib
/lib/udev
/lib/
/lib/
/lib/
/lib/
/lib/
/lib/
/lib/
/usr
/usr/lib
/usr/
/usr/
/usr/share
/usr/share/doc
/usr/
/usr/
/usr/
You see in the file listing at the end `chreipl-
affects: | linux (Ubuntu) → s390-tools (Ubuntu) |
summary: |
- [Ubuntu 22.04] s390-tools: subpackage chreipl-fcp-mpath installes files + [Ubuntu 22.04] s390-tools: subpackage chreipl-fcp-mpath installs files into wrong location and subsequently doesn't work |
description: | updated |
Changed in ubuntu-z-systems: | |
assignee: | nobody → Skipper Bug Screeners (skipper-screen-team) |
Changed in s390-tools-signed (Ubuntu): | |
status: | New → In Progress |
importance: | Undecided → Medium |
importance: | Medium → High |
Changed in s390-tools (Ubuntu): | |
importance: | Medium → High |
Changed in s390-tools-signed (Ubuntu): | |
assignee: | nobody → Frank Heimes (fheimes) |
Changed in s390-tools (Ubuntu): | |
assignee: | Skipper Bug Screeners (skipper-screen-team) → Frank Heimes (fheimes) |
Changed in s390-tools-signed (Ubuntu Kinetic): | |
assignee: | Frank Heimes (fheimes) → nobody |
Changed in s390-tools (Ubuntu Kinetic): | |
assignee: | Frank Heimes (fheimes) → nobody |
Changed in s390-tools-signed (Ubuntu Kinetic): | |
status: | In Progress → Fix Committed |
Changed in s390-tools-signed (Ubuntu Jammy): | |
status: | New → In Progress |
Changed in s390-tools (Ubuntu Kinetic): | |
status: | In Progress → Fix Committed |
Changed in s390-tools (Ubuntu Jammy): | |
status: | New → In Progress |
Changed in ubuntu-z-systems: | |
status: | In Progress → Fix Committed |
Changed in s390-tools (Ubuntu Jammy): | |
importance: | Undecided → High |
Changed in s390-tools-signed (Ubuntu Jammy): | |
importance: | Undecided → High |
tags: |
added: targetmilestone-inin2204 removed: targetmilestone-inin--- |
Changed in s390-tools-signed (Ubuntu Jammy): | |
status: | Fix Committed → Fix Released |
Changed in ubuntu-z-systems: | |
status: | Fix Committed → Fix Released |
Default Comment by Bridge