Skip to content

Commit d0dfc6b

Browse files
committed
KVM: i8259: initialize isr_ack
isr_ack is never initialized. So, until the first PIC reset, interrupts may fail to be injected. This can cause Windows XP to fail to boot, as reported in the fallout from the fix to https://bugzilla.kernel.org/show_bug.cgi?id=21962. Reported-and-tested-by: Nicolas Prochazka <[email protected]> Signed-off-by: Avi Kivity <[email protected]>
1 parent 649497d commit d0dfc6b

File tree

1 file changed

+2
-0
lines changed

1 file changed

+2
-0
lines changed

arch/x86/kvm/i8259.c

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -575,6 +575,8 @@ struct kvm_pic *kvm_create_pic(struct kvm *kvm)
575575
s->pics[1].elcr_mask = 0xde;
576576
s->pics[0].pics_state = s;
577577
s->pics[1].pics_state = s;
578+
s->pics[0].isr_ack = 0xff;
579+
s->pics[1].isr_ack = 0xff;
578580

579581
/*
580582
* Initialize PIO device

0 commit comments

Comments
 (0)