This repository has been archived on 2026-03-14. You can view files and clone it, but cannot push or open issues or pull requests.
Files
ubports_kernel_google_msm/include/linux
Lai Jiangshan 90d83dc3d4 KVM: use the correct RCU API for PROVE_RCU=y
The RCU/SRCU API have already changed for proving RCU usage.

I got the following dmesg when PROVE_RCU=y because we used incorrect API.
This patch coverts rcu_deference() to srcu_dereference() or family API.

===================================================
[ INFO: suspicious rcu_dereference_check() usage. ]
---------------------------------------------------
arch/x86/kvm/mmu.c:3020 invoked rcu_dereference_check() without protection!

other info that might help us debug this:

rcu_scheduler_active = 1, debug_locks = 0
2 locks held by qemu-system-x86/8550:
 #0:  (&kvm->slots_lock){+.+.+.}, at: [<ffffffffa011a6ac>] kvm_set_memory_region+0x29/0x50 [kvm]
 #1:  (&(&kvm->mmu_lock)->rlock){+.+...}, at: [<ffffffffa012262d>] kvm_arch_commit_memory_region+0xa6/0xe2 [kvm]

stack backtrace:
Pid: 8550, comm: qemu-system-x86 Not tainted 2.6.34-rc4-tip-01028-g939eab1 #27
Call Trace:
 [<ffffffff8106c59e>] lockdep_rcu_dereference+0xaa/0xb3
 [<ffffffffa012f6c1>] kvm_mmu_calculate_mmu_pages+0x44/0x7d [kvm]
 [<ffffffffa012263e>] kvm_arch_commit_memory_region+0xb7/0xe2 [kvm]
 [<ffffffffa011a5d7>] __kvm_set_memory_region+0x636/0x6e2 [kvm]
 [<ffffffffa011a6ba>] kvm_set_memory_region+0x37/0x50 [kvm]
 [<ffffffffa015e956>] vmx_set_tss_addr+0x46/0x5a [kvm_intel]
 [<ffffffffa0126592>] kvm_arch_vm_ioctl+0x17a/0xcf8 [kvm]
 [<ffffffff810a8692>] ? unlock_page+0x27/0x2c
 [<ffffffff810bf879>] ? __do_fault+0x3a9/0x3e1
 [<ffffffffa011b12f>] kvm_vm_ioctl+0x364/0x38d [kvm]
 [<ffffffff81060cfa>] ? up_read+0x23/0x3d
 [<ffffffff810f3587>] vfs_ioctl+0x32/0xa6
 [<ffffffff810f3b19>] do_vfs_ioctl+0x495/0x4db
 [<ffffffff810e6b2f>] ? fget_light+0xc2/0x241
 [<ffffffff810e416c>] ? do_sys_open+0x104/0x116
 [<ffffffff81382d6d>] ? retint_swapgs+0xe/0x13
 [<ffffffff810f3ba6>] sys_ioctl+0x47/0x6a
 [<ffffffff810021db>] system_call_fastpath+0x16/0x1b

