diff options
Diffstat (limited to 'drivers/connector/cn_queue.c')
-rw-r--r-- | drivers/connector/cn_queue.c | 4 |
1 files changed, 1 insertions, 3 deletions
diff --git a/drivers/connector/cn_queue.c b/drivers/connector/cn_queue.c index 296f510..5732ca3 100644 --- a/drivers/connector/cn_queue.c +++ b/drivers/connector/cn_queue.c @@ -99,12 +99,11 @@ int cn_queue_add_callback(struct cn_queue_dev *dev, char *name, struct cb_id *id spin_unlock_bh(&dev->queue_lock); if (found) { - atomic_dec(&dev->refcnt); cn_queue_free_callback(cbq); + atomic_dec(&dev->refcnt); return -EINVAL; } - cbq->nls = dev->nls; cbq->seq = 0; cbq->group = cbq->id.id.idx; @@ -146,7 +145,6 @@ struct cn_queue_dev *cn_queue_alloc_dev(char *name, struct sock *nls) spin_lock_init(&dev->queue_lock); dev->nls = nls; - dev->netlink_groups = 0; dev->cn_queue = create_workqueue(dev->name); if (!dev->cn_queue) { |