media: media/dvb: earth-pt3: fix hang-up in a rare case
authorAkihiro Tsukada <tskd08@gmail.com>
Mon, 10 Jul 2017 08:40:13 +0000 (04:40 -0400)
committerMauro Carvalho Chehab <mchehab@s-opensource.com>
Thu, 20 Jul 2017 19:01:30 +0000 (15:01 -0400)
commitd0a0548adeee87ac2d7890d15dfd3800db2099e6
tree8eee965b3c85b5fef8fafc57fef936ffca144fcd
parent62055056da6a722ab770d45bad63ed41dfb4f283
media: media/dvb: earth-pt3: fix hang-up in a rare case

When a user starts and stops filtering at a demux device too quickly
in a very short interval, the user process hangs in uninterruptible sleep,
due to an inconsistency of kthread status in the driver.
The kthread can be stopped before it starts running its thread function,
but the invocation status was partly managed in the kthread function,
which resulted in a double kthread_stop() of one kthread.

Signed-off-by: Akihiro Tsukada <tskd08@gmail.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
drivers/media/pci/pt3/pt3.c