Using kinetic daily subiquity crashes if trying to edit LVM volume to change size (on s390x)

Bug #1988407 reported by Frank Heimes
10
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Ubuntu on IBM z Systems
Fix Released
High
Skipper Bug Screeners
subiquity
Fix Released
Undecided
Olivier Gayot

Bug Description

While testing LP#1986551 (which worked fine and is solved) I ran into a new problem while trying to increase the size of an LVM volume.
By default only half of the size of an LVM is allocated (which I don't like, but that's a different story).
So I almost all the time modify the logical volume size to it's max.
But with the kinetic daily from today (Sept 1st, pending) subiquity crashes at that stage:

That is one screen prior to the crash:

▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
  Guided storage configuration [ Help ]
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  Configure a guided storage layout, or create a custom one:

  (X) Use an entire disk ▴
                                                                             
       [ 0x6005076306 multipath device 64.000G ▾ ]█
         ffd6b6000000 █
         0000002603 █
                                                                             
       [X] Set up this disk as an LVM group █
                                                                             
            [ ] Encrypt the LVM group with LUKS █
                                                                             
                         Passphrase: █
                                                                             

                 Confirm passphrase:
                                                                             

                                 [ Done ]
                                 [ Back ]

This is the screen where the crash happens:

▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
  Storage configuration [ Help ]
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  FILE SYSTEM SUMMARY ▴
                                                                             
    MOUNT POINT SIZE TYPE DEVICE TYPE █
  [ / 30.996G new ext4 new LVM logical volume ▸ ] █
  [ /boot 2.000G new ext4 new partition of multipath device ▸ ] █
                                                                             
                                                                             
  AVAILABLE DEVICES █
                                                                             
    DEVICE TYPE SIZE
  [ ubuntu-vg (new) LVM volume group 61.996G ▸ ]
    free space 31.000G ▸

  [ Create software RAID (md) ▸ ]
  [ Create volume group (LVM) ▸ ]
                                                                             

                                 [ Done ]
                                 [ Reset ]
                                 [ Back ]

I scroll down:

▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
  Storage configuration [ Help ]
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
                                                                             
  [ Create software RAID (md) ▸ ]
  [ Create volume group (LVM) ▸ ]

  USED DEVICES

    DEVICE TYPE SIZE
  [ ubuntu-vg (new) LVM volume group 61.996G ▸ ]
    ubuntu-lv new, to be formatted as ext4, mounted at / 30.996G ▸

  [ 0x6005076306ffd6b60000000000002603 multipath device 64.000G ▸ ]
    partition 1 new, to be formatted as ext4, mounted at 2.000G ▸
                 /boot
    partition 2 new, PV of LVM volume group ubuntu-vg 61.998G ▸ █
                                                                             

                                 [ Done ]
                                 [ Reset ]
                                 [ Back ]

I'll navigate to the line:
"ubuntu-lv new, to be formatted as ext4, mounted at / 30.996G"
select "Edit"
and immediately hit the crash:

