Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit c03b355e authored by Andrei Emeltchenko's avatar Andrei Emeltchenko Committed by Johan Hedberg
Browse files

Bluetooth: Add l2cap_chan_lock



Channel lock will be used to lock L2CAP channels which are locked
currently by socket locks.

Signed-off-by: default avatarAndrei Emeltchenko <andrei.emeltchenko@intel.com>
Acked-by: default avatarMarcel Holtmann <marcel@holtmann.org>
Reviewed-by: default avatarUlisses Furquim <ulisses@profusion.mobi>
Acked-by: default avatarGustavo F. Padovan <padovan@profusion.mobi>
Signed-off-by: default avatarJohan Hedberg <johan.hedberg@intel.com>
parent 3df91ea2
Loading
Loading
Loading
Loading
+11 −0
Original line number Diff line number Diff line
@@ -497,6 +497,7 @@ struct l2cap_chan {

	void		*data;
	struct l2cap_ops *ops;
	struct mutex		lock;
};

struct l2cap_ops {
@@ -609,6 +610,16 @@ static inline void l2cap_chan_put(struct l2cap_chan *c)
		kfree(c);
}

static inline void l2cap_chan_lock(struct l2cap_chan *chan)
{
	mutex_lock(&chan->lock);
}

static inline void l2cap_chan_unlock(struct l2cap_chan *chan)
{
	mutex_unlock(&chan->lock);
}

static inline void l2cap_set_timer(struct l2cap_chan *chan,
					struct delayed_work *work, long timeout)
{
+2 −0
Original line number Diff line number Diff line
@@ -247,6 +247,8 @@ struct l2cap_chan *l2cap_chan_create(struct sock *sk)
	if (!chan)
		return NULL;

	mutex_init(&chan->lock);

	chan->sk = sk;

	write_lock(&chan_list_lock);