)]}'
{
  "commit": "90d83dc3d49f5101addae962ccc1b4aff66b68d8",
  "tree": "855aec81663eff4597ab276f13d449be9b798ec2",
  "parents": [
    "9beeaa2d689842f7760aa16c512e6bb8182d38b6"
  ],
  "author": {
    "name": "Lai Jiangshan",
    "email": "laijs@cn.fujitsu.com",
    "time": "Mon Apr 19 17:41:23 2010 +0800"
  },
  "committer": {
    "name": "Avi Kivity",
    "email": "avi@redhat.com",
    "time": "Mon May 17 12:18:01 2010 +0300"
  },
  "message": "KVM: use the correct RCU API for PROVE_RCU\u003dy\n\nThe RCU/SRCU API have already changed for proving RCU usage.\n\nI got the following dmesg when PROVE_RCU\u003dy because we used incorrect API.\nThis patch coverts rcu_deference() to srcu_dereference() or family API.\n\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n[ INFO: suspicious rcu_dereference_check() usage. ]\n---------------------------------------------------\narch/x86/kvm/mmu.c:3020 invoked rcu_dereference_check() without protection!\n\nother info that might help us debug this:\n\nrcu_scheduler_active \u003d 1, debug_locks \u003d 0\n2 locks held by qemu-system-x86/8550:\n #0:  (\u0026kvm-\u003eslots_lock){+.+.+.}, at: [\u003cffffffffa011a6ac\u003e] kvm_set_memory_region+0x29/0x50 [kvm]\n #1:  (\u0026(\u0026kvm-\u003emmu_lock)-\u003erlock){+.+...}, at: [\u003cffffffffa012262d\u003e] kvm_arch_commit_memory_region+0xa6/0xe2 [kvm]\n\nstack backtrace:\nPid: 8550, comm: qemu-system-x86 Not tainted 2.6.34-rc4-tip-01028-g939eab1 #27\nCall Trace:\n [\u003cffffffff8106c59e\u003e] lockdep_rcu_dereference+0xaa/0xb3\n [\u003cffffffffa012f6c1\u003e] kvm_mmu_calculate_mmu_pages+0x44/0x7d [kvm]\n [\u003cffffffffa012263e\u003e] kvm_arch_commit_memory_region+0xb7/0xe2 [kvm]\n [\u003cffffffffa011a5d7\u003e] __kvm_set_memory_region+0x636/0x6e2 [kvm]\n [\u003cffffffffa011a6ba\u003e] kvm_set_memory_region+0x37/0x50 [kvm]\n [\u003cffffffffa015e956\u003e] vmx_set_tss_addr+0x46/0x5a [kvm_intel]\n [\u003cffffffffa0126592\u003e] kvm_arch_vm_ioctl+0x17a/0xcf8 [kvm]\n [\u003cffffffff810a8692\u003e] ? unlock_page+0x27/0x2c\n [\u003cffffffff810bf879\u003e] ? __do_fault+0x3a9/0x3e1\n [\u003cffffffffa011b12f\u003e] kvm_vm_ioctl+0x364/0x38d [kvm]\n [\u003cffffffff81060cfa\u003e] ? up_read+0x23/0x3d\n [\u003cffffffff810f3587\u003e] vfs_ioctl+0x32/0xa6\n [\u003cffffffff810f3b19\u003e] do_vfs_ioctl+0x495/0x4db\n [\u003cffffffff810e6b2f\u003e] ? fget_light+0xc2/0x241\n [\u003cffffffff810e416c\u003e] ? do_sys_open+0x104/0x116\n [\u003cffffffff81382d6d\u003e] ? retint_swapgs+0xe/0x13\n [\u003cffffffff810f3ba6\u003e] sys_ioctl+0x47/0x6a\n [\u003cffffffff810021db\u003e] system_call_fastpath+0x16/0x1b\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "d7bac1f75af0acf0132f0f12a582da3cfbe36e11",
      "old_mode": 33188,
      "old_path": "arch/ia64/kvm/kvm-ia64.c",
      "new_id": "d5f4e9161201f648dbaf90ec96c300ec63d6536b",
      "new_mode": 33188,
      "new_path": "arch/ia64/kvm/kvm-ia64.c"
    },
    {
      "type": "modify",
      "old_id": "60f09ab3672c9d26453395f70addbb45f6a77d6c",
      "old_mode": 33188,
      "old_path": "arch/s390/kvm/kvm-s390.h",
      "new_id": "cfa9d1777457894ab96679cfe571084e24ba790f",
      "new_mode": 33188,
      "new_path": "arch/s390/kvm/kvm-s390.h"
    },
    {
      "type": "modify",
      "old_id": "7a17db1cdcd6c7f4cc5e9e1556f0f423217d0732",
      "old_mode": 33188,
      "old_path": "arch/x86/kvm/mmu.c",
      "new_id": "0682a393ad9050f96e2ea7ed364d56ff6cbccbc6",
      "new_mode": 33188,
      "new_path": "arch/x86/kvm/mmu.c"
    },
    {
      "type": "modify",
      "old_id": "0b896ac7e4bb45186072032602782404209be7e5",
      "old_mode": 33188,
      "old_path": "arch/x86/kvm/vmx.c",
      "new_id": "d0a10b5612e90ab3c97280385d4c791cb3464d7b",
      "new_mode": 33188,
      "new_path": "arch/x86/kvm/vmx.c"
    },
    {
      "type": "modify",
      "old_id": "58a96e6a234cdae8c2ac9744eb4028087f3fcd10",
      "old_mode": 33188,
      "old_path": "arch/x86/kvm/x86.c",
      "new_id": "638248c969994bd968b9600df0120ed82b569537",
      "new_mode": 33188,
      "new_path": "arch/x86/kvm/x86.c"
    },
    {
      "type": "modify",
      "old_id": "b7a404722d2b791efa2a9ae12d636ec2e5fd0a83",
      "old_mode": 33188,
      "old_path": "arch/x86/kvm/x86.h",
      "new_id": "f4b54458285b0d122e7bb9b0868042924bdf323f",
      "new_mode": 33188,
      "new_path": "arch/x86/kvm/x86.h"
    },
    {
      "type": "modify",
      "old_id": "55830638aeb15895fb72ad031f1d62af3fe49c25",
      "old_mode": 33188,
      "old_path": "include/linux/kvm_host.h",
      "new_id": "1ed030bad59e00d523160671b27306745e341784",
      "new_mode": 33188,
      "new_path": "include/linux/kvm_host.h"
    },
    {
      "type": "modify",
      "old_id": "80fd3ad3b2de77d246fe8cb9a5df5714609735c3",
      "old_mode": 33188,
      "old_path": "virt/kvm/iommu.c",
      "new_id": "37ca71ebdba88645ad3a79eec1197998fcbc7dd5",
      "new_mode": 33188,
      "new_path": "virt/kvm/iommu.c"
    },
    {
      "type": "modify",
      "old_id": "d6351a34b297763f946ccb9e3e90e54a7039b73e",
      "old_mode": 33188,
      "old_path": "virt/kvm/kvm_main.c",
      "new_id": "4901ec5061ba3986fa04458d437eccb647200ae6",
      "new_mode": 33188,
      "new_path": "virt/kvm/kvm_main.c"
    }
  ]
}
