aboutsummaryrefslogtreecommitdiffstats
path: root/arch/x86/kvm/i8259.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/x86/kvm/i8259.c')
-rw-r--r--arch/x86/kvm/i8259.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/arch/x86/kvm/i8259.c b/arch/x86/kvm/i8259.c
index e4bcbddecb36..daf4606b0293 100644
--- a/arch/x86/kvm/i8259.c
+++ b/arch/x86/kvm/i8259.c
@@ -539,6 +539,8 @@ static const struct kvm_io_device_ops picdev_ops = {
539struct kvm_pic *kvm_create_pic(struct kvm *kvm) 539struct kvm_pic *kvm_create_pic(struct kvm *kvm)
540{ 540{
541 struct kvm_pic *s; 541 struct kvm_pic *s;
542 int ret;
543
542 s = kzalloc(sizeof(struct kvm_pic), GFP_KERNEL); 544 s = kzalloc(sizeof(struct kvm_pic), GFP_KERNEL);
543 if (!s) 545 if (!s)
544 return NULL; 546 return NULL;
@@ -555,6 +557,11 @@ struct kvm_pic *kvm_create_pic(struct kvm *kvm)
555 * Initialize PIO device 557 * Initialize PIO device
556 */ 558 */
557 kvm_iodevice_init(&s->dev, &picdev_ops); 559 kvm_iodevice_init(&s->dev, &picdev_ops);
558 kvm_io_bus_register_dev(kvm, &kvm->pio_bus, &s->dev); 560 ret = kvm_io_bus_register_dev(kvm, &kvm->pio_bus, &s->dev);
561 if (ret < 0) {
562 kfree(s);
563 return NULL;
564 }
565
559 return s; 566 return s;
560} 567}