CLOCKSOURCE: mips-gic: Add missing error returns checks
[firefly-linux-kernel-4.4.55.git] / drivers / clocksource / mips-gic-timer.c
index 913585d93466af0f19a4cb54f2fe1eb3241bb8ce..c4352f078492384d83f6fb66f3379152bc581721 100644 (file)
@@ -100,12 +100,18 @@ static struct notifier_block gic_cpu_nb = {
 
 static int gic_clockevent_init(void)
 {
+       int ret;
+
        if (!cpu_has_counter || !gic_frequency)
                return -ENXIO;
 
-       setup_percpu_irq(gic_timer_irq, &gic_compare_irqaction);
+       ret = setup_percpu_irq(gic_timer_irq, &gic_compare_irqaction);
+       if (ret < 0)
+               return ret;
 
-       register_cpu_notifier(&gic_cpu_nb);
+       ret = register_cpu_notifier(&gic_cpu_nb);
+       if (ret < 0)
+               pr_warn("GIC: Unable to register CPU notifier\n");
 
        gic_clockevent_cpu_init(this_cpu_ptr(&gic_clockevent_device));
 
@@ -125,13 +131,17 @@ static struct clocksource gic_clocksource = {
 
 static void __init __gic_clocksource_init(void)
 {
+       int ret;
+
        /* Set clocksource mask. */
        gic_clocksource.mask = CLOCKSOURCE_MASK(gic_get_count_width());
 
        /* Calculate a somewhat reasonable rating value. */
        gic_clocksource.rating = 200 + gic_frequency / 10000000;
 
-       clocksource_register_hz(&gic_clocksource, gic_frequency);
+       ret = clocksource_register_hz(&gic_clocksource, gic_frequency);
+       if (ret < 0)
+               pr_warn("GIC: Unable to register clocksource\n");
 
        gic_clockevent_init();