<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
</head>
<body bgcolor="#ffffff" text="#000000">
I found a code problem in dvb-core when I was debugging with my dvb
driver.<br>
<br>
The code in dvb_dvr_release() file dmxdev.c<br>
/* TODO */<br>
dvbdev->users--;<br>
if(<b>dvbdev->users== -1</b> && dmxdev->exit==1) {<br>
fops_put(file->f_op);<br>
file->f_op = NULL;<br>
mutex_unlock(&dmxdev->mutex);<br>
<br>
"dvbdev->users== -1" should be changed to "dvbdev->users== 1",
otherwise driver may block forever in dvb_dmxdev_release() where a
wakeup condition is "dvbdev->users== 1". <br>
<br>
Here is the code in dvb_dmxdev_release().<br>
<br>
if (dmxdev->dvr_dvbdev->users > 1) {<br>
wait_event(dmxdev->dvr_dvbdev->wait_queue,<br>
<b>dmxdev->dvr_dvbdev->users==1</b>);<br>
}<br>
<br>
I hope it is right to post this message here.<br>
<br>
<div class="moz-signature">-- <br>
<meta http-equiv="CONTENT-TYPE" content="text/html; ">
<title></title>
<meta name="GENERATOR" content="OpenOffice.org 2.4 (Linux)">
<meta name="AUTHOR" content="zhang">
<meta name="CREATED" content="20081117;15071400">
<meta name="CHANGEDBY" content="zhang">
<meta name="CHANGED" content="20081119;15534200">
<meta name="CHANGEDBY" content="zhang">
<p style="margin-bottom: 0in; line-height: 0.1in;" align="justify"><font
color="#365f91"><font size="2">Xiaobing </font></font><font
color="#365f91"><font size="2">Zhang
</font></font></p>
</div>
</body>
</html>