[Bug 1974109] Re: [UBUNTU 22.04] zipl segfaults when "parameters=" is missing

Frank Heimes 1974109 at bugs.launchpad.net
Tue Aug 30 09:44:11 UTC 2022


** Patch added: "debdiff_s390-tools-signed_jammy_from_2.20.0-0ubuntu3.1_to_2.20.0-0ubuntu3.2.diff"
   https://bugs.launchpad.net/ubuntu/+source/s390-tools/+bug/1974109/+attachment/5612503/+files/debdiff_s390-tools-signed_jammy_from_2.20.0-0ubuntu3.1_to_2.20.0-0ubuntu3.2.diff

** Changed in: ubuntu-z-systems
       Status: Incomplete => In Progress

** Changed in: s390-tools (Ubuntu)
       Status: New => In Progress

** Changed in: s390-tools-signed (Ubuntu)
       Status: New => In Progress

** Changed in: s390-tools (Ubuntu)
   Importance: Undecided => Medium

** Changed in: s390-tools-signed (Ubuntu)
   Importance: Undecided => Medium

** Changed in: ubuntu-z-systems
   Importance: Undecided => Medium

-- 
You received this bug notification because you are a member of Ubuntu
Sponsors Team, which is subscribed to the bug report.
https://bugs.launchpad.net/bugs/1974109

Title:
  [UBUNTU 22.04] zipl segfaults when "parameters=" is missing

Status in Ubuntu on IBM z Systems:
  In Progress
Status in s390-tools package in Ubuntu:
  In Progress
Status in s390-tools-signed package in Ubuntu:
  In Progress

Bug description:
  SRU Justification:
  ------------------

  [Impact]

   * The zipl boot-loader tool segfaults if a section doesn't contain
     a "parameters =" line.

   * Adding a "parameters =" line makes the problem go away.

   * This is especially problematic when secure execution is set up,
     since the parameter is provided in the secure image
     and hence a zipl parameter is not needed.

  [Fix]

   * 6ff8202f 6ff8202fa9e172199e995298d336d9dd87ca8180 "zipl: Add
  missing check for a nullpointer."

  [Test Plan]

   * Setup a default Ubuntu Server for s390x test installation.

   * Backup the existing /etc/zipl.conf:
     cp /etc/zipl.conf ~

   * Edit /etc/zipl.conf and remove (or better comment out)
     'the parameters =' line:
     sudo vi /etc/zipl.conf
     and save the file.

   * Execute the zipl tool to re-write the zipl bootloader
     and it will segfault
     without the patch (like this):
     sudo zipl
     Using config file '/etc/zipl.conf'
     Segmentation fault

   * or complete successfully (like this):
     sudo zipl
     Using config file '/etc/zipl.conf'
     Building bootmap in '/boot'
     Adding IPL section 'ubuntu' (default)
     Preparing boot device: dasda (0101).
     Done.

  [Where problems could occur]

   * It's a patch that changes just one line,
     checks the existence of the parmline
     and only then computes it's length,
     and otherwise sets the length to 0.

   * Issues could occur if the compact/short if
     statement is wrong and for example the logic mixed up.

   * Or if somewhere else in the code a length of 0
     for the parameters line is not expected and will
     cause further issues.

   * Both cases can simply be covered by the above test.

  [Other Info]

   * The above fix is included in s390-tools v2.23
     and is with that incl. in the kinetic s390-tools version.
  __________

  ZIPL segfaults if a section doesn't contain a "parameter=" line.
  Adding that line makes the problem go away.

  This is especially a problem when secure execution is set up since the
  parameter is provided in the secure image and hence a zipl parameter
  is not needed.

  ---uname output---
  Linux linux6 5.15.0-27-generic #28-Ubuntu SMP Thu Apr 14 04:55:23 UTC 2022 s390x s390x s390x GNU/Linux

  Machine Type = z16

  ---Steps to Reproduce---
  Add a section to /etc/zipl.conf that doesn't have a parameter line.

  Userspace tool common name: zipl

  The userspace tool has the following bit modes: 64-bit

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




More information about the Ubuntu-sponsors mailing list