<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/Documentation/virtual/kvm/api.txt, branch linux-4.12.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-4.12.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-4.12.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2017-04-28T18:40:52Z</updated>
<entry>
<title>KVM: Documentation: remove VM mmap documentation</title>
<updated>2017-04-28T18:40:52Z</updated>
<author>
<name>Jann Horn</name>
</author>
<published>2017-04-24T09:16:49Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=bcb85c887647c0f096b51ac2ee391ea792b14b9e'/>
<id>urn:sha1:bcb85c887647c0f096b51ac2ee391ea792b14b9e</id>
<content type='text'>
Since commit 80f5b5e700fa9c ("KVM: remove vm mmap method"), the VM mmap
handler is gone. Remove the corresponding documentation.

Signed-off-by: Jann Horn &lt;jannh@google.com&gt;
Signed-off-by: Paolo Bonzini &lt;pbonzini@redhat.com&gt;
</content>
</entry>
<entry>
<title>Merge tag 'kvm-arm-for-v4.12' of git://git.kernel.org/pub/scm/linux/kernel/git/kvmarm/kvmarm into HEAD</title>
<updated>2017-04-27T15:33:14Z</updated>
<author>
<name>Paolo Bonzini</name>
</author>
<published>2017-04-27T15:33:14Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=c24a7be2110ddac2ab75abcded76c62dccb6b1f0'/>
<id>urn:sha1:c24a7be2110ddac2ab75abcded76c62dccb6b1f0</id>
<content type='text'>
KVM/ARM Changes for v4.12.

Changes include:
 - Using the common sysreg definitions between KVM and arm64
 - Improved hyp-stub implementation with support for kexec and kdump on the 32-bit side
 - Proper PMU exception handling
 - Performance improvements of our GIC handling
 - Support for irqchip in userspace with in-kernel arch-timers and PMU support
 - A fix for a race condition in our PSCI code

Conflicts:
	Documentation/virtual/kvm/api.txt
	include/uapi/linux/kvm.h
</content>
</entry>
<entry>
<title>kvm: better MWAIT emulation for guests</title>
<updated>2017-04-21T10:50:28Z</updated>
<author>
<name>Michael S. Tsirkin</name>
</author>
<published>2017-04-21T10:27:17Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=668fffa3f838edfcb1679f842f7ef1afa61c3e9a'/>
<id>urn:sha1:668fffa3f838edfcb1679f842f7ef1afa61c3e9a</id>
<content type='text'>
Guests that are heavy on futexes end up IPI'ing each other a lot. That
can lead to significant slowdowns and latency increase for those guests
when running within KVM.

If only a single guest is needed on a host, we have a lot of spare host
CPU time we can throw at the problem. Modern CPUs implement a feature
called "MWAIT" which allows guests to wake up sleeping remote CPUs without
an IPI - thus without an exit - at the expense of never going out of guest
context.

The decision whether this is something sensible to use should be up to the
VM admin, so to user space. We can however allow MWAIT execution on systems
that support it properly hardware wise.

This patch adds a CAP to user space and a KVM cpuid leaf to indicate
availability of native MWAIT execution. With that enabled, the worst a
guest can do is waste as many cycles as a "jmp ." would do, so it's not
a privilege problem.

We consciously do *not* expose the feature in our CPUID bitmap, as most
people will want to benefit from sleeping vCPUs to allow for over commit.

Reported-by: "Gabriel L. Somlo" &lt;gsomlo@gmail.com&gt;
Signed-off-by: Michael S. Tsirkin &lt;mst@redhat.com&gt;
[agraf: fix amd, change commit message]
Signed-off-by: Alexander Graf &lt;agraf@suse.de&gt;
Signed-off-by: Paolo Bonzini &lt;pbonzini@redhat.com&gt;
</content>
</entry>
<entry>
<title>Merge tag 'kvm-s390-next-4.12-1' of git://git.kernel.org/pub/scm/linux/kernel/git/kvms390/linux</title>
<updated>2017-04-11T18:54:40Z</updated>
<author>
<name>Radim Krčmář</name>
</author>
<published>2017-04-11T18:54:40Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=f7b1a77d3bfbdc7e91a1e48e0a3dc10e7d890e04'/>
<id>urn:sha1:f7b1a77d3bfbdc7e91a1e48e0a3dc10e7d890e04</id>
<content type='text'>
From: Christian Borntraeger &lt;borntraeger@de.ibm.com&gt;

