Hi Hans, Thank you for the patch. On Thu, Feb 21, 2019 at 03:21:45PM +0100, Hans Verkuil wrote: > Ensure that this pointer is set to NULL after it is freed. > The vimc driver has a static media_entity and after > unbinding and rebinding the vimc device the media code will > try to free this pointer again since it wasn't set to NULL. As this fixes a problem in vimc, should you add a Fixes: tag ? To avoid other similar problems, I think the vimc driver should allocate the media_device and other device data dynamically at probe time. Bundling them with the platform_device in struct vimc_device isn't a good idea. > Signed-off-by: Hans Verkuil <hverkuil-cisco@xxxxxxxxx> > --- > drivers/media/media-entity.c | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/drivers/media/media-entity.c b/drivers/media/media-entity.c > index 0b1cb3559140..7b2a2cc95530 100644 > --- a/drivers/media/media-entity.c > +++ b/drivers/media/media-entity.c > @@ -88,6 +88,7 @@ EXPORT_SYMBOL_GPL(__media_entity_enum_init); > void media_entity_enum_cleanup(struct media_entity_enum *ent_enum) > { > kfree(ent_enum->bmap); > + ent_enum->bmap = NULL; > } > EXPORT_SYMBOL_GPL(media_entity_enum_cleanup); > -- Regards, Laurent Pinchart