1. 24 Jul, 2011 3 commits
  2. 12 Jul, 2011 5 commits
  3. 06 Jun, 2011 1 commit
    • Mike Waychison's avatar
      KVM: Initialize kvm before registering the mmu notifier · 74b5c5bf
      Mike Waychison authored
      It doesn't make sense to ever see a half-initialized kvm structure on
      mmu notifier callbacks.  Previously, 85722cda changed the ordering to
      ensure that the mmu_lock was initialized before mmu notifier
      registration, but there is still a race where the mmu notifier could
      come in and try accessing other portions of struct kvm before they are
      intialized.
      
      Solve this by moving the mmu notifier registration to occur after the
      structure is completely initialized.
      
      Google-Bug-Id: 452199
      Signed-off-by: default avatarMike Waychison <mikew@google.com>
      Signed-off-by: default avatarAvi Kivity <avi@redhat.com>
      74b5c5bf
  4. 26 May, 2011 1 commit
  5. 22 May, 2011 3 commits
    • OGAWA Hirofumi's avatar
      KVM: Fix kvm mmu_notifier initialization order · 85722cda
      OGAWA Hirofumi authored
      Like the following, mmu_notifier can be called after registering
      immediately. So, kvm have to initialize kvm->mmu_lock before it.
      
      BUG: spinlock bad magic on CPU#0, kswapd0/342
       lock: ffff8800af8c4000, .magic: 00000000, .owner: <none>/-1, .owner_cpu: 0
      Pid: 342, comm: kswapd0 Not tainted 2.6.39-rc5+ #1
      Call Trace:
       [<ffffffff8118ce61>] spin_bug+0x9c/0xa3
       [<ffffffff8118ce91>] do_raw_spin_lock+0x29/0x13c
       [<ffffffff81024923>] ? flush_tlb_others_ipi+0xaf/0xfd
       [<ffffffff812e22f3>] _raw_spin_lock+0x9/0xb
       [<ffffffffa0582325>] kvm_mmu_notifier_clear_flush_young+0x2c/0x66 [kvm]
       [<ffffffff810d3ff3>] __mmu_notifier_clear_flush_young+0x2b/0x57
       [<ffffffff810c8761>] page_referenced_one+0x88/0xea
       [<ffffffff810c89bf>] page_referenced+0x1fc/0x256
       [<ffffffff810b2771>] shrink_page_list+0x187/0x53a
       [<ffffffff810b2ed7>] shrink_inactive_list+0x1e0/0x33d
       [<ffffffff810acf95>] ? determine_dirtyable_memory+0x15/0x27
       [<ffffffff812e90ee>] ? call_function_single_interrupt+0xe/0x20
       [<ffffffff810b3356>] shrink_zone+0x322/0x3de
       [<ffffffff810a9587>] ? zone_watermark_ok_safe+0xe2/0xf1
       [<ffffffff810b3928>] kswapd+0x516/0x818
       [<ffffffff810b3412>] ? shrink_zone+0x3de/0x3de
       [<ffffffff81053d17>] kthread+0x7d/0x85
       [<ffffffff812e9394>] kernel_thread_helper+0x4/0x10
       [<ffffffff81053c9a>] ? __init_kthread_worker+0x37/0x37
       [<ffffffff812e9390>] ? gs_change+0xb/0xb
      Signed-off-by: default avatarOGAWA Hirofumi <hirofumi@mail.parknet.co.jp>
      Signed-off-by: default avatarAvi Kivity <avi@redhat.com>
      85722cda
    • Takuya Yoshikawa's avatar
      KVM: Validate userspace_addr of memslot when registered · fa3d315a
      Takuya Yoshikawa authored
      This way, we can avoid checking the user space address many times when
      we read the guest memory.
      
      Although we can do the same for write if we check which slots are
      writable, we do not care write now: reading the guest memory happens
      more often than writing.
      
      [avi: change VERIFY_READ to VERIFY_WRITE]
      Signed-off-by: default avatarTakuya Yoshikawa <yoshikawa.takuya@oss.ntt.co.jp>
      Signed-off-by: default avatarAvi Kivity <avi@redhat.com>
      fa3d315a
    • Liu Yuan's avatar
      KVM: ioapic: Fix an error field reference · a38f84ca
      Liu Yuan authored
      Function ioapic_debug() in the ioapic_deliver() misnames
      one filed by reference. This patch correct it.
      Signed-off-by: default avatarLiu Yuan <tailai.ly@taobao.com>
      Signed-off-by: default avatarAvi Kivity <avi@redhat.com>
      a38f84ca
  6. 21 May, 2011 1 commit
  7. 11 May, 2011 1 commit
  8. 06 Apr, 2011 2 commits
  9. 31 Mar, 2011 1 commit
  10. 23 Mar, 2011 3 commits
  11. 17 Mar, 2011 9 commits
  12. 13 Jan, 2011 3 commits
  13. 12 Jan, 2011 7 commits