KVM: s390: features for 4.12

1. guarded storage support for guests
   This contains an s390 base Linux feature branch that is necessary
   to implement the KVM part
2. Provide an interface to implement adapter interruption suppression
   which is necessary for proper zPCI support
3. Use more defines instead of numbers
4. Provide logging for lazy enablement of runtime instrumentation
</content>
</entry>
<entry>
<title>KVM: arm/arm64: Add ARM user space interrupt signaling ABI</title>
<updated>2017-04-09T14:49:38Z</updated>
<author>
<name>Alexander Graf</name>
</author>
<published>2016-09-27T19:08:05Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=3fe17e6826162021d5e9274949571b19fc94826b'/>
<id>urn:sha1:3fe17e6826162021d5e9274949571b19fc94826b</id>
<content type='text'>
We have 2 modes for dealing with interrupts in the ARM world. We can
either handle them all using hardware acceleration through the vgic or
we can emulate a gic in user space and only drive CPU IRQ pins from
there.

Unfortunately, when driving IRQs from user space, we never tell user
space about events from devices emulated inside the kernel, which may
result in interrupt line state changes, so we lose out on for example
timer and PMU events if we run with user space gic emulation.

Define an ABI to publish such device output levels to userspace.

Reviewed-by: Alexander Graf &lt;agraf@suse.de&gt;
Reviewed-by: Marc Zyngier &lt;marc.zyngier@arm.com&gt;
Signed-off-by: Alexander Graf &lt;agraf@suse.de&gt;
Signed-off-by: Christoffer Dall &lt;christoffer.dall@linaro.org&gt;
Signed-off-by: Marc Zyngier &lt;marc.zyngier@arm.com&gt;
</content>
</entry>
<entry>
<title>KVM: x86: drop legacy device assignment</title>
<updated>2017-04-07T14:49:00Z</updated>
<author>
<name>Paolo Bonzini</name>
</author>
<published>2017-03-27T12:30:40Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=ad6260da1e23cf937806e42c8490af3ff4530474'/>
<id>urn:sha1:ad6260da1e23cf937806e42c8490af3ff4530474</id>
<content type='text'>
Legacy device assignment has been deprecated since 4.2 (released
1.5 years ago).  VFIO is better and everyone should have switched to it.
If they haven't, this should convince them. :)

Reviewed-by: Alex Williamson &lt;alex.williamson@redhat.com&gt;
Signed-off-by: Paolo Bonzini &lt;pbonzini@redhat.com&gt;
</content>
</entry>
<entry>
<title>KVM: s390: introduce AIS capability</title>
<updated>2017-04-07T07:11:11Z</updated>
<author>
<name>Yi Min Zhao</name>
</author>
<published>2017-03-10T08:29:38Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=47a4693e1d3eb09e523c223753fb5a97721f49b8'/>
<id>urn:sha1:47a4693e1d3eb09e523c223753fb5a97721f49b8</id>
<content type='text'>
Introduce a cap to enable AIS facility bit, and add documentation
for this capability.

Signed-off-by: Yi Min Zhao &lt;zyimin@linux.vnet.ibm.com&gt;
Signed-off-by: Fei Li &lt;sherrylf@linux.vnet.ibm.com&gt;
Reviewed-by: Cornelia Huck &lt;cornelia.huck@de.ibm.com&gt;
Signed-off-by: Christian Borntraeger &lt;borntraeger@de.ibm.com&gt;
</content>
</entry>
<entry>
<title>Merge tag 'kvm_mips_4.12_1' of git://git.kernel.org/pub/scm/linux/kernel/git/jhogan/kvm-mips</title>
<updated>2017-04-06T12:47:03Z</updated>
<author>
<name>Radim Krčmář</name>
</author>
<published>2017-04-06T12:47:03Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=715958f921c244c90c82e5ab74bf76f09a77225d'/>
<id>urn:sha1:715958f921c244c90c82e5ab74bf76f09a77225d</id>
<content type='text'>
From: James Hogan &lt;james.hogan@imgtec.com&gt;

