linux-next: manual merge of the kvm tree with Linus' tree

From: Stephen Rothwell
Date: Fri Jul 06 2012 - 01:12:30 EST


Hi all,

Today's linux-next merge of the kvm tree got a conflict in
Documentation/virtual/kvm/api.txt between commit f36992e31284 ("KVM: Add
missing KVM_IRQFD API documentation") from Linus' tree and commit
32fad281c068 ("KVM: PPC: Book3S HV: Make the guest hash table size
configurable") from the kvm tree.

I fixed it up (see below) and can carry the fix as necessary.
--
Cheers,
Stephen Rothwell sfr@xxxxxxxxxxxxxxxx

diff --cc Documentation/virtual/kvm/api.txt
index 2c99483,310fe50..0000000
--- a/Documentation/virtual/kvm/api.txt
+++ b/Documentation/virtual/kvm/api.txt
@@@ -1930,22 -1930,41 +1930,56 @@@ The "pte_enc" field provides a value th
PTE's RPN field (ie, it needs to be shifted left by 12 to OR it
into the hash PTE second double word).

+4.75 KVM_IRQFD

-4.75 KVM_PPC_ALLOCATE_HTAB
+Capability: KVM_CAP_IRQFD
+Architectures: x86
+Type: vm ioctl
+Parameters: struct kvm_irqfd (in)
+Returns: 0 on success, -1 on error
+
+Allows setting an eventfd to directly trigger a guest interrupt.
+kvm_irqfd.fd specifies the file descriptor to use as the eventfd and
+kvm_irqfd.gsi specifies the irqchip pin toggled by this event. When
+an event is tiggered on the eventfd, an interrupt is injected into
+the guest using the specified gsi pin. The irqfd is removed using
+the KVM_IRQFD_FLAG_DEASSIGN flag, specifying both kvm_irqfd.fd
+and kvm_irqfd.gsi.
+
++4.76 KVM_PPC_ALLOCATE_HTAB
+
+ Capability: KVM_CAP_PPC_ALLOC_HTAB
+ Architectures: powerpc
+ Type: vm ioctl
+ Parameters: Pointer to u32 containing hash table order (in/out)
+ Returns: 0 on success, -1 on error
+
+ This requests the host kernel to allocate an MMU hash table for a
+ guest using the PAPR paravirtualization interface. This only does
+ anything if the kernel is configured to use the Book 3S HV style of
+ virtualization. Otherwise the capability doesn't exist and the ioctl
+ returns an ENOTTY error. The rest of this description assumes Book 3S
+ HV.
+
+ There must be no vcpus running when this ioctl is called; if there
+ are, it will do nothing and return an EBUSY error.
+
+ The parameter is a pointer to a 32-bit unsigned integer variable
+ containing the order (log base 2) of the desired size of the hash
+ table, which must be between 18 and 46. On successful return from the
+ ioctl, it will have been updated with the order of the hash table that
+ was allocated.
+
+ If no hash table has been allocated when any vcpu is asked to run
+ (with the KVM_RUN ioctl), the host kernel will allocate a
+ default-sized hash table (16 MB).
+
+ If this ioctl is called when a hash table has already been allocated,
+ the kernel will clear out the existing hash table (zero all HPTEs) and
+ return the hash table order in the parameter. (If the guest is using
+ the virtualized real-mode area (VRMA) facility, the kernel will
+ re-create the VMRA HPTEs on the next KVM_RUN of any vcpu.)
+

5. The kvm_run structure
------------------------

Attachment: pgp00000.pgp
Description: PGP signature