subiquity fails to handle a large burst of udev events
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Ubuntu on IBM z Systems |
Fix Released
|
High
|
Skipper Bug Screeners | ||
subiquity (Ubuntu) |
Fix Released
|
High
|
Dan Bungert |
Bug Description
Subiquity, when faced with a large burst of events, may fail to process them in a timely fashion which can result in a traceback from pyudev related to filled event buffers. For a reproducer, please see the "many-partitions" attachment.
Related pyudev issue: https:/
There also appears to be a udev-related issue on Mantic that makes this issue more likely to be seen: LP: #2037569
---
Original bug description:
Bug Description:
Installation of Ubuntu 22.04 on s390x failed with an unknown error just after having successfully activated a zfcp HBA with Fibre-Channel-
I do see 0.0.100d successfully being online and having paths attached:
[host.ilabg13_
But immediately after that, the installer reports an error:
???????
?subiquity/
?subiquity/
?subiquity/
?subiquity/
?subiquity/
?subiquity/
?subiquity/
?subiquity/
? Sorry, an unknown error occurred. ?
? Information is being collected from the system that will help the ?
? developers diagnose the report. |
It looks like there was some ascii art progress bar while data was collected and then the dialog updated to:
? [ View full report ] ?
? If you want to help improve the installer, you can send an error ?
? report. ?
? [ Send to Canonical ] ?
? [ Close report ] |
Next "View full report" was selected?
ProblemType: Bug
Architecture: s390x
CrashDB: {'impl': 'launchpad', 'project': 'subiquity'}
CurrentDmesg:
[ 0.093997] Linux version 5.15.0-43-generic (buildd@
[ 0.094001] setup: Linux is running as a z/VM guest operating system in 64-bit mode
[ 0.360759] Kernel command line: ip=9.11.
[ 2677.003438] zfcp 0.0.100d: qdio: ZFCP on SC 10 using AI:1 QEBSM:1 PRI:1 TDD:1 SIGA: W
[ 2677.032397] scsi host0: zfcp
[ 2677.060025] scsi 0:0:0:0: RAID IBM 2810XIV-LUN-0 0000 PQ: 0 ANSI: 5
[ 2677.061097] scsi 0:0:0:0: alua: disable for non-disk devices
[ 2677.061134] scsi 0:0:0:0: Attached scsi generic sg0 type 12
[ 2677.062988] scsi 0:0:0:1: Direct-Access IBM 2810XIV 0000 PQ: 0 ANSI: 5
[ 2677.064628] scsi 0:0:0:1: alua: supports implicit TPGS
[ 2677.064632] scsi 0:0:0:1: alua: device naa.6001738cfc9
[ 2677.064679] sd 0:0:0:1: Attached scsi generic sg1 type 0
==> zfcp could successfully set 0.0.100d online and automatic LUN scan worked.
[ 2677.513028] sd 0:0:16:1074020357: [sdac] Attached SCSI disk
[ 2677.522641] sd 0:0:16:1074020356: [sdab] Attached SCSI disk
[ 2677.522677] sd 0:0:15:1074020357: [sdaa] Attached SCSI disk
[ 2677.522693] sd 0:0:15:1074020356: [sdz] Attached SCSI disk
[ 2678.660373] device-mapper: multipath service-time: version 0.3.0 loaded
Date: Wed Jan 18 21:04:03 2023
DistroRelease: Ubuntu 22.04
ExecutablePath: /snap/subiquity
InstallerServerLog:
2023-01-18 20:23:57,901 INFO subiquity:112 Starting Subiquity server revision 3699
2023-01-18 21:02:53,381 DEBUG root:39 start: subiquity/Zdev/GET:
2023-01-18 21:02:53,381 DEBUG subiquitycore.
2023-01-18 21:02:53,405 DEBUG subiquitycore.
2023-01-18 21:02:53,406 DEBUG root:39 finish: subiquity/Zdev/GET: SUCCESS: 200 [{"id": "0.0.0009", "type": "generic-ccw", "on": true, "exists": true, "pers"...
2023-01-18 21:02:53,414 INFO aiohttp.access:233 [18/Jan/
2023-01-18 21:03:06,492 DEBUG subiquitycore.
2023-01-18 21:03:06,534 DEBUG subiquitycore.
2023-01-18 21:03:06,534 DEBUG probert.network:585 event for addr_change: CHANGE {'ifindex': 2, 'flags': 768, 'family': 10, 'scope': 0, 'local': b'2002:
2023-01-18 21:03:06,534 DEBUG probert.network:717 addr_change CHANGE {'ifindex': 2, 'flags': 768, 'family': 10, 'scope': 0, 'local': b'2002:
2023-01-18 21:03:06,534 DEBUG root:39 start: subiquity/
2023-01-18 21:03:06,534 DEBUG subiquity.
2023-01-18 21:03:06,535 DEBUG root:39 finish: subiquity/
2023-01-18 21:03:19,283 DEBUG subiquitycore.
2023-01-18 21:03:19,314 DEBUG subiquitycore.
2023-01-18 21:03:19,314 DEBUG probert.network:585 event for addr_change: CHANGE {'ifindex': 2, 'flags': 768, 'family': 10, 'scope': 0, 'local': b'2002:
2023-01-18 21:03:19,314 DEBUG probert.network:717 addr_change CHANGE {'ifindex': 2, 'flags': 768, 'family': 10, 'scope': 0, 'local': b'2002:
2023-01-18 21:03:19,314 DEBUG root:39 start: subiquity/
2023-01-18 21:03:19,314 DEBUG subiquity.
2023-01-18 21:03:19,314 DEBUG root:39 finish: subiquity/
2023-01-18 21:03:59,037 DEBUG root:39 start: subiquity/
2023-01-18 21:03:59,038 DEBUG subiquitycore.
2023-01-18 21:03:59,357 DEBUG subiquitycore.
2023-01-18 21:03:59,373 DEBUG subiquitycore.
2023-01-18 21:03:59,373 DEBUG subiquity.
... <<< some time with repeated udevadm settle >>> ...
2023-01-18 21:04:02,984 DEBUG subiquitycore.
2023-01-18 21:04:02,986 DEBUG subiquitycore.
2023-01-18 21:04:02,986 DEBUG subiquity.
2023-01-18 21:04:03,029 DEBUG subiquitycore.
2023-01-18 21:04:03,029 DEBUG subiquitycore.
2023-01-18 21:04:03,047 DEBUG subiquitycore.
2023-01-18 21:04:03,052 DEBUG root:39 finish: subiquity/
2023-01-18 21:04:03,052 INFO aiohttp.access:233 [18/Jan/
2023-01-18 21:04:03,087 DEBUG subiquitycore.
2023-01-18 21:04:03,114 DEBUG subiquitycore.
2023-01-18 21:04:03,114 ERROR subiquity.
2023-01-18 21:04:03,114 ERROR subiquity.
Traceback (most recent call last):
File "/snap/
self.
File "/snap/
action, dev = self._monitor.
File "/snap/
device = self.poll()
File "/snap/
if eintr_retry_
File "/snap/
return func(*args, **kwargs)
File "/snap/
return list(self.
File "/snap/
raise IOError('Error while polling fd: {0!r}'.format(fd))
OSError: Error while polling fd: 20
2023-01-18 21:04:03,116 DEBUG subiquitycore.
2023-01-18 21:04:03,116 INFO subiquitycore.
2023-01-18 21:04:03,117 INFO root:39 start: subiquity/
2023-01-18 21:04:03,117 INFO root:39 finish: subiquity/
2023-01-18 21:04:03,117 INFO root:39 finish: subiquity/
2023-01-18 21:04:03,117 INFO root:39 finish: subiquity/
2023-01-18 21:04:03,118 INFO root:39 finish: subiquity/
2023-01-18 21:04:03,118 DEBUG subiquitycore.
InstallerServer
InterpreterPath: /snap/subiquity
UdevDb:
...
P: /devices/
L: 0
E: DEVPATH=
E: SUBSYSTEM=ccw
E: DRIVER=zfcp
E: CU_TYPE=1731
E: CU_MODEL=03
E: DEV_TYPE=1732
E: DEV_MODEL=03
E: MODALIAS=
...
P: /devices/
N: sda
L: 0
S: disk/by-
S: disk/by-
S: disk/by-
S: disk/by-
S: disk/by-
S: disk/by-
S: disk/by-
...
E: DM_MULTIPATH_
...
P: /devices/
N: sdae
L: 0
S: disk/by-
S: disk/by-
S: disk/by-
S: disk/by-
S: disk/by-
S: disk/by-
E: DEVPATH=
E: SUBSYSTEM=block
E: DEVNAME=/dev/sdae
E: DEVTYPE=disk
E: DISKSEQ=43
E: MAJOR=65
E: MINOR=224
E: USEC_INITIALIZE
E: DM_MULTIPATH_
...
P: /devices/
N: sdo
L: 0
S: disk/by-
S: disk/by-
S: disk/by-
S: disk/by-
S: disk/by-
E: DEVPATH=
E: SUBSYSTEM=block
E: DEVNAME=/dev/sdo
E: DEVTYPE=disk
E: DISKSEQ=27
E: MAJOR=8
E: MINOR=224
E: USEC_INITIALIZE
E: DM_MULTIPATH_
==> Probably the last discovered SCSI LUN.
P: /devices/
N: dm-0
L: 50
S: disk/by-
S: disk/by-
S: disk/by-
S: disk/by-
S: mapper/mpatha
E: DEVPATH=
E: SUBSYSTEM=block
E: DEVNAME=/dev/dm-0
E: DEVTYPE=disk
E: DISKSEQ=44
E: MAJOR=253
E: MINOR=0
E: USEC_INITIALIZE
E: DM_UDEV_
E: DM_UDEV_
E: DM_ACTIVATION=1
E: DM_NAME=mpatha
E: DM_UUID=
E: DM_SUSPENDED=0
E: DM_UDEV_RULES=1
E: DM_UDEV_RULES_VSN=2
E: MPATH_SBIN_
E: MPATH_DEVICE_
==> Multipath devices also got assembled.
Canonical, why did the installer get an error?
Does the installer really have a busy(!) waiting loop calling udevadm settle with zero timeout?
But even if so, with the number of discovered devices and the settle finally returning with success errorlevel 0, it should just work?
Changed in ubuntu-z-systems: | |
status: | New → Incomplete |
Changed in ubuntu-z-systems: | |
status: | Incomplete → Triaged |
Changed in subiquity (Ubuntu): | |
status: | Incomplete → Triaged |
tags: | added: installer |
Changed in subiquity (Ubuntu): | |
status: | Triaged → In Progress |
description: | updated |
description: | updated |
Changed in ubuntu-z-systems: | |
status: | Triaged → In Progress |
Changed in ubuntu-z-systems: | |
status: | In Progress → Fix Committed |
tags: | removed: foundations-todo |
Changed in subiquity (Ubuntu): | |
status: | Fix Committed → Fix Released |
tags: |
added: targetmilestone-inin2204 removed: targetmilestone-inin--- |
Default Comment by Bridge