genirq: Simplify the checks for irq_set_percpu_devid_partition()
authorJinjie Ruan <ruanjinjie@huawei.com>
Wed, 17 Apr 2024 08:53:56 +0000 (16:53 +0800)
committerThomas Gleixner <tglx@linutronix.de>
Mon, 22 Apr 2024 22:17:07 +0000 (00:17 +0200)
Since whether desc is NULL or desc->percpu_enabled is true, it returns
-EINVAL, check them together, and assign desc->percpu_affinity using a
ternary to simplify the code.

Signed-off-by: Jinjie Ruan <ruanjinjie@huawei.com>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Link: https://lore.kernel.org/r/20240417085356.3785381-1-ruanjinjie@huawei.com
kernel/irq/irqdesc.c

index 3820931962102927d6a20f57680de95e8f3605d4..f0d4b98c7820b9d8ac3950f6fc40851c9fa58809 100644 (file)
@@ -911,10 +911,7 @@ int irq_set_percpu_devid_partition(unsigned int irq,
 {
        struct irq_desc *desc = irq_to_desc(irq);
 
-       if (!desc)
-               return -EINVAL;
-
-       if (desc->percpu_enabled)
+       if (!desc || desc->percpu_enabled)
                return -EINVAL;
 
        desc->percpu_enabled = kzalloc(sizeof(*desc->percpu_enabled), GFP_KERNEL);
@@ -922,10 +919,7 @@ int irq_set_percpu_devid_partition(unsigned int irq,
        if (!desc->percpu_enabled)
                return -ENOMEM;
 
-       if (affinity)
-               desc->percpu_affinity = affinity;
-       else
-               desc->percpu_affinity = cpu_possible_mask;
+       desc->percpu_affinity = affinity ? : cpu_possible_mask;
 
        irq_set_percpu_devid_flags(irq);
        return 0;