<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/virt/kvm/kvm_main.c, branch linux-3.8.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-3.8.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-3.8.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2013-04-25T19:51:11Z</updated>
<entry>
<title>KVM: Allow cross page reads and writes from cached translations.</title>
<updated>2013-04-25T19:51:11Z</updated>
<author>
<name>Andrew Honig</name>
</author>
<published>2013-03-29T16:35:21Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=cdbaff4e7c7d4730d37aa1da8c00b37bbbadbf23'/>
<id>urn:sha1:cdbaff4e7c7d4730d37aa1da8c00b37bbbadbf23</id>
<content type='text'>
commit 8f964525a121f2ff2df948dac908dcc65be21b5b upstream.

This patch adds support for kvm_gfn_to_hva_cache_init functions for
reads and writes that will cross a page.  If the range falls within
the same memslot, then this will be a fast operation.  If the range
is split between two memslots, then the slower kvm_read_guest and
kvm_write_guest are used.

Tested: Test against kvm_clock unit tests.

Signed-off-by: Andrew Honig &lt;ahonig@google.com&gt;
Signed-off-by: Gleb Natapov &lt;gleb@redhat.com&gt;
Cc: Ben Hutchings &lt;ben@decadent.org.uk&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>KVM: Fix user memslot overlap check</title>
<updated>2012-11-30T01:30:32Z</updated>
<author>
<name>Alex Williamson</name>
</author>
<published>2012-11-29T21:07:59Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=5419369ed6bd4cf711fdda5e52a5999b940413f5'/>
<id>urn:sha1:5419369ed6bd4cf711fdda5e52a5999b940413f5</id>
<content type='text'>
Prior to memory slot sorting this loop compared all of the user memory
slots for overlap with new entries.  With memory slot sorting, we're
just checking some number of entries in the array that may or may not
be user slots.  Instead, walk all the slots with kvm_for_each_memslot,
which has the added benefit of terminating early when we hit the first
empty slot, and skip comparison to private slots.

Cc: stable@vger.kernel.org
Signed-off-by: Alex Williamson &lt;alex.williamson@redhat.com&gt;
Signed-off-by: Marcelo Tosatti &lt;mtosatti@redhat.com&gt;
</content>
</entry>
<entry>
<title>KVM: x86: add kvm_arch_vcpu_postcreate callback, move TSC initialization</title>
<updated>2012-11-28T01:29:14Z</updated>
<author>
<name>Marcelo Tosatti</name>
</author>
<published>2012-11-28T01:29:02Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=42897d866b120547777ae1fd316680ec53356d9c'/>
<id>urn:sha1:42897d866b120547777ae1fd316680ec53356d9c</id>
<content type='text'>
TSC initialization will soon make use of online_vcpus.

Signed-off-by: Marcelo Tosatti &lt;mtosatti@redhat.com&gt;
</content>
</entry>
<entry>
<title>KVM: x86: implement PVCLOCK_TSC_STABLE_BIT pvclock flag</title>
<updated>2012-11-28T01:29:13Z</updated>
<author>
<name>Marcelo Tosatti</name>
</author>
<published>2012-11-28T01:29:01Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=d828199e84447795c6669ff0e6c6d55eb9beeff6'/>
<id>urn:sha1:d828199e84447795c6669ff0e6c6d55eb9beeff6</id>
<content type='text'>
KVM added a global variable to guarantee monotonicity in the guest.
One of the reasons for that is that the time between

	1. ktime_get_ts(&amp;timespec);
	2. rdtscll(tsc);

Is variable. That is, given a host with stable TSC, suppose that
two VCPUs read the same time via ktime_get_ts() above.

The time required to execute 2. is not the same on those two instances
executing in different VCPUS (cache misses, interrupts...).

If the TSC value that is used by the host to interpolate when
calculating the monotonic time is the same value used to calculate
the tsc_timestamp value stored in the pvclock data structure, and
a single &lt;system_timestamp, tsc_timestamp&gt; tuple is visible to all
vcpus simultaneously, this problem disappears. See comment on top
of pvclock_update_vm_gtod_copy for details.

Monotonicity is then guaranteed by synchronicity of the host TSCs
and guest TSCs.

Set TSC stable pvclock flag in that case, allowing the guest to read
clock from userspace.

Signed-off-by: Marcelo Tosatti &lt;mtosatti@redhat.com&gt;
</content>
</entry>
<entry>
<title>KVM: remove unnecessary return value check</title>
<updated>2012-11-14T00:14:29Z</updated>
<author>
<name>Guo Chao</name>
</author>
<published>2012-11-02T10:33:23Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=807f12e57c9783458b8c07f63eff3c3e1df8ab5d'/>
<id>urn:sha1:807f12e57c9783458b8c07f63eff3c3e1df8ab5d</id>
<content type='text'>
No need to check return value before breaking switch.

