<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/arch/s390/kvm, branch linux-3.1.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-3.1.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-3.1.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2011-11-26T17:08:33Z</updated>
<entry>
<title>KVM: s390: Fix RUNNING flag misinterpretation</title>
<updated>2011-11-26T17:08:33Z</updated>
<author>
<name>Cornelia Huck</name>
</author>
<published>2011-11-17T10:00:41Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=57a3b9c22b828434d282b6f7a29d39a65d964b49'/>
<id>urn:sha1:57a3b9c22b828434d282b6f7a29d39a65d964b49</id>
<content type='text'>
commit 9e6dabeffd1d0ec2aa19aa076c4886067238d442 upstream.

CPUSTAT_RUNNING was implemented signifying that a vcpu is not stopped.
This is not, however, what the architecture says: RUNNING should be
set when the host is acting on the behalf of the guest operating
system.

CPUSTAT_RUNNING has been changed to be set in kvm_arch_vcpu_load()
and to be unset in kvm_arch_vcpu_put().

For signifying stopped state of a vcpu, a host-controlled bit has
been used and is set/unset basically on the reverse as the old
CPUSTAT_RUNNING bit (including pushing it down into stop handling
proper in handle_stop()).

Signed-off-by: Cornelia Huck &lt;cornelia.huck@de.ibm.com&gt;
Signed-off-by: Carsten Otte &lt;cotte@de.ibm.com&gt;
Signed-off-by: Avi Kivity &lt;avi@redhat.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>KVM: s390: check cpu_id prior to using it</title>
<updated>2011-11-11T17:43:21Z</updated>
<author>
<name>Carsten Otte</name>
</author>
<published>2011-10-18T10:27:12Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=715afafe876a366e0d71d98cdee585e0c7f64044'/>
<id>urn:sha1:715afafe876a366e0d71d98cdee585e0c7f64044</id>
<content type='text'>
commit 4d47555a80495657161a7e71ec3014ff2021e450 upstream.

We use the cpu id provided by userspace as array index here. Thus we
clearly need to check it first. Ooops.

Signed-off-by: Carsten Otte &lt;cotte@de.ibm.com&gt;
Signed-off-by: Christian Borntraeger &lt;borntraeger@de.ibm.com&gt;
Signed-off-by: Marcelo Tosatti &lt;mtosatti@redhat.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>[S390] kvm: extension capability for new address space layout</title>
<updated>2011-09-20T15:07:34Z</updated>
<author>
<name>Christian Borntraeger</name>
</author>
<published>2011-09-20T15:07:29Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=b6cf8788a3382c2000743a0e393bcc8aeb0601cb'/>
<id>urn:sha1:b6cf8788a3382c2000743a0e393bcc8aeb0601cb</id>
<content type='text'>
598841ca9919d008b520114d8a4378c4ce4e40a1 ([S390] use gmap address
spaces for kvm guest images) changed kvm on s390 to use a separate
address space for kvm guests. We can now put KVM guests anywhere
in the user address mode with a size up to 8PB - as long as the
memory is 1MB-aligned. This change was done without KVM extension
capability bit.
The change was added after 3.0, but we still have a chance to add
a feature bit before 3.1 (keeping the releases in a sane state).
We use number 71 to avoid collisions with other pending kvm patches
as requested by Alexander Graf.

Signed-off-by: Christian Borntraeger &lt;borntraeger@de.ibm.com&gt;
Acked-by: Avi Kivity &lt;avi@redhat.com&gt;
Cc: Alexander Graf &lt;agraf@suse.de&gt;
Signed-off-by: Heiko Carstens &lt;heiko.carstens@de.ibm.com&gt;
</content>
</entry>
<entry>
<title>[S390] kvm: fix address mode switching</title>
<updated>2011-09-20T15:07:34Z</updated>
<author>
<name>Christian Borntraeger</name>
</author>
<published>2011-09-20T15:07:28Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=480e5926ce3bb61ec229be2dab08bdce8abb8d2e'/>
<id>urn:sha1:480e5926ce3bb61ec229be2dab08bdce8abb8d2e</id>
<content type='text'>
598841ca9919d008b520114d8a4378c4ce4e40a1 ([S390] use gmap address
spaces for kvm guest images) changed kvm to use a separate address
space for kvm guests. This address space was switched in __vcpu_run
In some cases (preemption, page fault) there is the possibility that
this address space switch is lost.
The typical symptom was a huge amount of validity intercepts or
random guest addressing exceptions.
Fix this by doing the switch in sie_loop and sie_exit and saving the
address space in the gmap structure itself. Also use the preempt
notifier.

Signed-off-by: Christian Borntraeger &lt;borntraeger@de.ibm.com&gt;
Acked-by: Avi Kivity &lt;avi@redhat.com&gt;
Signed-off-by: Heiko Carstens &lt;heiko.carstens@de.ibm.com&gt;
</content>
</entry>
<entry>
<title>[S390] kvm: make sigp emerg smp capable</title>
<updated>2011-07-24T08:48:22Z</updated>
<author>
<name>Christian Ehrhardt</name>
</author>
<published>2011-07-24T08:48:31Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=8bb3a2ebcf2a406a60d04f5a8756ea936b7f0bf3'/>
<id>urn:sha1:8bb3a2ebcf2a406a60d04f5a8756ea936b7f0bf3</id>
<content type='text'>
SIGP emerg needs to pass the source vpu adress into __LC_CPU_ADDRESS of the
target guest.

