summaryrefslogtreecommitdiffstats
path: root/drivers/staging/most
diff options
context:
space:
mode:
authorChristian Gromm2015-12-22 10:52:57 +0100
committerGreg Kroah-Hartman2016-02-08 02:34:58 +0100
commit9cda3007ab9c87d3977fc84e7db73e021ba048ac (patch)
treeb1367070ac8ead7faa2b04d4b217b182facbb916 /drivers/staging/most
parentstaging: most: remove tainted flag (diff)
downloadkernel-qcow2-linux-9cda3007ab9c87d3977fc84e7db73e021ba048ac.tar.gz
kernel-qcow2-linux-9cda3007ab9c87d3977fc84e7db73e021ba048ac.tar.xz
kernel-qcow2-linux-9cda3007ab9c87d3977fc84e7db73e021ba048ac.zip
staging: most: remove reference counter
This patch removes the unnecessary reference conter mod_ref. Signed-off-by: Christian Gromm <christian.gromm@microchip.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/staging/most')
-rw-r--r--drivers/staging/most/mostcore/core.c13
1 files changed, 1 insertions, 12 deletions
diff --git a/drivers/staging/most/mostcore/core.c b/drivers/staging/most/mostcore/core.c
index 58e288b74b1b..daae42d0238c 100644
--- a/drivers/staging/most/mostcore/core.c
+++ b/drivers/staging/most/mostcore/core.c
@@ -35,7 +35,6 @@
static struct class *most_class;
static struct device *class_glue_dir;
static struct ida mdev_id;
-static int modref;
static int dummy_num_buffers;
struct most_c_aim_obj {
@@ -1508,7 +1507,6 @@ int most_start_channel(struct most_interface *iface, int id,
mutex_unlock(&c->start_mutex);
return -ENOLCK;
}
- modref++;
c->cfg.extra_len = 0;
if (c->iface->configure(c->iface, c->channel_id, &c->cfg)) {
@@ -1550,7 +1548,6 @@ out:
error:
module_put(iface->mod);
- modref--;
mutex_unlock(&c->start_mutex);
return ret;
}
@@ -1584,10 +1581,8 @@ int most_stop_channel(struct most_interface *iface, int id,
c->hdm_enqueue_task = NULL;
mutex_unlock(&c->stop_task_mutex);
- if (iface->mod && modref) {
+ if (iface->mod)
module_put(iface->mod);
- modref--;
- }
c->is_poisoned = true;
if (c->iface->poison_channel(c->iface, c->channel_id)) {
@@ -1808,12 +1803,6 @@ void most_deregister_interface(struct most_interface *iface)
c->aim1.ptr = NULL;
}
- while (modref) {
- if (iface->mod && modref)
- module_put(iface->mod);
- modref--;
- }
-
list_for_each_entry(c, &i->channel_list, list) {
if (c->aim0.refs + c->aim1.refs <= 0)
continue;