OSDN Git Service

media: rcar-csi2: Suppress bind and unbind nodes in sysfs
authorNiklas Söderlund <niklas.soderlund+renesas@ragnatech.se>
Sun, 28 Nov 2021 13:24:26 +0000 (14:24 +0100)
committerMauro Carvalho Chehab <mchehab+huawei@kernel.org>
Tue, 7 Dec 2021 10:29:55 +0000 (11:29 +0100)
commit0d7b74ef8df409f43f64e4193b36dc5b3f38029e
tree318951c77c8f82f070e40245e6618b889ceb69c3
parentda6911f330d40cfe115a37249e47643eff555e82
media: rcar-csi2: Suppress bind and unbind nodes in sysfs

The v4l2-async framework's subdev notifiers do not behave correctly if a
device in the middle of the pipeline is unbound and then rebound. The
v4l2-subdevices upstream from the device being rebound gets confused as
they receive no notification of the device unbound and can't cleanup
their state and when they are rebound to the new v4l2-subdev notifier
they try to reinitialize their internal state, this may include things
as trying to create links that already exists and in some cases crash
the system, for example the adv748x.

This should be solved in the v4l2-async framework, but as a stop-gap
measure suppress the bind and unbind sysfs nodes for the rcar-csi2
driver so it can't be used to crash the system.

Signed-off-by: Niklas Söderlund <niklas.soderlund+renesas@ragnatech.se>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
drivers/media/platform/rcar-vin/rcar-csi2.c