Lines Matching +full:qemu +full:- +full:kvm

10 A QEMU ``pseries`` machine (which is PAPR compliant) using POWER9
13 - *Legacy Compatibility Mode*
18 It is also referred as *XICS* in QEMU.
20 - *XIVE native exploitation mode*
34 ---------------
36 QEMU advertises the supported interrupt modes in the device tree
37 property ``ibm,arch-vec-5-platform-support`` in byte 23 and the OS
38 Selection for XIVE is indicated in the ``ibm,architecture-vec-5``
43 ``ic-mode`` which can be set on the command line. It can take the
52 KVM negotiation
53 ---------------
55 When the guest starts under KVM, the capabilities of the host kernel
56 and QEMU are also negotiated. Depending on the version of the host
57 kernel, KVM will advertise the XIVE capability to QEMU or not.
60 depend on the XIVE KVM capability of the host. On older kernels
61 without XIVE KVM support, QEMU will use the emulated XIVE device as a
62 fallback and on newer kernels (>=5.2), the KVM XIVE device.
64 XIVE native exploitation mode is not supported for KVM nested guests,
65 VMs running under a L1 hypervisor (KVM on pSeries). In that case, the
66 hypervisor will not advertise the KVM capability and QEMU will use the
67 emulated XIVE device, same as for older versions of KVM.
69 As a final refinement, the user can also switch the use of the KVM
73 XIVE support in KVM
77 kernels with XIVE KVM support are the following:
80 ic-mode kernel_irqchip
81 -------------- ----------------------------------------------
85 dual (default) XIVE KVM XIVE emul. XIVE KVM
86 xive XIVE KVM XIVE emul. XIVE KVM
87 xics XICS KVM XICS emul. XICS KVM
94 ic-mode kernel_irqchip
95 -------------- ----------------------------------------------
99 dual (default) XICS KVM XICS emul. XICS KVM
100 xive QEMU error(3) QEMU error(3) QEMU error(3)
101 xics XICS KVM XICS emul. XICS KVM
104 (3) QEMU fails at CAS with ``Guest requested unavailable interrupt
105 mode (XICS), either don't set the ic-mode machine property or try
106 ic-mode=xics or ic-mode=dual``
109 No XIVE support in KVM
113 kernels without XIVE KVM support are the following:
116 ic-mode kernel_irqchip
117 -------------- ----------------------------------------------
121 dual (default) XIVE emul.(1) XIVE emul. QEMU error (2)
122 xive XIVE emul.(1) XIVE emul. QEMU error (2)
123 xics XICS KVM XICS emul. XICS KVM
127 (1) QEMU warns with ``warning: kernel_irqchip requested but unavailable:
128 IRQ_XIVE capability must be present for KVM``
129 In some cases (old host kernels or KVM nested guests), one may hit a
130 QEMU/KVM incompatibility due to device destruction in reset. QEMU fails
131 with ``KVM is incompatible with ic-mode=dual,kernel-irqchip=on``
132 (2) QEMU fails with ``kernel_irqchip requested but unavailable:
133 IRQ_XIVE capability must be present for KVM``
140 ic-mode kernel_irqchip
141 -------------- ----------------------------------------------
145 dual (default) QEMU error(4) XICS emul. QEMU error(4)
146 xive QEMU error(3) QEMU error(3) QEMU error(3)
147 xics XICS KVM XICS emul. XICS KVM
150 (3) QEMU fails at CAS with ``Guest requested unavailable interrupt
151 mode (XICS), either don't set the ic-mode machine property or try
152 ic-mode=xics or ic-mode=dual``
153 (4) QEMU/KVM incompatibility due to device destruction in reset. QEMU fails
154 with ``KVM is incompatible with ic-mode=dual,kernel-irqchip=on``
158 ---------------------------
163 - ``device_type``
165 value should be "power-ivpe".
167 - ``compatible``
169 value should be "ibm,power-ivpe".
171 - ``reg``
177 - ``ibm,xive-eq-sizes``
182 - ``ibm,xive-lisn-ranges``
188 - ``ibm,plat-res-int-priorities``
194 ----------------
199 - ``0x0000 .. 0x0FFF`` 4K CPU IPIs (only used under XIVE)
200 - ``0x1000 .. 0x1000`` 1 EPOW
201 - ``0x1001 .. 0x1001`` 1 HOTPLUG
202 - ``0x1002 .. 0x10FF`` unused
203 - ``0x1100 .. 0x11FF`` 256 VIO devices
204 - ``0x1200 .. 0x127F`` 32x4 LSIs for PHB devices
205 - ``0x1280 .. 0x12FF`` unused
206 - ``0x1300 .. 0x1FFF`` PHB MSIs (dynamically allocated)
209 ---------------
219 (qemu) info pic
227 In the case of a ``pseries`` machine, QEMU acts as the hypervisor and only
238 00000000 MSI -- 00000010 0/6 380/16384 @1fe3e0000 ^1 [ 80000010 ... ]
239 00000001 MSI -- 00000010 1/6 305/16384 @1fc230000 ^1 [ 80000010 ... ]
240 00000002 MSI -- 00000010 2/6 220/16384 @1fc2f0000 ^1 [ 80000010 ... ]
241 00000003 MSI -- 00000010 3/6 201/16384 @1fc390000 ^1 [ 80000010 ... ]
242 00000004 MSI -Q M 00000000
243 00000005 MSI -Q M 00000000
244 00000006 MSI -Q M 00000000
245 00000007 MSI -Q M 00000000
246 00001000 MSI -- 00000012 0/6 380/16384 @1fe3e0000 ^1 [ 80000010 ... ]
247 00001001 MSI -- 00000013 0/6 380/16384 @1fe3e0000 ^1 [ 80000010 ... ]
248 00001100 MSI -- 00000100 1/6 305/16384 @1fc230000 ^1 [ 80000010 ... ]
249 00001101 MSI -Q M 00000000
250 00001200 LSI -Q M 00000000
251 00001201 LSI -Q M 00000000
252 00001202 LSI -Q M 00000000
253 00001203 LSI -Q M 00000000
254 00001300 MSI -- 00000102 1/6 305/16384 @1fc230000 ^1 [ 80000010 ... ]
255 00001301 MSI -- 00000103 2/6 220/16384 @1fc2f0000 ^1 [ 80000010 ... ]
256 00001302 MSI -- 00000104 3/6 201/16384 @1fc390000 ^1 [ 80000010 ... ]
260 - The ``LISN`` column outputs the interrupt number of the source in
262 - The ``PQ`` column reflects the state of the PQ bits of the source :
264 - ``--`` source is ready to take events
265 - ``P-`` an event was sent and an EOI is PENDING
266 - ``PQ`` an event was QUEUED
267 - ``-Q`` source is OFF
273 - The ``EISN`` column is the event data that will be queued in the event
275 - The ``CPU/PRIO`` column is the tuple defining the CPU number and
277 - The ``EQ`` column outputs :
279 - the current index of the event queue/ the max number of entries
280 - the O/S event queue address
281 - the toggle bit
282 - the last entries that were pushed in the event queue.