<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/arch/powerpc/kvm, branch linux-2.6.37.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-2.6.37.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-2.6.37.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2010-11-05T16:42:29Z</updated>
<entry>
<title>KVM: PPC: BookE: Load the lower half of MSR</title>
<updated>2010-11-05T16:42:29Z</updated>
<author>
<name>Scott Wood</name>
</author>
<published>2010-09-30T19:31:27Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=df8940eadf011db2d4bedecf6eb659d44494edb3'/>
<id>urn:sha1:df8940eadf011db2d4bedecf6eb659d44494edb3</id>
<content type='text'>
This was preventing the guest from setting any bits in the
hardware MSR which aren't forced on, such as MSR[SPE].

Signed-off-by: Scott Wood &lt;scottwood@freescale.com&gt;
Signed-off-by: Alexander Graf &lt;agraf@suse.de&gt;
</content>
</entry>
<entry>
<title>KVM: PPC: BookE: fix sleep with interrupts disabled</title>
<updated>2010-11-05T16:42:28Z</updated>
<author>
<name>Scott Wood</name>
</author>
<published>2010-09-30T19:28:50Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=bb59e9748f9bc95212c7fe21468ba184938c48cb'/>
<id>urn:sha1:bb59e9748f9bc95212c7fe21468ba184938c48cb</id>
<content type='text'>
It is not legal to call mutex_lock() with interrupts disabled.
This will assert with debug checks enabled.

If there's a real need to disable interrupts here, it could be done
after the mutex is acquired -- but I don't see why it's needed at all.

Signed-off-by: Scott Wood &lt;scottwood@freescale.com&gt;
Reviewed-by: Christian Ehrhardt &lt;ehrhardt@linux.vnet.ibm.com&gt;
Signed-off-by: Alexander Graf &lt;agraf@suse.de&gt;
</content>
</entry>
<entry>
<title>KVM: PPC: e500: Call kvm_vcpu_uninit() before kvmppc_e500_tlb_uninit().</title>
<updated>2010-11-05T16:42:28Z</updated>
<author>
<name>Scott Wood</name>
</author>
<published>2010-10-05T19:22:41Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=f22e2f049d4643ed3c2d498ca50f894ace87962b'/>
<id>urn:sha1:f22e2f049d4643ed3c2d498ca50f894ace87962b</id>
<content type='text'>
The VCPU uninit calls some TLB functions, and the TLB uninit function
frees the memory used by them.

Signed-off-by: Scott Wood &lt;scottwood@freescale.com&gt;
Acked-by: Liu Yu &lt;yu.liu@freescale.com&gt;
Signed-off-by: Alexander Graf &lt;agraf@suse.de&gt;
</content>
</entry>
<entry>
<title>KVM: PPC: fix information leak to userland</title>
<updated>2010-11-05T16:42:26Z</updated>
<author>
<name>Vasiliy Kulikov</name>
</author>
<published>2010-10-30T09:04:24Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=d8cdddcd645766cd4d80fa222226ae6ebfb706af'/>
<id>urn:sha1:d8cdddcd645766cd4d80fa222226ae6ebfb706af</id>
<content type='text'>
Structure kvm_ppc_pvinfo is copied to userland with flags and
pad fields unitialized.  It leads to leaking of contents of
kernel stack memory.

Signed-off-by: Vasiliy Kulikov &lt;segooon@gmail.com&gt;
Signed-off-by: Marcelo Tosatti &lt;mtosatti@redhat.com&gt;
</content>
</entry>
<entry>
<title>Merge branch 'kvm-updates/2.6.37' of git://git.kernel.org/pub/scm/virt/kvm/kvm</title>
<updated>2010-10-24T19:47:25Z</updated>
<author>
<name>Linus Torvalds</name>
</author>
<published>2010-10-24T19:47:25Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=1765a1fe5d6f82c0eceb1ad10594cfc83759b6d0'/>
<id>urn:sha1:1765a1fe5d6f82c0eceb1ad10594cfc83759b6d0</id>
<content type='text'>
* 'kvm-updates/2.6.37' of git://git.kernel.org/pub/scm/virt/kvm/kvm: (321 commits)
  KVM: Drop CONFIG_DMAR dependency around kvm_iommu_map_pages
  KVM: Fix signature of kvm_iommu_map_pages stub
  KVM: MCE: Send SRAR SIGBUS directly
  KVM: MCE: Add MCG_SER_P into KVM_MCE_CAP_SUPPORTED
  KVM: fix typo in copyright notice
  KVM: Disable interrupts around get_kernel_ns()
  KVM: MMU: Avoid sign extension in mmu_alloc_direct_roots() pae root address
  KVM: MMU: move access code parsing to FNAME(walk_addr) function
  KVM: MMU: audit: check whether have unsync sps after root sync
  KVM: MMU: audit: introduce audit_printk to cleanup audit code
  KVM: MMU: audit: unregister audit tracepoints before module unloaded
  KVM: MMU: audit: fix vcpu's spte walking
  KVM: MMU: set access bit for direct mapping
  KVM: MMU: cleanup for error mask set while walk guest page table
  KVM: MMU: update 'root_hpa' out of loop in PAE shadow path
  KVM: x86 emulator: Eliminate compilation warning in x86_decode_insn()
  KVM: x86: Fix constant type in kvm_get_time_scale
  KVM: VMX: Add AX to list of registers clobbered by guest switch
  KVM guest: Move a printk that's using the clock before it's ready
  KVM: x86: TSC catchup mode
  ...