generating crash report
report saved to /var/crash/1662024939.554034948.ui.crash
Traceback (most recent call last):
  File "/snap/subiquity/3799/usr/lib/python3.8/runpy.py", line 194, in _run_module_as_main
    return _run_code(code, main_globals, None,
  File "/snap/subiquity/3799/usr/lib/python3.8/runpy.py", line 87, in _run_code
    exec(code, run_globals)
  File "/snap/subiquity/3799/lib/python3.8/site-packages/subiquity/__main__.py", line 5, in <module>
    sys.exit(main())
  File "/snap/subiquity/3799/lib/python3.8/site-packages/subiquity/cmd/tui.py", line 150, in main
    subiquity_interface.run()
  File "/snap/subiquity/3799/lib/python3.8/site-packages/subiquity/client/client.py", line 407, in run
    super().run()
  File "/snap/subiquity/3799/lib/python3.8/site-packages/subiquitycore/tui.py", line 381, in run
    super().run()
  File "/snap/subiquity/3799/lib/python3.8/site-packages/subiquitycore/core.py", line 135, in run
    raise exc
  File "/snap/subiquity/3799/usr/lib/python3.8/asyncio/events.py", line 81, in _run
    self._context.run(self._callback, *self._args)
  File "/snap/subiquity/3799/lib/python3.8/site-packages/urwid/raw_display.py", line 416, in <lambda>
    wrapper = lambda: self.parse_input(
  File "/snap/subiquity/3799/lib/python3.8/site-packages/urwid/raw_display.py", line 515, in parse_input
    callback(processed, processed_codes)
  File "/snap/subiquity/3799/lib/python3.8/site-packages/urwid/main_loop.py", line 412, in _update
    self.process_input(keys)
  File "/snap/subiquity/3799/lib/python3.8/site-packages/urwid/main_loop.py", line 513, in process_input
    k = self._topmost_widget.keypress(self.screen_size, k)
  File "/snap/subiquity/3799/lib/python3.8/site-packages/urwid/wimp.py", line 651, in keypress
    return self._current_widget.keypress(size, key)
  File "/snap/subiquity/3799/lib/python3.8/site-packages/urwid/container.py", line 598, in keypress
    return self.top_w.keypress(self.top_w_size(size,
  File "/snap/subiquity/3799/lib/python3.8/site-packages/subiquitycore/ui/actionmenu.py", line 104, in keypress
    return super().keypress(size, key)
  File "/snap/subiquity/3799/lib/python3.8/site-packages/urwid/container.py", line 1626, in keypress
    key = self.focus.keypress(tsize, key)
  File "/snap/subiquity/3799/lib/python3.8/site-packages/urwid/container.py", line 2316, in keypress
    key = w.keypress((mc,) + size[1:], key)
  File "/snap/subiquity/3799/lib/python3.8/site-packages/subiquitycore/ui/container.py", line 447, in keypress
    return lb.keypress(size, key)
  File "/snap/subiquity/3799/lib/python3.8/site-packages/subiquitycore/ui/container.py", line 321, in keypress
    upkey = super().keypress(size, downkey)
  File "/snap/subiquity/3799/lib/python3.8/site-packages/urwid/listbox.py", line 968, in keypress
    key = focus_widget.keypress((maxcol,),key)
  File "/snap/subiquity/3799/lib/python3.8/site-packages/urwid/wimp.py", line 543, in keypress
    self._emit('click')
  File "/snap/subiquity/3799/lib/python3.8/site-packages/urwid/widget.py", line 461, in _emit
    signals.emit_signal(self, name, self, *args)
  File "/snap/subiquity/3799/lib/python3.8/site-packages/urwid/signals.py", line 265, in emit
    result |= self._call_callback(callback, user_arg, user_args, args)
  File "/snap/subiquity/3799/lib/python3.8/site-packages/urwid/signals.py", line 295, in _call_callback
    return bool(callback(*args_to_pass))
  File "/snap/subiquity/3799/lib/python3.8/site-packages/subiquitycore/ui/actionmenu.py", line 97, in click
    self.parent._action(value)
  File "/snap/subiquity/3799/lib/python3.8/site-packages/subiquitycore/ui/actionmenu.py", line 143, in _action
    self._emit("action", action)
  File "/snap/subiquity/3799/lib/python3.8/site-packages/urwid/widget.py", line 461, in _emit
    signals.emit_signal(self, name, self, *args)
  File "/snap/subiquity/3799/lib/python3.8/site-packages/urwid/signals.py", line 265, in emit
    result |= self._call_callback(callback, user_arg, user_args, args)
  File "/snap/subiquity/3799/lib/python3.8/site-packages/urwid/signals.py", line 295, in _call_callback
    return bool(callback(*args_to_pass))
  File "/snap/subiquity/3799/lib/python3.8/site-packages/subiquity/ui/views/filesystem/filesystem.py", line 321, in _action
    meth(device)
  File "/snap/subiquity/3799/lib/python3.8/site-packages/subiquity/ui/views/filesystem/filesystem.py", line 214, in impl
    self.parent.show_stretchy_overlay(cls(self.parent, device))
  File "/snap/subiquity/3799/lib/python3.8/site-packages/subiquity/ui/views/filesystem/filesystem.py", line 311, in <lambda>
    lambda parent, part: PartitionStretchy(parent, part.volgroup,
  File "/snap/subiquity/3799/lib/python3.8/site-packages/subiquity/ui/views/filesystem/partition.py", line 398, in __init__
    gaps.movable_trailing_partitions_and_gap_size(partition)[1]
  File "/snap/subiquity/3799/lib/python3.8/site-packages/subiquity/common/filesystem/gaps.py", line 244, in movable_trailing_partitions_and_gap_size
    pgs = parts_and_gaps(partition.device)
AttributeError: 'LVM_LogicalVolume' object has no attribute 'device'
Connection to s1lp15 closed.

While continuing with the installation I repeatedly run into this crash - one will notice 3 crash files in the attached tgz that contains the /var/crash and /var/log content.

Revision history for this message
Frank Heimes (fheimes) wrote :
Changed in ubuntu-z-systems:
importance: Undecided → Critical
importance: Critical → High
assignee: nobody → Skipper Bug Screeners (skipper-screen-team)
tags: added: rls-kk-incoming
Revision history for this message
Frank Heimes (fheimes) wrote :

I should add that if I do not touch the setting:
"ubuntu-lv new, to be formatted as ext4, mounted at / 30.996G"
and just proceed with the defaults, I am able to complete the installation.

Lukas Märdian (slyon)
tags: added: fr-2651
tags: removed: rls-kk-incoming
tags: added: foundations-todo
Olivier Gayot (ogayot)
Changed in subiquity:
assignee: nobody → Olivier Gayot (ogayot)
status: New → In Progress
Revision history for this message
Olivier Gayot (ogayot) wrote :
Olivier Gayot (ogayot)
Changed in subiquity:
status: In Progress → Fix Committed
Frank Heimes (fheimes)
Changed in ubuntu-z-systems:
status: New → Fix Committed
Revision history for this message
Michael Hudson-Doyle (mwhudson) wrote :

I don't think this is fixed is it?

Changed in subiquity:
status: Fix Committed → Triaged
Revision history for this message
Olivier Gayot (ogayot) wrote :

Nope, it is not... my bad!

Changed in ubuntu-z-systems:
status: Fix Committed → In Progress
Revision history for this message
Olivier Gayot (ogayot) wrote (last edit ):
Olivier Gayot (ogayot)
Changed in ubuntu-z-systems:
status: In Progress → Fix Committed
Changed in subiquity:
status: Triaged → Fix Committed
Changed in ubuntu-z-systems:
status: Fix Committed → In Progress
Frank Heimes (fheimes)
Changed in ubuntu-z-systems:
status: In Progress → Fix Committed
Revision history for this message
Frank Heimes (fheimes) wrote :

I just tested the kinetic beta image and this issue is fixed now.
Hence closing this ticket as Fix Released.

Thank you!

Changed in subiquity:
status: Fix Committed → Fix Released
Changed in ubuntu-z-systems:
status: Fix Committed → Fix Released
Revision history for this message
Dan Bungert (dbungert) wrote :

We believe a fix for this can be found in Subiquity 22.10.1. On
install you will be offered to update to the new version of the
installer if network is available, or you can perform a manual update
by running the follwing in a terminal:
sudo snap refresh subiquity

Revision history for this message
Frank Heimes (fheimes) wrote :

I can confirm that this is fixed with the latest kinetic image!
many thx

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.