Signed-off-by: Guo Chao &lt;yan@linux.vnet.ibm.com&gt;
Signed-off-by: Marcelo Tosatti &lt;mtosatti@redhat.com&gt;
</content>
</entry>
<entry>
<title>KVM: do not kfree error pointer</title>
<updated>2012-11-14T00:14:28Z</updated>
<author>
<name>Guo Chao</name>
</author>
<published>2012-11-02T10:33:21Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=18595411a7146330ec19adf0b9db8e6736c84a4e'/>
<id>urn:sha1:18595411a7146330ec19adf0b9db8e6736c84a4e</id>
<content type='text'>
We should avoid kfree()ing error pointer in kvm_vcpu_ioctl() and
kvm_arch_vcpu_ioctl().

Signed-off-by: Guo Chao &lt;yan@linux.vnet.ibm.com&gt;
Signed-off-by: Marcelo Tosatti &lt;mtosatti@redhat.com&gt;
</content>
</entry>
<entry>
<title>KVM: do not treat noslot pfn as a error pfn</title>
<updated>2012-10-29T22:31:04Z</updated>
<author>
<name>Xiao Guangrong</name>
</author>
<published>2012-10-16T12:10:59Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=81c52c56e2b43589091ee29038bcf793d3f184ab'/>
<id>urn:sha1:81c52c56e2b43589091ee29038bcf793d3f184ab</id>
<content type='text'>
This patch filters noslot pfn out from error pfns based on Marcelo comment:
noslot pfn is not a error pfn

After this patch,
- is_noslot_pfn indicates that the gfn is not in slot
- is_error_pfn indicates that the gfn is in slot but the error is occurred
  when translate the gfn to pfn
- is_error_noslot_pfn indicates that the pfn either it is error pfns or it
  is noslot pfn
And is_invalid_pfn can be removed, it makes the code more clean

Signed-off-by: Xiao Guangrong &lt;xiaoguangrong@linux.vnet.ibm.com&gt;
Signed-off-by: Marcelo Tosatti &lt;mtosatti@redhat.com&gt;
</content>
</entry>
<entry>
<title>Merge tag 'kvm-3.7-2' of git://git.kernel.org/pub/scm/virt/kvm/kvm</title>
<updated>2012-10-24T01:08:42Z</updated>
<author>
<name>Linus Torvalds</name>
</author>
<published>2012-10-24T01:08:42Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=3d0ceac129f3ea0b125289055a3aa7519d38df77'/>
<id>urn:sha1:3d0ceac129f3ea0b125289055a3aa7519d38df77</id>
<content type='text'>
Pull kvm fixes from Avi Kivity:
 "KVM updates for 3.7-rc2"

* tag 'kvm-3.7-2' of git://git.kernel.org/pub/scm/virt/kvm/kvm:
  KVM guest: exit idleness when handling KVM_PV_REASON_PAGE_NOT_PRESENT
  KVM: apic: fix LDR calculation in x2apic mode
  KVM: MMU: fix release noslot pfn
</content>
</entry>
<entry>
<title>KVM: MMU: fix release noslot pfn</title>
<updated>2012-10-22T16:03:25Z</updated>
<author>
<name>Xiao Guangrong</name>
</author>
<published>2012-10-16T12:07:03Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=f3ac1a4b667eeffcedf779f45529c95d66ddc71a'/>
<id>urn:sha1:f3ac1a4b667eeffcedf779f45529c95d66ddc71a</id>
<content type='text'>
We can not directly call kvm_release_pfn_clean to release the pfn
since we can meet noslot pfn which is used to cache mmio info into
spte

Signed-off-by: Xiao Guangrong &lt;xiaoguangrong@linux.vnet.ibm.com&gt;
Cc: stable@vger.kernel.org
Signed-off-by: Avi Kivity &lt;avi@redhat.com&gt;
</content>
</entry>
<entry>
<title>kvm: replace test_and_set_bit_le() in mark_page_dirty_in_slot() with set_bit_le()</title>
<updated>2012-10-05T18:04:56Z</updated>
<author>
<name>Takuya Yoshikawa</name>
</author>
<published>2012-10-05T00:13:12Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=b74ca3b3fd0fac08167ff96287cece56e8ca6f4d'/>
<id>urn:sha1:b74ca3b3fd0fac08167ff96287cece56e8ca6f4d</id>
<content type='text'>
Now that we have defined generic set_bit_le() we do not need to use
test_and_set_bit_le() for atomically setting a bit.

Signed-off-by: Takuya Yoshikawa &lt;yoshikawa.takuya@oss.ntt.co.jp&gt;
Cc: Avi Kivity &lt;avi@redhat.com&gt;
Cc: Marcelo Tosatti &lt;mtosatti@redhat.com&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
</feed>
