Public bug reported:

---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/s390-tools-chreipl-fcp-mpath.install` are explicitly installed
into the wrong location (probably a copy-and-paste error).

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-fcp-mpath-common.sh` doesn't need to 
be executable;
(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 <bbl...@de.ibm.com> 
 
---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-chreipl-fcp-mpath`. The udev helper scripts are put into the wrong 
location, the toolset doesn't work.
 
Userspace tool common name: chreipl-fcp-mpath 
 
The userspace tool has the following bit modes: both 

Userspace deb: s390-tools-chreipl-fcp-mpath

Userspace tool obtained from project website:  na

== Comment: #1 - Benjamin Block <bbl...@de.ibm.com> - 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 <bbl...@de.ibm.com> - 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 <bbl...@de.ibm.com> - 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://github.com/ibm-s390-linux/s390-tools/commit/0d15a07c0a5842a359554b6fb5f8cba3d11fd5cc)
that is in the newest s390-tools release
(https://github.com/ibm-s390-linux/s390-tools/releases/tag/v2.21.0) that
does away with the need to generate the man page each and every time, by
also shipping a pre-cooked version along with the source.

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 <bbl...@de.ibm.com> - 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-tools-chreipl-fcp-mpath/jammy 2.20.0-0ubuntu3 s390x
      chreipl-fcp-mpath utility for Linux on z Systems
   
    t3545003 (1) ~ # apt show s390-tools-chreipl-fcp-mpath
    Package: s390-tools-chreipl-fcp-mpath
    Version: 2.20.0-0ubuntu3
    Priority: optional
    Section: universe/admin
    Source: s390-tools
    Origin: Ubuntu
    Maintainer: Ubuntu Developers <ubuntu-devel-disc...@lists.ubuntu.com>
    Original-Maintainer: Debian S/390 Team <debian-s...@lists.debian.org>
    Bugs: https://bugs.launchpad.net/ubuntu/+filebug
    Installed-Size: 60.4 kB
    Depends: multipath-tools-boot, lvm2
    Homepage: https://github.com/ibm-s390-linux/s390-tools
    Download-Size: 12.3 kB
    APT-Sources: http://ports.ubuntu.com/ubuntu-ports jammy/universe s390x 
Packages
    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-chreipl-fcp-mpath
    Reading package lists... Done
    Building dependency tree... Done
    Reading state information... Done
    The following additional packages will be installed:
      kpartx-boot multipath-tools-boot
    The following NEW packages will be installed:
      kpartx-boot multipath-tools-boot s390-tools-chreipl-fcp-mpath
    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://ports.ubuntu.com/ubuntu-ports jammy/main s390x kpartx-boot all 
0.8.8-1ubuntu1 [6,636 B]
    Get:2 http://ports.ubuntu.com/ubuntu-ports jammy/main s390x 
multipath-tools-boot all 0.8.8-1ubuntu1 [8,054 B]
    Get:3 http://ports.ubuntu.com/ubuntu-ports jammy/universe s390x 
s390-tools-chreipl-fcp-mpath s390x 2.20.0-0ubuntu3 [12.3 kB]
    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-boot_0.8.8-1ubuntu1_all.deb ...
    Unpacking kpartx-boot (0.8.8-1ubuntu1) ...
    Selecting previously unselected package multipath-tools-boot.
    Preparing to unpack .../multipath-tools-boot_0.8.8-1ubuntu1_all.deb ...
    Unpacking multipath-tools-boot (0.8.8-1ubuntu1) ...
    Selecting previously unselected package s390-tools-chreipl-fcp-mpath.
    Preparing to unpack 
.../s390-tools-chreipl-fcp-mpath_2.20.0-0ubuntu3_s390x.deb ...
    Unpacking s390-tools-chreipl-fcp-mpath (2.20.0-0ubuntu3) ...
    Setting up kpartx-boot (0.8.8-1ubuntu1) ...
    update-initramfs: deferring update (trigger activated)
    Setting up multipath-tools-boot (0.8.8-1ubuntu1) ...
    update-initramfs: deferring update (trigger activated)
    Setting up s390-tools-chreipl-fcp-mpath (2.20.0-0ubuntu3) ...
    Processing triggers for initramfs-tools (0.140ubuntu13) ...
    update-initramfs: Generating /boot/initrd.img-5.15.0-27-generic
    I: The initramfs will attempt to resume from /dev/dm-0
    I: (/dev/mapper/t3545003--ubd2204-swap)
    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-chreipl-fcp-mpath
    /.
    /lib
    /lib/udev
    /lib/udev/rules.d
    /lib/udev/rules.d/70-chreipl-fcp-mpath.rules
    /lib/udev/rules.d/chreipl-fcp-mpath-is-ipl-tgt
    /lib/udev/rules.d/chreipl-fcp-mpath-is-ipl-vol
    /lib/udev/rules.d/chreipl-fcp-mpath-is-reipl-zfcp
    /lib/udev/rules.d/chreipl-fcp-mpath-record-volume-identifier
    /lib/udev/rules.d/chreipl-fcp-mpath-try-change-ipl-path
    /usr
    /usr/lib
    /usr/lib/chreipl-fcp-mpath
    /usr/lib/chreipl-fcp-mpath/chreipl-fcp-mpath-common.sh
    /usr/share
    /usr/share/doc
    /usr/share/doc/s390-tools-chreipl-fcp-mpath
    /usr/share/doc/s390-tools-chreipl-fcp-mpath/changelog.Debian.gz
    /usr/share/doc/s390-tools-chreipl-fcp-mpath/copyright

You see in the file listing at the end `chreipl-fcp-mpath-is-ipl-tgt`,
`chreipl-fcp-mpath-is-ipl-vol`, `chreipl-fcp-mpath-is-reipl-zfcp`,
`chreipl-fcp-mpath-record-volume-identifier`, `chreipl-fcp-mpath-try-
change-ipl-path` are located in `/lib/udev/rules.d`, instead of
`/lib/udev`.

** Affects: linux (Ubuntu)
     Importance: Undecided
     Assignee: Skipper Bug Screeners (skipper-screen-team)
         Status: New


** Tags: architecture-s3903164 bugnameltc-198046 severity-medium 
targetmilestone-inin---

** Tags added: architecture-s3903164 bugnameltc-198046 severity-medium
targetmilestone-inin---

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

Title:
  [Ubuntu 22.04] s390-tools: subpackage chreipl-fcp-mpath installes
  files into wrong location and subsequently doesn't work

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1971993/+subscriptions


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

Reply via email to