Hi Seung-Woo, On 10/21/19 03:58, Seung-Woo Kim wrote: > When driver is built as module and probe during insmod is deferred > because of sensor subdevs, there is NULL pointer deference because > mdev is cleaned up and then access it from v4l2_device_unregister(). > Fix the wrong mdev and v4l2 dev odder in error path of probe. > Signed-off-by: Seung-Woo Kim <sw0312.kim@xxxxxxxxxxx> The patch looks good, however we need to also call media_device_cleanup() when v4l2_device_register() fails. Reviewed-by: Sylwester Nawrocki <s.nawrocki@xxxxxxxxxxx> > --- > drivers/media/platform/exynos4-is/media-dev.c | 2 +- > 1 files changed, 1 insertions(+), 1 deletions(-) > > diff --git a/drivers/media/platform/exynos4-is/media-dev.c b/drivers/media/platform/exynos4-is/media-dev.c > index a838189..3685c91e6 100644 > --- a/drivers/media/platform/exynos4-is/media-dev.c > +++ b/drivers/media/platform/exynos4-is/media-dev.c > @@ -1520,8 +1520,8 @@ static int fimc_md_probe(struct platform_device *pdev) > err_clk: > fimc_md_put_clocks(fmd); > err_md: > - media_device_cleanup(&fmd->media_dev); > v4l2_device_unregister(&fmd->v4l2_dev); > + media_device_cleanup(&fmd->media_dev); > return ret; > } -- Thanks, Sylwester