Hans, Hans Verkuil <hverkuil@xxxxxxxxx> writes: >> +++ b/drivers/media/i2c/tda1997x.c >> @@ -2771,6 +2771,7 @@ static int tda1997x_probe(struct i2c_client *client, >> goto err_free_media; >> } >> >> + i2c_set_clientdata(client, sd); >> return 0; >> >> err_free_media: >> > > Actually, v4l2_i2c_subdev_init() sets this, and v4l2_i2c_subdev_init() *is* called. > Does it really crash in tda1997x_remove() without this patch? Yes, the pointer was once invalid (IIRC), and in other cases NULL. > If so, then I suspect something else is going on. I'll investigate further, then. Thanks, -- Krzysztof "Chris" Hałasa Sieć Badawcza Łukasiewicz Przemysłowy Instytut Automatyki i Pomiarów PIAP Al. Jerozolimskie 202, 02-486 Warszawa