====== Some notes on running Linux under z/VM ====== There's nothing much to say besides what the tutorial''[1]'' tells us. Nevertheless, there are quite a few notes I took just not to let me completely forget about them, later. ===== CPU's ===== I won't lie to you: it's insufferably slow. And for a good reason: you are virtualising twice, and the first level (Hercules) has zero paravirt. as s390x is a completely different architecture. But, maybe -- I said //maybe// -- you can suffer less, giving the VM more CPU's. So, here's how it's done: When creating the profile, you probably specified 4 max CPU's (''MACHINE ESA 4''). But that's it, when the machine is actually IPL'd, it goes up with only one. So, you take ''vmcp'', a neat little application which let you issue CP/CMS commands from inside Linux and do as follows ''[2]'': vmcp define cpu 02 type cp There are other types of CPU other than CP''[3]'', like: CP indicates the central processor. IFL indicates the IBM® Integrated Facility for Linux. ZAAP indicates the IBM zEnterprise® Application Assist Processor. ZIIP indicates the IBM z Integrated Information Processor. ICF indicates the Internal Coupling Facility. But CP is the general kind. And I don't think we should bother much about IFL or others when running z/VM inside an emulated mainframe. Well, now your VM got a new CPU. It's offline, though: vmcp q v cpus CPU 01 ID FF0288F728288000 CP CPUAFF ON CPU 02 ID FF0288F728288000 STOPPED CP CPUAFF ON [...] Tell the guest to rescan for CPU's, by issuing ''chcpu -r''. If it don't come online (i.e. still ofline in ''lscpu -ae''), do this: ''chcpu -e 02''. And it'll probably come online. ===== References ===== - {{ :zvm_install_guide.pdf |}} - [[https://www.ibm.com/support/pages/dynamically-adding-or-removing-cpus-linux-zvm-guest|Dynamically adding or removing CPU's on Linux z/VM guests]] - [[https://www.ibm.com/support/knowledgecenter/SSB27U_6.4.0/com.ibm.zvm.v640.hcpb7/defincpu.htm|DEFINE CPU]]