<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/Documentation/virtual/kvm/devices, branch linux-3.18.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-3.18.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-3.18.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2015-05-17T23:11:49Z</updated>
<entry>
<title>KVM: s390: fix get_all_floating_irqs</title>
<updated>2015-05-17T23:11:49Z</updated>
<author>
<name>Jens Freimann</name>
</author>
<published>2015-03-16T11:17:13Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=00d83726cc64e9a1e1e2f60471235e9cfaa86d1e'/>
<id>urn:sha1:00d83726cc64e9a1e1e2f60471235e9cfaa86d1e</id>
<content type='text'>
[ Upstream commit 94aa033efcac47b09db22cb561e135baf37b7887 ]

This fixes a bug introduced with commit c05c4186bbe4 ("KVM: s390:
add floating irq controller").

get_all_floating_irqs() does copy_to_user() while holding
a spin lock. Let's fix this by filling a temporary buffer
first and copy it to userspace after giving up the lock.

Cc: &lt;stable@vger.kernel.org&gt; # 3.18+: 69a8d4562638 KVM: s390: no need to hold...

Reviewed-by: David Hildenbrand &lt;dahi@linux.vnet.ibm.com&gt;
Signed-off-by: Jens Freimann &lt;jfrei@linux.vnet.ibm.com&gt;
Signed-off-by: Christian Borntraeger &lt;borntraeger@de.ibm.com&gt;
Acked-by: Cornelia Huck &lt;cornelia.huck@de.ibm.com&gt;
Signed-off-by: Sasha Levin &lt;sasha.levin@oracle.com&gt;
</content>
</entry>
<entry>
<title>arm/arm64: KVM: vgic: make number of irqs a configurable attribute</title>
<updated>2014-09-19T01:48:58Z</updated>
<author>
<name>Marc Zyngier</name>
</author>
<published>2014-07-08T11:09:07Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=a98f26f183801685ef57333de4bafd4bbc692c7c'/>
<id>urn:sha1:a98f26f183801685ef57333de4bafd4bbc692c7c</id>
<content type='text'>
In order to make the number of interrupts configurable, use the new
fancy device management API to add KVM_DEV_ARM_VGIC_GRP_NR_IRQS as
a VGIC configurable attribute.

Userspace can now specify the exact size of the GIC (by increments
of 32 interrupts).

Reviewed-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: s390: Exploiting generic userspace interface for cmma</title>
<updated>2014-04-22T11:24:32Z</updated>
<author>
<name>Dominik Dingel</name>
</author>
<published>2014-04-09T11:13:00Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=4f718eab262868aeab83774ec4ce25e6a9906657'/>
<id>urn:sha1:4f718eab262868aeab83774ec4ce25e6a9906657</id>
<content type='text'>
To enable CMMA and to reset its state we use the vm kvm_device ioctls,
encapsulating attributes within the KVM_S390_VM_MEM_CTRL group.

Signed-off-by: Dominik Dingel &lt;dingel@linux.vnet.ibm.com&gt;
Signed-off-by: Christian Borntraeger &lt;borntraeger@de.ibm.com&gt;
</content>
</entry>
<entry>
<title>KVM: s390: Per-vm kvm device controls</title>
<updated>2014-04-22T11:24:12Z</updated>
<author>
<name>Dominik Dingel</name>
</author>
<published>2014-04-09T11:13:00Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=f2061656209fb9a5d54bbb1999f0a633438504e7'/>
<id>urn:sha1:f2061656209fb9a5d54bbb1999f0a633438504e7</id>
<content type='text'>
We sometimes need to get/set attributes specific to a virtual machine
and so need something else than ONE_REG.

Let's copy the KVM_DEVICE approach, and define the respective ioctls
for the vm file descriptor.

Signed-off-by: Dominik Dingel &lt;dingel@linux.vnet.ibm.com&gt;
Reviewed-by: Cornelia Huck &lt;cornelia.huck@de.ibm.com&gt;
Acked-by: Alexander Graf &lt;agraf@suse.de&gt;
Signed-off-by: Christian Borntraeger &lt;borntraeger@de.ibm.com&gt;
</content>
</entry>
<entry>
<title>KVM: s390: adapter interrupt sources</title>
<updated>2014-03-21T12:42:49Z</updated>
<author>
<name>Cornelia Huck</name>
</author>
<published>2013-07-15T11:36:01Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=841b91c584b6d1e2a2cb508bd2d0236cd37e1750'/>
<id>urn:sha1:841b91c584b6d1e2a2cb508bd2d0236cd37e1750</id>
<content type='text'>
Add a new interface to register/deregister sources of adapter interrupts
identified by an unique id via the flic. Adapters may also be maskable
and carry a list of pinned pages.

These adapters will be used by irq routing later.

Acked-by: Christian Borntraeger &lt;borntraeger@de.ibm.com&gt;
Signed-off-by: Cornelia Huck &lt;cornelia.huck@de.ibm.com&gt;
</content>
</entry>
<entry>
<title>KVM: async_pf: Async page fault support on s390</title>
<updated>2014-01-30T12:11:02Z</updated>
<author>
<name>Dominik Dingel</name>
</author>
<published>2013-10-07T15:11:48Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=3c038e6be0e299d4d3762d0a9a29f02de6e04991'/>
<id>urn:sha1:3c038e6be0e299d4d3762d0a9a29f02de6e04991</id>
<content type='text'>
This patch enables async page faults for s390 kvm guests.
It provides the userspace API to enable and disable_wait this feature.
The disable_wait will enforce that the feature is off by waiting on it.
Also it includes the diagnose code, called by the guest to enable async page faults.

The async page faults will use an already existing guest interface for this
purpose, as described in "CP Programming Services (SC24-6084)".

Signed-off-by: Dominik Dingel &lt;dingel@linux.vnet.ibm.com&gt;
Signed-off-by: Christian Borntraeger &lt;borntraeger@de.ibm.com&gt;
</content>
</entry>
<entry>
<title>KVM: s390: add floating irq controller</title>
<updated>2014-01-30T09:25:20Z</updated>
<author>
<name>Jens Freimann</name>
</author>
<published>2013-10-07T14:13:45Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=c05c4186bbe4e99d64e8a36f7ca7f480da5d109f'/>
<id>urn:sha1:c05c4186bbe4e99d64e8a36f7ca7f480da5d109f</id>
<content type='text'>
This patch adds a floating irq controller as a kvm_device.
It will be necessary for migration of floating interrupts as well
as for hardening the reset code by allowing user space to explicitly
remove all pending floating interrupts.

Signed-off-by: Jens Freimann &lt;jfrei@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>KVM: arm-vgic: Add vgic reg access from dev attr</title>
<updated>2013-12-21T18:01:39Z</updated>
<author>
<name>Christoffer Dall</name>
</author>
<published>2013-10-25T20:17:31Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=c07a0191ef2de1f9510f12d1f88e3b0b5cd8d66f'/>
<id>urn:sha1:c07a0191ef2de1f9510f12d1f88e3b0b5cd8d66f</id>
<content type='text'>
Add infrastructure to handle distributor and cpu interface register
accesses through the KVM_{GET/SET}_DEVICE_ATTR interface by adding the
KVM_DEV_ARM_VGIC_GRP_DIST_REGS and KVM_DEV_ARM_VGIC_GRP_CPU_REGS groups
and defining the semantics of the attr field to be the MMIO offset as
specified in the GICv2 specs.

Missing register accesses or other changes in individual register access
functions to support save/restore of the VGIC state is added in
subsequent patches.

Acked-by: Marc Zyngier &lt;marc.zyngier@arm.com&gt;
Signed-off-by: Christoffer Dall &lt;christoffer.dall@linaro.org&gt;
</content>
</entry>
<entry>
<title>KVM: arm-vgic: Set base addr through device API</title>
<updated>2013-12-21T18:01:22Z</updated>
<author>
<name>Christoffer Dall</name>
</author>
<published>2013-09-23T21:55:56Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=ce01e4e8874d410738f4b4733b26642d6611a331'/>
<id>urn:sha1:ce01e4e8874d410738f4b4733b26642d6611a331</id>
<content type='text'>
Support setting the distributor and cpu interface base addresses in the
VM physical address space through the KVM_{SET,GET}_DEVICE_ATTR API
in addition to the ARM specific API.

This has the added benefit of being able to share more code in user
space and do things in a uniform manner.

Also deprecate the older API at the same time, but backwards
compatibility will be maintained.

Acked-by: Marc Zyngier &lt;marc.zyngier@arm.com&gt;
Signed-off-by: Christoffer Dall &lt;christoffer.dall@linaro.org&gt;
</content>
</entry>
<entry>
<title>KVM: arm-vgic: Support KVM_CREATE_DEVICE for VGIC</title>
<updated>2013-12-21T18:01:16Z</updated>
<author>
<name>Christoffer Dall</name>
</author>
<published>2013-10-25T16:29:18Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=7330672befe6269e575f79b924a7068b26c144b4'/>
<id>urn:sha1:7330672befe6269e575f79b924a7068b26c144b4</id>
<content type='text'>
Support creating the ARM VGIC device through the KVM_CREATE_DEVICE
ioctl, which can then later be leveraged to use the
KVM_{GET/SET}_DEVICE_ATTR, which is useful both for setting addresses in
a more generic API than the ARM-specific one and is useful for
save/restore of VGIC state.

Adds KVM_CAP_DEVICE_CTRL to ARM capabilities.

Note that we change the check for creating a VGIC from bailing out if
any VCPUs were created, to bailing out if any VCPUs were ever run.  This
is an important distinction that shouldn't break anything, but allows
creating the VGIC after the VCPUs have been created.

Acked-by: Marc Zyngier &lt;marc.zyngier@arm.com&gt;
Signed-off-by: Christoffer Dall &lt;christoffer.dall@linaro.org&gt;
</content>
</entry>
</feed>
