forked from Minki/linux
[media] hdpvr: fix race conditon during start of streaming
status has to be set to STREAMING before the streaming worker is queued. hdpvr_transmit_buffers() will exit immediately otherwise. Reported-by: Joerg Desch <vvd.joede@googlemail.com> CC: stable@kernel.org Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
This commit is contained in:
parent
63ae37ea51
commit
afa159538a
@ -283,12 +283,13 @@ static int hdpvr_start_streaming(struct hdpvr_device *dev)
|
|||||||
|
|
||||||
hdpvr_config_call(dev, CTRL_START_STREAMING_VALUE, 0x00);
|
hdpvr_config_call(dev, CTRL_START_STREAMING_VALUE, 0x00);
|
||||||
|
|
||||||
|
dev->status = STATUS_STREAMING;
|
||||||
|
|
||||||
INIT_WORK(&dev->worker, hdpvr_transmit_buffers);
|
INIT_WORK(&dev->worker, hdpvr_transmit_buffers);
|
||||||
queue_work(dev->workqueue, &dev->worker);
|
queue_work(dev->workqueue, &dev->worker);
|
||||||
|
|
||||||
v4l2_dbg(MSG_BUFFER, hdpvr_debug, &dev->v4l2_dev,
|
v4l2_dbg(MSG_BUFFER, hdpvr_debug, &dev->v4l2_dev,
|
||||||
"streaming started\n");
|
"streaming started\n");
|
||||||
dev->status = STATUS_STREAMING;
|
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user