Messages in this thread | | | Date | Mon, 06 Jul 2015 08:46:07 +0800 | From | "Chen, Tiejun" <> | Subject | Re: [[PATCH 2/2] kvm: enable preemption to register/unregister preempt notifier |
| |
On 2015/7/3 19:23, Paolo Bonzini wrote: > On 03/07/2015 10:56, Tiejun Chen wrote: >> After commit 1cde2930e154 ("sched/preempt: Add static_key() to >> preempt_notifiers") is introduced, preempt_notifier_{register, unregister} >> always hold a mutex, jump_label_mutex. So in current case this shouldn't >> work further under the circumstance of disabled preemption, and its also >> safe since we're just handling a per-vcpu stuff with holding vcpu->mutex. >> Otherwise, some warning messages are posted like this, >> >> BUG: scheduling while atomic: qemu-system-x86/17177/0x00000002 >> 2 locks held by qemu-system-x86/17177: >> #0: (&vcpu->mutex){+.+.+.}, at: [<ffffffffa035fb48>] vcpu_load+0x28/0xf0 [kvm] >> #1: (jump_label_mutex){+.+.+.}, at: [<ffffffff81244b54>] static_key_slow_inc+0xc4/0x140 >> Modules linked in: x86_pkg_temp_thermal kvm_intel kvm >> Preemption disabled at:[<ffffffffa035fd3e>] kvm_vcpu_ioctl+0x7e/0xeb0 [kvm] > > Thanks for your work Tiejun. However, the original patch is crap. I've > asked to revert it. >
Yeah, its better to revert that commit since finally this also trigger a bug 100671: vmwrite error in vmx_vcpu_run.
Thanks Tiejun
| |