If we reach here with r = 0, we will reassign r = 0 unnecesarry, then do the label set_irqchip_out work. If we reach here with r != 0, then we will do the label work directly. So this if statement and r = 0 assignment is redundant. We remove them and therefore we can get rid of odd set_irqchip_out lable further pointed out by tglx. Signed-off-by: Miaohe Lin <linmiaohe@xxxxxxxxxx> --- arch/x86/kvm/x86.c | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/arch/x86/kvm/x86.c b/arch/x86/kvm/x86.c index 661e2bf38526..cd4ca8c2f7de 100644 --- a/arch/x86/kvm/x86.c +++ b/arch/x86/kvm/x86.c @@ -4913,13 +4913,8 @@ long kvm_arch_vm_ioctl(struct file *filp, } r = -ENXIO; - if (!irqchip_kernel(kvm)) - goto set_irqchip_out; - r = kvm_vm_ioctl_set_irqchip(kvm, chip); - if (r) - goto set_irqchip_out; - r = 0; - set_irqchip_out: + if (irqchip_kernel(kvm)) + r = kvm_vm_ioctl_set_irqchip(kvm, chip); kfree(chip); break; } -- 2.19.1