</content>
</entry>
<entry>
<title>KVM: PPC: Fix compile error in e500_tlb.c</title>
<updated>2010-10-24T08:52:22Z</updated>
<author>
<name>Alexander Graf</name>
</author>
<published>2010-08-31T01:45:39Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=344941beb9926418663e171a347d1a31d727fe45'/>
<id>urn:sha1:344941beb9926418663e171a347d1a31d727fe45</id>
<content type='text'>
The e500_tlb.c file didn't compile for me due to the following error:

arch/powerpc/kvm/e500_tlb.c: In function ‘kvmppc_e500_shadow_map’:
arch/powerpc/kvm/e500_tlb.c:300: error: format ‘%lx’ expects type ‘long unsigned int’, but argument 2 has type ‘gfn_t’

So let's explicitly cast the argument to make printk happy.

Signed-off-by: Alexander Graf &lt;agraf@suse.de&gt;
</content>
</entry>
<entry>
<title>KVM: PPC: e500_tlb: Fix a minor copy-paste tracing bug</title>
<updated>2010-10-24T08:52:21Z</updated>
<author>
<name>Kyle Moffett</name>
</author>
<published>2010-08-30T15:38:39Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=21e537ba149be99c4d31a04949ca6e0770379662'/>
<id>urn:sha1:21e537ba149be99c4d31a04949ca6e0770379662</id>
<content type='text'>
The kvmppc_e500_stlbe_invalidate() function was trying to pass too many
parameters to trace_kvm_stlb_inval().  This appears to be a bad
copy-paste from a call to trace_kvm_stlb_write().

Signed-off-by: Kyle Moffett &lt;Kyle.D.Moffett@boeing.com&gt;
Signed-off-by: Alexander Graf &lt;agraf@suse.de&gt;
</content>
</entry>
<entry>
<title>KVM: PPC: Implement level interrupts for BookE</title>
<updated>2010-10-24T08:52:20Z</updated>
<author>
<name>Alexander Graf</name>
</author>
<published>2010-08-30T12:03:24Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=c5335f17651de5075313524ccc3881527268966f'/>
<id>urn:sha1:c5335f17651de5075313524ccc3881527268966f</id>
<content type='text'>
BookE also wants to support level based interrupts, so let's implement
all the necessary logic there. We need to trick a bit here because the
irqprios are 1:1 assigned to architecture defined values. But since there
is some space left there, we can just pick a random one and move it later
on - it's internal anyways.

Signed-off-by: Alexander Graf &lt;agraf@suse.de&gt;
</content>
</entry>
<entry>
<title>KVM: PPC: Expose level based interrupt cap</title>
<updated>2010-10-24T08:52:19Z</updated>
<author>
<name>Alexander Graf</name>
</author>
<published>2010-08-30T11:50:45Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=7b4203e8cb5c5d9bc49da62b7a6fa4ba876a1b3f'/>
<id>urn:sha1:7b4203e8cb5c5d9bc49da62b7a6fa4ba876a1b3f</id>
<content type='text'>
Now that we have all the level interrupt magic in place, let's
expose the capability to user space, so it can make use of it!

Signed-off-by: Alexander Graf &lt;agraf@suse.de&gt;
</content>
</entry>
<entry>
<title>KVM: PPC: Implement Level interrupts on Book3S</title>
<updated>2010-10-24T08:52:19Z</updated>
<author>
<name>Alexander Graf</name>
</author>
<published>2010-08-30T08:44:15Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=17bd158006a33615270f9dba15c62f49bd447435'/>
<id>urn:sha1:17bd158006a33615270f9dba15c62f49bd447435</id>
<content type='text'>
The current interrupt logic is just completely broken. We get a notification
from user space, telling us that an interrupt is there. But then user space
expects us that we just acknowledge an interrupt once we deliver it to the
guest.

This is not how real hardware works though. On real hardware, the interrupt
controller pulls the external interrupt line until it gets notified that the
interrupt was received.

So in reality we have two events: pulling and letting go of the interrupt line.

To maintain backwards compatibility, I added a new request for the pulling
part. The letting go part was implemented earlier already.

With this in place, we can now finally start guests that do not randomly stall
and stop to work at random times.

This patch implements above logic for Book3S.

Signed-off-by: Alexander Graf &lt;agraf@suse.de&gt;
</content>
</entry>
</feed>
