<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel/linux.git/virt, branch v2.6.30</title>
<subtitle>Linux kernel stable tree (mirror)</subtitle>
<id>https://git.radix-linux.su/kernel/linux.git/atom?h=v2.6.30</id>
<link rel='self' href='https://git.radix-linux.su/kernel/linux.git/atom?h=v2.6.30'/>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/'/>
<updated>2009-06-09T13:00:28+00:00</updated>
<entry>
<title>kvm: fix kvm reboot crash when MAXSMP is used</title>
<updated>2009-06-09T13:00:28+00:00</updated>
<author>
<name>Avi Kivity</name>
<email>avi@redhat.com</email>
</author>
<published>2009-06-06T21:52:35+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=8437a617708d014d6f220df201a24960e00d57b1'/>
<id>urn:sha1:8437a617708d014d6f220df201a24960e00d57b1</id>
<content type='text'>
one system was found there is crash during reboot then kvm/MAXSMP
Sending all processes the KILL signal...                              done
Please stand by while rebooting the system...
[ 1721.856538] md: stopping all md devices.
[ 1722.852139] kvm: exiting hardware virtualization
[ 1722.854601] BUG: unable to handle kernel NULL pointer dereference at (null)
[ 1722.872219] IP: [&lt;ffffffff8102c6b6&gt;] hardware_disable+0x4c/0xb4
[ 1722.877955] PGD 0
[ 1722.880042] Oops: 0000 [#1] SMP
[ 1722.892548] last sysfs file: /sys/devices/pci0000:00/0000:00:01.0/0000:01:00.0/host0/target0:2:0/0:2:0:0/vendor
[ 1722.900977] CPU 9
[ 1722.912606] Modules linked in:
[ 1722.914226] Pid: 0, comm: swapper Not tainted 2.6.30-rc7-tip-01843-g2305324-dirty #299 ...
[ 1722.932589] RIP: 0010:[&lt;ffffffff8102c6b6&gt;]  [&lt;ffffffff8102c6b6&gt;] hardware_disable+0x4c/0xb4
[ 1722.942709] RSP: 0018:ffffc900010b6ed8  EFLAGS: 00010046
[ 1722.956121] RAX: 0000000000000000 RBX: ffffc9000e253140 RCX: 0000000000000009
[ 1722.972202] RDX: 000000000000b020 RSI: ffffc900010c3220 RDI: ffffffffffffd790
[ 1722.977399] RBP: ffffc900010b6f08 R08: 0000000000000000 R09: 0000000000000000
[ 1722.995149] R10: 00000000000004b8 R11: 966912b6c78fddbd R12: 0000000000000009
[ 1723.011551] R13: 000000000000b020 R14: 0000000000000009 R15: 0000000000000000
[ 1723.019898] FS:  0000000000000000(0000) GS:ffffc900010b3000(0000) knlGS:0000000000000000
[ 1723.034389] CS:  0010 DS: 0018 ES: 0018 CR0: 000000008005003b
[ 1723.041164] CR2: 0000000000000000 CR3: 0000000001001000 CR4: 00000000000006e0
[ 1723.056192] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
[ 1723.072546] DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400
[ 1723.080562] Process swapper (pid: 0, threadinfo ffff88107e464000, task ffff88047e5a2550)
[ 1723.096144] Stack:
[ 1723.099071]  0000000000000046 ffffc9000e253168 966912b6c78fddbd ffffc9000e253140
[ 1723.115471]  ffff880c7d4304d0 ffffc9000e253168 ffffc900010b6f28 ffffffff81011022
[ 1723.132428]  ffffc900010b6f48 966912b6c78fddbd ffffc900010b6f48 ffffffff8100b83b
[ 1723.141973] Call Trace:
[ 1723.142981]  &lt;IRQ&gt; &lt;0&gt; [&lt;ffffffff81011022&gt;] kvm_arch_hardware_disable+0x26/0x3c
[ 1723.158153]  [&lt;ffffffff8100b83b&gt;] hardware_disable+0x3f/0x55
[ 1723.172168]  [&lt;ffffffff810b95f6&gt;] generic_smp_call_function_interrupt+0x76/0x13c
[ 1723.178836]  [&lt;ffffffff8104cbea&gt;] smp_call_function_interrupt+0x3a/0x5e
[ 1723.194689]  [&lt;ffffffff81035bf3&gt;] call_function_interrupt+0x13/0x20
[ 1723.199750]  &lt;EOI&gt; &lt;0&gt; [&lt;ffffffff814ad3b4&gt;] ? acpi_idle_enter_c1+0xd3/0xf4
[ 1723.217508]  [&lt;ffffffff814ad3ae&gt;] ? acpi_idle_enter_c1+0xcd/0xf4
[ 1723.232172]  [&lt;ffffffff814ad4bc&gt;] ? acpi_idle_enter_bm+0xe7/0x2ce
[ 1723.235141]  [&lt;ffffffff81a8d93f&gt;] ? __atomic_notifier_call_chain+0x0/0xac
[ 1723.253381]  [&lt;ffffffff818c3dff&gt;] ? menu_select+0x58/0xd2
[ 1723.258179]  [&lt;ffffffff818c2c9d&gt;] ? cpuidle_idle_call+0xa4/0xf3
[ 1723.272828]  [&lt;ffffffff81034085&gt;] ? cpu_idle+0xb8/0x101
[ 1723.277085]  [&lt;ffffffff81a80163&gt;] ? start_secondary+0x1bc/0x1d7
[ 1723.293708] Code: b0 00 00 65 48 8b 04 25 28 00 00 00 48 89 45 e0 31 c0 48 8b 04 cd 30 ee 27 82 49 89 cc 49 89 d5 48 8b 04 10 48 8d b8 90 d7 ff ff &lt;48&gt; 8b 87 70 28 00 00 48 8d 98 90 d7 ff ff eb 16 e8 e9 fe ff ff
[ 1723.335524] RIP  [&lt;ffffffff8102c6b6&gt;] hardware_disable+0x4c/0xb4
[ 1723.342076]  RSP &lt;ffffc900010b6ed8&gt;
[ 1723.352021] CR2: 0000000000000000
[ 1723.354348] ---[ end trace e2aec53dae150aa1 ]---

it turns out that we need clear cpus_hardware_enabled in that case.

Reported-and-tested-by: Yinghai Lu &lt;yinghai@kernel.org&gt;
Signed-off-by: Yinghai Lu &lt;yinghai@kernel.org&gt;
Signed-off-by: Rusty Russell &lt;rusty@rustcorp.com.au&gt;
</content>
</entry>
<entry>
<title>KVM: Explicity initialize cpus_hardware_enabled</title>
<updated>2009-06-08T07:50:46+00:00</updated>
<author>
<name>Avi Kivity</name>
<email>avi@redhat.com</email>
</author>
<published>2009-06-06T09:34:39+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=a4c0364be3f43d3e17fe19270f8b3d64881606e6'/>
<id>urn:sha1:a4c0364be3f43d3e17fe19270f8b3d64881606e6</id>
<content type='text'>
Under CONFIG_MAXSMP, cpus_hardware_enabled is allocated from the heap and
not statically initialized.  This causes a crash on reboot when kvm thinks
vmx is enabled on random nonexistent cpus and accesses nonexistent percpu
lists.

Fix by explicitly clearing the variable.

Cc: stable@kernel.org
Reported-and-tested-by: Yinghai Lu &lt;yinghai@kernel.org&gt;
Signed-off-by: Avi Kivity &lt;avi@redhat.com&gt;
</content>
</entry>
<entry>
<title>KVM: Fix overlapping check for memory slots</title>
<updated>2009-04-22T10:52:09+00:00</updated>
<author>
<name>Jan Kiszka</name>
<email>jan.kiszka@web.de</email>
</author>
<published>2009-04-13T09:59:32+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=4cd481f68dde99ac416003b825c835f71e364393'/>
<id>urn:sha1:4cd481f68dde99ac416003b825c835f71e364393</id>
<content type='text'>
When checking for overlapping slots on registration of a new one, kvm
currently also considers zero-length (ie. deleted) slots and rejects
requests incorrectly. This finally denies user space from joining slots.
Fix the check by skipping deleted slots and advertise this via a
KVM_CAP_JOIN_MEMORY_REGIONS_WORKS.

Cc: stable@kernel.org
Signed-off-by: Jan Kiszka &lt;jan.kiszka@siemens.com&gt;
Signed-off-by: Avi Kivity &lt;avi@redhat.com&gt;
</content>
</entry>
<entry>
<title>KVM: MMU: Fix off-by-one calculating large page count</title>
<updated>2009-04-22T10:52:09+00:00</updated>
<author>
<name>Avi Kivity</name>
<email>avi@redhat.com</email>
</author>
<published>2009-03-29T13:31:25+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=99894a799f09cf9e28296bb16e75bd5830fd2c4e'/>
<id>urn:sha1:99894a799f09cf9e28296bb16e75bd5830fd2c4e</id>
<content type='text'>
The large page initialization code concludes there are two large pages spanned
by a slot covering 1 (small) page starting at gfn 1.  This is incorrect, and
also results in incorrect write_count initialization in some cases (base = 1,
npages = 513 for example).

Cc: stable@kernel.org
Signed-off-by: Avi Kivity &lt;avi@redhat.com&gt;
</content>
</entry>
<entry>
<title>KVM: Get support IRQ routing entry counts</title>
<updated>2009-03-24T09:03:14+00:00</updated>
<author>
<name>Sheng Yang</name>
<email>sheng@linux.intel.com</email>
</author>
<published>2009-03-16T08:33:43+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=36463146ffb7eee4582ed785a8c8be213b8ed110'/>
<id>urn:sha1:36463146ffb7eee4582ed785a8c8be213b8ed110</id>
<content type='text'>
In capability probing ioctl.

Signed-off-by: Sheng Yang &lt;sheng@linux.intel.com&gt;
Signed-off-by: Avi Kivity &lt;avi@redhat.com&gt;
</content>
</entry>
<entry>
<title>KVM: fix sparse warnings: Should it be static?</title>
<updated>2009-03-24T09:03:14+00:00</updated>
<author>
<name>Hannes Eder</name>
<email>hannes@hanneseder.net</email>
</author>
<published>2009-02-21T01:19:13+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=cded19f396bc3c9d299331709d0a9fbc6ecc148a'/>
<id>urn:sha1:cded19f396bc3c9d299331709d0a9fbc6ecc148a</id>
<content type='text'>
Impact: Make symbols static.

Fix this sparse warnings:
  arch/x86/kvm/mmu.c:992:5: warning: symbol 'mmu_pages_add' was not declared. Should it be static?
  arch/x86/kvm/mmu.c:1124:5: warning: symbol 'mmu_pages_next' was not declared. Should it be static?
  arch/x86/kvm/mmu.c:1144:6: warning: symbol 'mmu_pages_clear_parents' was not declared. Should it be static?
  arch/x86/kvm/x86.c:2037:5: warning: symbol 'kvm_read_guest_virt' was not declared. Should it be static?
  arch/x86/kvm/x86.c:2067:5: warning: symbol 'kvm_write_guest_virt' was not declared. Should it be static?
  virt/kvm/irq_comm.c:220:5: warning: symbol 'setup_routing_entry' was not declared. Should it be static?

Signed-off-by: Hannes Eder &lt;hannes@hanneseder.net&gt;
Signed-off-by: Avi Kivity &lt;avi@redhat.com&gt;
</content>
</entry>
<entry>
<title>KVM: ia64: Fix the build errors due to lack of macros related to MSI.</title>
<updated>2009-03-24T09:03:13+00:00</updated>
<author>
<name>Xiantao Zhang</name>
<email>xiantao.zhang@intel.com</email>
</author>
<published>2009-02-16T07:24:05+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=6b08035f3e64d8e474be166d682b52c95941662e'/>
<id>urn:sha1:6b08035f3e64d8e474be166d682b52c95941662e</id>
<content type='text'>
Include the newly introduced msidef.h to solve the build issues.

Signed-off-by: Xiantao Zhang &lt;xiantao.zhang@intel.com&gt;
Signed-off-by: Avi Kivity &lt;avi@redhat.com&gt;
</content>
</entry>
<entry>
<title>KVM: fix kvm_vm_ioctl_deassign_device</title>
<updated>2009-03-24T09:03:12+00:00</updated>
<author>
<name>Weidong Han</name>
<email>weidong.han@intel.com</email>
</author>
<published>2009-02-13T09:27:51+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=4a906e49f103c2e544148a209ba1db316510799f'/>
<id>urn:sha1:4a906e49f103c2e544148a209ba1db316510799f</id>
<content type='text'>
only need to set assigned_dev_id for deassignment, use
match-&gt;flags to judge and deassign it.

Acked-by: Mark McLoughlin &lt;markmc@redhat.com&gt;
Signed-off-by: Weidong Han &lt;weidong.han@intel.com&gt;
Signed-off-by: Avi Kivity &lt;avi@redhat.com&gt;
</content>
</entry>
<entry>
<title>KVM: Report IRQ injection status for MSI delivered interrupts</title>
<updated>2009-03-24T09:03:11+00:00</updated>
<author>
<name>Gleb Natapov</name>
<email>gleb@redhat.com</email>
</author>
<published>2009-02-23T10:57:11+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=71450f78853b82d55cda4e182c9db6e26b631485'/>
<id>urn:sha1:71450f78853b82d55cda4e182c9db6e26b631485</id>
<content type='text'>
Return number of CPUs interrupt was successfully injected into or -1 if
none.

Signed-off-by: Gleb Natapov &lt;gleb@redhat.com&gt;
Signed-off-by: Avi Kivity &lt;avi@redhat.com&gt;
</content>
</entry>
<entry>
<title>KVM: Report IRQ injection status to userspace.</title>
<updated>2009-03-24T09:03:11+00:00</updated>
<author>
<name>Gleb Natapov</name>
<email>gleb@redhat.com</email>
</author>
<published>2009-02-04T15:28:14+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=4925663a079c77d95d8685228ad6675fc5639c8e'/>
<id>urn:sha1:4925663a079c77d95d8685228ad6675fc5639c8e</id>
<content type='text'>
IRQ injection status is either -1 (if there was no CPU found
that should except the interrupt because IRQ was masked or
ioapic was misconfigured or ...) or &gt;= 0 in that case the
number indicates to how many CPUs interrupt was injected.
If the value is 0 it means that the interrupt was coalesced
and probably should be reinjected.

Signed-off-by: Gleb Natapov &lt;gleb@redhat.com&gt;
Signed-off-by: Avi Kivity &lt;avi@redhat.com&gt;
</content>
</entry>
</feed>
