<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/arch/arm/kvm/hyp, branch linux-4.8.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-4.8.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-4.8.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2016-02-29T18:34:19Z</updated>
<entry>
<title>ARM: KVM: Use common version of timer-sr.c</title>
<updated>2016-02-29T18:34:19Z</updated>
<author>
<name>Marc Zyngier</name>
</author>
<published>2016-01-28T14:48:42Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=68130cb5db09cb8a285a59f70ac72d2bfa8685fd'/>
<id>urn:sha1:68130cb5db09cb8a285a59f70ac72d2bfa8685fd</id>
<content type='text'>
Using the common HYP timer code is a bit more tricky, since we
use system register names. Nothing a set of macros cannot
work around...

Acked-by: Christoffer Dall &lt;christoffer.dall@linaro.org&gt;
Signed-off-by: Marc Zyngier &lt;marc.zyngier@arm.com&gt;
</content>
</entry>
<entry>
<title>ARM: KVM: Use common version of vgic-v2-sr.c</title>
<updated>2016-02-29T18:34:19Z</updated>
<author>
<name>Marc Zyngier</name>
</author>
<published>2016-01-28T14:33:05Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=b5fa5d3e628bd301b89937ee4f7814297d8e2e31'/>
<id>urn:sha1:b5fa5d3e628bd301b89937ee4f7814297d8e2e31</id>
<content type='text'>
No need to keep our own private version, the common one is
strictly identical.

Acked-by: Christoffer Dall &lt;christoffer.dall@linaro.org&gt;
Signed-off-by: Marc Zyngier &lt;marc.zyngier@arm.com&gt;
</content>
</entry>
<entry>
<title>ARM: KVM: Move kvm/hyp/hyp.h to include/asm/kvm_hyp.h</title>
<updated>2016-02-29T18:34:18Z</updated>
<author>
<name>Marc Zyngier</name>
</author>
<published>2016-01-28T14:31:37Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=f1c9cad7c508f59fedd9f77eb36e5859e11ce5ab'/>
<id>urn:sha1:f1c9cad7c508f59fedd9f77eb36e5859e11ce5ab</id>
<content type='text'>
In order to be able to use the code located in virt/kvm/arm/hyp,
we need to make the global hyp.h file accessible from include/asm,
similar to what we did for arm64.

Acked-by: Christoffer Dall &lt;christoffer.dall@linaro.org&gt;
Signed-off-by: Marc Zyngier &lt;marc.zyngier@arm.com&gt;
</content>
</entry>
<entry>
<title>ARM: KVM: Remove __weak attributes</title>
<updated>2016-02-29T18:34:15Z</updated>
<author>
<name>Marc Zyngier</name>
</author>
<published>2016-01-06T09:32:23Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=fa85e25dad0f3f4e7ff2c58a914dcfe53210f680'/>
<id>urn:sha1:fa85e25dad0f3f4e7ff2c58a914dcfe53210f680</id>
<content type='text'>
Now that the old code is long gone, we can remove all the weak
attributes, as there is only one version of the code.

Acked-by: Christoffer Dall &lt;christoffer.dall@linaro.org&gt;
Signed-off-by: Marc Zyngier &lt;marc.zyngier@arm.com&gt;
</content>
</entry>
<entry>
<title>ARM: KVM: Switch to C-based stage2 init</title>
<updated>2016-02-29T18:34:14Z</updated>
<author>
<name>Marc Zyngier</name>
</author>
<published>2016-02-01T19:56:31Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=d4c7688c51e57be20ca5f3dffa4c8771888a42fc'/>
<id>urn:sha1:d4c7688c51e57be20ca5f3dffa4c8771888a42fc</id>
<content type='text'>
As we now have hooks to setup VTCR from C code, let's drop the
original VTCR setup and reimplement it as part of the HYP code.

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>ARM: KVM: Add panic handling code</title>
<updated>2016-02-29T18:34:14Z</updated>
<author>
<name>Marc Zyngier</name>
</author>
<published>2016-01-06T09:12:42Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=c36b6db5f3e4c1bd21659aee8e67226352d254ae'/>
<id>urn:sha1:c36b6db5f3e4c1bd21659aee8e67226352d254ae</id>
<content type='text'>
Instead of spinning forever, let's "properly" handle any unexpected
exception ("properly" meaning "print a spat on the console and die").

This has proved useful quite a few times...

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>ARM: KVM: Add HYP mode entry code</title>
<updated>2016-02-29T18:34:14Z</updated>
<author>
<name>Marc Zyngier</name>
</author>
<published>2016-01-05T18:43:18Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=bafc6c2a22553193d1d1ce83783b7faa0924158e'/>
<id>urn:sha1:bafc6c2a22553193d1d1ce83783b7faa0924158e</id>
<content type='text'>
This part is almost entierely borrowed from the existing code, just
slightly simplifying the HYP function call (as we now save SPSR_hyp
in the world switch).

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>ARM: KVM: Add populating of fault data structure</title>
<updated>2016-02-29T18:34:14Z</updated>
<author>
<name>Marc Zyngier</name>
</author>
<published>2016-01-13T19:02:51Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=97e964371377ebf3958701b082597c2162e3df18'/>
<id>urn:sha1:97e964371377ebf3958701b082597c2162e3df18</id>
<content type='text'>
On guest exit, we must take care of populating our fault data
structure so that the host code can handle it. This includes
resolving the IPA for permission faults, which can result in
restarting the guest.

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>ARM: KVM: Add the new world switch implementation</title>
<updated>2016-02-29T18:34:14Z</updated>
<author>
<name>Marc Zyngier</name>
</author>
<published>2016-01-05T18:42:49Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=9dddc2dfa5da95fa380635d400f80767077ef936'/>
<id>urn:sha1:9dddc2dfa5da95fa380635d400f80767077ef936</id>
<content type='text'>
The new world switch implementation is modeled after the arm64 one,
calling the various save/restore functions in turn, and having as
little state as possible.

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>ARM: KVM: Add VFP lazy save/restore handler</title>
<updated>2016-02-29T18:34:14Z</updated>
<author>
<name>Marc Zyngier</name>
</author>
<published>2016-01-06T13:53:51Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=96e5e670cc681703c00eaf442c8796da6aa25ca0'/>
<id>urn:sha1:96e5e670cc681703c00eaf442c8796da6aa25ca0</id>
<content type='text'>
Similar to the arm64 version, add the code that deals with VFP traps,
re-enabling VFP, save/restoring the registers and resuming the guest.

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