<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/arch/arm64/kvm, branch linux-3.11.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-3.11.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-3.11.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2013-08-09T12:19:28Z</updated>
<entry>
<title>arm64: KVM: add missing dsb before invalidating Stage-2 TLBs</title>
<updated>2013-08-09T12:19:28Z</updated>
<author>
<name>Marc Zyngier</name>
</author>
<published>2013-06-11T17:05:25Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=f142e5eeb724cfbedd203b32b3b542d78dbe2545'/>
<id>urn:sha1:f142e5eeb724cfbedd203b32b3b542d78dbe2545</id>
<content type='text'>
When performing a Stage-2 TLB invalidation, it is necessary to
make sure the write to the page tables is observable by all CPUs.

For this purpose, add dsb instructions to __kvm_tlb_flush_vmid_ipa
and __kvm_flush_vm_context before doing the TLB invalidation itself.

Signed-off-by: Marc Zyngier &lt;marc.zyngier@arm.com&gt;
</content>
</entry>
<entry>
<title>arm64: KVM: perform save/restore of PAR_EL1</title>
<updated>2013-08-09T12:19:28Z</updated>
<author>
<name>Marc Zyngier</name>
</author>
<published>2013-06-07T10:02:34Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=1bbd80549810637b7381ab0649ba7c7d62f1342a'/>
<id>urn:sha1:1bbd80549810637b7381ab0649ba7c7d62f1342a</id>
<content type='text'>
Not saving PAR_EL1 is an unfortunate oversight. If the guest
performs an AT* operation and gets scheduled out before reading
the result of the translation from PAREL1, it could become
corrupted by another guest or the host.

Saving this register is made slightly more complicated as KVM also
uses it on the permission fault handling path, leading to an ugly
"stash and restore" sequence. Fortunately, this is already a slow
path so we don't really care. Also, Linux doesn't do any AT*
operation, so Linux guests are not impacted by this bug.

Signed-off-by: Marc Zyngier &lt;marc.zyngier@arm.com&gt;
</content>
</entry>
<entry>
<title>arm64: KVM: Kconfig integration</title>
<updated>2013-07-04T12:40:26Z</updated>
<author>
<name>Marc Zyngier</name>
</author>
<published>2013-07-04T12:34:32Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=c3eb5b14449a0949e9764d39374a2ea63faae14f'/>
<id>urn:sha1:c3eb5b14449a0949e9764d39374a2ea63faae14f</id>
<content type='text'>
Finally plug KVM/arm64 into the config system, making it possible
to enable KVM support on AArch64 CPUs.

Signed-off-by: Marc Zyngier &lt;marc.zyngier@arm.com&gt;
Signed-off-by: Paolo Bonzini &lt;pbonzini@redhat.com&gt;
</content>
</entry>
<entry>
<title>arm64: KVM: enable initialization of a 32bit vcpu</title>
<updated>2013-06-12T15:42:18Z</updated>
<author>
<name>Marc Zyngier</name>
</author>
<published>2013-02-07T10:46:46Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=0d854a60b1d7d39a37b25dd28f63cfa0df637b91'/>
<id>urn:sha1:0d854a60b1d7d39a37b25dd28f63cfa0df637b91</id>
<content type='text'>
Wire the init of a 32bit vcpu by allowing 32bit modes in pstate,
and providing sensible defaults out of reset state.

This feature is of course conditioned by the presence of 32bit
capability on the physical CPU, and is checked by the KVM_CAP_ARM_EL1_32BIT
capability.

Reviewed-by: Catalin Marinas &lt;catalin.marinas@arm.com&gt;
Signed-off-by: Marc Zyngier &lt;marc.zyngier@arm.com&gt;
</content>
</entry>
<entry>
<title>arm64: KVM: 32bit guest fault injection</title>
<updated>2013-06-12T15:42:18Z</updated>
<author>
<name>Marc Zyngier</name>
</author>
<published>2013-02-06T11:29:35Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=e82e030556e42e823e174e0c3bd97988d1a09d1f'/>
<id>urn:sha1:e82e030556e42e823e174e0c3bd97988d1a09d1f</id>
<content type='text'>
Add fault injection capability for 32bit guests.

