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

Commit 9a812553 authored by Andreas Eversberg's avatar Andreas Eversberg Committed by Karsten Keil
Browse files

mISDN: Correct busy device detection



Correct busy device detection.
This fix belongs to last commit.

Signed-off-by: default avatarAndreas Eversberg <andreas@eversberg.eu>
Signed-off-by: default avatarKarsten Keil <kkeil@suse.de>
parent 1b4d3312
Loading
Loading
Loading
Loading
+16 −14
Original line number Diff line number Diff line
@@ -483,6 +483,7 @@ data_sock_bind(struct socket *sock, struct sockaddr *addr, int addr_len)
		goto done;
	}

	if (sk->sk_protocol < ISDN_P_B_START) {
		read_lock_bh(&data_sockets.lock);
		sk_for_each(csk, node, &data_sockets.head) {
			if (sk == csk)
@@ -499,6 +500,7 @@ data_sock_bind(struct socket *sock, struct sockaddr *addr, int addr_len)
			goto done;
		}
		read_unlock_bh(&data_sockets.lock);
	}

	_pms(sk)->ch.send = mISDN_send;
	_pms(sk)->ch.ctrl = mISDN_ctrl;
+2 −1
Original line number Diff line number Diff line
@@ -446,7 +446,8 @@ connect_layer1(struct mISDNdevice *dev, struct mISDNchannel *ch,
		rq.protocol = protocol;
		rq.adr.channel = adr->channel;
		err = dev->D.ctrl(&dev->D, OPEN_CHANNEL, &rq);
		printk(KERN_DEBUG "%s: ret 1 %d\n", __func__, err);
		printk(KERN_DEBUG "%s: ret %d (dev %d)\n", __func__, err,
			dev->id);
		if (err)
			return err;
		write_lock_bh(&dev->D.st->l1sock.lock);