media: atomisp: fix __get_frame_info() error handling
authorHans de Goede <hdegoede@redhat.com>
Wed, 15 Jun 2022 20:50:30 +0000 (21:50 +0100)
committerMauro Carvalho Chehab <mchehab@kernel.org>
Fri, 8 Jul 2022 15:38:08 +0000 (16:38 +0100)
On ia_css_pipe_get_info() errors, destroy both the streams as well
as the pipes which were created.

Link: https://lore.kernel.org/linux-media/20220615205037.16549-34-hdegoede@redhat.com
Reviewed-by: Andy Shevchenko <andy.shevchenko@gmail.com>
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
drivers/staging/media/atomisp/pci/atomisp_compat_css20.c

index 6e91654..d03b29a 100644 (file)
@@ -2653,7 +2653,7 @@ static int __get_frame_info(struct atomisp_sub_device *asd,
                                   &p_info);
        if (ret) {
                dev_err(isp->dev, "can't get info from pipe\n");
-               goto stream_err;
+               goto get_info_err;
        }
 
        switch (type) {
@@ -2684,6 +2684,8 @@ static int __get_frame_info(struct atomisp_sub_device *asd,
 
        return 0;
 
+get_info_err:
+       __destroy_streams(asd, true);
 stream_err:
        __destroy_pipes(asd, true);
        return -EINVAL;