• Xiao Guangrong's avatar
    KVM: PIT: stop vpit before freeing irq_routing · aea924f6
    Xiao Guangrong authored
    Fix:
    general protection fault: 0000 [#1] PREEMPT SMP DEBUG_PAGEALLOC
    ......
    Call Trace:
     [<ffffffffa0159bd1>] ? kvm_set_irq+0xdd/0x24b [kvm]
     [<ffffffff8106ea8b>] ? trace_hardirqs_off_caller+0x1f/0x10e
     [<ffffffff813ad17f>] ? sub_preempt_count+0xe/0xb6
     [<ffffffff8106d273>] ? put_lock_stats+0xe/0x27
    ...
    RIP  [<ffffffffa0159c72>] kvm_set_irq+0x17e/0x24b [kvm]
    
    This bug is triggered when guest is shutdown, is because we freed
    irq_routing before pit thread stopped
    Signed-off-by: default avatarXiao Guangrong <xiaoguangrong@cn.fujitsu.com>
    Signed-off-by: default avatarMarcelo Tosatti <mtosatti@redhat.com>
    aea924f6
i8254.c 19 KB