About cookies on this site Our websites require some cookies to function properly (required). In addition, other cookies may be used with your consent to analyze site usage, improve the user experience and for advertising. For more information, please review your options. By visiting our website, you agree to our processing of information as described in IBM’sprivacy statement. To provide a smooth navigation, your cookie preferences will be shared across the IBM web domains listed here.
How To
Summary
This document shows how to add or remove a CP or IFL (Integrated Facility for Linux) dedicated processor to a Linux guest running on the IBM Z mainframe platform under z/VM.
Please see the warning below regarding removing a CPU from a running Linux guest.
Steps
Adding CPUs to our Linux guest hosted under z/VM on the IBM Z mainframe.
You can dynamically add CPUs to your guest and have them available to Linux.
* If you manually add CPUs to the guest, and reboot Linux, they will be seen again when Linux is up.
* If you manually add CPUs to the guest, but do not define them in the guest’s USER DIRECT, they will go away when the guest logs out.
First define the cpus at the z/VM level. If you'd like to do this with the Linux guest up, use the "vmcp" tool in Linux. This is supplied by the s390-tools package.
In this example I'm adding 2 CP processors. If you are adding IFLs you will set the "type" to "ifl".
There are other types also but Linux uses CP or IFL processors
s390linux# vmcp define cpu 02 type cp
CPU 02 defined
CPU 02 defined
s390linux# vmcp define cpu 03 type cp
CPU 03 defined
CPU 03 defined
or from the console:
00: CP DEFINE CPU 02 TYPE CP
00: CPU 02 defined
00: CP DEFINE CPU 02 TYPE CP
00: CPU 02 defined
00: CP DEFINE CPU 03 TYPE CP
00: CPU 03 defined
00: CPU 03 defined
Now query z/VM to find out if the CPUs show up:
s390linux# vmcp q v cpus
CPU 01 ID FF0288F728288000 CP CPUAFF ON
CPU 02 ID FF0288F728288000 STOPPED CP CPUAFF ON
CPU 03 ID FF0288F728288000 STOPPED CP CPUAFF ON
CPU 00 ID FF0288F728288000 (BASE) CP CPUAFF ON
CPU 01 ID FF0288F728288000 CP CPUAFF ON
CPU 02 ID FF0288F728288000 STOPPED CP CPUAFF ON
CPU 03 ID FF0288F728288000 STOPPED CP CPUAFF ON
CPU 00 ID FF0288F728288000 (BASE) CP CPUAFF ON
Notice 2 and 3 are stopped right now.
They won’t show up in Linux lscpu -ae yet until we online them
They won’t show up in Linux lscpu -ae yet until we online them
Use chcpu -r to rescan the guest for the new cpus. In recent versions of the s390 utilities package the rescan will also cause the new CPU to go online:
s390linux# chcpu -r
Triggered rescan of CPUs
Triggered rescan of CPUs
You may see messages on the console for the cpus that go online
03: HCPGSP2627I The virtual machine is placed in CP mode due to a SIGP initial C
PU reset from CPU 01.
Now they show up in Linux and are online:
s390linux:~ # lscpu -ae
CPU NODE DRAWER BOOK SOCKET CORE L1d:L1i:L2d:L2i ONLINE CONFIGURED POLARIZATION ADDRESS
0 0 0 0 0 0 0:0:0:0 yes yes horizontal 0
1 0 1 1 1 1 1:1:1:1 yes yes horizontal 1
2 0 2 2 2 2 2:2:2:2 yes yes horizontal 2
3 0 3 3 3 3 3:3:3:3 yes yes horizontal 3
They also show online at the z/VM level:
s390linux:~ # vmcp q v cpus
CPU 02 ID FF0288F728288000 CP CPUAFF ON
CPU 03 ID FF0288F728288000 CP CPUAFF ON
CPU 00 ID FF0288F728288000 (BASE) CP CPUAFF ON
CPU 01 ID FF0288F728288000 CP CPUAFF ON
You may have to manually set them online:
# chcpu -e 02
CPU 2 enabled
You’ll see a message on the console if you do this:
02: HCPGSP2627I The virtual machine is placed in CP mode due to a SIGP initial C
PU reset from CPU 00.
02: HCPGSP2627I The virtual machine is placed in CP mode due to a SIGP initial C
PU reset from CPU 00.
# chcpu -e 03
# cd /sys/devices/system/cpu
s390linux:/sys/devices/system/cpu # cat online
0-3
Disabling and removing CPUs
You can stop the cpus (disable them) from Linux if you do not want to use them any more:
s390linux:~ # vmcp q v cpus
CPU 00 ID FF0288F728288000 (BASE) CP CPUAFF ON
CPU 01 ID FF0288F728288000 CP CPUAFF ON
CPU 02 ID FF0288F728288000 CP CPUAFF ON
CPU 03 ID FF0288F728288000 CP CPUAFF ON
CPU 00 ID FF0288F728288000 (BASE) CP CPUAFF ON
CPU 01 ID FF0288F728288000 CP CPUAFF ON
CPU 02 ID FF0288F728288000 CP CPUAFF ON
CPU 03 ID FF0288F728288000 CP CPUAFF ON
s390linux:~ # chcpu -d 03
CPU 3 disabled
CPU 3 disabled
on the console you’ll see:
03: HCPGSP2629I The virtual machine is placed in CP mode due to a SIGP stop from
CPU 03.
s390linux:~ # chcpu -d 02
CPU 2 disabled
CPU 2 disabled
Notice they still show up in lscpu, just they are offline:
s390linux:~ # lscpu -e
CPU NODE DRAWER BOOK SOCKET CORE L1d:L1i:L2d:L2i ONLINE CONFIGURED POLARIZATION ADDRESS
0 0 0 0 0 0 0:0:0:0 yes yes horizontal 0
1 0 1 1 1 1 1:1:1:1 yes yes horizontal 1
2 0 - - - - ::: no yes horizontal 2
3 0 - - - - ::: no yes horizontal 3
At the z/VM level they are also stopped:
s390linux:~ # vmcp q v cpus
CPU 00 ID FF0288F728288000 (BASE) CP CPUAFF ON
CPU 01 ID FF0288F728288000 CP CPUAFF ON
CPU 02 ID FF0288F728288000 STOPPED CP CPUAFF ON
CPU 03 ID FF0288F728288000 STOPPED CP CPUAFF ON
At this point they are seen by Linux but are not processing.
IMPORTANT WARNING:
If you want to remove them completely from the guest, that will reset the system. This will take the guest down immediately to a CP level. So if Linux or another OS is running in the guest, it will immediately stop without a clean shut down.
So make sure your guest OS is not running when you detach any of the CPUs.
00: DETACH CPU 02
00: CPU 02 detached
00: Storage cleared - system reset.
00: CPU 02 detached
00: Storage cleared - system reset.
00: DETACH CPU 03
00: CPU 03 detached
00: Storage cleared - system reset.
00: Q V CPUS
00: CPU 00 ID FF0288F728288000 (BASE) STOPPED CP CPUAFF ON
00: CPU 01 ID FF0288F728288000 STOPPED CP CPUAFF ON
Document Location
Worldwide
[{"Business Unit":{"code":"BU058","label":"IBM Infrastructure w\/TPS"},"Product":{"code":"SGMV168","label":"SUSE Linux Enterprise Server"},"Component":"","Platform":[{"code":"PF051","label":"Linux on IBM Z Systems"}],"Version":"All Versions","Edition":"","Line of Business":{"code":"LOB57","label":"Power"}}]
Was this topic helpful?
Document Information
More support for:
SUSE Linux Enterprise Server
Software version:
All Versions
Operating system(s):
Linux on IBM Z Systems
Document number:
964670
Modified date:
01 April 2021
UID
ibm10964670
Manage My Notification Subscriptions