Signed-off-by: Christian Ehrhardt &lt;ehrhardt@linux.vnet.ibm.com&gt;
Signed-off-by: Martin Schwidefsky &lt;schwidefsky@de.ibm.com&gt;
</content>
</entry>
<entry>
<title>[S390] remove kvm mmu reload on s390</title>
<updated>2011-07-24T08:48:21Z</updated>
<author>
<name>Carsten Otte</name>
</author>
<published>2011-07-24T08:48:23Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=f7850c92884b40915001e332a0a33ed4f10158e8'/>
<id>urn:sha1:f7850c92884b40915001e332a0a33ed4f10158e8</id>
<content type='text'>
This patch removes the mmu reload logic for kvm on s390. Via Martin's
new gmap interface, we can safely add or remove memory slots while
guest CPUs are in-flight. Thus, the mmu reload logic is not needed
anymore.

Signed-off-by: Carsten Otte &lt;cotte@de.ibm.com&gt;
Signed-off-by: Martin Schwidefsky &lt;schwidefsky@de.ibm.com&gt;
</content>
</entry>
<entry>
<title>[S390] Use gmap translation for accessing guest memory</title>
<updated>2011-07-24T08:48:21Z</updated>
<author>
<name>Carsten Otte</name>
</author>
<published>2011-07-24T08:48:22Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=092670cd90eb88c33661de21f1b4ee08d2597171'/>
<id>urn:sha1:092670cd90eb88c33661de21f1b4ee08d2597171</id>
<content type='text'>
This patch removes kvm-s390 internal assumption of a linear mapping
of guest address space to user space. Previously, guest memory was
translated to user addresses using a fixed offset (gmsor). The new
code uses gmap_fault to resolve guest addresses.

Signed-off-by: Carsten Otte &lt;cotte@de.ibm.com&gt;
Signed-off-by: Martin Schwidefsky &lt;schwidefsky@de.ibm.com&gt;
</content>
</entry>
<entry>
<title>[S390] use gmap address spaces for kvm guest images</title>
<updated>2011-07-24T08:48:21Z</updated>
<author>
<name>Carsten Otte</name>
</author>
<published>2011-07-24T08:48:21Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=598841ca9919d008b520114d8a4378c4ce4e40a1'/>
<id>urn:sha1:598841ca9919d008b520114d8a4378c4ce4e40a1</id>
<content type='text'>
This patch switches kvm from using (Qemu's) user address space to
Martin's gmap address space. This way QEMU does not have to use a
linker script in order to fit large guests at low addresses in its
address space.

Signed-off-by: Carsten Otte &lt;cotte@de.ibm.com&gt;
Signed-off-by: Martin Schwidefsky &lt;schwidefsky@de.ibm.com&gt;
</content>
</entry>
<entry>
<title>[S390] move sie code to entry.S</title>
<updated>2011-07-24T08:48:21Z</updated>
<author>
<name>Martin Schwidefsky</name>
</author>
<published>2011-07-24T08:48:18Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=603d1a50acf252621a3598618b018b8123aaba64'/>
<id>urn:sha1:603d1a50acf252621a3598618b018b8123aaba64</id>
<content type='text'>
The entry to / exit from sie has subtle dependencies to the first level
interrupt handler. Move the sie assembler code to entry64.S and replace
the SIE_HOOK callback with a test and the new _TIF_SIE bit.
In addition this patch fixes several problems in regard to the check for
the_TIF_EXIT_SIE bits. The old code checked the TIF bits before executing
the interrupt handler and it only modified the instruction address if it
pointed directly to the sie instruction. In both cases it could miss
a TIF bit that normally would cause an exit from the guest and would
reenter the guest context.

Signed-off-by: Martin Schwidefsky &lt;schwidefsky@de.ibm.com&gt;
</content>
</entry>
<entry>
<title>[S390] kvm: handle tprot intercepts</title>
<updated>2011-07-24T08:48:20Z</updated>
<author>
<name>Christian Borntraeger</name>
</author>
<published>2011-07-24T08:48:17Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=bb25b9ba3e33e941dc48048d0a784e6a05e5648a'/>
<id>urn:sha1:bb25b9ba3e33e941dc48048d0a784e6a05e5648a</id>
<content type='text'>
When running a kvm guest we can get intercepts for tprot, if the host
page table is read-only or not populated. This patch implements the
most common case (linux memory detection).
This also allows host copy on write for guest memory on newer systems.

Signed-off-by: Christian Borntraeger &lt;borntraeger@de.ibm.com&gt;
Signed-off-by: Martin Schwidefsky &lt;schwidefsky@de.ibm.com&gt;
</content>
</entry>
</feed>
