This patch prevents the cdev module from rousing the channel wait queue in
case the channel is about to be closed. It is safe to do so, because the
application can not be waiting within read or write and at the same time
be calling close.

Signed-off-by: Christian Gromm <christian.gr...@microchip.com>
---
This patch has been resent on behalf of Greg Kroah-Hartman 
<gre...@linuxfoundation.org>

 drivers/staging/most/aim-cdev/cdev.c |    2 --
 1 file changed, 2 deletions(-)

diff --git a/drivers/staging/most/aim-cdev/cdev.c 
b/drivers/staging/most/aim-cdev/cdev.c
index 0141293..fd2ac89 100644
--- a/drivers/staging/most/aim-cdev/cdev.c
+++ b/drivers/staging/most/aim-cdev/cdev.c
@@ -127,7 +127,6 @@ static int aim_close(struct inode *inode, struct file *filp)
                kfifo_free(&channel->fifo);
                list_del(&channel->list);
                ida_simple_remove(&minor_id, MINOR(channel->devno));
-               wake_up_interruptible(&channel->wq);
                kfree(channel);
                return 0;
        }
@@ -139,7 +138,6 @@ static int aim_close(struct inode *inode, struct file *filp)
                most_put_mbo(channel->stacked_mbo);
        ret = most_stop_channel(channel->iface, channel->channel_id, &cdev_aim);
        atomic_dec(&channel->access_ref);
-       wake_up_interruptible(&channel->wq);
        return ret;
 }
 
-- 
1.7.9.5

_______________________________________________
devel mailing list
de...@linuxdriverproject.org
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel

Reply via email to