Signed-off-by: Lai Jiangshan <laijs@cn.fujitsu.com>
Signed-off-by: Avi Kivity <avi@redhat.com>
2010-05-17 12:18:01 +03:00
..
2009-10-27 16:47:55 -04:00
2009-11-04 09:50:58 -08:00
2009-11-04 09:50:58 -08:00
2010-03-12 15:53:10 -08:00
2009-06-17 00:36:36 -04:00
2009-12-16 07:20:13 -08:00
2009-09-08 17:42:50 -07:00
2009-06-01 06:21:13 +00:00
2009-11-20 20:13:39 +01:00
2009-11-20 20:13:39 +01:00
2009-11-20 20:13:39 +01:00
2009-06-11 21:36:09 -04:00
2010-03-12 15:52:32 -08:00
2010-02-05 07:35:05 -08:00
2009-07-12 12:22:34 -07:00
2009-06-11 21:36:06 -04:00
2009-12-10 23:52:01 +00:00
2009-05-18 14:46:26 +01:00
2009-11-04 09:50:58 -08:00
2009-10-01 21:17:49 +02:00
2009-09-14 17:41:42 -07:00
2009-12-15 08:53:33 -08:00
2009-11-04 09:50:58 -08:00
2009-12-23 13:33:54 +01:00
2009-11-04 09:50:58 -08:00
2009-06-18 13:04:05 -07:00
2009-11-04 09:50:58 -08:00
2010-03-16 08:55:32 +01:00
2009-09-01 01:13:31 -07:00
2010-02-09 11:13:56 +01:00
2009-12-14 23:55:34 +01:00
2010-03-07 22:17:09 +01:00
2010-03-02 12:23:42 +01:00
2010-03-02 12:23:49 +01:00
2010-04-01 01:31:13 -07:00
2009-11-04 09:50:58 -08:00
2009-11-04 09:50:58 -08:00
2009-11-04 09:50:58 -08:00
2009-11-04 09:50:58 -08:00
2009-11-04 09:50:58 -08:00
2009-11-04 09:50:58 -08:00
2009-11-04 09:50:58 -08:00
2009-11-04 09:50:58 -08:00
2009-11-04 09:50:58 -08:00
2010-02-18 14:08:38 -08:00
2009-11-04 09:50:58 -08:00
2009-11-04 09:50:58 -08:00
2010-02-17 16:35:17 -08:00
2010-02-02 07:32:29 -08:00
2010-01-11 16:28:01 -08:00
2010-03-12 15:52:40 -08:00
2010-03-12 15:52:36 -08:00
2009-11-04 09:50:58 -08:00
2010-03-12 15:52:40 -08:00
2009-09-26 10:17:19 -07:00
2009-10-18 18:52:53 -07:00
2009-08-29 15:53:00 +02:00
2010-03-12 15:53:10 -08:00
2009-09-26 10:17:19 -07:00
2009-12-16 06:56:12 -08:00
2010-05-17 12:17:10 +03:00
2009-06-23 20:21:39 +01:00
2009-07-30 16:03:45 +09:30
2010-04-06 10:55:33 -04:00
2009-12-15 08:53:36 -08:00
2009-12-26 20:40:34 -08:00
2010-02-03 17:39:50 +11:00
2010-03-12 15:53:10 -08:00
2010-02-09 11:13:56 +01:00
2010-02-19 03:35:12 -05:00
2009-06-16 19:47:48 -07:00
2010-03-12 15:52:38 -08:00
2009-09-22 07:17:35 -07:00
2009-06-16 08:40:20 +02:00
2009-12-15 08:53:20 -08:00
2009-04-29 17:32:35 -07:00
2010-03-12 15:52:28 -08:00
2010-04-08 13:37:18 +02:00
2009-12-12 13:08:15 +01:00
2009-11-04 09:50:58 -08:00
2009-11-04 09:50:58 -08:00
2010-02-10 23:49:08 +09:00
2009-11-04 09:50:58 -08:00
2010-02-03 20:32:28 -08:00
2009-06-17 18:02:11 -07:00
2009-06-17 18:02:11 -07:00
2010-04-12 07:55:15 -04:00
2009-06-17 18:02:11 -07:00
2010-02-19 15:52:40 -05:00
2009-06-15 21:44:43 -07:00
2010-02-14 07:13:47 -07:00
2010-02-23 23:14:47 -08:00
2010-02-04 10:23:02 -08:00
2009-11-04 09:50:58 -08:00
2009-11-04 09:50:58 -08:00
2010-03-12 15:53:11 -08:00
2009-12-03 11:43:23 +00:00
2009-06-18 13:04:04 -07:00
2009-07-29 19:10:36 -07:00
2009-12-02 09:55:33 +01:00
2009-09-23 07:39:41 -07:00
2009-06-11 21:36:12 -04:00
2010-03-05 00:20:31 +01:00
2010-02-10 17:47:17 -08:00
2009-10-30 15:06:37 -07:00
2010-03-12 15:52:44 -08:00
2009-06-24 08:17:06 -04:00
2010-03-02 14:28:49 -05:00
2009-05-09 10:49:41 -04:00
2009-11-04 09:50:58 -08:00
2010-03-12 15:53:10 -08:00
2010-03-12 15:52:43 -08:00
2010-01-21 23:55:25 -08:00
2009-08-28 19:57:30 -04:00
2010-02-16 13:38:56 +09:00
2009-11-30 12:02:53 +09:00
2010-03-12 15:52:44 -08:00
2009-12-16 22:32:29 -05:00
2009-05-12 11:11:48 +02:00
2010-01-14 22:38:09 -05:00
2010-03-12 15:52:36 -08:00
2009-07-06 13:57:03 -07:00
2010-02-18 15:43:09 -08:00
2009-11-13 20:46:24 +01:00
2009-08-30 22:26:34 +02:00
2009-10-29 11:17:40 +11:00
2009-11-10 20:54:38 -08:00
2009-09-23 18:13:10 -07:00
2009-08-26 12:39:29 +01:00
2009-09-23 22:26:32 +09:30
2010-01-05 09:17:33 +09:00
2009-09-15 16:51:30 +02:00
2010-03-12 10:03:42 +01:00
2009-12-16 12:16:49 -05:00