KVM: MIPS: VZ support, Octeon III, and TLBR

Add basic support for the MIPS Virtualization Module (generally known as
MIPS VZ) in KVM. We primarily support the ImgTec P5600, P6600, I6400,
and Cavium Octeon III cores so far. Support is included for the
following VZ / guest hardware features:
- MIPS32 and MIPS64, r5 (VZ requires r5 or later) and r6
- TLBs with GuestID (IMG cores) or Root ASID Dealias (Octeon III)
- Shared physical root/guest TLB (IMG cores)
- FPU / MSA
- Cop0 timer (up to 1GHz for now due to soft timer limit)
- Segmentation control (EVA)
- Hardware page table walker (HTW) both for root and guest TLB

Also included is a proper implementation of the TLBR instruction for the
trap &amp; emulate MIPS KVM implementation.

Preliminary MIPS architecture changes are applied directly with Ralf's
ack.
</content>
</entry>
<entry>
<title>KVM: MIPS/VZ: Emulate MAARs when necessary</title>
<updated>2017-03-28T13:53:58Z</updated>
<author>
<name>James Hogan</name>
</author>
<published>2017-03-14T10:15:38Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=d42a008f86ba3d715d31788fc5143a4de5685d33'/>
<id>urn:sha1:d42a008f86ba3d715d31788fc5143a4de5685d33</id>
<content type='text'>
Add emulation of Memory Accessibility Attribute Registers (MAARs) when
necessary. We can't actually do anything with whatever the guest
provides, but it may not be possible to clear Guest.Config5.MRP so we
have to emulate at least a pair of MAARs.

Signed-off-by: James Hogan &lt;james.hogan@imgtec.com&gt;
Cc: Paolo Bonzini &lt;pbonzini@redhat.com&gt;
Cc: "Radim Krčmář" &lt;rkrcmar@redhat.com&gt;
Cc: Ralf Baechle &lt;ralf@linux-mips.org&gt;
Cc: Jonathan Corbet &lt;corbet@lwn.net&gt;
Cc: Steven Rostedt &lt;rostedt@goodmis.org&gt;
Cc: Ingo Molnar &lt;mingo@redhat.com&gt;
Cc: linux-mips@linux-mips.org
Cc: kvm@vger.kernel.org
Cc: linux-doc@vger.kernel.org
</content>
</entry>
<entry>
<title>KVM: MIPS/VZ: Support guest hardware page table walker</title>
<updated>2017-03-28T13:53:57Z</updated>
<author>
<name>James Hogan</name>
</author>
<published>2017-03-14T10:15:36Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=5a2f352f343ac9b4e869ff29b3a0a833c870303b'/>
<id>urn:sha1:5a2f352f343ac9b4e869ff29b3a0a833c870303b</id>
<content type='text'>
Add support for VZ guest CP0_PWBase, CP0_PWField, CP0_PWSize, and
CP0_PWCtl registers for controlling the guest hardware page table walker
(HTW) present on P5600 and P6600 cores. These guest registers need
initialising on R6, context switching, and exposing via the KVM ioctl
API when they are present.

Signed-off-by: James Hogan &lt;james.hogan@imgtec.com&gt;
Cc: Paolo Bonzini &lt;pbonzini@redhat.com&gt;
Cc: "Radim Krčmář" &lt;rkrcmar@redhat.com&gt;
Cc: Ralf Baechle &lt;ralf@linux-mips.org&gt;
Cc: Jonathan Corbet &lt;corbet@lwn.net&gt;
Cc: linux-mips@linux-mips.org
Cc: kvm@vger.kernel.org
Cc: linux-doc@vger.kernel.org
</content>
</entry>
</feed>
