summaryrefslogtreecommitdiff
path: root/sound
diff options
context:
space:
mode:
authorJasmin J <jasmin@anw.at>2017-03-17 23:04:20 -0300
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2018-03-24 11:00:10 +0100
commit355edc25c3f9b5171abaea2a160c569a1e52f4d2 (patch)
tree109131e8e8e6770b14f2fabdeadab34f6eeeec11 /sound
parent2bea4875294f1715e2b52dd66d8b666d733f1308 (diff)
media/dvb-core: Race condition when writing to CAM
[ Upstream commit e7080d4471d805d921a9ea21b32f911a91e248cb ] It started with a sporadic message in syslog: "CAM tried to send a buffer larger than the ecount size" This message is not the fault itself, but a consecutive fault, after a read error from the CAM. This happens only on several CAMs, several hardware, and of course sporadic. It is a consecutive fault, if the last read from the CAM did fail. I guess this will not happen on all CAMs, but at least it did on mine. There was a write error to the CAM and during the re-initialization procedure, the CAM finished the last read, although it got a RS. The write error to the CAM happened because a race condition between HC write, checking DA and FR. This patch added an additional check for DA(RE), just after checking FR. It is important to read the CAMs status register again, to give the CAM the necessary time for a proper reaction to HC. Please note the description within the source code (patch below). [mchehab@s-opensource.com: make checkpatch happy] Signed-off-by: Jasmin jessich <jasmin@anw.at> Tested-by: Ralph Metzler <rjkm@metzlerbros.de> Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com> Signed-off-by: Sasha Levin <alexander.levin@microsoft.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'sound')
0 files changed, 0 insertions, 0 deletions