2018-11-29 13:39:29 |
bugproxy |
bug |
|
|
added bug |
2018-11-29 13:39:31 |
bugproxy |
tags |
|
architecture-s39064 bugnameltc-173674 severity-high targetmilestone-inin--- |
|
2018-11-29 13:39:32 |
bugproxy |
ubuntu: assignee |
|
Skipper Bug Screeners (skipper-screen-team) |
|
2018-11-29 13:39:34 |
bugproxy |
affects |
ubuntu |
linux (Ubuntu) |
|
2018-11-29 14:33:58 |
Frank Heimes |
bug task added |
|
ubuntu-z-systems |
|
2018-11-29 14:34:09 |
Frank Heimes |
affects |
linux (Ubuntu) |
s390-tools (Ubuntu) |
|
2018-11-29 14:34:16 |
Frank Heimes |
ubuntu-z-systems: status |
New |
Triaged |
|
2018-11-29 14:34:20 |
Frank Heimes |
ubuntu-z-systems: importance |
Undecided |
Medium |
|
2018-11-29 14:34:59 |
Frank Heimes |
ubuntu-z-systems: assignee |
|
Dimitri John Ledkov (xnox) |
|
2018-12-03 13:10:14 |
bugproxy |
attachment added |
|
Proposed quick fix https://bugs.launchpad.net/bugs/1805841/+attachment/5218458/+files/cpifix.patch |
|
2018-12-05 15:20:02 |
bugproxy |
tags |
architecture-s39064 bugnameltc-173674 severity-high targetmilestone-inin--- |
architecture-s39064 bugnameltc-173674 severity-high targetmilestone-inin1804 |
|
2019-01-31 12:29:10 |
Dimitri John Ledkov |
s390-tools (Ubuntu): milestone |
|
ubuntu-19.04 |
|
2019-02-22 13:36:53 |
Francis Ginther |
tags |
architecture-s39064 bugnameltc-173674 severity-high targetmilestone-inin1804 |
architecture-s39064 bugnameltc-173674 id-5c6e827ce3d25a68622cfaed severity-high targetmilestone-inin1804 |
|
2019-03-13 23:43:52 |
Dimitri John Ledkov |
description |
---Problem Description---
CPI information about kvm usage is lost during apt upgrade
---uname output---
4.15.0-42-generic
Machine Type = s390x lpar
---Steps to Reproduce---
# cat /sys/firmware/cpi/*
cat: /sys/firmware/cpi/set: Permission denied
0x0000000000040f00
LINUX
root@m83lp52:~# virsh start guest # starting a guest does set the highest bit in
/sys/firmware/cpi/system_leveln
root@m83lp52:~# cat /sys/firmware/cpi/*
cat: /sys/firmware/cpi/set: Permission denied
0x8000000000040f00 <---- see the 8
LINUX
root@m83lp52:~# apt upgrade
[....]
has to upgrade at least one package, that will trigger some other code.
[....]
Now. some other code seems to have set values in /sys/firmware/cpi as well dropping the kvm information.
root@m83lp52:~# cat /sys/firmware/cpi/*
cat: /sys/firmware/cpi/set: Permission denied
18 04 1
0x0000000000040f00
UBUNTU
LINUX
The canonical place to handle /sys/firmware/cpi should be /lib/s390-tools/cpictl and /lib/systemd/system/cpi.service. So can we put the additional features (setting 18 04 1 and UBUNTU things also into
/etc/sysconfig/cpi
or
/lib/s390-tools/cpictl
)
and can we disable the other code that also sets /sys/firmware/cpi (I have not found out which code sets these values). This seems to be /lib/systemd/system-generators/s390-cpi-vars |
[Impact]
* Needlessly slow systemctl daemon-reload on baremetal s390x machines
* Wipes information about auxilary bits, by force resetting kernel version
[Test Case]
$ cat /sys/firmware/cpi/system_level
0x0000000000041200
Note the 41200 digits, this is hex-encoded kernel version number. Can be different depending on the kernel in use
$ sudo /lib/s390-tools/cpictl -b kvm
$ cat /sys/firmware/cpi/system_level
0x8000000000041200
# Note the leading bit is now 0x8, instead of 0x0
$ sudo systemctl daemon-reload
$ cat /sys/firmware/cpi/system_level
0x8000000000041200 -> is correct, 0x8 is preserved
0x0000000000041200 -> is wrong, 0x8 got reset to 0x0
[Solution]
In Ubuntu, cpi vars are set using systemd generator on early boot, thus HMC displays correct information about an LPAR very early on.
However, setting them takes about 1s, and at the moment was done upon every systemctl daemon-reload.
In addition, when kvm is used, cplictl -b kvm is called to update the leading kvm usage bit, this was getting lost upon every systemctl daemon-reload.
Instead, modify the generator to guard against re-setting cpi vars, if they were ever set once.
[Regression Potential]
* At worst case scenario, cpi-vars would not be set, leading to cosmetic issue of not able to see auxilary information (e.g. UBUNTU, running kernel version, Ubuntu release version) in the HMC console. As the variables form /sys/firmware/cpi/* are displayed in the HMC.
[Other Info]
* Original bug report
---Problem Description---
CPI information about kvm usage is lost during apt upgrade
---uname output---
4.15.0-42-generic
Machine Type = s390x lpar
---Steps to Reproduce---
# cat /sys/firmware/cpi/*
cat: /sys/firmware/cpi/set: Permission denied
0x0000000000040f00
LINUX
root@m83lp52:~# virsh start guest # starting a guest does set the highest bit in
/sys/firmware/cpi/system_leveln
root@m83lp52:~# cat /sys/firmware/cpi/*
cat: /sys/firmware/cpi/set: Permission denied
0x8000000000040f00 <---- see the 8
LINUX
root@m83lp52:~# apt upgrade
[....]
has to upgrade at least one package, that will trigger some other code.
[....]
Now. some other code seems to have set values in /sys/firmware/cpi as well dropping the kvm information.
root@m83lp52:~# cat /sys/firmware/cpi/*
cat: /sys/firmware/cpi/set: Permission denied
18 04 1
0x0000000000040f00
UBUNTU
LINUX
The canonical place to handle /sys/firmware/cpi should be /lib/s390-tools/cpictl and /lib/systemd/system/cpi.service. So can we put the additional features (setting 18 04 1 and UBUNTU things also into
/etc/sysconfig/cpi
or
/lib/s390-tools/cpictl
)
and can we disable the other code that also sets /sys/firmware/cpi (I have not found out which code sets these values). This seems to be /lib/systemd/system-generators/s390-cpi-vars |
|
2019-03-13 23:45:39 |
Dimitri John Ledkov |
s390-tools (Ubuntu): status |
New |
Fix Committed |
|
2019-03-13 23:49:49 |
Dimitri John Ledkov |
nominated for series |
|
Ubuntu Cosmic |
|
2019-03-13 23:49:49 |
Dimitri John Ledkov |
bug task added |
|
s390-tools (Ubuntu Cosmic) |
|
2019-03-13 23:49:49 |
Dimitri John Ledkov |
nominated for series |
|
Ubuntu Disco |
|
2019-03-13 23:49:49 |
Dimitri John Ledkov |
bug task added |
|
s390-tools (Ubuntu Disco) |
|
2019-03-13 23:49:49 |
Dimitri John Ledkov |
nominated for series |
|
Ubuntu Bionic |
|
2019-03-13 23:49:49 |
Dimitri John Ledkov |
bug task added |
|
s390-tools (Ubuntu Bionic) |
|
2019-03-14 00:31:59 |
Launchpad Janitor |
s390-tools (Ubuntu Disco): status |
Fix Committed |
Fix Released |
|
2019-03-14 06:07:46 |
Frank Heimes |
ubuntu-z-systems: status |
Triaged |
In Progress |
|
2019-03-15 10:54:21 |
Frank Heimes |
description |
[Impact]
* Needlessly slow systemctl daemon-reload on baremetal s390x machines
* Wipes information about auxilary bits, by force resetting kernel version
[Test Case]
$ cat /sys/firmware/cpi/system_level
0x0000000000041200
Note the 41200 digits, this is hex-encoded kernel version number. Can be different depending on the kernel in use
$ sudo /lib/s390-tools/cpictl -b kvm
$ cat /sys/firmware/cpi/system_level
0x8000000000041200
# Note the leading bit is now 0x8, instead of 0x0
$ sudo systemctl daemon-reload
$ cat /sys/firmware/cpi/system_level
0x8000000000041200 -> is correct, 0x8 is preserved
0x0000000000041200 -> is wrong, 0x8 got reset to 0x0
[Solution]
In Ubuntu, cpi vars are set using systemd generator on early boot, thus HMC displays correct information about an LPAR very early on.
However, setting them takes about 1s, and at the moment was done upon every systemctl daemon-reload.
In addition, when kvm is used, cplictl -b kvm is called to update the leading kvm usage bit, this was getting lost upon every systemctl daemon-reload.
Instead, modify the generator to guard against re-setting cpi vars, if they were ever set once.
[Regression Potential]
* At worst case scenario, cpi-vars would not be set, leading to cosmetic issue of not able to see auxilary information (e.g. UBUNTU, running kernel version, Ubuntu release version) in the HMC console. As the variables form /sys/firmware/cpi/* are displayed in the HMC.
[Other Info]
* Original bug report
---Problem Description---
CPI information about kvm usage is lost during apt upgrade
---uname output---
4.15.0-42-generic
Machine Type = s390x lpar
---Steps to Reproduce---
# cat /sys/firmware/cpi/*
cat: /sys/firmware/cpi/set: Permission denied
0x0000000000040f00
LINUX
root@m83lp52:~# virsh start guest # starting a guest does set the highest bit in
/sys/firmware/cpi/system_leveln
root@m83lp52:~# cat /sys/firmware/cpi/*
cat: /sys/firmware/cpi/set: Permission denied
0x8000000000040f00 <---- see the 8
LINUX
root@m83lp52:~# apt upgrade
[....]
has to upgrade at least one package, that will trigger some other code.
[....]
Now. some other code seems to have set values in /sys/firmware/cpi as well dropping the kvm information.
root@m83lp52:~# cat /sys/firmware/cpi/*
cat: /sys/firmware/cpi/set: Permission denied
18 04 1
0x0000000000040f00
UBUNTU
LINUX
The canonical place to handle /sys/firmware/cpi should be /lib/s390-tools/cpictl and /lib/systemd/system/cpi.service. So can we put the additional features (setting 18 04 1 and UBUNTU things also into
/etc/sysconfig/cpi
or
/lib/s390-tools/cpictl
)
and can we disable the other code that also sets /sys/firmware/cpi (I have not found out which code sets these values). This seems to be /lib/systemd/system-generators/s390-cpi-vars |
SRU Justification:
[Impact]
* Needlessly slow systemctl daemon-reload on baremetal s390x machines
* Wipes information about auxilary bits, by force resetting kernel version
[Test Case]
$ cat /sys/firmware/cpi/system_level
0x0000000000041200
Note the 41200 digits, this is hex-encoded kernel version number. Can be different depending on the kernel in use
$ sudo /lib/s390-tools/cpictl -b kvm
$ cat /sys/firmware/cpi/system_level
0x8000000000041200
# Note the leading bit is now 0x8, instead of 0x0
$ sudo systemctl daemon-reload
$ cat /sys/firmware/cpi/system_level
0x8000000000041200 -> is correct, 0x8 is preserved
0x0000000000041200 -> is wrong, 0x8 got reset to 0x0
[Solution]
In Ubuntu, cpi vars are set using systemd generator on early boot, thus HMC displays correct information about an LPAR very early on.
However, setting them takes about 1s, and at the moment was done upon every systemctl daemon-reload.
In addition, when kvm is used, cplictl -b kvm is called to update the leading kvm usage bit, this was getting lost upon every systemctl daemon-reload.
Instead, modify the generator to guard against re-setting cpi vars, if they were ever set once.
[Regression Potential]
* At worst case scenario, cpi-vars would not be set, leading to cosmetic issue of not able to see auxilary information (e.g. UBUNTU, running kernel version, Ubuntu release version) in the HMC console. As the variables form /sys/firmware/cpi/* are displayed in the HMC.
[Other Info]
* Original bug report
---Problem Description---
CPI information about kvm usage is lost during apt upgrade
---uname output---
4.15.0-42-generic
Machine Type = s390x lpar
---Steps to Reproduce---
# cat /sys/firmware/cpi/*
cat: /sys/firmware/cpi/set: Permission denied
0x0000000000040f00
LINUX
root@m83lp52:~# virsh start guest # starting a guest does set the highest bit in
/sys/firmware/cpi/system_leveln
root@m83lp52:~# cat /sys/firmware/cpi/*
cat: /sys/firmware/cpi/set: Permission denied
0x8000000000040f00 <---- see the 8
LINUX
root@m83lp52:~# apt upgrade
[....]
has to upgrade at least one package, that will trigger some other code.
[....]
Now. some other code seems to have set values in /sys/firmware/cpi as well dropping the kvm information.
root@m83lp52:~# cat /sys/firmware/cpi/*
cat: /sys/firmware/cpi/set: Permission denied
18 04 1
0x0000000000040f00
UBUNTU
LINUX
The canonical place to handle /sys/firmware/cpi should be /lib/s390-tools/cpictl and /lib/systemd/system/cpi.service. So can we put the additional features (setting 18 04 1 and UBUNTU things also into
/etc/sysconfig/cpi
or
/lib/s390-tools/cpictl
)
and can we disable the other code that also sets /sys/firmware/cpi (I have not found out which code sets these values). This seems to be /lib/systemd/system-generators/s390-cpi-vars |
|
2019-03-15 11:10:56 |
bugproxy |
attachment added |
|
Proposed quick fix https://bugs.launchpad.net/bugs/1805841/+attachment/5246410/+files/cpifix.patch |
|
2019-05-15 14:16:17 |
Dimitri John Ledkov |
s390-tools (Ubuntu Bionic): status |
New |
In Progress |
|
2019-05-15 14:16:19 |
Dimitri John Ledkov |
s390-tools (Ubuntu Cosmic): status |
New |
In Progress |
|
2019-05-16 16:46:56 |
Łukasz Zemczak |
s390-tools (Ubuntu Bionic): status |
In Progress |
Fix Committed |
|
2019-05-16 16:46:58 |
Łukasz Zemczak |
bug |
|
|
added subscriber Ubuntu Stable Release Updates Team |
2019-05-16 16:47:00 |
Łukasz Zemczak |
bug |
|
|
added subscriber SRU Verification |
2019-05-16 16:47:03 |
Łukasz Zemczak |
tags |
architecture-s39064 bugnameltc-173674 id-5c6e827ce3d25a68622cfaed severity-high targetmilestone-inin1804 |
architecture-s39064 bugnameltc-173674 id-5c6e827ce3d25a68622cfaed severity-high targetmilestone-inin1804 verification-needed verification-needed-bionic |
|
2019-05-17 09:01:20 |
bugproxy |
tags |
architecture-s39064 bugnameltc-173674 id-5c6e827ce3d25a68622cfaed severity-high targetmilestone-inin1804 verification-needed verification-needed-bionic |
architecture-s39064 bugnameltc-173674 id-5c6e827ce3d25a68622cfaed severity-high targetmilestone-inin1804 verification-done-bionic verification-needed |
|
2019-05-17 09:28:17 |
Frank Heimes |
tags |
architecture-s39064 bugnameltc-173674 id-5c6e827ce3d25a68622cfaed severity-high targetmilestone-inin1804 verification-done-bionic verification-needed |
architecture-s39064 bugnameltc-173674 id-5c6e827ce3d25a68622cfaed severity-high targetmilestone-inin1804 verification-done verification-done-bionic |
|
2019-05-23 08:44:25 |
Łukasz Zemczak |
s390-tools (Ubuntu Cosmic): status |
In Progress |
Fix Committed |
|
2019-05-23 08:44:31 |
Łukasz Zemczak |
tags |
architecture-s39064 bugnameltc-173674 id-5c6e827ce3d25a68622cfaed severity-high targetmilestone-inin1804 verification-done verification-done-bionic |
architecture-s39064 bugnameltc-173674 id-5c6e827ce3d25a68622cfaed severity-high targetmilestone-inin1804 verification-done-bionic verification-needed verification-needed-cosmic |
|
2019-05-23 08:45:20 |
Łukasz Zemczak |
removed subscriber Ubuntu Stable Release Updates Team |
|
|
|
2019-05-23 08:55:24 |
Launchpad Janitor |
s390-tools (Ubuntu Bionic): status |
Fix Committed |
Fix Released |
|
2019-05-23 09:26:47 |
Frank Heimes |
ubuntu-z-systems: status |
In Progress |
Fix Committed |
|
2019-05-23 11:59:39 |
bugproxy |
tags |
architecture-s39064 bugnameltc-173674 id-5c6e827ce3d25a68622cfaed severity-high targetmilestone-inin1804 verification-done-bionic verification-needed verification-needed-cosmic |
architecture-s39064 bugnameltc-173674 id-5c6e827ce3d25a68622cfaed severity-high targetmilestone-inin1804 verification-done-bionic verification-done-cosmic |
|
2019-06-03 08:45:34 |
Launchpad Janitor |
s390-tools (Ubuntu Cosmic): status |
Fix Committed |
Fix Released |
|
2019-06-03 09:17:41 |
Frank Heimes |
ubuntu-z-systems: status |
Fix Committed |
Fix Released |
|