Reviewed-by: Christopher Covington &lt;cov@codeaurora.org&gt;
Reviewed-by: Catalin Marinas &lt;catalin.marinas@arm.com&gt;
Signed-off-by: Marc Zyngier &lt;marc.zyngier@arm.com&gt;
</content>
</entry>
<entry>
<title>arm64: KVM: 32bit specific register world switch</title>
<updated>2013-06-12T15:42:17Z</updated>
<author>
<name>Marc Zyngier</name>
</author>
<published>2013-02-07T10:52:10Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=b4afad06c19e3489767532f86ff453a1d1e28b8c'/>
<id>urn:sha1:b4afad06c19e3489767532f86ff453a1d1e28b8c</id>
<content type='text'>
Allow registers specific to 32bit guests to be saved/restored
during the world switch.

Reviewed-by: Christopher Covington &lt;cov@codeaurora.org&gt;
Reviewed-by: Catalin Marinas &lt;catalin.marinas@arm.com&gt;
Signed-off-by: Marc Zyngier &lt;marc.zyngier@arm.com&gt;
</content>
</entry>
<entry>
<title>arm64: KVM: CPU specific 32bit coprocessor access</title>
<updated>2013-06-12T15:42:16Z</updated>
<author>
<name>Marc Zyngier</name>
</author>
<published>2013-02-07T10:50:18Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=06c7654d2fb8bac7b1af4340ad59434a5d89b86a'/>
<id>urn:sha1:06c7654d2fb8bac7b1af4340ad59434a5d89b86a</id>
<content type='text'>
Enable handling of CPU specific 32bit coprocessor access. Not much
here either.

Reviewed-by: Christopher Covington &lt;cov@codeaurora.org&gt;
Reviewed-by: Catalin Marinas &lt;catalin.marinas@arm.com&gt;
Signed-off-by: Marc Zyngier &lt;marc.zyngier@arm.com&gt;
</content>
</entry>
<entry>
<title>arm64: KVM: 32bit handling of coprocessor traps</title>
<updated>2013-06-12T15:42:16Z</updated>
<author>
<name>Marc Zyngier</name>
</author>
<published>2013-02-07T10:32:33Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=62a89c44954f09072bf07a714c8f68bda14ab87e'/>
<id>urn:sha1:62a89c44954f09072bf07a714c8f68bda14ab87e</id>
<content type='text'>
Provide the necessary infrastructure to trap coprocessor accesses that
occur when running 32bit guests.

Also wire SMC and HVC trapped in 32bit mode while were at it.

Reviewed-by: Christopher Covington &lt;cov@codeaurora.org&gt;
Reviewed-by: Catalin Marinas &lt;catalin.marinas@arm.com&gt;
Signed-off-by: Marc Zyngier &lt;marc.zyngier@arm.com&gt;
</content>
</entry>
<entry>
<title>arm64: KVM: 32bit conditional execution emulation</title>
<updated>2013-06-12T15:42:15Z</updated>
<author>
<name>Marc Zyngier</name>
</author>
<published>2013-02-06T19:54:04Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=27b190bd9fbfee34536cb858f0b5924d294aac38'/>
<id>urn:sha1:27b190bd9fbfee34536cb858f0b5924d294aac38</id>
<content type='text'>
As conditional instructions can trap on AArch32, add the thinest
possible emulation layer to keep 32bit guests happy.

Reviewed-by: Christopher Covington &lt;cov@codeaurora.org&gt;
Reviewed-by: Catalin Marinas &lt;catalin.marinas@arm.com&gt;
Signed-off-by: Marc Zyngier &lt;marc.zyngier@arm.com&gt;
</content>
</entry>
<entry>
<title>arm64: KVM: 32bit GP register access</title>
<updated>2013-06-12T15:42:14Z</updated>
<author>
<name>Marc Zyngier</name>
</author>
<published>2013-02-06T19:40:29Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=b547631fc64e249a3c507e6ce854642507fa7c1c'/>
<id>urn:sha1:b547631fc64e249a3c507e6ce854642507fa7c1c</id>
<content type='text'>
Allow access to the 32bit register file through the usual API.

Reviewed-by: Christopher Covington &lt;cov@codeaurora.org&gt;
Reviewed-by: Catalin Marinas &lt;catalin.marinas@arm.com&gt;
Signed-off-by: Marc Zyngier &lt;marc.zyngier@arm.com&gt;
</content>
</entry>
</feed>
