• Liang He's avatar
    gpio: gpiolib-of: Fix refcount bugs in of_mm_gpiochip_add_data() · 5d07a692
    Liang He authored
    We should use of_node_get() when a new reference of device_node
    is created. It is noted that the old reference stored in
    'mm_gc->gc.of_node' should also be decreased.
    
    This patch is based on the fact that there is a call site in function
    'qe_add_gpiochips()' of src file 'drivers\soc\fsl\qe\gpio.c'. In this
    function, of_mm_gpiochip_add_data() is contained in an iteration of
    for_each_compatible_node() which will automatically increase and
    decrease the refcount. So we need additional of_node_get() for the
    reference escape in of_mm_gpiochip_add_data().
    
    Fixes: a19e3da5 ("of/gpio: Kill of_gpio_chip and add members directly to gpio_chip")
    Signed-off-by: default avatarLiang He <windhl@126.com>
    Signed-off-by: default avatarBartosz Golaszewski <brgl@bgdev.pl>
    5d07a692
gpiolib-of.c 26.8 KB